|
![]() |
#1 |
китайский стажер
|
![]()
glibs, спасибо огромной за наводку на параметр, он нашелся на закладке "Sales tax" в параметрах главной книги и называется "Settlement / Latest date for closing" .
![]() И теперь дата закрытия всегда дата последнего платежа. Работает действительно АОТ\Classes\CustVendSettle.settleNow() . Mazzy, спасибо за объяснение по поводу использования CustTransOpen . Логично. По поводу того, почему отчет не работает в случае, когда дата закрытия не равна дате последнего платежа. Например, мы закрыли инвойс платежами от 10 октября и от 15 сентября и формируем отчет на 30 сентября. Для отчета выбираются все проводки по клиенту, проведенные ДО даты отчета, закрытые ПОСЛЕ даты отчета, сопоставленные ПОСЛЕ даты отчета. Смотрим CustBalanceList.queryRunClosedTransactions. X++: queryRun.query().dataSourceTable(tablenum(CustTrans)).findRange(fieldnum(CustTrans, AccountNum)).value(queryValue(_custTable.AccountNum)); queryRun.query().dataSourceTable(tablenum(CustTrans)).findRange(fieldnum(CustTrans, TransDate)) .value(queryRange(dateNull(),transactionDate)); queryRun.query().dataSourceTable(tablenum(CustTrans)).findRange(fieldnum(CustTrans, Closed)).value(SysQuery::valueEmptyString() + ',' + queryRange(transactionDate, dateMax())); if (!printReversed) { ... } queryRun.query().dataSourceTable(tablenum(CustSettlement)).findRange(fieldnum(CustSettlement, TransDate)).value(queryRange(transactionDate, dateMax())); Таким образом, баланс по клиенту (простая сумма всех проводок до определенного числа) будет расходиться с Aging Report. Так ведь? Вторая проблема с exchange adjustments. Тоже пришлось корректировать ручками.
__________________
Может быть выйдет, а может не-е-е-ет... Новая песня вместо штиблет.. |
|