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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 13.08.2004, 15:46   #1  
anny is offline
anny
Участник
 
44 / 10 (1) +
Регистрация: 19.07.2004
задвоение номеров ГК
Скажите, кто сталкивался с проблемой задвоения номеров ГК?

Есть AX 3.0, SP 3, без hotfix-ов.

При разноске журналов основных средств, номера попадают в numberSequenceList, статус Активный, мероприятие - нерешенный. Потом эти номера преобразуются в статус - Свободно, мероприятие - не используется.

Соответственно, затем эти номера снова выбираются, хотя уже существуют проводки с этим номеровм в LedgerTrans, и происходит задвоение.

Серия документов - непрерывная, стоит автоочистка.
Параметры ГК - Запрещать дубликаты, контроль непрерывности.

Подскажите, пожалуйста, что можно сделать? Еще лучше, где поправить.

Конечно, можно убрать непрерывность серии документов, как уже писалось на форуме, но ... должно же работать корректно )


Спасибо
Старый 16.08.2004, 16:33   #2  
BOAL is offline
BOAL
Участник
Аватар для BOAL
MCBMSS
Злыдни
1C
Лучший по профессии 2015
 
621 / 453 (17) +++++++
Регистрация: 28.04.2003
Адрес: Москва
И это не только в ОС... это и обычный журнал ГК и касса этим грешат...

и очистка не трет список... можно его ручками тереть переодически или мод написать...
Но согласен, более верно вообще решить проблему с непрерывностью в системе - она просто не работает корректно и все ждут чуда, что в одном из СП ее починят...
но возможно проще и, главное, быстрее самим разобраться.

Надо сказать, что в ах25 - с этими задвоениями было много хуже чем в ах30... те некоторая оптимизация на лицо
Старый 16.08.2004, 18:29   #3  
anny is offline
anny
Участник
 
44 / 10 (1) +
Регистрация: 19.07.2004
Спасибо, за участие.

Получается, что непрерывность без крайней необходимости лучше не использовать.

