30.10.2014, 15:09 | #1 |
Участник
|
Нюансы российской локализации в переоценке по контрагентам
Коллеги, привет!
Долго думала, куда поместить тему, в разработку или в функционал, решила все же в функционал, может, мне кто-то все-таки объяснит, зачем сделано так, как сделано. Так вот, коллеги. В классе, который обрабатывает периодическую переоценку в поставщиках и клиентах, переоценка происходит в 2 шага: на первом шаге берутся проводки, которые сопоставлены после даты переоценки, а на втором шаге - проводки, которые на дату переоценки являются открытыми. И вот представим себе ситуацию: есть накладная (клиенту), она сопоставлена 31.10.2014, делается переоценка также на 31.10.2014 и система при переоценке вначале делает проводки по нереализованной курсовой и тут же их откатывает обратно на дату сопоставления. Поскольку дата сопоставления и дата переоценки совпадают - получаются бессмысленные телодвижения с нулевым результатом. Происходит это из-за вот такого кода в методе createSettledTransQuery класса СustExchAdjTrans (32-41 строка): X++: if (countryRegion_RU) { custSettlementDs.addRange(fieldnum(CustSettlement, TransDate)).value(SysQuery::range(exchangeAdjustmentController.postingDate(), null)); } else { // </GEERU> custSettlementDs.addRange(fieldnum(CustSettlement, TransDate)).value(strfmt('%1 %2', '>', exchangeAdjustmentController.postingDate())); // <GEERU> } Есть ли этому логическое объяснение? Заранее спасибо! |
|