什么是 qbXML 中的"entityRef"元素与时间活动



我正在创建一些时间跟踪软件来与quickbooks接口,下面是我导出的XML文件。我收到状态码3140,表示TimeTracking中对QuickBooks实体的引用无效。Quickbooks返回错误:"指定的记录在列表中不存在。"

我观察到,如果我从XML文件中取出EntityRef标签,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>

EntityRef/FullName可以是:

  • 一个雇员FullName
  • a vendor FullName
  • 或"其他名称"列表FullName

。这是你为之记录时间的人/公司。

在其他请求中,它也可以是客户FullName。但是在时间跟踪的情况下,为客户跟踪时间是没有意义的。

引用QuickBooks OSR文档:

实体QuickBooks"实体"是客户、供应商、员工或客户QuickBooks"其他名字"列表上的人。特殊情况需要注意:在BillToPayQuery消息中,EntityRef指的是厂商名称。在对于A/R帐户的JournalCreditLine和JournalDebitLine消息,EntityRef必须引用客户,否则事务将不引用被记录下来。对于A/P帐户,EntityRef必须指向供应商,或者否则交易将不会被记录。在时间跟踪消息中,EntityRef不能引用客户,只能引用员工、供应商或客户在"其他名字"名单上的时间被跟踪的人。

最新更新