И это очередная криво работающая функциональность Microsoft... (

Интересно, кто-нибудь считал соотнесение времени, которое тратится на настройку, доработку функционала, т.е. то, что необходимо клиентам, и на исправление ошибок microsoft в Axapta?
Старый 16.08.2004, 19:27   #4  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
Цитата:
Изначально опубликовано anny
Получается, что непрерывность без крайней необходимости лучше не использовать.

И это очередная криво работающая функциональность Microsoft... (

Интересно, кто-нибудь считал соотнесение времени, которое тратится на настройку, доработку функционала, т.е. то, что необходимо клиентам, и на исправление ошибок microsoft в Axapta?
Привет, Аня.
Рад тебя видеть.

Нет так маленько.
1. непрерывность действительно лучше не использовать
2. но не потому что это криво работающая функциональность.
3. непрерывность требует существенно больших ресурсов от Аксапты и СКЛ
4. непрерывность надо уметь использовать программисту. Программист должен о многом помнить, чтобы корректно работать с непрерывностью.

насчет багов.
мы в свое время говорили о международном функционале. По прежнему уверен, что международный функционал можно использовать практически без опасений. Все российские функции - очень осторожно.
Старый 17.08.2004, 13:29   #5  
Тимур is offline
Тимур
Аксакал в отставке
 
2,457 / 50 (6) ++++
Регистрация: 31.01.2003
Адрес: Москва
А в какой момент у Вас установлено генерировать номер ГК?
__________________
Девочка, никогда не произноси слова только за то, что они такие длинные и красивые; говори только то, что знаешь. (Л.Кэрролл "Алиса в стране чудес").
Старый 17.08.2004, 15:22   #6  
anny is offline
anny
Участник
 
44 / 10 (1) +
Регистрация: 19.07.2004
Я немного посмотрела в коде - на мой взгляд, суть не в том, в какой момент генерируются номера, а в том, что при работе журнала ОС, по сравнению с общим журналом ГК номера точно так же попадают в таблицу NumberSequenceList при создании записей в журнале, но если после разноски общего журнала использованные номера удаляются из этой таблицы, то после разноски журнала ОС они остаются. Следующая по времени процедура очистки переводит эти номера в статус - Свободно. Создаем любой журнал, использующий данную серию.. и получаем сюрпризы...

Решение без программирования - отказаться от непрерывности и/или отключить очистку.

Интереснее было бы в нужном месте вызвать удаление уже разнесенных voucher из NumberSequenceList. Но, увы, я не нашла это место... Вернее подходящих мест слишком много...


to mazzy - спасибо за добрые слова, но я думаю, что имелась в виду другая Аня , еще раз - спасибо.
Старый 17.08.2004, 15:28   #7  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
Цитата:
Изначально опубликовано anny
Я немного посмотрела в коде - на мой взгляд, суть не в том, в какой момент генерируются номера, а в том, что при работе журнала ОС, по сравнению с общим журналом ГК номера точно так же попадают в таблицу NumberSequenceList при создании записей в журнале, но если после разноски общего журнала использованные номера удаляются из этой таблицы, то после разноски журнала ОС они остаются.
Об этом я и говорю - с непрерывными сериями программист должен делать значительно больше действий, чем с обычными.
См. класс NumberSeqFormHandler

Цитата:
Изначально опубликовано anny
to mazzy - спасибо за добрые слова, но я думаю, что имелась в виду другая Аня , еще раз - спасибо.
Извините, обознатушки.
Тогда привет Той Ане
Старый 15.04.2005, 11:44   #8  
George Nordic is offline
George Nordic
Модератор
Аватар для George Nordic
Злыдни
 
4,479 / 1250 (50) ++++++++
Регистрация: 17.12.2003
Адрес: Moscow
Записей в блоге: 9
Новые "фенечки".
Господа!

Попробуйте сделать так:
РК - Платежи - Новый платеж
Введем просто 3 пустые строчки (3 раза Ctrl + N)
Смотрим на номера ГК  - они ОДИНАКОВЫЕ!
Потом прописываем клиентов - (Разных!)и разносим..
с ГК идут проводки с ОДИНАКОВЫМ номером.
Во как. Это бага или фича такая?

С Уважением,
Георгий.
Старый 15.04.2005, 11:46   #9  
Maximin is offline
Maximin
NavAx
NavAx Club
 
412 / 346 (12) ++++++
Регистрация: 09.10.2002
Адрес: Москва
Смое прикольное - что эта шняга там болтается, по видимому, уже давно, еще с 2.5...
By design - это не глюк, это фича. ))

Есть мысль не давать просто сохранять строку, пока не проставят сумму и счет, тогда для предыдущей записи проверка сработает, как надо.
Есть еще вариант тупо возвращать true.
Старый 15.04.2005, 12:13   #10  
Maxim Gorbunov is offline
Maxim Gorbunov
Administrator
Соотечественники
Лучший по профессии 2009
 
2,483 / 645 (26) +++++++
Регистрация: 27.11.2001
Адрес: Dubai, UAE
В общем, это действительно так By Design

Все время возвращать true из takeNewVoucher() я бы не стал.

Лучше сделать так:
1. Во время create() в LedgerJournalTrans_ds сделать forceWrite(true), чтобы пустые записи не плодились, а записывались все время.
2. В validateWrite() сделать проверку, чтобы пользователь не мог создавать строки журнала с пустым AccountNum.
3. Для красоты можно еще выставить свойство Mandatory для AccountNum в форме LedgerJournalTransCustPaym.
__________________
Not registered yet? Register here!
Have comments, questions, suggestions or anything else regarding our web site? Don't hesitate, send them to me
Старый 15.04.2005, 12:18   #11  
Maximin is offline
Maximin
NavAx
NavAx Club
 
