Bemærk
Adgang til denne side kræver godkendelse. Du kan prøve at logge på eller ændre mapper.
Adgang til denne side kræver godkendelse. Du kan prøve at ændre mapper.
Når du designer arbejdsprocesser, har du mulighed for at medtage den logik, du vil udføre, i faser og trin.
- Faser. Faser gør det nemmere at læse arbejdsproceslogikken i realtid og forklarer arbejdsproceslogikken i realtid. Faser påvirker dog ikke logikken eller funktionsmåden for arbejdsprocesser. Hvis en proces indeholder faser, skal samtlige trin i processen være indeholdt i en fase.
- Trin. Trinnene er en samlet forretningslogik i en arbejdsproces. Trin kan omfatte betingelser, handlinger, andre trin eller en kombination af disse elementer.
Handlinger, som processer i arbejdsprocessen i realtid kan udføre
Processer i arbejdsprocessen i realtid kan udføre de handlinger, der vises i følgende tabel.
| Handling | Beskrivende tekst |
|---|---|
| Opret række | Opretter en ny række for en tabel og tildeler værdier, du vælger, til attributter. |
| Opdater række | Du kan opdatere den række, som arbejdsprocessen kører på i realtid, de rækker, der er knyttet til denne række i en N:1-relation, eller rækker, der er oprettet i tidligere trin. |
| Tildel række | Du kan tildele den række, som arbejdsprocessen kører på i realtid, de rækker, der er knyttet til denne række i en N:1-relation, eller rækker, der er oprettet i tidligere trin. |
| Send mail | Sender en mail. Du kan vælge at oprette en ny mail eller bruge en mailskabelon, der er konfigureret for tabellen for den række, som arbejdsprocessen kører på i realtid, eller enhver tabel, som har en N:1-relation med tabellen, eller tabellen for alle rækker, der er oprettet i tidligere trin. |
| Start en underordnet arbejdsproces | Starter en arbejdsproces i realtid, der er konfigureret som en underordnet arbejdsproces. |
| Skift status | Ændrer status for den række, som processen kører på, de rækker, der er knyttet til denne række i en N:1-relation, eller rækker, der er oprettet i tidligere trin. |
| Stop arbejdsproces | Standser den aktuelle arbejdsproces. Du kan angive en status til enten Fuldført eller Annulleret og angive en statusmeddelelse. Når arbejdsprocesser i realtid er konfigureret for en hændelse, og du standser en arbejdsproces i realtid med statussen Annulleret, kan hændelsen ikke fuldføres. Du kan finde flere oplysninger under Bruge arbejdsprocesser i realtid. |
| Brugerdefineret trin | Udviklere kan oprette brugerdefinerede arbejdsprocestrin i realtid, der definerer handlinger. Som standard er der ikke nogen tilgængelige brugerdefinerede trin. |
Angive rækkeværdier
Når du opretter en række, kan du angive værdier for rækken. Når du opdaterer en række, kan du angive, tilføje, forøge, formindske, multiplicere eller fjerne værdier.
Når du vælger Angiv egenskaber, åbnes en dialogboks, der viser dig standardformularen for tabellen.
Nederst i dialogboksen kan du se en liste over yderligere kolonner, der ikke findes i formularen.
For alle kolonner kan du angive en statisk værdi, der er angivet af arbejdsprocessen.
I højre side af dialogboksen Formularassistent kan du angive eller vedhæfte dynamiske værdier fra den aktuelle række. Dette omfatter værdier fra relaterede rækker, der kan opnås adgang til fra N:1-relationer (mange til en) for tabellen.
De tilgængelige indstillinger i Formularassistent afhænger af den kolonne, du har valgt i formularen. Når du angiver en dynamisk værdi, får du vist en gul pladsholder, der kaldes en "slug", der viser, hvor de dynamiske data er inkluderet. Hvis du vil fjerne værdien, skal du vælge sluggen og slette den. For tekstkolonner kan du bruge en kombination af statiske og dynamiske data.
I forbindelse med dynamiske værdier kan du ikke vide, om en kolonne eller relateret tabel har den værdi, du vil angive. Du kan angive en nogle kolonner for at afprøve og angive værdien og sortere dem ved hjælp af de grønne pile. Hvis den første kolonne ikke indeholder data, kan du prøve den anden kolonne osv. Hvis ingen af kolonnerne indeholder data, kan du angive en standardværdi, som skal benyttes.
Angive betingelser for arbejdsproceshandlinger i realtid
De handlinger, du anvender, afhænger ofte af betingelser. I processer i arbejdsprocessen i realtid kan du angive betingelser og oprette en fordelingslogik for at få de ønskede resultater på flere måder. Du kan kontrollere værdier for den række, som processen i arbejdsprocessen i realtid kører mod, de rækker, der er knyttet til den pågældende række med en N:1-relation, eller værdier i selve processen.
| Betingelsestype | Beskrivende tekst |
|---|---|
| Kontrollér betingelse | En logisk "if-<betingelse> then"-sætning. Du kan kontrollere de aktuelle værdier for den række, som arbejdsprocessen kører på i realtid, de rækker, der er knyttet til rækken i en N:1-relation, eller rækker, der er oprettet i tidligere trin. På basis af disse værdier kan du definere yderligere trin, når betingelsen er sand. I sætningen "if-<betingelse> then" kan du bruge følgende operatorer: Er lig med, Er ikke lig med, Indeholder data, Indeholder ikke data, Under og Ikke under. Bemærk:Under og Ikke under er hierarkiske operatorer. De kan kun bruges på de tabeller, som har et defineret hierarkisk forhold. Hvis du forsøger at bruge disse operatorer i de tabeller, der ikke har defineret den hierarkiske relation, kan du se fejlmeddelelsen: "Du bruger en hierarkisk operator i en tabel, hvor der ikke er defineret en hierarkisk relation. Du skal enten gøre tabellen hierarkisk (ved at markere en relation som hierarkisk) eller bruge en anden operator." Du kan finde flere oplysninger om hierarkiske relationer under Definere og forespørge på hierarkisk relaterede data. Et skærmbillede, der følger tabellen, er et eksempel på definitionen på arbejdsprocessen i realtid, som bruger de hierarkiske operatorer Under og Ikke under. |
| Betinget forgrening | En logisk "else-if-then"-sætning, hvor editoren bruger teksten "Otherwise, if <betingelse> then": Vælg en kontrolbetingelse, du tidligere har defineret, og du kan tilføje en betinget forgrening for at definere yderligere trin, når kontrolbetingelsen returnerer falsk. |
| Standardhandling | En logisk "else"-sætning. Editoren bruger teksten "Otherwise:" Vælg en kontrolbetingelse, betinget forgrening, vent-betingelse eller parallel vent-forgrening, som du tidligere har defineret, og du kan bruge en standardhandling til at definere trin for alle sager, der ikke opfylder de kriterier, der er defineret i betingelses- eller forgreningselementer. |
| Ventebetingelse | Arbejdsprocesser i realtid kan ikke bruge vent-betingelser. Vent-betingelser kan dog bruges sammen med baggrundsarbejdsprocesser. Flere oplysninger: Angive betingelser for baggrundsarbejdsproceshandlinger |
| Parallel vent-gren | Definerer en alternativ vent-betingelse for en arbejdsproces i realtid med et tilsvarende sæt ekstra trin, der kun skal udføres, når det første kriterium opfyldes. Du kan bruge parallelle vent-grene til at oprette tidsgrænser i arbejdsproceslogikken i realtid. De hjælper med at forhindre, at arbejdsprocessen i realtid venter i det uendelige, indtil de kriterier, der er defineret i en vent-betingelse, er opfyldt. |
| Brugerdefineret trin | Udviklere kan oprette brugerdefinerede arbejdsprocestrin i realtid, der definerer betingelser. Der er ikke nogen tilgængelige brugerdefinerede trin som standard. |
Følgende skærmbillede indeholder et eksempel på arbejdsprocesdefinitionen med de hierarkiske operatorer Under og Ikke under. I dette eksempel anvender vi to forskellige rabatter for to grupper af konti. I Tilføj trin, vi har valgt Kontrollér betingelse for at angive den if-then-betingelse, der indeholder operatoren Under eller Ikke under. Den første if-then-betingelse gælder for alle konti, der er Under kontoen Alpine Ski House. Disse konti få 10 % rabat på købte varer og tjenester. Den anden if-then-betingelse gælder for alle konti, der er Ikke under kontoen Alpine Ski House, og de modtager en rabat på 5 %. Derefter valgte vi Opdater række for at definere den handling, der skal udføres på baggrund af betingelsen.
Starte arbejdsprocesser i realtid, før eller efter status ændres
Når du konfigurerer Indstillinger for automatiske processer for arbejdsprocesser i realtid, kan du i indstillingerne for Start når for statusændring vælge Efter eller Før for at angive, hvordan status skal ændres. Standardindstillingen er Efter.
Når du vælger Før du siger, at logikken i arbejdsprocessen i realtid skal anvendes, før data, der ændrer status, gemmes. Dette giver dig mulighed for at kontrollere værdierne, før en anden logik er anvendt efter handlingen og forhindrer, at yderligere logik udføres. Du kan f.eks. have yderligere logik i en plug-in eller brugerdefineret arbejdsproceshandling i realtid, som kan starte handlinger på et andet system. Ved at stoppe yderligere behandling kan du undgå tilfælde, hvor eksterne systemer påvirkes. Anvendelse af arbejdsprocesser i realtid før denne hændelse betyder også, at andre arbejdsproces- eller plug-in-handlinger i realtid, der kan gemme data, ikke skal "annulleres", når handlingen annulleres.
| Handling | Start når | Forklaring |
|---|---|---|
| Række er oprettet | Efter | Kun Efter er tilgængelig. Rækken har ikke et entydigt id før efter fasen i den interne MainOperation, så den kan ikke forekomme, før rækken er oprettet. |
| Ændringer af rækkestatus | Før Efter |
Svarer til en opdateringshandling, der giver mulighed for at anvende arbejdsproceslogik i realtid efter eller før statusændringerne. Før svarer til fasen før handlingen. Efter svarer til fasen efter handlingen. |
| Rækken er tildelt | Før Efter |
Svarer til en opdateringshandling, der giver mulighed for at anvende arbejdsproceslogik i realtid efter eller før statusændringerne. Før svarer til fasen før handlingen. Efter svarer til fasen efter handlingen. |
| Rækkekolonner ændres | Før Efter |
Svarer til en opdateringshandling, der giver mulighed for at anvende arbejdsproceslogik i realtid efter eller før statusændringerne. Før svarer til fasen før handlingen. Efter svarer til fasen efter handlingen. |
| Række slettes | Før | Kun Før er tilgængelig. Rækkesletning svarer til preoperationsfasen. Når MainOperation indtræffer, slettes rækken, og der kan ikke ske yderligere statusændring. |
Du kan finde flere oplysninger om faserne preoperation, hovedoperation og postoperation i Pipeline for hændelseskørsel.
Bruge arbejdsprocesser i realtid
Du kan konfigurere arbejdsprocesser i realtid, men du skal være opmærksom, når du bruger dem. Arbejdsprocesser i baggrunden anbefales som regel, da de giver systemet mulighed for at anvende dem, når ressourcer er tilgængelige på serveren. Det er med til at gøre det arbejde, som serveren skal udføre, mere problemfrit, og er med til at opretholde den bedste ydeevne for alle, der bruger systemet. Ulempen er, at handlinger, der er defineret af arbejdsprocesser i baggrunden, ikke er øjeblikkelige. Du kan ikke forudsige, hvornår de anvendes, men det tager generelt et par minutter. I forbindelse med automatisering af forretningsprocesser er dette som regel fint, da brugere af systemet ikke behøver at vide, at processen kører.
Brug arbejdsprocesser i realtid, når en forretningsproces kræver, at en bruger skal kunne se resultaterne af processen straks, eller hvis du vil have mulighed for at annullere en handling. Det kan f.eks. være, at du vil angive visse standardværdier for en række, første gang den gemmes, eller du vil sikre dig, at nogle rækker ikke slettes.
Konvertere mellem arbejdsprocesser i realtid og i baggrunden
Du kan ændre en arbejdsproces i realtid til en arbejdsproces i baggrunden ved at vælge Konvertér til en arbejdsproces i baggrunden på værktøjslinjen.
Du kan ændre en arbejdsproces i baggrunden til en arbejdsproces i realtid ved at vælge Konvertér til en arbejdsproces i realtid på værktøjslinjen. Hvis arbejdsprocessen i baggrunden bruger en vent-betingelse, bliver den ugyldig, og du kan ikke aktivere den, før du fjerner vent-betingelsen.
Starte arbejdsprocesser i realtid, før eller efter status ændres
Når du konfigurerer Indstillinger for automatiske processer for arbejdsprocesser i realtid, kan du i indstillingerne for Start når for statusændring vælge Efter eller Før for at angive, hvordan status skal ændres. Standardindstillingen er Efter.
Når du vælger Før, siger du, at logikken i arbejdsprocessen i realtid skal anvendes, før data, der ændrer status, gemmes. Dette giver dig mulighed for at kontrollere værdierne, før anden logik anvendes efter handlingen, og forhindrer, at der udføres yderligere logik. Du har f.eks. yderligere logik i en plug-in eller en brugerdefineret arbejdsproceshandling i realtid, som kan starte handlinger på et andet system. Ved at stoppe yderligere behandling kan du undgå tilfælde, hvor eksterne systemer påvirkes. Anvendelse af arbejdsprocesser i realtid før denne hændelse betyder også, at andre arbejdsproces- eller plug-in-handlinger i realtid, der muligvis har gemt data, ikke skal tilbageføres, når handlingen annulleres.
Bruge arbejdsproceshandlingen Stop med arbejdsprocesser i realtid
Når du anvender handlingen Stop arbejdsproces i en arbejdsproces i realtid, har du mulighed for at angive en statusbetingelse, der enten kan være Fuldført eller Annulleret. Når du angiver status til annulleret, forhindrer du, at handlingen udføres. Brugeren får vist en fejlmeddelelse med teksten fra statusmeddelelsen for stop-handlingen med overskriften Fejl i forretningsproces.
Konfiguration af, hvem der kører arbejdsprocessen i realtid
I arbejdsprocesdesigneren kan du angive, hvem arbejdsprocessen skal køre, til enten "Ejeren af arbejdsprocessen" eller "Den bruger, der har foretaget ændringer i posten". Hvis du vil ændre ejeren af posten til en anden bruger, skal du åbne fanen Administration i arbejdsproceseditoren og bruge opslaget til at vælge en ny ejer til arbejdsprocessen. Du skal bruge sikkerhedsrollen Systemadministrator eller Systemtilpasser eller en rolle, der indeholder rettigheden prvChangeOwnerIdOfWorkflow til at ændre ejeren af arbejdsprocessen.
Næste trin
Overvåg og administrer arbejdsprocesser i realtid
Bedste praksis for arbejdsprocesser i realtid