С помощью этого кода я пытаюсь создать счет-фактуру с несколькими товарами / товарами в краткой книге https://github.com/IntuitDeveloper/SampleApp-CRUD-PHP/blob/master/CRUD_Examples/Invoice/InvoiceCreate.php, но переменная $ resultObj всегда дает значение num, когда данные принимаются за цикл, но при передачетолько одна информация о товаре успешно создает счет.
я применил этот метод Вставка содержимого массива в неработающий объект дает ответ, но все еще нулевой.
счет:
$num = 1;
$Lines = [];
foreach ($json as $rec) {
foreach ($rec['products'] as $pro) {
$productDetails = getItemObj($pro, $collection1);
if ($productDetails == 'Error') {
continue;
}
$taxDetails = getTaxObj($dataService, $pro);
if ($taxDetails == 'Error') {
continue;
}
$Lines[] =
[
"Id" => $num,
"Amount" => $pro['amount'],
"Description" => $pro['productDescription'],
"DetailType" => "SalesItemLineDetail",
"SalesItemLineDetail" => [
"ItemRef" => [
"value" => $productDetails->Id,
],
"TaxCodeRef" => [
"value" => $taxDetails->Id
],
"UnitPrice" => $pro['unitPrice'],
"Qty" => $pro['quantity'],
]
];
$num++;
}
$Lines[] = [
"Amount" => $rec['invoiceTotal'],
"DetailType" => "SubTotalLineDetail",
"SubTotalLineDetail" => []
];
$customerRef = getCustomerObj($dataService, $rec['clientName']);
$invoiceObj = Invoice::create([
"Line" => $Lines,
"CustomerRef" => [
"value" => $customerRef->Id
],
]);
$resultingInvoiceObj = $dataService->Add($invoiceObj);