Använda Invoke Service i Visual Rule Editor för formulär baserade på kärnkomponenter

Den här funktionen är en förhandsversion och kan nås via vår förhandsutgåva.

Visuell regelredigerare i ett adaptivt formulär har stöd för funktionen Anropa tjänst som gör att du kan välja en tjänst i listan över formulärdatamodeller (FDM) som är konfigurerade för din instans. Du kan mappa formulärfält direkt till tjänstens indataparametrar. Om du vill mappa formulärfält till utdataparametrarna använder du händelsens nyttolastalternativ för den angivna formulärdatamodellstjänsten. Dessutom kan du med redigeraren för visuella regler skapa regler för hanterare för lyckade och misslyckade åtgärder för Invoke Service -åtgärder baserat på dess utdataresvar. Hanterare för lyckade åtgärder hanterar den lyckade körningen av åtgärden Anropa tjänst, medan felhanterare åtgärdar eventuella fel som inträffar.

Fördelar med att använda Invoke Service i formulärets regelredigerare

Här är några fördelar med att använda Invoke Service-åtgärden i regelredigeraren för ett tilläggsformulär:

  • Effektiv integrering: Visuell regelredigerare förenklar processen att integrera externa tjänster eller API:er i din adaptiva Forms. Genom att använda Invoke Service kan du enkelt koppla formulär till olika datakällor och tjänster utan att behöva komplex kodning, vilket gör att formulärintegreringen blir mer effektiv.

  • Dynamisk svarshantering: Du kan hantera slutförda och felsvar baserat på utdataresvaren i Invoke Service, vilket gör att formulär kan reagera dynamiskt på olika scenarier. Det säkerställer att blanketterna hanterar olika förhållanden på ett korrekt sätt, vilket ger större flexibilitet och kontroll.

  • Förbättrad användarinteraktion: Om du använder Invoke Service i regelredigeraren kan du validera dina formulär i realtid, vilket ger en bättre användarupplevelse. Det säkerställer också att data valideras korrekt på serversidan, vilket minskar antalet fel och förbättrar formulärens tillförlitlighet.

Anropa tjänsthanterare för lyckade och misslyckade åtgärder

NOTE
Du kan bara använda hanterarna för Anropa tjänst för lyckade och misslyckade formulär baserade på kärnkomponenter. Forms-baserade på grundkomponenter stöder inte hanterare för Invoke Service och fel.

Med den visuella regelredigeraren kan du skapa regler för hanterare för lyckade och misslyckade åtgärder för Invoke Service -åtgärder baserat på dess utdataresvar. Nedanstående bild visar Invoke Service i Visual rule editor för ett adaptivt format:

Anropa tjänsthanterare

Klicka på Add Success Handler eller Add Failure Handler om du vill lägga till en hanterare för lyckade eller misslyckade åtgärder.

När du klickar på Add Success Handler visas regelredigeraren Invoke Service Success Handler så att du kan ange regler eller logik för att hantera Invoke Service -utdatasvaret när åtgärden har slutförts. Du kan ange regler även utan att definiera villkor, men du kan lägga till villkor för hanteraren av lyckade åtgärder genom att klicka på alternativet Add Condition.

Hanteraren för lyckade anrop av tjänsten

Du kan lägga till flera regler för att hantera lyckade svar för åtgärden Anropa tjänst:

Hanterare för flera lyckade åtgärder {width="50%,"}

På samma sätt kan du lägga till regler för att hantera Invoke Service -utdataresvaret när åtgärden inte lyckas. Bilden nedan visar regelredigeraren Invoke Service Failure Handler:

Anropa hanteraren för tjänstfel

Du kan också lägga till flera regler för att hantera misslyckade svar från åtgärden Anropa tjänst.

Funktionen Aktivera felvalidering på servern tillåter validering som lagts till av författaren när ett adaptivt formulär utformas för att köras på servern också.

Krav för att använda Invoke Service i regelredigeraren

Nedan visas de krav du måste uppfylla innan du kan använda Anropa tjänst i regelredigeraren:

  • Kontrollera att du har konfigurerat en datakälla. Klicka här om du vill ha anvisningar om hur du konfigurerar en datakälla.
  • Skapa en formulärdatamodell med den konfigurerade datakällan. Klicka här om du vill ha hjälp med att skapa en formulärdatamodell.
  • Kontrollera att kärnkomponenterna är aktiverade för din miljö. Klicka här om du vill ha detaljerade anvisningar om hur du aktiverar kärnkomponenter för din miljö.

Utforska Invoke Service via olika användningsfall

Med den visuella regelredigerarens Anropa tjänst kan du utföra flera användbara åtgärder. Du kan använda den för att fylla i listrutealternativ, ange repeterbara eller enkla paneler och validera formulärfält, allt baserat på utdatasvaret för Anropa tjänst. Detta gör formulären mer flexibla och interaktiva.

Tabellen nedan beskriver några scenarier där Invoke Service kan användas:

Använd skiftläge
Beskrivning
Fyll i listrutealternativ med hjälp av utdata från Invoke Service
Fyller i listrutealternativ dynamiskt baserat på data som hämtats från Invoke Service-utdata. Klicka här för att se implementeringen.
Ange repeterbar panel med utdata från Invoke Service
Konfigurerar en repeterbar panel genom att använda data från Invoke Service-utdata, vilket möjliggör dynamiska paneler. Klicka här för att se implementeringen.
Ange panel med utdata från Invoke Service
Anger innehållet eller synligheten för en panel med specifika värden från Invoke Service-utdata. Klicka här för att se implementeringen.
Använd utdataparametern för Invoke Service för att validera andra fält
Använder specifika utdataparametrar från Anropa-tjänsten för att validera formulärfälten. Klicka här för att se implementeringen.

