Показать сообщение отдельно
Старый 11.07.2006, 17:21   #1  
Logger is offline
Logger
Участник
Лучший по профессии 2015
Лучший по профессии 2014
 
3,983 / 3273 (117) ++++++++++
Регистрация: 12.10.2004
Адрес: Москва
Записей в блоге: 2
Глюк автоматическое рассопопоставление
Обнаружил глюк при автоматическом рассопопоставлении.
Если по клиенту есть достаточное большое количество сопоставленных проводок, ну например около 100 и одновременно с нескольких рабочих мест запустить автоматическое рассопопоставление, то могут возникать задваивания и затраивания рассопоставления.

т.е. SettleAmountCur в проводке CustTrans уже не в пределах от 0 до AmountCur, а вообще может иметь противоположный знак. Аналогично кривятся поля в таблице CustTransOpen

Вследствие такой фигни при попытке сопоставления могут возникать ошибки с сообщением что сумма слишком велика. (Что понятно, так как система при сопоставлении ориентируется на несопоставленный остаток, а он у этих проводок кривой)

У нас Axapta 3/0 SP3
База Oracle

Как лечить :
в методе
\Classes\CustVendReversePosting\canBeReversed_RU
поставить проверку для переданного _custVendSettlement
PHP код:
        if ( !_custVendSettlement.CanBeReversed)
        {
            
ret false;
        } 
Интересно в последующих сервис паках и в 4-й версии Аксапты баг исправили или нет ? Кто нибудь сталкивался с такими проблемами ?

И еще, судя по всему глюк вызван тем что при разработке не учли версионность оракла, так что под MS SQL все нормально должно быть, глюк не должен проявляться.

Для автоматического сопоставления возможность "двойного сопоставления" не проверял, но возможно тоже глючит. У нас не воспроизводилось. Интересно мнение коллег...

Последний раз редактировалось Logger; 11.07.2006 в 17:26.
За это сообщение автора поблагодарили: chel (1).