0

IJournalEntryMod的文档说此调用只需要 txnId、txnLineId 和 EditSequence。我尝试更改其中一行的帐户,但收到错误“交易不平衡”。

  1. 您是否必须将现有 JournalEntry 行中的每个值复制到附加到 JournalEntryModList 的行中?
  2. 您是否需要提供现有事务的所有行?(我注意到文档上的这条评论“请注意,在 mod 请求中,包括 [原文如此] 一行意味着您必须包括所有行,无论是否修改”。
4

1 回答 1

1

您是否必须将现有 JournalEntry 行中的每个值复制到附加到 JournalEntryModList 的行中?

您不必再次发送 [JournalLineMod] 中的每个元素,但您必须至少为每一行发送 [TxnLineID]。

例如,如果你只是发送这个:

<JournalEntryModRq>
<JournalEntryMod>
<TxnID>ABCD1234</TxnID>
<EditSequence>1234</EditSequence>
<TxnDate>some new date here</TxnDate>
</JournalEntryMod>
</JournalEntryModRq>

然后,您实际上是在告诉 QuickBooks 删除该日记帐分录中的每个现有行项目。

相反,您必须为要保留的每个行项目发送 TxnLineID。您未发送的任何行项目 TxnLineID 值都将从交易中删除。

所以是这样的:

<JournalEntryModRq>
<JournalEntryMod>
<TxnID>ABCD1234</TxnID>
<EditSequence>1234</EditSequence>
<TxnDate>some new date here</TxnDate>

<JournalLineMod>
<TxnLineID>An existing TxnLineID goes here</TxnLineID>
</JournalLineMod>
<JournalLineMod>
<TxnLineID>An existing TxnLineID goes here</TxnLineID>
</JournalLineMod>

<JournalLineMod>
 ... bla bla bla lots of new data goes here ...
</JournalLineMod>

</JournalEntryMod>
</JournalEntryModRq>
于 2013-01-03T17:12:11.117 回答