Skapa ett Get Information-formulär som hämtar värden baserat på indata som anges i textrutan Pet ID. Skärmbilden nedan visar det formulär som används i dessa fall:

Hämta informationsformulär

Formulärfält

Lägg till följande fält i formuläret:

  • Ange husdjurs-ID: Textruta

  • Välj foto-URL:er: Listruta

  • Taggar: Panel

    • Namn: Textruta
    • ID: Textruta
  • Kategori: Panel

    • Namn: Textruta
  • Skicka: Skicka-knapp

NOTE
I fältet Bindningsreferens i dialogrutan Egenskaper i formulärfälten väljer du foldersearch_18 och navigerar till den binära egenskap som du har lagt till i formulärdatamodellen (FDM).

Konfigurerar paneler

Ange panelerna som repetitiva med följande begränsningar:

  • Minsta värde: 1
  • Högsta värde: 4

Du kan justera värdena för de upprepade panelerna så att de passar dina behov.

Datakälla

I det här exemplet används API:t Swagger Petstore för att konfigurera en datakälla. Formulärdatamodellen har konfigurerats för tjänsten getPetById, som hämtar information om djur baserat på det angivna ID:t.

Låt oss publicera följande JSON med tjänsten addPet i Swagger Petstore API:

{
        "id": 101,
        "category": {
            "id": 1,
            "name": "Labrador"
        },
        "name": "Lisa",
        "photoUrls": [
            "https://example.com/photos/lisa1.jpg",
            "https://example.com/photos/lisa2.jpg"
        ],
        "tags": [
            {
                "id": 1,
                "name": "vaccinated"
            },
            {
                "id": 2,
                "name": "friendly"
            },
            {
                "id": 3,
                "name": "house-trained"
            }
        ],
        "status": "available"
    }

Regler och logik implementeras med åtgärden Anropa tjänst i regelredigeraren i textrutan Pet ID för att visa de angivna användningsexemplen.

Nu ska vi gå igenom implementeringen av varje användningsfall i detalj.

Användningsfall 1: Fyll i listrutevärden med hjälp av utdata från Invoke Service

Det här användningsexemplet visar hur du fyller i listrutealternativ dynamiskt baserat på utdata för en Invoke Service.

Implementering

För att uppnå detta skapar du en regel i textrutan Pet ID som anropar tjänsten getPetById. I regeln anger du egenskapen enum för listrutan photo-url till photoUrls i Add Success Handler.

Ange nedrullningsbart värde

Utdata

Ange 101 i textrutan Pet ID för att dynamiskt fylla i listrutealternativen baserat på det angivna värdet.

Resultat

Användningsfall 2: Ange upprepningsbar panel med utdata från Invoke Service

Det här användningsexemplet visar hur du fyller i repeterbara paneler dynamiskt baserat på utdata från en Invoke Service.

Överväganden

  • Kontrollera att namnet på den repeterbara panelen matchar parametern för den Invoke Service som du vill ange panelen för.
  • Panelen upprepas för antalet värden som returneras av motsvarande Anropa tjänst-fält.

Implementering

Skapa en regel i textrutan Pet ID för att anropa tjänsten getPetById. I Add Success Handler lägger du till ett annat svar från en hanterare. Ange värdet tags för panelen tags i regeln.

Skapa regel för repeterbar panel

Utdata

Ange 101 i textrutan Pet ID om du vill fylla i den repeterbara panelen dynamiskt baserat på indatavärdet.

Utdata

Användningsfall 3: Ange panel med utdata från Invoke Service

Det här användningsexemplet visar hur du dynamiskt anger värdet för en panel baserat på utdata från en Invoke Service.

Överväganden

  • Kontrollera att panelens namn matchar parametern för den Anropa tjänst som du vill ange panelen för.
  • Panelen upprepas för antalet värden som returneras av motsvarande Invoke Service-fält.

Implementering

Skapa en regel i textrutan Pet ID för att anropa tjänsten getPetById. I Add Success Handler lägger du till ett annat svar från en hanterare. Ange värdet category.name för textrutan categoryname i regeln.

Skapa regel för repeterbar panel

Utdata

Ange 101 i textrutan Pet ID för att fylla i panelen dynamiskt baserat på indatavärdet.

Utdata

Använd fall 4: Använd utdataparametern för Invoke Service för att validera andra fält

Det här användningsexemplet visar hur du använder utdata från en Anropa tjänst för att dynamiskt validera andra formulärfält.

Implementering

Skapa en regel i textrutan Pet ID för att anropa tjänsten getPetById. I Add Failure Handler lägger du till ett felhanterarsvar. Dölj knappen Skicka om en felaktig Pet ID anges.

Felhanterare

Utdata

Ange 102 i textrutan Pet ID och knappen Skicka är dold.

Utdata

Frågor och svar

F: Vad händer om jag har skapat en regel med Invoke Service och sedan uppgraderar till den senaste versionen av kärnkomponenterna?

A: När du uppgraderar till den senaste versionen av kärnkomponenterna uppdateras regeln Anropa tjänst automatiskt till det senaste användargränssnittet eftersom den är bakåtkompatibel.

F: Kan jag lägga till flera regler för att hantera lyckade eller misslyckade svar för Invoke Service-åtgärden?

S: Ja, du kan lägga till flera regler för att hantera slutförda eller misslyckade svar för åtgärden Anropa tjänst.

Relaterade artiklar

Ytterligare resurser

recommendation-more-help
fbcff2a9-b6fe-4574-b04a-21e75df764ab