API para invocar el servicio del modelo de datos de formulario desde formularios adaptables api-to-invoke-form-data-model-service-from-adaptive-forms
Información general overview
AEM Forms permite a los autores de formularios simplificar y mejorar aún más la experiencia de rellenado de formularios invocando los servicios configurados en un modelo de datos de formulario desde un campo de un formulario adaptable. Para invocar un servicio del modelo de datos, puede crear una regla en el Editor visual o especificar un JavaScript utilizando la API guidelib.dataIntegrationUtils.executeOperation
en el Editor de código del Editor de reglas.
Este documento explica cómo escribir un JavaScript usando la API guidelib.dataIntegrationUtils.executeOperation
para invocar un servicio.
Uso de la API using-the-api
La API guidelib.dataIntegrationUtils.executeOperation
invoca un servicio desde un campo de formulario adaptable. La sintaxis de la API es la siguiente:
guidelib.dataIntegrationUtils.executeOperation(operationInfo, inputs, outputs)
La API requiere los siguientes parámetros.
operationInfo
inputs
outputs
La estructura de la API guidelib.dataIntegrationUtils.executeOperation
especifica los detalles de la operación del servicio. La sintaxis de la estructura es la siguiente:
var operationInfo = {
formDataModelId,
operationTitle,
operationName
};
var inputs = {
inputField1,
inputFieldN
};
var outputs = {
outputField1,
outputFieldN
}
La estructura de la API especifica los siguientes detalles sobre la operación del servicio.
Script de ejemplo para invocar un servicio sample-script-to-invoke-a-service
El siguiente script de ejemplo utiliza la API guidelib.dataIntegrationUtils.executeOperation
para invocar la operación de servicio getAccountById
configurada en el modelo de datos de formulario employeeAccount
.
La operación getAccountById
toma el valor del campo del formulario employeeID
como entrada para el argumento empId
y devuelve el nombre del empleado y el número y el saldo de la cuenta del empleado correspondiente. Los valores de salida se rellenan en los campos del formulario especificados. Por ejemplo, el valor del argumento name
se rellena en el elemento de formulario fullName
, y el valor del argumento accountNumber
argumento en el elemento de formulario 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);