Что такое элемент entityRef в qbXML с TimeActivity

Я создаю некоторое программное обеспечение для отслеживания времени для взаимодействия с quickbooks, и ниже мой экспортированный файл XML. Я получаю код состояния 3140, указывающий на наличие недопустимой ссылки на объект QuickBooks в TimeTracking. Quickbooks возвращает ошибку: «Запись secified не существует в списке».

Я заметил, что если я извлекаю тег EntityRef из XML-файла, Quickbooks выдает ошибку синтаксического анализа, но я совершенно не понимаю, что нужно вставить в элемент EntityRef.

<?xml version="1.0" encoding="UTF-8"?>
<?qbxml version="10.0"?>
-<QBXML>
 -<QBXMLMsgsRq onError="stopOnError">
  -<TimeTrackingAddRq>
   -<TimeTrackingAdd>
    -<EntityRef>
      <FullName>Some List Name Here?</FullName>
     </EntityRef>
     <Duration>PT8h5M</Duration>
    </TimeTrackingAdd>
   </TimeTrackingAddRq>
  </QBXMLMsgsRq>
 </QBXML>

person Jeremy McQuivey    schedule 14.06.2013    source источник


Ответы (1)


EntityRef/FullName может быть:

  • ФИО сотрудника
  • Полное имя поставщика
  • или список «Другое имя» FullName

т. е. это человек/компания, для которых вы отслеживаете время.

В других запросах это также может быть полное имя клиента. Но в случае Time Tracking нет смысла отслеживать время клиента.

Цитата из документации QuickBooks OSR:

Субъект «Сущность» QuickBooks — это клиент, продавец, сотрудник или лицо из списка «других имен» QuickBooks. Особые случаи, на которые следует обратить внимание: в сообщении BillToPayQuery EntityRef относится к имени поставщика. В сообщениях JournalCreditLine и JournalDebitLine для учетных записей A/R EntityRef должен ссылаться на клиента, иначе транзакция не будет записана. Для учетных записей A/P EntityRef должен относиться к поставщику, иначе транзакция не будет записана. В сообщении TimeTracking EntityRef не может ссылаться на клиента, а только на сотрудника, поставщика или человека из списка «другие имена», время которого отслеживается.

person Keith Palmer Jr.    schedule 14.06.2013