|
![]() |
#1 |
Участник
|
Есть модификации создающие журналы/строки программно?
|
|
![]() |
#2 |
Участник
|
Есть самописные функции для строк: создать на основании и сторно на основании. Но журналы, где возникают ошибки с операциями кладовщики создают вручную.
Вспомнили, есть еще "создать списания". Кстати, возможно, в ней собака могла порыться. Пошукаем. зы: сейчас перетестировали - дело не в них. тем более, что они не на одном проекте уже использовались - проверены временем.
__________________
4, 2009, 2012 R3, D365 Последний раз редактировалось _guestl_; 27.07.2010 в 15:15. |
|
![]() |
#3 |
Участник
|
Просто недавно сталкивался с похожей ошибкой в 3.0 "Документ '%1' уже использован для даты %2." дело было в неверном выделении ваучера.
|
|
![]() |
#4 |
Участник
|
Ваучер выделялся в самописной функции?
__________________
4, 2009, 2012 R3, D365 |
|
![]() |
#5 |
Участник
|
Да. Причем что интересно. На двух приложениях этот функционал был запущен и там даже после его исправления (до перезапуска АОСов) наблюдалось заполнение NumberSequenceList записями со статусом "Свободно", что и приводило в дальнейшем к этому сообщению. На третьем приложении сбоев не было, т.к. там неверное выделение было исправлено до первого запуска.
К этой ситуации привел вызов X++: ledgerJournal.newVoucher(ledgerJournalTable.voucherSeries, [B]true[/B]); Последний раз редактировалось madm; 27.07.2010 в 17:38. |
|
![]() |
#6 |
Участник
|
Не удалось. Сейчас сидел вместе с кладовщиком, у которого эта ошибка возникает в каждом втором журнале - ошибка не воспроизводится. Но я думаю, что нужно грешить ан самописную функцию создания списаний. При создании строки в поле "номер операции" пишется номер операции, который был свободен на момент создания строки. А если создавать руками строку, то "номер операции" пустой и присваивается на момент разноски. Видимо, тут надо будет копать.
__________________
4, 2009, 2012 R3, D365 |
|
![]() |
#7 |
MCTS
|
А если сразу после создания строки зайти в номерную серию и посмотреть значения по кнопке "Список"? В списке присутствует только что выделившийся номер? Если да, то с каким статусом?
__________________
Dynamics AX Experience |
|
![]() |
#8 |
MCTS
|
Цитата:
Сообщение от _guestl_
![]() По складу возникла проблема. При разноске складских журналов возникает сообщение об ошибке "Номер операции уже использован на дату .." В настройках журналов "Присвоение номера" стоит как "разноска", так и "ввод" - пробовали оба эти варианта в попытках борьбы с ошибкой.
Номерная серия как непрерывная, так и прерывная. Тоже пробовали оба варианта. ![]() В 90% случаев ошибка связана с наличием самописного функционала, который создает новые строки журналов, при этом не обрабатывает соответствующим образом номерную серию, используемую для нумерации Ваучера. Механизм возникновения ошибки в этом случае приблизительно следующий. При создании строки журнала руками в форме, система выделяет следующий номер и резервирует его под нумерацию будущих проводок. При этом на самой форме написано куча кода по управлению номерной серией. Если строка журнала сохраняется и разноситься, выделенный номер система помечает как использованный и больше его не выделяет. При написании самописных функций для создания строк программисты как правило копируют код выделения номерной серии, написанный для использования на форме. Если не вдаваться в технические подробности, то система при исполнении этого кода выделяет следующий номер, но не помечает его, как использованный. В итоге этот номер спустя какое-то время будет выделен снова, не смотря на то, что проводки с этим номером уже существуют. И при соответствующей настройке параметров ГК, получим вышеприведенную ошибку. В 9% случаев ошибка является следствием неправильной настройки системы. Т.е. для нумерации документов ГК в строках используются номерные серии, имеющие пересекающиеся номера. Оставшийся 1% случаев - формы новых типов журналов, на которых программисты "забывают" обрабатывать номерную серию. Но это очень редкий случай ![]() Цитата:
Алгоритм возможного решения вашей проблемы: Проверьте, копируется ли номер документа ГК из старой строки в новую с помощью самописных функций. Если номер скопировался - это не правильно. Если поле пустое, то для соответствующих названий журналов необходимо указать в поле "Присвоение номера" значение "Разноска". Если выделился новый номер, то для соответствующего названия журнала необходимо указать в настройке "Присвоение номера" значение "Ввод". А затем пойти в номерную серию и проверить корректное выделение номеров (кнопка "список"). ИМХО, наилучший вариант - это позволить системе самой работать с номерами документов ГК. При этом в создаваемых строках журнала поле Ваучер должно быть пустым, а в названиях журналов указать выделение номера при разноске. И я бы не рекомендовал отключать контроль документов ГК, т.к. все-таки связь Ваучер-Дата - одна из основных связей в системе для различных документов/проводок.
__________________
Dynamics AX Experience Последний раз редактировалось CDR; 28.07.2010 в 11:08. |
|
|
За это сообщение автора поблагодарили: Logger (1), wojzeh (2), _guestl_ (1). |
Теги |
управление запасами, номерная серия |
|
Опции темы | Поиск в этой теме |
Опции просмотра | |
|