QuickBooks在线查询生成生成不正确的实体

时间:2016-12-16 12:34:17

标签: java quickbooks quickbooks-online

我使用QuickBooks Online java sdk获得以下代码片段:

final Bill bill = GenerateQuery.createQueryEntity(Bill.class);
final String query = select($(bill)).where($(bill.getDocNumber()).eq("37809")).generate();
final QueryResult result = dataService.executeQuery(query);
final List<? extends IEntity> entities = result.getEntities();

在日志中我检查了生成的查询,如下所示:

SELECT CompanyName.Id.* FROM Vendor WHERE DocNumber = '37809'

OR

SELECT CompanyName.Id.tring.* FROM Vendor WHERE DocNumber = '37809'

它有时会生成不同的查询,每次都不一样。我不知道 tring 是什么。最后,我得到以下异常:

    "com.intuit.ipp.exception.FMSException: ERROR CODE:4001, 
ERROR MESSAGE:Invalid query, ERROR DETAIL:QueryValidationError: Property DocNumber not found for Entity Vendor

供应商实体用于查询而非Bill实体。显然,供应商实体中没有DocNumber,它在Bill中。不正确的查询生成的原因是什么?

我试图重新编译整个项目,没有用。如果我将这段代码放到其他项目中,它可以完美地运行。

0 个答案:

没有答案