有没有办法使用Consolibyte quickbooks工具包从发票中删除行?
我可以使用行发送发票,但我还想更新发票,我认为最好的方法是删除每一行,然后发送当前行。即:要更新发票,我首先使用本地存储的refbooks从quickbooks获取发票,删除行,然后更新发票对象上的字段,然后添加新行,然后使用更新方法发送发票。 / p>
我见过这个例子:
但我不确定如何更新单个行,因为我没有引用它们存储在本地,因此尝试删除它们然后重新创建。
答案 0 :(得分:2)
在这里找到答案:
How to access Quickbooks Invoice Line Items using php api
我的解决方案使用Laravel:
public function qbUpdateInvoice(Invoice $invoice)
{
if ($invoice->qb_ref == null) {
throw new \Exception('Invoice Quickbooks ref not available.');
}
$qbInvoice = $this->findInvoiceByRef($invoice);
$count = $qbInvoice->countLine();
for ($i = 0; $i < $count; $i++) {
$qbInvoice->unsetLine($i);
}
$qbInvoice = $this->setInvoiceDetails($invoice, $qbInvoice);
$qbInvoice = $this->setInvoiceLines($invoice, $qbInvoice);
$response = $this->qbInvoiceService->update($this->context, $this->realm, $qbInvoice->getId(), $qbInvoice);
if (!$response) {
throw new \Exception($this->qbInvoiceService->lastError());
}
return $response;
}