Показать сообщение отдельно
Старый 24.04.2006, 16:24   #1  
Freeangel is offline
Freeangel
Участник
 
173 / 55 (2) ++++
Регистрация: 01.04.2005
Программное создание строк журнала переноса
Всем добрый день.
Создаю программно строку в журнале переноса следующим кодом:

void createJournalTrans(InventJournalTable _inventJournalTable, ItemId _itemId,
CostPrice _costPrice, Qty _qty)
{
#define.priceUnit(1)

InventParameters inventParameters = InventParameters::find();
InventJournalTrans inventJournalTrans;
InventDim inventDim, toInventDim;
;

if(this.validateRecord(_itemId))
{
ttsbegin;
inventJournalTrans.clear();
inventJournalTrans.initFromInventJournalTable(_inventJournalTable);

inventJournalTrans.TransDate = systemDateGet();
inventJournalTrans.ItemId = _itemId;
inventJournalTrans.Qty = _qty;
inventJournalTrans.CostPrice = _costPrice;
inventJournalTrans.CostAmount = _qty * round(_costprice, 0.0001) ;
inventJournalTrans.PriceUnit = #priceUnit;

inventDim = inventJournalTrans.inventDim();
inventDim.InventGtdId_RU = this.getLastGTD(_itemId);
inventDim.InventLocationId = m_idInventLocationFrom.text();

toInventDim.InventGtdId_RU = this.getLastGTD(_itemId);
toInventDim = inventJournalTrans.toInventDim();
toInventDim.InventLocationId = m_idInventLocationTo.text();

inventJournalTrans.InventDimId = InventDim::findOrCreate(inventDim).inventDimId;
inventJournalTrans.ToInventDimId = InventDim::findOrCreate(toInventDim).inventDimId;

inventJournalTrans.insertFromCode();
ttscommit;
}
}

Но каждый раз Аксапта перезапускается, хотя строку создает. не подскажет ли кто в чем у меня ошибка.
И ещё вопрос. Как программно зарезервировать количество в данной строке?