API per richiamare il servizio modello dati modulo da moduli adattivi api-to-invoke-form-data-model-service-from-adaptive-forms

L’Adobe consiglia di utilizzare l’acquisizione dati moderna ed estensibile Componenti coreper creazione di un nuovo Forms adattivoo aggiunta di Forms adattivo alle pagine AEM Sites. Questi componenti rappresentano un progresso significativo nella creazione di Forms adattivi, garantendo esperienze utente straordinarie. Questo articolo descrive un approccio precedente all’authoring di Forms adattivi utilizzando i componenti di base.

Panoramica overview

AEM Forms consente agli autori dei moduli di semplificare e migliorare ulteriormente l’esperienza di compilazione dei moduli richiamando i servizi configurati in un modello di dati del modulo dall’interno di un campo di modulo adattivo. Per richiamare un servizio del modello dati, puoi creare una regola nell’editor visivo o specificare un JavaScript utilizzando guidelib.dataIntegrationUtils.executeOperation API nell'editor di codice di editor di regole.

Questo documento si concentra sulla scrittura di un JavaScript utilizzando guidelib.dataIntegrationUtils.executeOperation API per richiamare un servizio.

Utilizzo dell’API using-the-api

Il guidelib.dataIntegrationUtils.executeOperation L’API richiama un servizio dall’interno di un campo di un modulo adattivo. La sintassi API è la seguente:

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

La struttura del guidelib.dataIntegrationUtils.executeOperation API specifica i dettagli sull’operazione del servizio. La sintassi della struttura è la seguente.

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

La struttura API specifica i dettagli seguenti sull’operazione del servizio.

Parametro
Descrizione
operationInfo
Struttura per specificare l'identificatore del modello dati del modulo, il titolo dell'operazione e il nome dell'operazione
formDataModelId
Specifica il percorso del repository del modello dati del modulo, incluso il nome
operationName
Specifica il nome dell'operazione di servizio da eseguire
inputs
Esegue il mapping di uno o più oggetti modulo agli argomenti di input per l'operazione di servizio
Outputs
Esegue il mapping di uno o più oggetti modulo ai valori di output dell'operazione di servizio per compilare i campi modulo
success
Restituisce valori in base agli argomenti di input per l'operazione di servizio. Si tratta di un parametro facoltativo utilizzato come funzione di callback.
failure
Visualizza un messaggio di errore se la funzione di callback di successo non visualizza i valori di output in base agli argomenti di input. Si tratta di un parametro facoltativo utilizzato come funzione di callback.

Script di esempio per richiamare un servizio sample-script-to-invoke-a-service

Lo script di esempio seguente utilizza guidelib.dataIntegrationUtils.executeOperation API per richiamare getAccountById operazione di servizio configurata in employeeAccount modello dati modulo.

Il getAccountById l'operazione assume il valore nel employeeID campo modulo come input per empId e restituisce il nome del dipendente, il numero di conto e il saldo del conto del dipendente corrispondente. I valori di output vengono compilati nei campi modulo specificati. Ad esempio, il valore name viene popolato in fullName elemento modulo e valore per accountNumber argomento in account elemento modulo.

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

Utilizzo dell’API con la funzione di callback using-the-api-callback

È inoltre possibile richiamare il servizio del modello dati modulo utilizzando guidelib.dataIntegrationUtils.executeOperation API con una funzione di callback. La sintassi API è la seguente:

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

La funzione di richiamata può avere success e failure funzioni di callback.

Script di esempio con funzioni di callback riuscite e non riuscite callback-function-success-failure

Lo script di esempio seguente utilizza guidelib.dataIntegrationUtils.executeOperation API per richiamare GETOrder operazione di servizio configurata in employeeOrder modello dati modulo.

Il GETOrder l'operazione assume il valore nel Order ID campo modulo come input per orderId e restituisce il valore della quantità dell'ordine in success callback. Se il success funzione di callback non restituisce la quantità dell'ordine, il failure funzione di callback visualizza Error occured messaggio.

NOTE
Se si utilizza success funzione di callback, i valori di output non vengono inseriti nei campi modulo specificati.
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);
recommendation-more-help
19ffd973-7af2-44d0-84b5-d547b0dffee2