IJournalEntryMod的docs表示此调用只需要txnId,txnLineId和EditSequence。我试图更改其中一行的帐户,我收到错误“交易不平衡”。
答案 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>