Quickbooks Web 连接器如何添加带有项目 Location/Site 的发票
Quickbooks WebConnector How I can add invoice with Item Location/Site
我正在尝试使用 lineitem site/location 在 QuickBooks 桌面中创建发票。
有没有一种方法可以将带有订单项的项目位置与发票一起发送。
我尝试了一些代码但没有用 Web 连接器报告错误
0x80040400:QuickBooks 在解析提供的 XML 文本流时发现错误。
下面4个我都试过了
<Site>location name</Site>
<Site>
<FullName>location name</FullName>
</Site>
<Location>location name</Location>
<Location>
<FullName>location name</FullName>
</Location>
但没有成功,它给出了解析错误,
请问你能帮忙吗?
<?xml version="1.0" encoding="utf-8"?>
<?qbxml version="7.0"?>
<QBXML>
<QBXMLMsgsRq onError="continueOnError">
<InvoiceAddRq requestID="' . $requestID . '">
<InvoiceAdd>
<CustomerRef>
<ListID>' . $invoice['customer_id'] . '</ListID>
</CustomerRef>
<RefNumber>' . $invoice['ref_number'] . '</RefNumber>
<BillAddress>
<Addr1>' . $invoice['bill_addr1'] . '</Addr1>
<Addr2>' . $invoice['bill_addr2'] . '</Addr2>
<Addr3>' . $invoice['bill_addr3'] . '</Addr3>
<Addr4>' . $invoice['bill_city'] . '</Addr4>
<State>' . $invoice['bill_state'] . '</State>
<PostalCode>' . $invoice['bill_postalcode'] . '</PostalCode>
</BillAddress>
<ShipAddress>
<Addr1>' . $invoice['ship_addr1'] . '</Addr1>
<Addr2>' . $invoice['ship_addr2'] . '</Addr2>
<Addr3>' . $invoice['ship_addr3'] . '</Addr3>
<Addr4>' . $invoice['ship_city'] . '</Addr4>
<State>' . $invoice['ship_state'] . '</State>
<PostalCode>' . $invoice['ship_postalcode'] . '</PostalCode>
</ShipAddress>
<PONumber>' . $invoice['po_number'] . '</PONumber>
<DueDate>' . $invoice['due_date'] . '</DueDate>
<ShipDate>' . $invoice['ship_date'] . '</ShipDate>
<Memo>' . $invoice['memo'] . '</Memo>
<InvoiceLineAdd>
<ItemRef>
<FullName>'.$line['item_name'].'</FullName>
</ItemRef>
<Quantity>'.$line['quantity'].'</Quantity>
<Rate>'.$line['rate'].'</Rate>
<Amount>'.$line['amount'].'</Amount>
<Location>Floresville</Location>
</InvoiceLineAdd>
</InvoiceAdd>
</InvoiceAddRq>
</QBXMLMsgsRq>
`
我只需要知道如何为发票行项目中的项目添加 location/stock
每当您对 Windows 的 QuickBooks 桌面有语法问题时,您应该参考 QuickBooks OSR:
从 Select Message
下拉列表中选择 InvoiceAdd
,您将看到有关所有 XML 标签的文档。
你要找的是这个:
<InvoiceLineAdd>
<ItemRef>
<FullName>'.$line['item_name'].'</FullName>
</ItemRef>
<Quantity>'.$line['quantity'].'</Quantity>
<Rate>'.$line['rate'].'</Rate>
<Amount>'.$line['amount'].'</Amount>
<InventorySiteRef>
<ListID >IDTYPE</ListID>
<FullName >STRTYPE</FullName>
</InventorySiteRef>
<InventorySiteLocationRef>
<ListID >IDTYPE</ListID>
<FullName >STRTYPE</FullName>
</InventorySiteLocationRef>
</InvoiceLineAdd>
您应该为这两个节点分别指定 EITHER 和 ListID
或 FullName
。
此外,您应该在 Whosebug 上搜索此消息:
- 0x80040400:QuickBooks 在解析提供的 XML 文本流时发现错误。
如果这样做,您会得到一些有用的结果,例如下面链接的结果,它会告诉您如何解决此类问题。例如:
我正在尝试使用 lineitem site/location 在 QuickBooks 桌面中创建发票。 有没有一种方法可以将带有订单项的项目位置与发票一起发送。
我尝试了一些代码但没有用 Web 连接器报告错误 0x80040400:QuickBooks 在解析提供的 XML 文本流时发现错误。
下面4个我都试过了
<Site>location name</Site>
<Site>
<FullName>location name</FullName>
</Site>
<Location>location name</Location>
<Location>
<FullName>location name</FullName>
</Location>
但没有成功,它给出了解析错误, 请问你能帮忙吗?
<?xml version="1.0" encoding="utf-8"?>
<?qbxml version="7.0"?>
<QBXML>
<QBXMLMsgsRq onError="continueOnError">
<InvoiceAddRq requestID="' . $requestID . '">
<InvoiceAdd>
<CustomerRef>
<ListID>' . $invoice['customer_id'] . '</ListID>
</CustomerRef>
<RefNumber>' . $invoice['ref_number'] . '</RefNumber>
<BillAddress>
<Addr1>' . $invoice['bill_addr1'] . '</Addr1>
<Addr2>' . $invoice['bill_addr2'] . '</Addr2>
<Addr3>' . $invoice['bill_addr3'] . '</Addr3>
<Addr4>' . $invoice['bill_city'] . '</Addr4>
<State>' . $invoice['bill_state'] . '</State>
<PostalCode>' . $invoice['bill_postalcode'] . '</PostalCode>
</BillAddress>
<ShipAddress>
<Addr1>' . $invoice['ship_addr1'] . '</Addr1>
<Addr2>' . $invoice['ship_addr2'] . '</Addr2>
<Addr3>' . $invoice['ship_addr3'] . '</Addr3>
<Addr4>' . $invoice['ship_city'] . '</Addr4>
<State>' . $invoice['ship_state'] . '</State>
<PostalCode>' . $invoice['ship_postalcode'] . '</PostalCode>
</ShipAddress>
<PONumber>' . $invoice['po_number'] . '</PONumber>
<DueDate>' . $invoice['due_date'] . '</DueDate>
<ShipDate>' . $invoice['ship_date'] . '</ShipDate>
<Memo>' . $invoice['memo'] . '</Memo>
<InvoiceLineAdd>
<ItemRef>
<FullName>'.$line['item_name'].'</FullName>
</ItemRef>
<Quantity>'.$line['quantity'].'</Quantity>
<Rate>'.$line['rate'].'</Rate>
<Amount>'.$line['amount'].'</Amount>
<Location>Floresville</Location>
</InvoiceLineAdd>
</InvoiceAdd>
</InvoiceAddRq>
</QBXMLMsgsRq>
`
我只需要知道如何为发票行项目中的项目添加 location/stock
每当您对 Windows 的 QuickBooks 桌面有语法问题时,您应该参考 QuickBooks OSR:
从 Select Message
下拉列表中选择 InvoiceAdd
,您将看到有关所有 XML 标签的文档。
你要找的是这个:
<InvoiceLineAdd>
<ItemRef>
<FullName>'.$line['item_name'].'</FullName>
</ItemRef>
<Quantity>'.$line['quantity'].'</Quantity>
<Rate>'.$line['rate'].'</Rate>
<Amount>'.$line['amount'].'</Amount>
<InventorySiteRef>
<ListID >IDTYPE</ListID>
<FullName >STRTYPE</FullName>
</InventorySiteRef>
<InventorySiteLocationRef>
<ListID >IDTYPE</ListID>
<FullName >STRTYPE</FullName>
</InventorySiteLocationRef>
</InvoiceLineAdd>
您应该为这两个节点分别指定 EITHER 和 ListID
或 FullName
。
此外,您应该在 Whosebug 上搜索此消息:
- 0x80040400:QuickBooks 在解析提供的 XML 文本流时发现错误。
如果这样做,您会得到一些有用的结果,例如下面链接的结果,它会告诉您如何解决此类问题。例如: