Введите полученное количество заказа на покупку по коду

В форме заказа на покупку - Линия - Количество вкладок есть Получено, Напоминание о доставке и Заказ.

Я хочу иметь возможность ввода этих полей с помощью кода X++, потому что в настоящее время наша компания все еще вводит данные в старую систему.

Я могу получить данные о товарах заказа на поставку по прибытии из этой старой системы, а затем хочу ввести эти извлеченные данные по коду в Axapta.

Какую таблицу и поле следует учитывать при этом? Какие функции доступны для простого обновления каждой полученной строки заказа на поставку? Пример кода это хорошо.

1 ответ

Решение

Как создать заказ на покупку?

Пример кода для заказов на продажу можно найти в блоге JINX AX.

Пропустите или переведите текст на немецком языке, код внизу, главное createLine вызов метода. Глобальная замена "продаж" на "покупок" поможет вам.

Какие поля для рассмотрения?

Много и много, но начинаются с идентификационных номеров, количества и единиц товара.

Количество в единицах покупки (PurchQty) и инвентарные единицы (QtyOrdered). Вам придется установить оба, но один из аргументов createLine сделаю это для вас.

Обновить:

Для обновления полученных количеств необходимо обновить упаковочный лист. Помимо обновления количества он обновляет / создает операции с запасами.

Вы можете сделать это, обновив PurchReceivedNow а также InventReceivedNow поля на PurchLine таблицы, второе поле можно установить, вызвав setInventReceivedNow метод.

Затем вы обновляете упаковочный лист (вам понадобится заказ на покупку и идентификатор упаковочного листа):

void postPackingSlip(PurchTable purchTable, PackingSlipId packingSlipId)
{
    PurchFormLetter letter = PurchFormletter::construct(DocumentStatus::PackingSlip, true);    
    letter.update(purchTable, packingSlipId, letter.transDate(), PurchUpdate::ReceiveNow);
}
Другие вопросы по тегам