使用REST API,能够通过Customer
实体提取客户,联系人和地址,但是,当我尝试获取CustomerLocation
实体时,我得到的只是一个空集合。
[]
使用撰写此问题时的最新版本(2018R1日期为2018年8月17日左右)。
我尝试了以下操作:
CustomerLocation?$expand=LocationContact
CustomerLocation?$expand=LocationContact,LocationContact/Address
它们都不返回任何数据。
答案 0 :(得分:0)
CustomerLocation
实体链接到一个通用查询,该查询被定义为允许创建新记录,因此,在尝试对其进行Put
时,试图持久保存数据会导致错误。我没有提供主体或有效结构。
我如何工作的是创建自己的通用查询,将其链接到扩展端点中的实体,并在实体内添加一个Detail
属性,该属性将用作由以下人员返回的详细记录的集合通用查询。然后,将通用查询中的所有字段放在Results
字段中。
现在,我可以通过端点实体通过发出Put
请求来从通用查询中获取记录:
AICustomerLocationGI?$expand=Results
注意:如果要避免在某些DAC上出现BQL委托错误,请执行Put
而不是Get
。
这一次返回了所有记录,但让我到达了最初需要的位置。接下来,我向“通用查询”添加了一个参数“大于条件”,并对“地址ID”进行了排序,并定义了通用查询以返回前100条记录。通过在Put
请求的正文中传递前一批记录的最后一个地址ID,这为我提供了一种返回记录的分页机制。