Я пытаюсь создать (и опубликовать) журналы бухгалтерской книги на основе данных, полученных через входящую службу AIF. Данные записываются в настраиваемую промежуточную таблицу со всеми необходимыми полями.
Теперь мне нужно создать журналы и записи транзакций из этой промежуточной таблицы. Я могу создать запись LedgerJournalTable
с несколькими записями LedgerJournalTrans
.
Вот фрагмент кода для создания LedgerJournalTrans
:
ledgerJournalTrans = this.initJournalTransFromStaging(ledgerJournalStaging);
ledgerJournalTrans.initValue();
ledgerJournalTrans.JournalNum = ledgerJournalTable.JournalNum;
ledgerJournalTrans.Voucher = numberSeq.voucher();
if (ledgerJournalTrans.validateWrite())
{
ledgerJournalTrans.insert();
}
// After that comes voucher validation using JedgerJournalCheckPost, which issues error that the voucher does not balance
Где this.initJournalTransFromStaging
инициализирует некоторые стандартные поля, такие как AccountNum
, AmountCurDebit
и так далее.
Моя проблема в том, что OffsetAccount
не заполняется из настроек по умолчанию (в моем конкретном случае он должен быть установлен по умолчанию из имени журнала главной книги, но его также можно взять из основных настроек учетной записи), что приводит к ошибке при проверке ваучера ( не балансирует).
Было бы здорово воспользоваться некоторыми стандартными функциями для правильной инициализации смещения учетной записи.
Благодарность!
2 ответа
Я нашел решение:
ledgerJournalEngine = LedgerJournalEngine::construct(ledgerJournalTable.JournalType);
ledgerJournalEngine.newJournalActive(ledgerJournalTable);
ledgerJournalEngine.accountModified(ledgerJournalTrans);
Это сделало фокус! Он запускает свой счет смещения от LedgerTable
или LedgerJournalName
, причем LedgerTable
имеет более высокий приоритет.
Вы можете инициировать счет смещения и размер смещения из записи LedgerJournalName
. Есть ли причина, по которой вы этого не делаете, или вы спрашиваете, существует ли более правильный способ сделать это из коробки?
См. Мой ответ здесь по очень похожему вопросу: https://stackoverflow.com/a/27853468/1179573
Похожие вопросы
Связанные вопросы
Новые вопросы
axapta
Microsoft Dynamics AX является одним из программных продуктов Microsoft для планирования ресурсов предприятия. Это часть семейства Microsoft Dynamics. Ранние версии (от 1.0 до 3.0) назывались Axapta, а более поздние версии (от 3.0 SP6 до AX 2012 и последней версии AX 7) называются Dynamics AX.