17.11.2011, 12:52 | #1 |
Участник
|
Как из кода сделать сопоставление двух проводок
Здравствуйте.Такой вопрос а как из кода сделать сопоставление двух проводок по клиенту насколько понял это делается через CustVendAutoSettlement_Cust_RU но вот как это делается правильно негде не смог найти.
|
|
17.11.2011, 13:23 | #2 |
Участник
|
Посмотрите под отладчиком что происходит в форме сопоставления фактур с оплатами.
|
|
|
За это сообщение автора поблагодарили: egater (1). |
17.11.2011, 13:34 | #3 |
Участник
|
Или посмотрите периодическую операцию "Периодическое сопоставление". Кстати оно как раз делается с помощью класса CustVendAutoSettlement_Cust_RU.
Последний раз редактировалось Zick-Zibn; 17.11.2011 в 13:38. |
|
|
За это сообщение автора поблагодарили: egater (1). |
17.11.2011, 14:48 | #4 |
Участник
|
Необходимые действия, для того, чтобы автоматически сопоставить операции:
1. Для проводки, которую мы хотим сопоставить (CustVendTrans) мы вызываем метод CustVendTrans.transData().markForSettlement(CustVendTable); Номер счета в CustVendTable должен быть точно такой же, как и в CustVendTrans. Этот метод нужно вызывать в цикле по всем операциям, которые мы хотим сопоставить. После прохождения цикла вызывается метод VendTrans::settleTransact(CustVendTable); У него куча параметров, но реально можно указать только один. 2. Для чего в параметрах указывается CustVendTable ? Все записи в таблице SpecTrans(туда помещаются операции, которые будут сопоставлены), которые своими полями SpecRecId и SpecTableId должны указывать на одну и ту же запись в CustVendTable. Дело в том, что механизм сопоставления работает приблизительно так:в CustVendSettlment.SettleNow() передается запись из CustVendTable.Он находит все записи в SpecTrans, связанные с этим CustVendTable и сопоставляет их. Забодится о тот какую конкретно операцию нужно сопоставить с какой, если их больше 2-х (например мы в цикле прошли и отметили для сопоставления 4 операции) не нужно, класс сопоставления сам опеределит, что и с чем красиво сопоставить. |
|
|
За это сообщение автора поблагодарили: egater (1). |