Буду признателен за любую информацию или разъяснения о поведении функции updateOrCreateInvoices. Существует ли особый способ структурирования запроса для обеспечения целостности контактной информации? Мы будем очень признательны за любую помощь или предложения.
Используемая функция: updateOrCreateInvoices
Проблема: контактные данные, в частности поле «дополнительные лица», загружаются. перезаписано или удалено.
Вот фрагмент кода, который я использую для синхронизации счетов.
Код: Выделить всё
public function create_or_update_invoice($xero_tenant_id, $api_instance, $invoice_list = array()){
$arr_invoices = array();
foreach ($invoice_list as $invoice) {
//Retrieve Existing Contact Details (using the getContacts function):
$contact = $this->get_contact_by_id($xero_tenant_id, $api_instance, $xero_contact_id, $contact_name);
//Prepare Invoice Data with Existing Contact & Invoice Details:
$new_invoice = new XeroAPI\XeroPHP\Models\Accounting\Invoice;
$new_invoice->setType(XeroAPI\XeroPHP\Models\Accounting\Invoice::TYPE_ACCREC)
->setContact($contact)
...
...
->setStatus(XeroAPI\XeroPHP\Models\Accounting\Invoice::STATUS_AUTHORISED);
$arr_invoices[] = $new_invoice;
}
$invoices = new XeroAPI\XeroPHP\Models\Accounting\Invoices;
$invoices->setInvoices($arr_invoices);
try{
//Update or Create Invoice:
$result = $api_instance->updateOrCreateInvoices($xero_tenant_id, $invoices);
return $result;
}catch(Exception $e){
return $e;
}
}
Подробнее здесь: https://stackoverflow.com/questions/786 ... ct-details