0
Quickbooksオンラインサンドボックスアカウントで請求書オブジェクトを作成しようとしています。 Invoiceオブジェクトのドキュメントhttps://developer.intuit.com/docs/api/accounting/Invoiceは、請求書オブジェクトの最も単純な構造を定義していますが、それに応じて使用していますが、まだエラーが発生しています。何が欠けている??PHPを使用したAPIを使用したQuickbooksでの請求書作成エラー
$invoiceObj = new \IPPInvoice();
$Line = new \IPPLine();
$Line->Amount = 30;
$Line->Description = "Test invoice line item";
$Line->DetailType = "SalesItemLineDetail";
$Line->AmountSpecified = true;
$saleItemLineDetail = new \IPPSalesItemLineDetail();
$saleItemRefType = new \IPPNameValue();
$saleItemRefType->name = "Services";
$saleItemRefType->value = "1";
$saleItemLineDetail->ItemRef = $saleItemRefType;
$saleItemLineDetail->ServiceDate = '2016-06-28';
$Line->SalesItemLineDetail = $saleItemLineDetail;
$invoiceObj->Line = $Line;
//$invoiceObj->DocNumber = '23713';
//$invoiceObj->TxnDate = '2016-06-28';
$invoiceObj->DueDate = date(strtotime('+5 days'));
$invoiceObj->AutoDocNumber = true;
$customerRefType = new \IPPNameValue();
$customerRefType->name = "DisplayName969745229";
$customerRefType->value = 58;
$invoiceObj->CustomerRef = $customerRefType;
$resultingObj = $dataService->Add($invoiceObj);
echo "Created Invoice Id={$resultingObj->Id}. Reconstructed response body:\n\n";
$xmlBody = \XmlObjectSerializer::getPostXmlFromArbitraryEntity($resultingObj, $urlResource);
echo $xmlBody . "\n";
`
このコードは以下のエラースロー:
IdsException: [0]: Required parameter Line.SalesItemLineDetail is missing in the request
を任意の助けを大幅に理解されるであろう。ありがとう
var_dump($ saleItemLineDetail)の出力は何ですか? APIは、割り当てようとしている値が空である場合にフィールドが欠落していると言う場合があります。 – theruss
お返事ありがとうございます。私はそれを考え出した。アイテムは欠落していませんが、間違って設定されています。実際のクラスはそのプロパティを設定するために使用する必要がある 'IPPReferenceType'でしたが、私はAPIによって認識されなかった' IPPNameValue'を使用していました。ありがとう –