【问题标题】:PHP Quickbooks SDK - AddInvoice XML problemsPHP Quickbooks SDK - AddInvoice XML 问题
【发布时间】:2017-05-24 13:33:04
【问题描述】:

我现在正在尝试使用默认工作的模板添加发票。但是当我将 Other1 和 Other2 添加到它返回的 XML 中时:

已处理错误:0x80040400:QuickBooks 在解析提供的 XML 文本流时发现错误。 (处理程序返回:)

这是我发送的生成错误的 XML:

<?xml version="1.0" encoding="utf-8"?>
<?qbxml version="2.0"?>
<QBXML>
     <QBXMLMsgsRq onError="stopOnError">
           <InvoiceAddRq>
                   <InvoiceAdd>
                         <CustomerRef>
                              <ListID>{customer_id}</ListID>
                         </CustomerRef>
                         <TxnDate>'.date('Y-m-d').'</TxnDate>
                         <RefNumber>'.$ID.'</RefNumber>           
                         <Memo>Generated via Sys</Memo>
                         <InvoiceLineAdd>
                              <ItemRef>
                                   <FullName>Purchase</FullName>
                              </ItemRef>
                              <Desc>Rental of 3 Days</Desc>
                              <Quantity>3</Quantity>
                              <Rate>200</Rate>
                              <Other1 >STRTYPE</Other1>
                              <Other2 >STRTYPE</Other2>
                         </InvoiceLineAdd>

                   </InvoiceAdd>
           </InvoiceAddRq>
     </QBXMLMsgsRq>
</QBXML>

无论我在 Other1 和 Other2 中放入什么,它都不起作用。但是第二次我删除它们然后它创建发票没问题。 (我使用 Mac 进行开发和团队查看器进行测试,那么您是否知道 Mac 的 XML 验证器?)

【问题讨论】:

    标签: php sdk quickbooks


    【解决方案1】:

    如果您查看 QuickBooks OSR:

    您会看到 Other1Other2 字段在 qbXML 版本 6.0 之前不受支持:

    你正在使用版本:

    &lt;?qbxml version="2.0"?&gt;

    更改您正在使用的版本。

    另外,下载免费的 VM 工具并在 Mac 上的 VM 中安装 Windows。然后安装 QuickBooks SDK。然后您就可以访问XML Validator 工具,它可以准确地告诉您在这种情况下出了什么问题。

    【讨论】:

      猜你喜欢
      • 2014-08-10
      • 1970-01-01
      • 2019-07-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多