2015-09-28 85 views
1

這是我QBXML要求如何使用qbxml和qbsdk13修改quickbooks中的發票?

<?xml version="1.0" ?> 
<?qbxml version="6.0"?> 
<QBXML> 
    <QBXMLMsgsRq onError="stopOnError"> 
     <InvoiceModRq requestID="1"> 
      <InvoiceMod> 
       <TxnID>85-1442639879</TxnID> 
       <EditSequence>1442639879</EditSequence> 
       <CustomerRef> 
        <ListID>80000005-1442639850</ListID> 
        <FullName>Bruce Banner</FullName> 
       </CustomerRef> 
       <TxnDate>2015-09-19</TxnDate> 
       <RefNumber>5462</RefNumber> 
       <InvoiceLineMod> 
        <ItemRef> 
         <ListID>8000000A-1442469770</ListID> 
         <FullName>Item 1</FullName> 
        </ItemRef> 
        <Quantity>1</Quantity> 
        <Rate>1100.00</Rate> 
       </InvoiceLineMod> 
      </InvoiceMod> 
     </InvoiceModRq> 
    </QBXMLMsgsRq> 
</QBXML> 

我得到一個錯誤 QuickBooks的解析提供的XML文本流時發現錯誤。

請幫助

回答

1

如果你指的是QuickBooks的OSR:

你會發現<InvoiceLineMod>元素中,這個節點是需要

  • <TxnLineID>

的OSR也爲您提供了更多的信息:

TxnLineID交易行的

識別號碼。 (TxnLineID 支持作爲SDK的2.0版。隨着qbXML V1.0和V1.1, TxnLineID始終返回零。)

如果你需要在一個事務國防部添加新的交易行 請求,您可以通過將TxnLineID設置爲-1來完成此操作。

所以,你需要添加一個<TxnLineID>節點。如果它是新訂單項,請將-1作爲節點中的內容。如果它是您嘗試更新的現有行,請將現有行的TxnLineID值放在那裏。

實施例:

... 
<InvoiceLineMod> 
    <TxnLineID>-1</TxnLineID> 
    <ItemRef> 
     <ListID>8000000A-1442469770</ListID> 
     <FullName>Item 1</FullName> 
    </ItemRef> 
    <Quantity>1</Quantity> 
    <Rate>1100.00</Rate> 
</InvoiceLineMod> 
... 
相關問題