Я работаю над интеграцией пользовательской системы PHP с XERO и могу создавать счета-фактуры и т. Д. c. Теперь нам нужно прикрепить некоторые файлы к накладной.
Примеры API PHP не имеют функции для этого, только функцию для прикрепления файла к учетной записи, поэтому я использовал это в качестве основы и просмотрел онлайн-документацию для функции createInvoiceAttachmentByFileName (), которая аналогична функции createAccountAttachmentByFileName (), за исключением того, что у нее есть дополнительный параметр ($ include_online).
Функция завершается успешно и возвращает правильный результат, но она похоже, игнорирует параметр $ include_online. Неважно, что я установил, оно никогда не включается.
Ниже приведен мой код функции.
Кто-нибудь делал это раньше и может, может быть, скажет мне, что я делаю неправильно?
Я использую v 1.4.0 XERO PHP API
Спасибо
Андре
public function addInvoiceAttachment($invoice_xero_id, $file_path)
{
$res = "OK";
// Get the file name
$sep_pos = strrpos($file_path, '/');
$filename = substr($file_path, $sep_pos+1);
$handle = fopen($file_path, "r");
$contents = fread($handle, filesize($file_path));
fclose($handle);
$include_online = True;
try
{
$result = $this->apiInstance->createInvoiceAttachmentByFileName($this->xeroTenantId, $invoice_xero_id, $filename, $include_online, $contents);
trigger_error("addInvoiceAttachment: result = ".print_r($result, true));
}
catch (Exception $e)
{
trigger_error('Exception when calling AccountingApi->createInvoiceAttachmentByFileName: '.$e->getMessage());
$res = $e->getMessage();
}
return $res;
} // addInvoiceAttachment
// --------------------------------------------------------------------------