從適用性表單叫用表單資料模型服務的API api-to-invoke-form-data-model-service-from-adaptive-forms

CAUTION
AEM 6.4已結束延伸支援,本檔案不再更新。 如需詳細資訊,請參閱 技術支援期. 尋找支援的版本 此處.

概觀 overview

AEM Forms可讓表單作者從最適化表單欄位中叫用在表單資料模型中設定的服務,進一步簡化並增強表單填寫體驗。 若要叫用資料模型服務,您可以在視覺編輯器中建立規則,或使用 guidelib.dataIntegrationUtils.executeOperation API(位於 規則編輯器.

本檔案著重於使用 guidelib.dataIntegrationUtils.executeOperation 叫用服務的API。

使用API using-the-api

guidelib.dataIntegrationUtils.executeOperation API從適用性表單欄位中叫用服務。 API語法如下:

guidelib.dataIntegrationUtils.executeOperation(operationInfo, inputs, outputs)

API需要下列參數。

參數
說明
operationInfo
用於指定表單資料模型標識符、操作標題和操作名稱的結構
inputs
用於指定其值輸入到服務操作的表單對象的結構
outputs
用於指定將填充服務操作返回值的表單對象的結構

的結構 guidelib.dataIntegrationUtils.executeOperation API指定服務操作的詳細資訊。 結構的語法如下。

var operationInfo = {
formDataModelId,
operationTitle,
operationName
};
var inputs = {
inputField1,
inputFieldN
};
var outputs = {
outputField1,
outputFieldN
}

API結構會指定服務操作的下列詳細資訊。

參數
說明
forDataModelId
指定表單資料模型的存放庫路徑,包括其名稱
operationName
指定要執行的服務操作的名稱
input
將一個或多個表單對象映射到服務操作的輸入參數
輸出
映射一個或多個表單對象以從服務操作輸出值以填充表單欄位

叫用服務的範例指令碼 sample-script-to-invoke-a-service

下列範例指令碼使用 guidelib.dataIntegrationUtils.executeOperation 叫用 getAccountById 在中配置的服務操作 employeeAccount 表單資料模型。

getAccountById 操作會採用 employeeID 表單欄位作為輸入 empId 參數和返回相應員工的員工名稱、帳號和帳戶餘額。 輸出值會填入指定的表單欄位中。 例如, name 引數會填入 fullName 表單元素和值 accountNumber 引數 account 表單元素。

var operationInfo = {
"formDataModelId": "/content/dam/formsanddocuments-fdm/employeeAccount",
"operationName": "getAccountDetails"
};
var inputs = {
"empid" : employeeID
};
var outputs = {
"name" : fullName,
"accountNumber" : account,
"balance" : balance
};
guidelib.dataIntegrationUtils.executeOperation(operationInfo, inputs, outputs);
recommendation-more-help
a6ebf046-2b8b-4543-bd46-42a0d77792da