Счета не вставляются в QuickBook - PullRequest
0 голосов
/ 03 декабря 2018

С помощью этого кода я пытаюсь создать счет-фактуру с несколькими товарами / товарами в краткой книге 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);
...