412 / 346 (12) ++++++
Регистрация: 09.10.2002
Адрес: Москва
Ну, если реализовать п.2, то п.1 уже, в принципе, и не нужен.
Старый 15.04.2005, 12:28   #12  
Maxim Gorbunov is offline
Maxim Gorbunov
Administrator
Соотечественники
Лучший по профессии 2009
 
2,483 / 645 (26) +++++++
Регистрация: 27.11.2001
Адрес: Dubai, UAE
А вот и нет.
Если не сделать п.1, то записи не будут отправлены в базу данных после нажатия Ctrl+N еще раз. Соответственно не будет вызываться и validateWrite(). Попробуйте
__________________
Not registered yet? Register here!
Have comments, questions, suggestions or anything else regarding our web site? Don't hesitate, send them to me
Старый 15.04.2005, 12:30   #13  
Maximin is offline
Maximin
NavAx
NavAx Club
 
412 / 346 (12) ++++++
Регистрация: 09.10.2002
Адрес: Москва
Ладно, уболтал. )

Еще вот что смущает - (точнее, не еще, а, собственно, одна из причин проблемы)

if (!oldAccountNum && oldVoucher)
return false;

Для чего-то это, может быть, и нужно.....
Старый 15.04.2005, 16:50   #14  
anny is offline
anny
Участник
 
44 / 10 (1) +
Регистрация: 19.07.2004
Это не баг, это фича и удобная
Например, если надо перекинуть задоженность по клиенту из краткосрочной в долгосрочную, или рисовать проводки по векселям. В одной строке система не даст сделать проводку, если счет и корсчет совпадают. А если сделать многострочную проводку, документ ГК будет одинаковый, счет и корсчет одинаковые, а профили разноски - разные.
Старый 15.04.2005, 17:15   #15  
Maximin is offline
Maximin
NavAx
NavAx Club
 
412 / 346 (12) ++++++
Регистрация: 09.10.2002
Адрес: Москва
Короче, сделали так: добавили параметр в настройки журнала, если он стоит в положении "Всегда новый" - ставится всегда новый ГК (всегда takeNewVoucher - true). Иначе - работает, как в стандарте.
Старый 15.04.2005, 18:09   #16  
kvan is offline
kvan
Moderator
Аватар для kvan
Дети Юза
 
775 / 49 (3) +
Регистрация: 07.08.2002
Адрес: Donetsk
2 Maximin:
Цитата:
Смое прикольное - что эта шняга там болтается, по видимому, уже давно, еще с 2.5...
это ты случаем не в том приложении подсмотрел о каком я подумал?
если в том - так там и решение этой фичи было
Старый 15.04.2005, 18:21   #17  
George Nordic is offline
George Nordic
Модератор
Аватар для George Nordic
Злыдни
 
4,479 / 1250 (50) ++++++++
Регистрация: 17.12.2003
Адрес: Moscow
Записей в блоге: 9
Не, заново напоролись на старые грабли.

Хотя слова Ани заставили нас задуматься

С Уважением,
Георгий.
Старый 15.04.2005, 18:54   #18  
kvan is offline
kvan
Moderator
Аватар для kvan
Дети Юза
 
775 / 49 (3) +
Регистрация: 07.08.2002
Адрес: Donetsk
Аня права
Но в свое время решал эту проблему пунктами 2 и 3 описанными Максимом Горбуновым так как такой функциональности нам тогда не нужно было.
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Немного об архитектуре разноски в ГК и проблеме корреспонденции счетов mazzy DAX: База знаний и проекты 29 02.05.2019 17:56
При повторном вызове linkActive проваливается в validateWrite(Строки общего журнала ГК) Lemming DAX: Программирование 6 25.10.2007 13:50
Ошибка (?) в периодических журналах ГК Anais DAX: Функционал 1 10.06.2005 13:20
Повторное использование номеров документов ГК dirigente DAX: Функционал 22 25.03.2004 16:20
sp5. Возможность получить Корр.счет ГК попроводкам клиента/поставщика без извращений studentLPC DAX: Функционал 20 27.05.2003 13:55

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

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

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