API för att anropa formulärdatamodelltjänst från anpassningsbara formulär api-to-invoke-form-data-model-service-from-adaptive-forms

CAUTION
AEM 6.4 har nått slutet på den utökade supporten och denna dokumentation är inte längre uppdaterad. Mer information finns i teknisk supportperiod. Hitta de versioner som stöds här.

Översikt overview

Med AEM Forms kan formulärförfattare ytterligare förenkla och förbättra ifyllandet av formulär genom att anropa tjänster som konfigurerats i en formulärdatamodell inifrån ett adaptivt formulärfält. Om du vill anropa en datamodelltjänst kan du antingen skapa en regel i den visuella redigeraren eller ange ett JavaScript med guidelib.dataIntegrationUtils.executeOperation API i kodredigeraren för regelredigerare.

Det här dokumentet fokuserar på att skriva ett JavaScript med guidelib.dataIntegrationUtils.executeOperation API för att anropa en tjänst.

Använda API using-the-api

The guidelib.dataIntegrationUtils.executeOperation API anropar en tjänst inifrån ett adaptivt formulärfält. API-syntaxen är följande:

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

API kräver följande parametrar.

Parameter
Beskrivning
operationInfo
Struktur för att ange identifierare för formulärdatamodell, åtgärdstitel och åtgärdsnamn
inputs
Struktur för att ange formulärobjekt vars värden är indata till serviceåtgärden
outputs
Struktur för att ange formulärobjekt som ska fyllas med värden som returneras av tjänståtgärden

Strukturen för guidelib.dataIntegrationUtils.executeOperation API anger information om tjänståtgärden. Strukturen har följande syntax.

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

API-strukturen anger följande information om tjänståtgärden.

Parameter
Beskrivning
forDataModelId
Ange databassökvägen till formulärdatamodellen inklusive dess namn
operationName
Ange namnet på den tjänståtgärd som ska köras
input
Mappa ett eller flera formulärobjekt till indataargumenten för serviceåtgärden
Utdata
Mappa ett eller flera formulärobjekt till utdatavärden från tjänståtgärden för att fylla i formulärfält

Exempelskript för att anropa en tjänst sample-script-to-invoke-a-service

Följande exempelskript använder guidelib.dataIntegrationUtils.executeOperation API som anropar getAccountById tjänståtgärd konfigurerad i employeeAccount formulärdatamodell.

The getAccountById operationen tar värdet i employeeID formulärfält som indata för empId argument och returnerar medarbetarens namn, kontonummer och kontosaldo för motsvarande medarbetare. Utdatavärdena fylls i i de angivna formulärfälten. Värdet i name argumentet har fyllts i i fullName formulärelement och värde för accountNumber argument i account formulärelement.

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);
recommendation-more-help
a6ebf046-2b8b-4543-bd46-42a0d77792da