AEM Forms ermöglicht es Formularautoren, das Ausfüllen von Formularen weiter zu vereinfachen und zu verbessern, indem sie Dienste, die in einem Formulardatenmodell konfiguriert sind, aus einem adaptiven Formularfeld heraus aufrufen. Um einen Datenmodell-Service aufzurufen, können Sie entweder eine Regel im visuellen Editor anlegen oder ein JavaScript mit der guidelib.dataIntegrationUtils.executeOperation
-API im Code-Editor des Regeleditors angeben.
In diesem Dokument wird das Schreiben von JavaScript in der guidelib.dataIntegrationUtils.executeOperation
-API für den Aufruf eines Service beschrieben.
Die guidelib.dataIntegrationUtils.executeOperation
-API ruft einen Service über ein Feld in einem adaptiven Formular auf. Für die API gilt folgende Syntax:
guidelib.dataIntegrationUtils.executeOperation(operationInfo, inputs, outputs)
Für die API sind die folgenden Parameter erforderlich.
Parameter | Beschreibung |
---|---|
operationInfo |
Struktur zur Angabe von Formulardatenmodellkennung, Operationstitel und Operationsname |
inputs |
Struktur zum Angeben von Formularobjekten, deren Werte in den Dienstvorgang eingegeben werden |
outputs |
Struktur zum Angeben von Formularobjekten, die mit den vom Dienstvorgang zurückgegebenen Werten gefüllt werden |
Die Struktur der guidelib.dataIntegrationUtils.executeOperation
-API gibt Details zum Service-Vorgang an. Die Struktur weist die folgende Syntax auf.
var operationInfo = {
formDataModelId,
operationTitle,
operationName
};
var inputs = {
inputField1,
inputFieldN
};
var outputs = {
outputField1,
outputFieldN
}
Die API-Struktur gibt folgende Informationen zum Service-Vorgang an.
Parameter | Beschreibung |
---|---|
forDataModelId |
Geben Sie den Repository-Pfad zum Formulardatenmodell an, einschließlich Name |
operationName |
Geben Sie den Namen des Dienstvorgangs an, um |
input |
Ordnen Sie ein oder mehrere Formularobjekte den Eingabeargumenten für den Dienstvorgang zu. |
Ausgabe | Ordnen Sie ein oder mehrere Formularobjekte Ausgabewerte aus dem Dienstvorgang zu, um Formularfelder zu füllen. |
Folgendes Beispielskript verwendet die guidelib.dataIntegrationUtils.executeOperation
-API, um den getAccountById
-Service-Vorgang aufzurufen, der im Formulardatenmodell employeeAccount
konfiguriert ist.
Der Vorgang getAccountById
nimmt den Wert im Formularfeld employeeID
als Eingabe für das Argument empId
und gibt den Mitarbeiternamen, die Kontonummer und den Kontostand für den entsprechenden Mitarbeiter zurück. Die Ausgabewerte werden in den angegebenen Formularfeldern befüllt. Beispielsweise wird der Wert im Argument name
im Formularelement fullName
befüllt und der Wert für das Argument accountNumber
im Formularelement 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);