Можно ли создать счет-фактуру с одноразовыми позициями или генерировать отсутствующие позиции по запросу, не анализируя возвращаемое значение QBXMLMsgsRs
?
Я пытаюсь передать счета в QuickBooks через веб-коннектор QuickBooks, но не могу убедиться, что элементы уже существуют. Я знал, что QuickBooks сам может создавать элементы по запросу.
Я получу следующее ответное сообщение:
QBXMLMsgsRs:
Недопустимая ссылка на элемент QuickBooks «1000000000» в строке «Счет». Сообщение об ошибке QuickBooks: неверный аргумент. Указанная запись не существует в списке.
В качестве запасного варианта я бы проанализировал возвращаемое значение, создал элемент и снова отправил счет, но я ищу существующую реализацию. Я уже проверил Экранный справочник (InvoiceAdd), без любая полезная информация.
Вот пример моего QBXML
:
<?xml version="1.0" encoding="us-ascii"?>
<?qbxml version="13.0"?>
<QBXML>
<QBXMLMsgsRq onError="stopOnError">
<InvoiceAddRq requestID="bd4a0a4d-81ea-4f95-ae09-150f15a12423">
<InvoiceAdd>
<CustomerRef>
<ListID>80000004-1434444973</ListID>
<FullName>University of North Carolina</FullName>
</CustomerRef>
<TxnDate>1999-01-21</TxnDate>
<RefNumber>9668</RefNumber>
<BillAddress>
<Addr1>University of North Carolina</Addr1>
<Addr2>University City Blvd</Addr2>
<Addr3 />
<City>Charlotte</City>
<State>NC</State>
<PostalCode>9201</PostalCode>
<Country>United States</Country>
</BillAddress>
<InvoiceLineAdd>
<ItemRef>
<FullName>1000000000</FullName>
</ItemRef>
<Desc>Item 1 Description Goes Here</Desc>
<Quantity>1</Quantity>
<Rate>295</Rate>
</InvoiceLineAdd>
<InvoiceLineAdd>
<ItemRef>
<FullName>1000000001</FullName>
</ItemRef>
<Desc>Item 2 Description Goes Here</Desc>
<Quantity>5</Quantity>
<Rate>25</Rate>
</InvoiceLineAdd>
</InvoiceAdd>
</InvoiceAddRq>
</QBXMLMsgsRq>
</QBXML>