29.03.2010, 16:18 | #1 |
MCT
|
Кредитный лимит по договору
Коллеги, прошу совета...
Цель: настроить систему так, чтобы она проверяла кредитный лимит по клиентам и в случае его превышения выдавала Предупреждение. При этом по некоторым клиентам ведутся договоры, а по другим нет. Что сделано: 1. Настройки модуля РсК (приложение 1) 2. Настройки карточки клиента (приложение 3). По этому клиенту как раз не ведутся договоры Результаты: 1. Для разноски накладных со знаком "+"(обычные продажи) - цель достигнута 2. Для разноски накладных со знаком "-" (возвраты, исправления ошибок и т.д.) - при разноске, если кредитный лимит превышен, всегда вываливается Ошибка, разнести в итоге невозможно. Ошибка следующего содержания: "Для кода партнера ** сумма кредитных лимитов по контрактам 8 570,00 превосходит итоговый кредитный лимит 8 000,00" 3. Замечено, что такая ошибка валится - только если установлен флаг "Кредитный лимит по договору". Без этого флажка - накладные со знаком "-" разносятся как надо (выпадает предупреждение, разноска завершается). Почему флаг "Кредитный лимит по договору" не дает разносить мне накладные со знаком минус? Ax 2009 rollup 3 |
|
29.03.2010, 17:25 | #2 |
Участник
|
В 4.0 был баг по кредитному лимиту по договору - даже если договор не использовался, а галка стояла, то выдавалась ошибка. Программист посмотреть не может? Детально описать багу смогу чуть позже.
__________________
Ivanhoe as is.. |
|
29.03.2010, 17:57 | #3 |
MCT
|
Цитата:
Как мне кажется, кредитный лимит по договору при разноске отрицательных накладных в любом случае выдает ошибку, несмотрю на то что в настройках стоит "Предупреждение" (и не важно - пустой договор или нет). буду очень благдарен... зы: почему-то проблемы именно с минусовыми накладными (возвраты, исправления ошибок и т.д.), по обычным продажам такой проблемы не замечено |
|
08.04.2010, 11:18 | #4 |
MCT
|
пришлось привлечь программиста....
на выходе проблем с кредитным лимитом по договорам оказалось еще больше, чем ожидалось... При проставленном флаге "Кредитный лимит по договору" в параметрах модуля "Расчеты с клиентами": 1. договор в заказе не указан - это означает, что кредитный лимит 0, т.е. ничего разнести не получится 2. договор в заказе указан и в нем кредитный лимит не указан (стоит 0) - тоже ничего разнести не получится. Это мне показалось странным, т.к. без флага "Кредитный лимит по договору" , если в клиенте я не указываю кредитный лимит (оставляю 0) - это означает неограниченный кредитный лимит... 3. Исходная проблема: Почему флаг "Кредитный лимит по договору" не дает разносить мне накладные со знаком минус? как выяснилось тут проблема даже не в разноске, а в сопоставлении исходной накладной и сторно (у меня в сторно-заказе тип сопоставления = "помеченные операции", поэтому после разноски сразу идет сопоставление - и валится ошибка). Т.е. зачем-то в сопоставлении проводок по клиенту при включенном кредитном лимите по договору добавлена проверка, что сопоставлять я могу только если по договору не превышен кредитный лимит.Пример: по клиенту и договору кредитный лимит = 1000р.(кредитный лимит по договору включен). по клиенту и договору всего 4 проводки. 3 накладные: 500р, 600р, 100р и 1 сторно проводка: -100р. Т.е. сальдо по договору 1100р, кредитный лимит превышен. Сопоставить по этому договору я ничего не могу, т.к. по договору превышен кредитный лимит. Очень странное поведение, ведь в аналогичном случае без флага "Кредитный лимит по договору": кредитный лимит по клиенту = 1000р и он превышен (сальдо по клиенту = 1100р) - сопоставлять я могу без каких либо ошибок. Почему нельзя сопоставлять проводки клиента при превышении кредитного лимита по договору? Зачем вообще (идеологически) при сопоставлении проводок клиента проверять кредитный лимит по договору (и не проверять в целом по клиенту) ? Последний раз редактировалось d&m; 08.04.2010 в 11:21. |
|
04.03.2011, 10:58 | #5 |
MCT
|
кредитный лимит по договору по-прежнему не даёт спокойно жить
Проблема возникает:
1. При включенном кредитном лимите по договору (Расчеты с клиентами / Настройка / Параметры, закладка Кредитоспособность, поле Кредитный лимит по договору = да) 2. При сопоставлении/рассопоставлении проводок по клиенту/поставщику В сопоставляемых/рассопоставляемых проводках НЕ используется договор (проблема в методе checkCreditLimitWithoutContract на таблице RContractTable): 1. Если кредитный лимит по клиенту/поставщику = 0, то наличие положительного сальдо по клиенту не даст вам сопоставить/рассопоставить ни одну из проводок по такому клиенту. Однако кредитный лимит равный 0 - по смыслу это неограниченный кредитный лимит (если в карточке клиента не стоит флаг «Обязательный кредитный лимит») X++: if (creditMax < creditLimitContractTotal) { ret = checkFailed(strfmt("@GEE31748",_partnerCode,creditLimitContractTotal,creditMax)); 2. Для сальдо поставщика забыли минус. В итоге – если мы поставщику больше платили, чем закупали (положительное сальдо по поставщику) – мы не сможем сопоставить/рассопоставить ни одну из проводок. Как есть: balanceWithoutContract = vendTable.openBalanceMSTPerContract_RU('',''); Как надо: balanceWithoutContract = - vendTable.openBalanceMSTPerContract_RU('',''); В сопоставляемых/рассопоставляемых проводках используется договор (проблема в методе checkAvailableCreditLimit на таблице RContractTable): 1. Такая же ошибка при сравнении нулевого кредитного лимита и открытого сальдо. Кредитный лимит равен 0 – всегда получаем ерор. 2. нет ошибки с минусом для сальдо поставщика
__________________
Sometimes there is a moment as you are awakening - when you become aware of the real world around you, - but you are still dreaming. - You may think you can fly but you do better not try. Последний раз редактировалось d&m; 04.03.2011 в 11:18. |
|
|
За это сообщение автора поблагодарили: EVGL (5). |
Теги |
договор, кредитный лимит |
|
|