在做JournalEntryMod时,您是否需要提供原始JournalEntry的所有信息?

时间:2013-01-03 15:30:48

标签: quickbooks

IJournalEntryMod的docs表示此调用只需要txnId,txnLineId和EditSequence。我试图更改其中一行的帐户,我收到错误“交易不平衡”。

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

1 个答案:

答案 0 :(得分:1)

  

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

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

e.g。如果你发送这个:

<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>