AXForum  
Вернуться   AXForum > Microsoft Dynamics AX > DAX: Программирование
All
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 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;
}
}

Но каждый раз Аксапта перезапускается, хотя строку создает. не подскажет ли кто в чем у меня ошибка.
И ещё вопрос. Как программно зарезервировать количество в данной строке?
Старый 24.04.2006, 17:21   #2  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
Про создание строк в складских журналах
http://axapta.mazzy.ru/lib/journaltrans_insert/
Обязательно посмотрите обсуждение
http://forum.mazzy.ru/index.php?showtopic=4069

Про резервирование
http://axapta.mazzy.ru/lib/reserve_from_code/
__________________
полезное на axForum, github, vk, coub.
Старый 24.04.2006, 17:25   #3  
Freeangel is offline
Freeangel
Участник
 
173 / 55 (2) ++++
Регистрация: 01.04.2005
Я использовал эту статью и обсуждение, но проблема осталась.
Старый 24.04.2006, 17:42   #4  
macklakov is offline
macklakov
NavAx
Аватар для macklakov
 
2,257 / 980 (37) +++++++
Регистрация: 03.04.2002
Цитата:
Сообщение от Freeangel
Но каждый раз Аксапта перезапускается, хотя строку создает. не подскажет ли кто в чем у меня ошибка.
Навскидку не скажешь, нужно дебажить.
Цитата:
Сообщение от Freeangel
inventJournalTrans.CostAmount = _qty * round(_costprice, 0.0001) ;
inventJournalTrans.PriceUnit = #priceUnit;
Грязненько
Цитата:
Сообщение от Freeangel
Как программно зарезервировать количество в данной строке?
Проще всего: InventJournalTable.Reservation = ItemReservation::Automatic
__________________
Isn't it nice when things just work?
Старый 24.04.2006, 18:01   #5  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
Цитата:
Сообщение от Freeangel
Я использовал эту статью и обсуждение, но проблема осталась.
тогда http://forum.mazzy.ru/index.php?showtopic=584
__________________
полезное на axForum, github, vk, coub.
Старый 25.04.2006, 09:58   #6  
Freeangel is offline
Freeangel
Участник
 
173 / 55 (2) ++++
Регистрация: 01.04.2005
Спасибо. Буду искать в чем ошибка.
Старый 25.04.2006, 18:31   #7  
leshy is offline
leshy
Участник
 
118 / 11 (1) +
Регистрация: 23.02.2004
Адрес: Киев
Попробовал повторить ваш код - все нормально, аксапта не закрылась, строка создалась.
Может ошибка где-нибудь в методах this.getLastGTD или m_idInventLocationTo.text().
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Программное создание журнала платежей покупателю belugin DAX: Программирование 11 17.08.2006 15:01
Программное открытие формы строк журнала переноса ViV DAX: Программирование 13 09.11.2005 13:16
Нужен запрет на изменения данных журнала переноса после его распечатки ATimTim DAX: Программирование 4 19.01.2005 12:16
3.0, Модуль: ОС, операция: Разноска строк журнала ОС (с предварит просм проводок) MagisterLudi DAX: Функционал 2 07.10.2003 18:55
программное создание строк заказа renat DAX: Программирование 6 22.07.2003 05:05

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 14:39.