Показать сообщение отдельно
Старый 22.07.2011, 15:43   #14  
niksen is offline
niksen
Участник
Самостоятельные клиенты AX
 
284 / 28 (1) +++
Регистрация: 05.07.2011
Адрес: Татарстан
всё равно ошибки всякие повылезали, начиная от ";" и тд...
помогло вот это, взятое с иностранного сайта
X++:
// Created on 06 Jul 2010 by Jovan Bulajic
// This can be called to create a new item from code, for example CreateNewItem('AA01');
static void CreateNewItem(ItemId _itemId, ItemGroupId _itemGroup, ItemName _itemName)
{
    InventTable         inventTable;
    InventTableModule   inventTableModule;
    InventItemLocation  inventItemLocation;
    ;



    ttsbegin;

    // Master record in InventTable
    select forupdate inventTable;
    inventTable.initValue();
    // If InventTable has other mandatory fields in addition to
    // ItemGroupId and ItemId, they should be defined here
    inventTable.ItemGroupId = _itemGroup;
    inventTable.ItemId = _itemId;
    inventTable.ItemName = _itemName;
    inventTable.ItemType = ItemType::Item;
    // You can put default DimGroupId, ModelGroupId, etc. here
    inventTable.insert();

    // InventItemLocation for default dimension
    select forupdate inventItemLocation;
    inventItemLocation.initValue();
    inventItemLocation.ItemId = _itemId;
    inventItemLocation.InventDimId = InventDim::inventDimIdBlank();
    inventItemLocation.insert();

    select forupdate inventTableModule;
    // запасы
    inventTableModule.initValue();
    inventTableModule.ItemId = _itemId;
    inventTableModule.ModuleType = ModuleInventPurchSales::Invent;
    inventTableModule.insert();
    // покупка
    inventTableModule.initValue();
    inventTableModule.ItemId = _itemId;
    inventTableModule.ModuleType = ModuleInventPurchSales::Purch;
    inventTableModule.insert();
    // продажа
    inventTableModule.initValue();
    inventTableModule.ItemId = _itemId;
    inventTableModule.ModuleType = ModuleInventPurchSales::Sales;
    inventTableModule.insert();

    ttscommit;

}


Теперь возникает другой вопрос: как запускать job из job'a с какими-то параметрами?
Вот пример взятый из различных источников:
X++:
static void Jobs_MyJob(str _text)
{
;
    info(_text);
}
создали job для запуска, а затем через MenuItem
X++:
static void Jobs_ExecutingJob(Args _args)
{
    Args                     args;
;
    args = new Args();
    args.name(identifierStr(Jobs_MyJob));
    new menuFunction(menuItemActionStr(Jobs_MyJob), MenuItemType::Action).run(args);
    
}
но он не работает, выдаёт ошибку на строке "new"
поиск по форуму ничем не помог

Последний раз редактировалось niksen; 22.07.2011 в 15:50.