![]() |
#1 |
Участник
|
Программная вставка строки в заказ на покупку
AX2009.
Уважаемые Господа! Надо через форму ввести строки в заказ на покупку программным путем. Наверняка, подобная задача решелась множество раз... Не подскажете как это сделать наиболее простым способом? С уважением, Дмитрий. |
|
![]() |
#2 |
Участник
|
Можно допилить стандартную форму "Создать строки" в строках заказа на покупку, если она чем то не устраивает.
Посмотрите метод purchLine.createLine(...) и его использование в стандарте.
__________________
Sergey Nefedov |
|
|
За это сообщение автора поблагодарили: DmitryK (1). |
![]() |
#3 |
Участник
|
Спасибо, да конечно. Причем, на форуме этот метод описывался. Но в форме PurchQuickQuote я не нашел использования данного метода. Или не туда смотрю?
С уважением, Дмитрий. Последний раз редактировалось DmitryK; 10.07.2012 в 08:52. |
|
![]() |
#4 |
Участник
|
Этот метод находится на таблице PurchLine.
__________________
С уважением, Александр. |
|
|
За это сообщение автора поблагодарили: DmitryK (1). |
![]() |
#5 |
Участник
|
Он вызывается в неявном виде через метод purchLine.createFromTmpFrmVirtual(...)
__________________
Sergey Nefedov |
|
![]() |
#6 |
Участник
|
Строку сформировал по примеру purchCopyng.copyline. Все получилось.
С уважением, Дмитрий. |
|
![]() |
#7 |
Участник
|
Надеюсь, что последний вопрос по данной теме...
![]() purchLine.purchPrice = 123; В результирующей строке заказа цена 0; Есть какие-то дополнительные требования? C уважением, Дмитрий. |
|
![]() |
#8 |
Участник
|
А вы как строку в итоге создаете? Приведите весь код.
Например, purchLine.createLine() вызываете? С какими параметрами?
__________________
Ivanhoe as is.. |
|
![]() |
#9 |
MCITP
|
Ну и про класс PurchLineType забывать не надо. Метод таблицы это хорошо, конечно. Но при том же инсерте будет вызван данный класс. А обработок там пишут много. Может и перетирается указанное значение.
|
|
![]() |
#10 |
Участник
|
Поступил по советам бывалых. Запись замечательно создается. Только без цены ... :O(
Вот так вызываю. pLine.createLine(true, true, true, true, false, true); C уважением, Дмитрий. |
|
![]() |
#11 |
Участник
|
Так у вас последний true заставляет систему искать цену из прайса. Нет прайса - получаете ноль.
__________________
Ivanhoe as is.. |
|
|
За это сообщение автора поблагодарили: DmitryK (1). |
![]() |
#12 |
Участник
|
Да, это моя невнимательность. Установил в false.
pLine.createLine(true, true, true, true, false, false); Но результат тот же. С уважением, Дмитрий. |
|
![]() |
#13 |
Участник
|
пройдитесь уже дебагером и найдите где у вас обнуляется
|
|
![]() |
#14 |
Участник
|
Этими параметрами надо играться...
Убрал в false initfrominventtable цена в строке появилась. Но не расчитывается сумма по строке. C уважением, Дмитрий. |
|
![]() |
#15 |
MCITP
|
Цитата:
InitFromInventTable метод данного класса. Там идет расчет строки: purchLine.PriceUnit = inventTableModule.priceUnit(); purchLine.LineAmount = 0; purchLine.lineAmountModified(); Скорее всего там и обнуление выскакивает. P.S. Вот любят кодить в таблицах абсолютно забывая про классы. Что salesLine, что purchLine работают с классом *LineType. |
|
|
За это сообщение автора поблагодарили: DmitryK (1). |
![]() |
#16 |
Участник
|
Спасибо, сейчас попробую ваш совет.
С уважением, Дмитрий. |
|
![]() |
#17 |
Участник
|
Я бы сделал так (что то типа такого)...
X++: AxPurchLine axPurchLine; ; axPurchLine = new axPurchLine(); axPurchLine.parmPurchId("123"); axPurchLine.parmItemId("ItemId"); axPurchLine.parmPurchQty(10); axPurchLine.parmLineAmount(100); // или axPurchLine.parmPurchPrice(10); axPurchLine.save(); |
|
![]() |
#18 |
Участник
|
axPurchLine.parmLineAmount(100);
это 10 * 10? C уважением, Дмитрий |
|
![]() |
#19 |
Участник
|
|
|
|
За это сообщение автора поблагодарили: DmitryK (1). |
![]() |
#20 |
Участник
|
В принципе, все работает, переделывать задачу не хочется.
Только не считается автоматом lineAmount (чистая сумма) у purchLine есть множество методов .calc* Может надо их использовать? Если кто знает, не подскажете каккой? C уважением, Дмитрий. |
|
|
Опции темы | Поиск в этой теме |
Опции просмотра | |
|