25.01.2007, 21:03 | #1 |
NavAx
|
Маркировка - достала!
Надоело копать эту муть - что ни полезешь - баги вылезают в стандарте...
Поэтому хочу обратить внимание общественности на две критичных ошибки в этой форме: 1. При включенном партионном учете (когда складская проводка в верхней части формы начинает распадаться на 2 и более), поле qtyMarked считается в разрезе всей складской проводки, относительно которой проводится маркировка, а не конкретной записи InventTrans (если быть точнее, то не относительно аналитик финансового склада, как было бы правильнее). Поэтому поле Остаток, используемое, как основа для вычисления доступного к маркировке кол-ва по проводке, считается некорректно, и даже может быть отрицательным, если маркированное кол-во превысит кол-во в какой-либо части складской проводки - основы. Фикс достаточно тривиален для знакомого с методом InventTrans.packTmpMark. 2. При попытке ручного изменения уже маркированного кол-ва (с зеленой пометкой) в сторону уменьшения (через поле Маркировать в проводках в нижней части формы) не на полное маркированное кол-во, происходит размаркировка этой проводки из нижней части формы, но не на разницу в кол-ве, а на ПОЛНОЕ маркированное кол-во. Размаркирование проводки из верхней части происходит корректно. В результате имеем помеченную вопросиком проводку из нижней части формы с отсутствующей ссылкой на лот и некорректную маркировку со стороны проводки из верхней части формы. Это может привести к нерезервированию помеченной номенклатуры при оприходовании закупки, помеченной для какого-либо заказа, т.к. при оприходовании выполняется метод DeleteInvalidMarking, очищающий подобные маркировки. Скажу, что ошибка ВЕСЬМА труднонаходима (из категории - ошибка в 1 символ). Метод InventTrans.updateMarking. Axapta 3.0 SP3 CU1. Собственно, в более поздних SP не исправлено.
__________________
Жизнь прекрасна! Если, конечно, правильно подобрать антидепрессанты... Последний раз редактировалось Maximin; 25.01.2007 в 21:06. |
|
|
За это сообщение автора поблагодарили: Logger (4). |
29.01.2007, 10:27 | #2 |
Участник
|
Спасибо, тоже считаю что ошибками можно и нужно делиться - а то в мелкософт пока дойдет..
|
|
29.01.2007, 11:51 | #3 |
NavAx
|
Немного пообщался с сотрудниками Microsoft...
Решил выложить исправление 2го бага: Вместо строки X++: if (abs(inventTrans.financialOpenQty() > abs(qtyRemain))) X++: if (abs(inventTrans.financialOpenQty()) > abs(qtyRemain)) /// by AMV 25.01.2007 BUG497_AMV_InventMarking - mistake in standard Axapta
__________________
Жизнь прекрасна! Если, конечно, правильно подобрать антидепрессанты... |
|
Теги |
ax2009, ax3.0, bug, баг, ошибка |
|
Похожие темы | ||||
Тема | Ответов | |||
Маркировка | 0 | |||
Маркировка платежа | 11 | |||
Маркировка авансового платежа с несколькими заказами | 2 | |||
Маркировка или учет по партиям? | 5 | |||
Сторнирование или маркировка накладных | 3 |
Опции темы | Поиск в этой теме |
Опции просмотра | |
|