如何在 RSA Archer 中使用 Web API 获取交叉引用字段中记录的 ID?

How to get ID's of the records in Cross-reference field using Web API in RSA Archer?

我需要使用 Web API 获取交叉引用字段中记录的 ID。有解决这类任务的API方法吗?或者至少我想知道,如何获取特定字段的值?

文档中描述了许多不同的操作列表字段的方法(例如 GetValuesListValue),我想知道是否有相同的方法可以解决我的任务。 我可以使用ExecuteSeach方法,但不是很方便。

Alexander,您可以使用 REST 或 Webservices API。

REST API

使用按 ID 获取内容,/api/core/content/*contentid* 然后您可以通过在正文中传递以下内容来传递 OData 以获取字段 (id) 内容 {"Value":"?$filter=FieldId eq '*field id of cross-reference field*'"}

Web 服务 API

您可以调用 /ws/record.asmx GetRecordById 传递以下内容

<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchemainstance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
  <soap:Body>
    <GetRecordById xmlns="http://archer-tech.com/webservices/">
      <sessionToken>session token</sessionToken>
      <moduleId>int</moduleId>
      <contentId>int</contentId>
    </GetRecordById>
  </soap:Body>
</soap:Envelope>

然后您必须遍历返回的 XML 以获取字段内容。