Показать сообщение отдельно
Старый 17.05.2010, 11:28   #1  
ena_ax is offline
ena_ax
Участник
 
254 / 46 (2) +++
Регистрация: 06.12.2006
Создание производственного заказа программно
Коллеги, есть задача по формированию производственного заказа автоматически по данным измерительных счетчиков.

В аксапте нужно сделать:
1. создать производственный Заказ
2. Перевести его в статус Начато
3. Создать Отгрузочную накладную

С первым пунктом вроде справился.
Примерно так:

X++:
     qty        = 20;
    _transDate = systemDateGet();
    
    inventTable = InventTable::find("ItemID");
    if (! inventTable.RecId)
        throw error(strfmt(InventTable::txtNotExist(),inventTable.ItemId));
    if (! inventTable.inventItemType().canBeProduced())
        throw error(strfmt("@SYS78161",inventTable.ItemType));
    inventTableModuleInvent = InventTableModule::find(inventTable.ItemId,ModuleInventPurchSales::Invent);
    if (! inventTableModuleInvent.RecId)
        throw error(strfmt("@SYS5700",inventTable.ItemId,ModuleInventPurchSales::Invent));
    if (inventTableModuleInvent.Blocked)
        throw error(strfmt("@SYS13295",inventTable.ItemId,ModuleInventPurchSales::Invent));
 
    prodTable.initValue();
    prodTable.initFromInventTable(inventTable);
    prodTable.ItemId                          = inventTable.ItemId;
    prodTable.QtySched                    = qty;
    prodTable.RemainInventPhysical   = qty;
 
    
    prodTable.DlvDate   = _transDate;
     prodTable.insert();
Подскажите как правильно реализовать перевод созданного заказа в статус Начато?