Operatortyper och händelser i regelredigeraren för ett adaptivt formulär baserat på kärnkomponenter
I AEM Forms som moln innehåller regelredigeraren olika typer av operatorer och händelser som gör att du enkelt kan definiera och utföra komplexa villkor och åtgärder.
Operatortyperna som är tillgängliga i regelredigeraren för ett adaptivt formulär ger ett robust ramverk för att skapa exakta villkor. De gör det möjligt för er att hantera data, utföra beräkningar och kombinera olika villkor på ett logiskt och sammanhängande sätt. Oavsett om du jämför värden, utför aritmetiska operationer eller manipulerar strängar ser de här operatorerna till att reglerna är både flexibla och kraftfulla.
Händelser i regelredigeraren fungerar som utlösare som aktiverar reglerna. De definierar de specifika åtgärder som inträffar när vissa villkor uppfylls. Genom att utnyttja olika typer av händelser kan du automatisera svar på en mängd olika scenarier, till exempel användarinteraktioner, schemalagda tider, dataändringar och systemtillstånd. Med möjlighet att ange dessa utlösare kan du skapa dynamiska och responsiva regler som uppfyller dina specifika krav.
Genom att förstå och använda tillgängliga operatortyper och händelser kan du utnyttja regelredigerarens fulla potential, som gör att du kan skapa effektiva regler som uppfyller dina unika behov och förbättra den övergripande systemfunktionaliteten.
Tillgängliga operatortyper och händelser i regelredigeraren available-operator-types-and-events-in-rule-editor
Regelredigeraren innehåller följande logiska operatorer och händelser som du kan använda för att skapa regler.
- Är lika med - Kontrollerar om ett formulärobjekt matchar ett angivet värde.
- Är inte lika med - Kontrollerar om ett formulärobjekt inte matchar ett angivet värde.
- Börjar med - Kontrollerar om ett formulärobjekt börjar med en angiven sträng.
- Slutar med - Kontrollerar om ett formulärobjekt avslutas med en angiven sträng.
- Innehåller - Kontrollerar om ett formulärobjekt innehåller en angiven delsträng.
- Innehåller inte - Kontrollerar om ett formulärobjekt inte innehåller någon angiven delsträng.
- Är tom - Kontrollerar om ett formulärobjekt är tomt eller inte har angetts.
- Är inte tom - Kontrollerar om ett formulärobjekt finns och inte är tomt.
- Har markerat - Returnerar true när en användare markerar en viss kryssruta, listruta eller alternativknappsalternativ.
- Är initierad (händelse) - Returnerar true när ett formulärobjekt återges i webbläsaren.
- Har ändrats (händelse) - Returnerar true när en användare ändrar värdet eller markeringen för ett formulärobjekt.
- Klickas (händelse) - Returnerar true när en användare klickar på ett formulärobjekt, till exempel en knapp. En användare kan lägga till flera villkor för knappklickningen.
- Är giltig - Kontrollerar om ett formulärobjekt uppfyller valideringskriterierna.
- Är inte giltig - Kontrollerar om ett formulärobjekt inte uppfyller valideringskriterierna.
Tillgängliga regeltyper i regelredigeraren available-rule-types-in-rule-editor
Regelredigeraren innehåller en uppsättning fördefinierade regeltyper som du kan använda för att skriva regler. Vi tittar närmare på varje regeltyp. Mer information om hur du skriver regler i regelredigeraren finns i Skriv regler.
When whenruletype
Regeltypen When följer regelkonstruktionen condition-action-alternate action eller ibland bara condition-action -konstruktionen. I den här regeltypen anger du först ett villkor för utvärdering följt av en åtgärd som ska utlösas om villkoret är uppfyllt ( True). När du använder regeltypen When kan du använda flera AND- och OR-operatorer för att skapa kapslade uttryck.
Med regeltypen När kan du utvärdera ett villkor i ett formulärobjekt och utföra åtgärder på ett eller flera objekt.
Med enkla ord är en vanlig When-regel strukturerad enligt följande:
When on Object A:
(Condition 1 AND Condition 2 OR Condition 3) is TRUE;
Then, do the following:
Action 2 on Object B;ANDAction 3 on Object C;
Else, do the following:
Action 2 on Object C;
När du har en komponent med flera värden, till exempel alternativknappar eller listor, hämtas alternativen automatiskt och görs tillgängliga för regelskaparen när du skapar en regel för den komponenten. Du behöver inte ange alternativvärdena igen.
En lista har till exempel fyra alternativ: Röd, Blå, Grön och Gul. När regeln skapas hämtas alternativen (alternativknappar) automatiskt och görs tillgängliga för regelskaparen enligt följande:
När du skriver en When-regel kan du utlösa åtgärden Clear Value Of. Med åtgärden Clear Value Of rensas det angivna objektets värde. Med alternativet Radera värde för i programsatsen When kan du skapa komplexa villkor med flera fält. Du kan lägga till Else-satsen för att lägga till ytterligare villkor
Tillåtna flera fält i When allowed-multiple-fields
I villkoret När har du möjlighet att lägga till andra fält förutom det fält som regeln tillämpas på.
Med regeltypen När kan du till exempel utvärdera ett villkor för olika formulärobjekt och utföra åtgärden:
När:
(Objekt A Villkor 1)
OCH/ELLER
(Objekt B, villkor 2)
Gör sedan följande:
Åtgärd 1 på objekt A
_
Att tänka på när du använder tillåtna flera fält i villkorsfunktionen
- Kontrollera att kärnkomponenten är inställd på version 3.0.14 eller senare för att använda den här funktionen i regelredigeraren.
- Om regler tillämpas på olika fält i villkoret När utlöses regeln även om endast ett av dessa fält ändras.
- Du kan bara lägga till flera fält i villkoret När för en AND-regel. Det går inte att använda en OR-regel.
When button is clicked AND text input equals '5' är till exempel giltig, medan When text input equals '5' AND button is clicked inte stöds.Om det uppstår problem i de tillåtna fälten i villkorsfunktionen följer du felsökningsstegen enligt följande:
- Öppna formuläret i redigeringsläge.
- Öppna innehållsläsaren och markera komponenten Guide Container i det adaptiva formuläret.
- Klicka på ikonen för egenskaper för stödlinjebehållaren
. Dialogrutan Adaptiv formulärbehållare öppnas. - Klicka på Klar och spara dialogrutan igen.
Hide Döljer det angivna objektet.
Show Visar det angivna objektet.
Enable Aktiverar det angivna objektet.
Disable Inaktiverar det angivna objektet.
Invoke service Anropar en tjänst som konfigurerats i en formulärdatamodell (FDM). När du väljer åtgärden Anropa tjänst visas ett fält. När användaren knackar på fältet visas alla tjänster som konfigurerats i alla formulärdatamodeller (FDM) på Experience Manager-instansen. När du väljer en tjänst för formulärdatamodell visas fler fält där du kan mappa formulärobjekt med indataparametrar för den angivna tjänsten. Du kan mappa utdataparametrarna via händelsens nyttolastalternativ för den angivna tjänsten. Du kan också skapa regler för hantering av lyckade och misslyckade svar för Invoke-tjänståtgärden med regelredigeraren.
Se exempelregeln för anrop av FDM-tjänster (Form Data Model).
Utöver tjänsten Form Data Model kan du ange en direkt WSDL-URL för att anropa en webbtjänst. En Form Data Model-tjänst har dock många fördelar och det rekommenderade sättet att anropa en tjänst.
Mer information om hur du konfigurerar tjänster i formulärdatamodellen (FDM) finns i Experience Manager Forms Dataintegrering.
Set value of Beräknar och ställer in värdet för det angivna objektet. Du kan ange objektvärdet som en sträng, värdet för ett annat objekt, det beräknade värdet med hjälp av ett matematiskt uttryck eller en matematisk funktion, värdet för en objektegenskap eller utdatavärdet från en konfigurerad Form Data Model-tjänst. När du väljer webbtjänstalternativet visas alla tjänster som konfigurerats i alla formulärdatamodeller (FDM) på Experience Manager-instansen. När du väljer en tjänst för formulärdatamodell visas fler fält där du kan mappa formulärobjekt med in- och utdataparametrar för den angivna tjänsten.
Mer information om hur du konfigurerar tjänster i formulärdatamodellen (FDM) finns i Experience Manager Forms Dataintegrering.
Regeltypen Set Property gör att du kan ange värdet för en egenskap för det angivna objektet baserat på en villkorsåtgärd. Du kan ställa in egenskapen på något av följande:
- visible (Boolean)
- label.value (String)
- label.visible (Boolean)
- description (String)
- enabled (Boolean)
- readOnly (Boolean)
- required (Boolean)
- screenReaderText (String)
- valid (Boolean)
- errorMessage (String)
- default (Number, String, Date)
- enumNames (String[])
- chartType (String)
Du kan till exempel definiera regler som visar textrutan när någon klickar på en knapp. Du kan använda en anpassad funktion, ett formulärobjekt, en objektegenskap eller en tjänstutdata för att definiera en regel.
Om du vill definiera en regel baserat på en anpassad funktion väljer du Function Output i listrutan och drar och släpper en anpassad funktion på fliken Functions. Om villkorsåtgärden uppfylls visas textrutan.
Om du vill definiera en regel baserat på ett formulärobjekt väljer du Form Object i listrutan och drar och släpper ett formulärobjekt på fliken Form Objects. Om villkorsåtgärden uppfylls visas textrutan i det adaptiva formuläret.
Med en regel för att ange egenskap som baseras på en objektegenskap kan du göra textrutan synlig i ett adaptivt formulär baserat på en annan objektegenskap som ingår i det adaptiva formuläret.
I följande bild visas ett exempel på hur kryssrutan aktiveras dynamiskt baserat på om en textruta döljs eller visas i ett anpassat formulär:
Clear Value Of Tar bort det angivna objektets värde.
Set Focus anger fokus på det angivna objektet.
Submit Form skickar formuläret.
Reset Återställer formuläret eller det angivna objektet.
Validate Validerar formuläret eller det angivna objektet.
Add Instance lägger till en instans av den angivna repeterbara panelen eller tabellraden.
Remove Instance Tar bort en instans av den angivna repeterbara panelen eller tabellraden.
Function Output definierar en regel baserat på fördefinierade funktioner eller anpassade funktioner.
Navigate to Navigera till andra adaptiva Forms, andra resurser som bilder eller dokumentfragment eller en extern URL.
Dispatch Event utlöser specifika åtgärder eller beteenden baserat på fördefinierade villkor eller händelser.
Set Value of set-value-of
Med regeltypen Set Value of kan du ange värdet för ett formulärobjekt beroende på om det angivna villkoret är uppfyllt eller inte. Värdet kan anges till ett värde för ett annat objekt, en stränglitteral, ett värde som härleds från ett matematiskt uttryck eller en funktion, ett värde för en egenskap för ett annat objekt eller utdata från en Form Data Model-tjänst. På samma sätt kan du söka efter ett villkor för en komponent, en sträng, en egenskap eller värden som härletts från en funktion eller ett matematiskt uttryck.
Regeltypen Ange värdet för är inte tillgänglig för alla formulärobjekt, till exempel paneler och knappar i verktygsfält. En standarduppsättningsvärde för regel har följande struktur:
Ange värdet för objekt A till:
(String ABC) ELLER
(objektegenskap X för objekt C) OR
(värde från en funktion) OR
(värde från ett matematiskt uttryck) OR
(datavärde för en datamodelltjänst),
När (valfritt):
(Villkor 1 OCH villkor 2 OCH villkor 3) är SANT.
I följande exempel väljs värdet för Question2 som True och värdet för Result anges som correct.
Exempel på Ange värderegel med tjänsten Formulärdatamodell.
Show show
Med regeltypen Show kan du skriva en regel som visar eller döljer ett formulärobjekt baserat på om ett villkor är uppfyllt eller inte. Regeltypen Visa utlöser även åtgärden Dölj om villkoret inte uppfylls eller returnerar False.
En vanlig Visa-regel är strukturerad på följande sätt:
Show Object A;
When:
(Condition 1 OR Condition 2 OR Condition 3) is TRUE;
Else:
Hide Object A;
Hide hide
På liknande sätt som med regeltypen Visa kan du använda regeltypen Hide för att visa eller dölja ett formulärobjekt baserat på om ett villkor är uppfyllt eller inte. Dölj regeltyp utlöser även åtgärden Visa om villkoret inte uppfylls eller returnerar False.
En vanlig Dölj-regel är strukturerad på följande sätt:
Hide Object A;
When:
(Condition 1 AND Condition 2 AND Condition 3) is TRUE;
Else:
Show Object A;
Enable enable
Regeltypen Enable gör att du kan aktivera eller inaktivera ett formulärobjekt baserat på om ett villkor är uppfyllt eller inte. Regeltypen Aktivera utlöser även åtgärden Inaktivera om villkoret inte uppfylls eller returnerar False.
En vanlig Aktivera-regel är strukturerad på följande sätt:
Enable Object A;
When:
(Condition 1 AND Condition 2 AND Condition 3) is TRUE;
Else:
Disable Object A;
Disable disable
På liknande sätt som för typen Aktivera regel kan du med regeltypen Disable aktivera eller inaktivera ett formulärobjekt baserat på om ett villkor är uppfyllt eller inte. Regeltypen Inaktivera utlöser också åtgärden Aktivera om villkoret inte uppfylls eller returnerar False.
En vanlig inaktiveringsregel är strukturerad på följande sätt:
Disable Object A;
When:
(Condition 1 OR Condition 2 OR Condition 3) is TRUE;
Else:
Enable Object A;
Validate validate
Regeltypen Validate validerar värdet i ett fält med hjälp av ett uttryck. Du kan till exempel skriva ett uttryck för att kontrollera att textrutan som anger ett namn inte innehåller specialtecken eller siffror.
En vanlig valideringsregel är strukturerad enligt följande:
Validate Object A;
Using:
(Expression 1 AND Expression 2 AND Expression 3) is TRUE;
Navigate among the panels
Regeltypen Navigate among the panels gör att du kan växla fokus mellan olika paneler i ett formulär. Du kan till exempel skapa ett uttryck som flyttar fokus till nästa panel.
En vanlig navigeringsregel bland panelerna för att flytta fokus till nästa panel är strukturerad på följande sätt:
Navigate among the panels
Shift focus to the next item Object A;
When:
(Condition 1 OR Condition 2 OR Condition 3) is TRUE;
På samma sätt kan du skriva Navigera bland panelerna för att flytta fokus till föregående panel:
Navigate among the panels
Shift focus to the previous item Object A;
When:
(Condition 1 OR Condition 2 OR Condition 3) is TRUE;
Klicka här om du vill ha mer information om hur du skapar en regel för navigering på en panel.
Async Function call
Den här funktionen är en förhandsversion och kan nås via vår förhandsutgåva.
Regeltypen Async Function call gör att du kan utföra asynkrona funktioner. Det gör att du kan initiera ett funktionsanrop som fungerar oberoende av huvudkörningstråden, vilket gör att andra processer kan fortsätta köras utan att vänta på att den asynkrona funktionen ska slutföras.
En typisk anropsregel för asynkron funktion för Async Function är strukturerad enligt följande:
When:
(Condition 1 OR Condition 2 OR Condition 3) is TRUE;
Async Function call
[Callback Function];
Mer information om hur du använder Async Function-anropet i Visual Rule Editor finns i artikeln Använda asynkrona funktionsanrop i regelredigeraren.
Nästa steg
Låt oss nu förstå olika exempel för en regelredigerare för ett anpassat formulär baserat på kärnkomponenter.
Se även
- Introduktion till regelredigeraren för adaptiv Forms baserat på kärnkomponenter
- Operatortyper och händelser i regelredigeraren för ett adaptivt formulär baserat på kärnkomponenter
- Regelredigerarens användargränssnitt för adaptiv Forms baserat på kärnkomponenter
- Olika användningsområden för regelredigeraren för ett adaptivt formulär baserat på kärnkomponenter
- Skillnader i olika utgåvor av regelredigeraren
- Använda asynkrona funktioner i ett adaptivt formulär
- Anropa tjänstförbättringar i Visual Rule Editor för formulär som baseras på kärnkomponenter
- Introduktion till anpassade funktioner för adaptiv Forms baserat på kärnkomponenter
- Skapa en anpassad funktion för ett adaptivt formulär baserat på kärnkomponenter
- Omfångsobjekt i anpassade funktioner
- Exempel på utveckling och användning av en anpassad funktion