|
|
#2 |
|
SAP
|
Цитата:
За создание проводок отвечают классы LedgerVoucher и LedgerVoucherObject. Последний при создание объекта прнимает параметр Correction, который и отвечает за то, будет ли проводка сторнирущей или реверсированной. Важное замечание: документ ГК может быть либо целиком сторно, либо целиком реверс. То есть ситуация, когда часть провдок в рамках одного документа ГК являются сторнирующими, а часть реверсированными, невозможна (в рамках стандартного функционала, естественно ). Чтобы убедится в этом, достаточно взглянуть на конструктор класса LedgerVoucherObject newVoucher, который принимает в качестве параметра помимо прочего документ ГК для проводки (_voucher) и признак сторно (_correction).
Общий вывод. В рамках стандартного функционала добиться возникновения правильных сторнирующих проводок при закрытии склада невозможно. Более того, решить эту проблему небольшими модификациями невозможно. А писать большую и сложную модификацию (например, можно было бы создавать два ваучера по одному закрытию, один сторно, второй реверс) слишком опасно с точки зрения целостности данных и логики системы. X++: ledgerVoucherTransObject = LedgerVoucherTransObject::newCreateTrans(
_ledgerVoucher.findLedgerVoucherObject(),
this.postingBalanceSheet(),
this.accountBalanceSheet(),
this.dimension(),
Companyinfo::standardCurrency(),
costAmount,
0);
ledgerVoucherTransObject.parmCorrect(this.correctLedgerTransObject() ? this.correctLedgerTransObject() : ledgerVoucherTransObject.parmCorrect());
_ledgerVoucher.addTrans(ledgerVoucherTransObject); |
|
|
| Теги |
| ax3.0, ax4.0, faq, себестоимость, сторно |
|
|
|