API para chamar o serviço de modelo de dados de formulário a partir de formulários adaptáveis

Visão geral

O AEM Forms permite que os autores de formulários simplifiquem e aprimorem ainda mais a experiência de preenchimento de formulários, chamando serviços configurados em um modelo de dados de formulário de um campo de formulário adaptável. Para chamar um serviço de modelo de dados, você pode criar uma regra no editor visual ou especificar um JavaScript usando o guidelib.dataIntegrationUtils.executeOperation API no editor de código do editor de regras.

Este documento se concentra em escrever um JavaScript usando o guidelib.dataIntegrationUtils.executeOperation API para chamar um serviço.

Uso da API

O guidelib.dataIntegrationUtils.executeOperation A API chama um serviço de dentro de um campo de formulário adaptável. A sintaxe da API é a seguinte:

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

A estrutura do guidelib.dataIntegrationUtils.executeOperation A API especifica detalhes sobre a operação do serviço. A sintaxe da estrutura é a seguinte.

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

A estrutura da API especifica os seguintes detalhes sobre a operação do serviço.

Parâmetro Descrição
operationInfo Estrutura para especificar o identificador do modelo de dados de formulário, o título da operação e o nome da operação
formDataModelId Especifica o caminho do repositório para o modelo de dados de formulário, incluindo seu nome
operationName Especifica o nome da operação de serviço a ser executada
inputs Mapeia um ou mais objetos de formulário para os argumentos de entrada para a operação de serviço
Outputs Mapeia um ou mais objetos de formulário para valores de saída da operação de serviço para preencher campos de formulário
success Retorna valores com base nos argumentos de entrada para a operação de serviço. É um parâmetro opcional usado como uma função de retorno de chamada.
failure Exibe uma mensagem de erro se a função de retorno de chamada de sucesso não exibir os valores de saída com base nos argumentos de entrada. É um parâmetro opcional usado como uma função de retorno de chamada.

Exemplo de script para chamar um serviço

O script de amostra a seguir usa a variável guidelib.dataIntegrationUtils.executeOperation API para chamar a getAccountById operação de serviço configurada no employeeAccount modelo de dados de formulário.

O getAccountById A operação recebe o valor na variável employeeID campo de formulário como entrada para a variável empId argumento e retorna o nome do funcionário, o número da conta e o saldo da conta do funcionário correspondente. Os valores de saída são preenchidos nos campos de formulário especificados. Por exemplo, o valor em name for preenchida na variável fullName elemento de formulário e valor para accountNumber argumento em account elemento de formulário.

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);

Uso da API com função de retorno de chamada

Também é possível chamar o serviço de modelo de dados de formulário usando o guidelib.dataIntegrationUtils.executeOperation API com uma função de retorno de chamada. A sintaxe da API é a seguinte:

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

A função de retorno de chamada pode ter success e failure funções de retorno de chamada.

Exemplo de script com funções de retorno de chamada de sucesso e falha

O script de amostra a seguir usa a variável guidelib.dataIntegrationUtils.executeOperation API para chamar a GETOrder operação de serviço configurada no employeeOrder modelo de dados de formulário.

O GETOrder A operação recebe o valor na variável Order ID campo de formulário como entrada para a variável orderId argumento e retorna o valor da quantidade da ordem no success função de retorno de chamada. Se a variável success a função de retorno de chamada não retorna a quantidade da ordem, a variável failure a função de retorno de chamada exibe a variável Error occured mensagem.

OBSERVAÇÃO

Se você usar a variável success função de retorno de chamada, os valores de saída não são preenchidos nos campos de formulário especificados.

var operationInfo = {
    "formDataModelId": "/content/dam/formsanddocuments-fdm/employeeOrder",
    "operationTitle": "GETOrder",
    "operationName": "GETOrder"
};
var inputs = {
    "orderId" : Order ID
};
var outputs = {};
var success = function (wsdlOutput, textStatus, jqXHR) {
order_quantity.value = JSON.parse(wsdlOutput).quantity;
 };
var failure = function(){
alert('Error occured');
};
guidelib.dataIntegrationUtils.executeOperation(operationInfo, inputs, outputs, success, failure);

Nesta página