API om de service voor formuliergegevensmodellen aan te roepen vanuit adaptieve formulieren api-to-invoke-form-data-model-service-from-adaptive-forms

de Adobe adviseert gebruikend de moderne en verlengbare gegevens vangen Componenten van de Kernvoor het creƫren van nieuwe Aangepaste Formsof het toevoegen van Aangepaste Forms aan de pagina's van AEM Sites. Deze componenten betekenen een aanzienlijke vooruitgang in de aanmaak van Adaptive Forms en zorgen voor indrukwekkende gebruikerservaring. In dit artikel wordt een oudere aanpak beschreven voor de auteur Adaptive Forms die gebruikmaakt van stichtingscomponenten.

Overzicht overview

Met AEM Forms kunnen auteurs van formulieren de invulervaring van formulieren verder vereenvoudigen en verbeteren door services aan te roepen die vanuit een adaptief formulierveld zijn geconfigureerd in een formuliergegevensmodel. Om de dienst van het gegevensmodel aan te halen, kunt u of een regel in de visuele redacteur tot stand brengen of JavaScript specificeren gebruikend guidelib.dataIntegrationUtils.executeOperation API in de coderedacteur van de regelredacteur.

Dit document is gericht op het schrijven van een JavaScript met de API guidelib.dataIntegrationUtils.executeOperation om een service aan te roepen.

De API gebruiken using-the-api

De API van guidelib.dataIntegrationUtils.executeOperation roept een service aan vanuit een adaptief formulierveld. De API-syntaxis ziet er als volgt uit:

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

De structuur van de API van guidelib.dataIntegrationUtils.executeOperation specificeert details over de de dienstverrichting. De syntaxis van de structuur ziet er als volgt uit.

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

De API-structuur geeft de volgende details over de servicebewerking op.

Parameter
Beschrijving
operationInfo
Structuur voor het opgeven van de modelidentificatie, de bewerkingstitel en de naam van de bewerking van het formulier
formDataModelId
Hiermee wordt het opslagpad naar het formuliergegevensmodel opgegeven, inclusief de naam ervan
operationName
Specificeert de naam van de uit te voeren de dienstverrichting
inputs
Hiermee worden een of meer formulierobjecten toegewezen aan de invoerargumenten voor de servicebewerking
Outputs
Hiermee wijst u een of meer formulierobjecten toe aan uitvoerwaarden van de servicebewerking om formuliervelden te vullen.
success
Retourneert waarden die zijn gebaseerd op de invoerargumenten voor de servicebewerking. Het is een facultatieve parameter die als callback functie wordt gebruikt.
failure
Toont een foutenmelding als de succesvolle callback functie er niet in slaagt om de outputwaarden te tonen die op de inputargumenten worden gebaseerd. Het is een facultatieve parameter die als callback functie wordt gebruikt.

Voorbeeldscript om een service aan te roepen sample-script-to-invoke-a-service

In het volgende voorbeeldscript wordt de guidelib.dataIntegrationUtils.executeOperation API gebruikt om de getAccountById -servicebewerking aan te roepen die in het employeeAccount -formuliergegevensmodel is geconfigureerd.

De bewerking getAccountById neemt de waarde in het employeeID -formulierveld op als invoer voor het argument empId en retourneert de werknemernaam, het accountnummer en het rekeningsaldo voor de corresponderende employee. De uitvoerwaarden worden ingevuld in de opgegeven formuliervelden. De waarde in het argument name wordt bijvoorbeeld ingevuld in het argument fullName form element and value for accountNumber in het formulierelement 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);

API gebruiken met callback-functie using-the-api-callback

U kunt de service van het formuliergegevensmodel ook aanroepen met de API van guidelib.dataIntegrationUtils.executeOperation met een callback-functie. De API-syntaxis ziet er als volgt uit:

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

De callback-functie kan success - en failure callback-functies hebben.

Sampletcript van de steekproef met succes en mislukkingscallback functies callback-function-success-failure

In het volgende voorbeeldscript wordt de guidelib.dataIntegrationUtils.executeOperation API gebruikt om de GETOrder -servicebewerking aan te roepen die in het employeeOrder -formuliergegevensmodel is geconfigureerd.

De bewerking GETOrder neemt de waarde in het Order ID formulierveld als invoer voor het argument orderId en retourneert de waarde voor het aantal orders in de callback-functie success . Wanneer de callback-functie success niet het aantal orders retourneert, geeft de callback-functie failure het Error occured -bericht weer.

NOTE
Als u de callback-functie success gebruikt, worden de uitvoerwaarden niet in de opgegeven formuliervelden ingevuld.
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