qbxml - Quickbooks InvoiceAdd qbxml 格式问题
问题描述
我必须在我的 XML 文件格式中遗漏一些东西,以便将发票添加到 Quickbooks Desktop Enterprise 美国版,我的 qbxml 请求如下;
<?xml version="1.0" encoding="utf-8"?>
<?qbxml version="13.0"?>
<QBXML>
<QBXMLMsgsRq onError="stopOnError">
<InvoiceAddRq>
<InvoiceAdd>
<CustomerRef>
<FullName>XXXXXXXXX</FullName>
</CustomerRef>
<ClassRef>
<FullName>XXXXXXX</FullName>
</ClassRef>
<ARAccountRef>
<FullName>XXXXXXXXXX</FullName>
</ARAccountRef>
<TemplateRef>
<FullName>Standard invoice</FullName>
</TemplateRef>
<TxnDate/>
<RefNumber>83434</RefNumber>
<BillAddress>
<Addr1>4xxxxxx</Addr1>
<City>xxxxxxxx</City>
<State>XX</State>
<PostalCode>0000</PostalCode>
</BillAddress>
<IsPending>1</IsPending>
<IsFinanceCharge>0</IsFinanceCharge>
<PONumber>12345</PONumber>
<TermsRef>
<FullName>Net 30</FullName>
</TermsRef>
<DueDate/>
<SalesRepRef/>
<FOB/>
<ShipDate/>
<ShipMethodRef/>
<ItemSalesTaxRef/>
<Memo/>
<CustomerMsgRef/>
<IsToBePrinted>0</IsToBePrinted>
<IsToBeEmailed>0</IsToBeEmailed>
<IsTaxIncluded>0</IsTaxIncluded>
<CustomerSalesTaxCodeRef/>
<Other/>
<ExchangeRate>1</ExchangeRate>
<SetCredit>
<CreditTxnID>1</CreditTxnID>
<AppliedAmount>0</AppliedAmount>
<Override>1</Override>
</SetCredit>
<InvoiceLineAdd>
<itemRef>
<FullName>S-check UT</FullName>
</itemRef>
<Desc>Interpreter</Desc>
<Quantity>1</Quantity>
<UnitOfMeasure/>
<Rate>10</Rate>
<RatePercent>100</RatePercent>
<PriceLevelRef/>
<ClassRef/>
<Amount>10</Amount>
<OptionForPriceRuleConflict>0</OptionForPriceRuleConflict>
<InventorySiteRef/>
<InventorySiteLocationRef/>
<SerialNumber/>
<LotNumber/>
<ServiceDate/>
<SalesTaxCodeRef/>
<OverrideItemAccountRef/>
<Other1/>
<Other2/>
<LinkToTxn>
<TxnID>0</TxnID>
<TxnLineID>0</TxnLineID>
</LinkToTxn>
<DataExt>
<OwnerID>3caa4f6f-fcb3-4767-99e6-0ba5dfd34e8f</OwnerID>
<DataExtName>Sample</DataExtName>
<DataExtValue>Sample</DataExtValue>
</DataExt>
</InvoiceLineAdd>
</InvoiceAdd>
</InvoiceAddRq>
</QBXMLMsgsRq>
</QBXML>
当我使用 qbxml 验证器检查此 xml 请求时,即使我提供了 OSR 工具中概述的所有必填字段,我也会收到以下错误消息;
Line: 53
LinePos: 20
Src Text: <itemRef>
Reason: Element content is invalid according to the DTD/Schema.
Expecting: ItemRef, Desc, Quantity, UnitOfMeasure, Rate, RatePercent, PriceLevelRef, ClassRef,
Amount, TaxAmount, OptionForPriceRuleCon....
我不确定我的 xml 文件有什么问题,当我运行 quickbooks 网络连接器时,我得到的错误消息是;
Message: QuickBooks found an error when parsing the provided XML text stream.
我知道这是因为我的 qbxml 请求格式错误,这可能是不正确的。请协助
解决方案
我已经过滤了您的 QBXML 并删除了生成 QBXML 标记的所有错误
<?xml version="1.0" encoding="utf-8"?>
<?qbxml version="13.0"?>
<QBXML>
<QBXMLMsgsRq onError="stopOnError">
<InvoiceAddRq>
<InvoiceAdd>
<CustomerRef>
<FullName>XXXXXXXXX</FullName>
</CustomerRef>
<ClassRef>
<FullName>XXXXXXX</FullName>
</ClassRef>
<ARAccountRef>
<FullName>XXXXXXXXXX</FullName>
</ARAccountRef>
<TemplateRef>
<FullName>Standard invoice</FullName>
</TemplateRef>
<TxnDate/>
<RefNumber>83434</RefNumber>
<BillAddress>
<Addr1>4xxxxxx</Addr1>
<City>xxxxxxxx</City>
<State>XX</State>
<PostalCode>0000</PostalCode>
</BillAddress>
<IsPending>1</IsPending>
<IsFinanceCharge>0</IsFinanceCharge>
<PONumber>12345</PONumber>
<TermsRef>
<FullName>Net 30</FullName>
</TermsRef>
<DueDate/>
<SalesRepRef/>
<FOB/>
<ShipDate/>
<ShipMethodRef/>
<ItemSalesTaxRef/>
<Memo/>
<CustomerMsgRef/>
<IsToBePrinted>0</IsToBePrinted>
<IsToBeEmailed>0</IsToBeEmailed>
<IsTaxIncluded>0</IsTaxIncluded>
<CustomerSalesTaxCodeRef/>
<Other/>
<ExchangeRate>1</ExchangeRate>
<SetCredit>
<CreditTxnID>1</CreditTxnID>
<AppliedAmount>0</AppliedAmount>
<Override>1</Override>
</SetCredit>
<InvoiceLineAdd>
<Desc>Interpreter</Desc>
<Quantity>1</Quantity>
<UnitOfMeasure/>
<Rate>10</Rate>
<ClassRef/>
<Amount>10</Amount>
<InventorySiteRef/>
<InventorySiteLocationRef/>
<SerialNumber/>
<ServiceDate/>
<SalesTaxCodeRef/>
<OverrideItemAccountRef/>
<Other1/>
<Other2/>
<LinkToTxn>
<TxnID>0</TxnID>
<TxnLineID>0</TxnLineID>
</LinkToTxn>
</InvoiceLineAdd>
</InvoiceAdd>
</InvoiceAddRq>
</QBXMLMsgsRq>
</QBXML>
推荐阅读
- python-3.x - Keras 中的上三角核初始化器
- python - 什么是完整的 conda-forge 频道网址?
- node.js - 如何在项目的其他文件上导出 Socket.io 实例
- autodesk-forge - 如何使 clearThemingColors() 在 Viewer 6.4.0 及更高版本上工作?
- deployment - chronograf 部署仪表板
- c# - 如何自定义 Swagger 端点 url?
- php - 多团队单体应用程序开发中的 SonarQube 用例
- maven - How to execute ant jar from maven-antrun-plugin
- apache - rewrite rule to redirect to SEO friendly URL
- jmeter - 如何从 Jmeter 中的 CSV 获取线程数和持续时间