注意:以下翻译的准确性尚未经过验证。这是使用 AIP ↗ 从原始英文文本进行的机器翻译。
SAP 函数模块允许用户在 SAP 系统中封装和重用全局函数。函数在中央函数库中管理。SAP 系统包含几个可以调用的预定义函数模块。用户还可以根据业务需求创建自定义函数。 SAP 函数具有输入变量、输出变量、变化变量和异常。变量可以是单个值、字典(称为“结构”)或字典列表(称为“表”)。 函数模块是双向的:它们既可以提取数据,也可以将数据写回 SAP 系统。
为了提取函数结果,Foundry 技术用户需要以下授权角色(或具有与以下角色相同授权对象的自定义角色):
/PALANTIR/SERVICE_USER
/PALANTIR/CONTENT_FUNCTION_ALL
Connector 只能从至少有一个表格输出参数的函数中提取数据。如果函数返回多个输出参数,用户需要使用 paramName
参数指定将哪个输出写入 Foundry 数据集。
此示例同步配置返回 BAPI_USER_GETLIST
函数的 USERLIST
参数:
Copied!1 2 3 4
type: magritte-sap-source-adapter sapType: function obj: BAPI_USER_GETLIST paramName: USERLIST
这个配置文件是用于定义一个SAP源适配器,其中包含以下几个字段:
type
: 表示适配器的类型,这里是magritte-sap-source-adapter
,意味着这是一个用于连接SAP系统的适配器。sapType
: 指定SAP对象的类型,这里是function
,表示这是一个SAP函数。obj
: 指定具体的SAP对象,这里是BAPI_USER_GETLIST
,这是一个用于获取用户列表的BAPI(Business Application Programming Interface)。paramName
: 定义用于接收数据的参数名称,这里是USERLIST
。需要输入参数的函数可以使用inputParams
定义输入参数。输入参数可以有不同的类型:
Copied!1 2
inputParams: singleValueType_key : 'value' # 这是一个键值对,其中键为singleValueType_key,值为字符串'value'
Copied!1 2
inputParams: structureType_key : '{"key1": "value1", "key2": "value2"}' # 这是一个JSON格式的字符串,包含两个键值对:key1和key2
Copied!1 2 3 4
inputParams: tableType_key : '[{"key1": "value1", "key2": "value2"},{"key1": "value3", "key2": "value4"}]' # 这里定义了一个名为 `tableType_key` 的参数,它的值是一个JSON格式的字符串。 # 这个JSON字符串表示一个包含多个字典的列表,每个字典有两个键值对:key1 和 key2。
在以下示例同步配置中,函数 EM_GET_NUMBER_OF_ENTRIES
需要一个 表类型 的输入参数 IT_TABLES
:
Copied!1 2 3 4 5 6
type: magritte-sap-source-adapter sapType: function obj: EM_GET_NUMBER_OF_ENTRIES inputParams: IT_TABLES: '[{"TABNAME":"TSTC"}]' # 输入参数,指定表名为TSTC的SAP表 paramName: IT_TABLES # 参数名称
此代码片段定义了一个SAP源适配器配置,用于调用SAP函数EM_GET_NUMBER_OF_ENTRIES
,并传递一个输入参数IT_TABLES
,其中包含了一个表名TSTC
。