Konfigurere faser og trinn for arbeidsflyt i sanntid
Når du utformer arbeidsflyter, har du muligheten til å inkludere logikken som du vil utføre, i faser og trinn.
FASER
Faser gjør arbeidsflytlogikken i sanntid enklere å lese og forklarer arbeidsflytlogikken i sanntid. Faser påvirker imidlertid ikke logikken eller funksjonaliteten i arbeidsflyter. Hvis en prosess har faser, må alle trinn i prosessen være i en fase.
Trinn.
Trinnene er en forretningslogikkenhet i en arbeidsflyt. Trinn kan inneholde betingelser, handlinger, andre trinn eller en kombinasjon av disse elementene.
Handlinger som arbeidsflytprosesser i sanntid kan utføre
Arbeidsflytprosesser i sanntid kan utføre handlingene som er oppført i følgende tabell.
Handling | Beskrivelse |
---|---|
Opprett rad | Oppretter en ny rad for en tabell, og tilordner verdier du velger til attributter. |
Oppdater rad | Du kan oppdatere raden som arbeidsflyten i sanntid kjører på, alle radene som er koblet til denne raden i en N:1-relasjon, eller alle radene som er opprettet av tidligere trinn. |
Tilordne rad | Du kan tilordne raden som arbeidsflyten i sanntid kjører på, alle radene som er koblet til denne raden i en N:1-relasjon, eller alle radene som er opprettet av tidligere trinn. |
Send e-post | Sender en e-postmelding. Du kan velge å opprette en ny e-postmelding eller bruke en e-postmal som er konfigurert for tabellen til raden som sanntidsarbeidsflyten kjører på, eller alle tabeller som har en N: 1-relasjon med tabellen, eller tabellen til alle rader som er opprettet i tidligere trinn. |
Start underordnet arbeidsflyt | Starter en arbeidsflytprosess i sanntid som er konfigurert som en underordnet arbeidsflyt. |
Endre status | Endrer statusen for raden som prosessen kjører på, alle radene som er koblet til denne raden i en N:1-relasjon, eller alle radene som er opprettet av tidligere trinn. |
Stopp arbeidsflyt | Stanser gjeldende arbeidsflyt. Du kan angi statusen Fullført eller Avbrutt og angi en statusmelding. Når sanntidsarbeidsflyter er konfigurert for en hendelse, vil stopp av en arbeidsflyt i sanntid med statusen Avbrutt forhindre hendelseshandlingen fra å fullføre. Gå til Bruke arbeidsflyter i sanntid for mer informasjon. |
Egendefinert trinn | Utviklere kan opprette egendefinerte arbeidsflyttrinn i sanntid som definerer handlinger. Ingen egendefinerte trinn er tilgjengelige som standard. |
Angi radverdier
Når du oppretter en rad, kan du angi verdier for raden. Når du oppdaterer en rad, kan du angi, tilføye, øke, redusere, multiplisere eller fjerne verdier.
Når du velger Angi egenskaper, åpnes en dialogboks som viser standardskjemaet for tabellen.
Nederst i dialogboksen kan du se en liste over flere kolonner som ikke finnes i skjemaet.
For alle kolonner kan du angi en statisk verdi, som angis av arbeidsflyten.
Til høyre for dialogboksen gir skjemahjelperen deg muligheten til å angi eller tilføye dynamiske verdier fra konteksten til den gjeldende raden. Dette omfatter verdier fra relaterte rader som kan nås fra N: 1-relasjonene (mange-til-en) for tabellen.
Hvilke alternativer som er tilgjengelige i skjemahjelperen, avhenger av kolonnen du har valgt i skjemaet. Når du angir en dynamisk verdi, ser du en gul plassholder som er kjent som en "plassholder", som viser hvor de dynamiske dataene vil bli inkludert. Hvis du vil fjerne verdien, merker du plassholderen og sletter den. For tekstkolonner kan du bruke en kombinasjon av statiske og dynamiske data.
Med dynamiske verdier kan du ikke være sikker på at en kolonne eller en relatert tabell har verdien du ønsker å angi. Du kan faktisk angi et antall kolonner for å prøve og angi verdien og sortere dem i rekkefølge ved hjelp av de grønne pilene. Hvis det ikke er data i den første kolonnen, prøver du den andre kolonnen og så videre. Hvis det ikke er data i noen av kolonnene, kan du angi en standardverdi som skal brukes.
Angi betingelser for arbeidsflythandlinger i sanntid
Handlingene som du vil bruke, avhenger ofte av betingelser. Med arbeidsflytprosesser i sanntid kan du angi betingelser og opprette forgreningslogikk på flere måter for å få resultatene du ønsker. Du kan kontrollere verdier for raden som arbeidsflytprosessen i sanntid kjører mot, alle rader som er knyttet til denne raden med et N: 1-forhold, eller verdier i selve prosessen.
Betingelsestype | Beskrivelse |
---|---|
Kontroller betingelse | En logisk if <condition> then-setning. Du kan kontrollere gjeldende verdier for raden som sanntidsarbeidsflyten kjører på, alle radene som er knyttet til denne raden i en N:1-relasjon, eller alle rader som er opprettet i tidligere trinn. Basert på disse verdiene kan du definere ytterligere trinn når betingelsen er sann. Du kan bruke følgende operatorer i if <condition> then-setningen: Er lik, Er ulik, Inneholder data, Inneholder ikke data, Under og Ikke under. Obs! Under og Ikke under er hierarkiske operatorer. De kan bare brukes på tabellene som har en hierarkisk relasjon som er definert. Hvis du prøver å bruke disse operatorene på tabeller som ikke har den hierarkiske relasjonen som er definert, vil du se følgende feilmelding: "Du bruker en hierarkisk operator på en tabell som ikke har en hierarkisk relasjon som er definert. Du må enten gjøre tabellen hierarkisk (ved å merke en relasjon som hierarkisk), eller bruke en annen operator." Hvis du vil ha mer informasjon om hierarkiske relasjoner, kan du gå til Definere og spørre etter hierarkisk relaterte data. Et skjermbilde som følger tabellen er et eksempel på definisjonen av arbeidsflytprosessen i sanntid som bruker de hierarkiske operatorene Under og Ikke under. |
Betinget gren | En logisk "else-if-then"-setning. Redigeringsprogrammet bruker teksten "ellers, if <condition> then:" Velg en kontrollbetingelse du tidligere har definert, og dermed kan du legge til en betinget gren for å definere ytterligere trinn når betingelsen av returnerer usann. |
Standardhandling | En logisk else-setning. Redigeringsprogrammet bruker teksten "ellers:" Velg en kontrollbetingelse, betinget gren, ventebetingelse eller parallell ventegren du tidligere har definert, og dermed kan du bruke en standardhandling til å definere trinn for alle saker som ikke samsvarer med vilkårene som er definert i betingelsen eller grenelementene. |
Ventebetingelse | Sanntidsarbeidsflyter kan ikke bruke ventebetingelser. Ventebetingelser kan imidlertid brukes med bakgrunnsarbeidsflyter. Mer informasjon: Angi betingelser for bakgrunnsarbeidsflythandlinger |
Parallell ventegren | Definerer en alternativ ventebetingelse for en arbeidsflyt i sanntid med et tilsvarende sett ekstratrinn som bare utføres når det første vilkåret oppfylles. Du kan bruke parallelle ventegrener til å opprette tidsgrenser i arbeidsflytlogikken i sanntid. De bidrar til å hindre at arbeidsflyten i sanntid venter med ubestemt varighet til vilkårene som er definert i en ventebetingelse, blir oppfylt. |
Egendefinert trinn | Utviklere kan opprette egendefinerte arbeidsflyttrinn i sanntid som definerer betingelser. Det finnes ingen egendefinerte trinn som standard. |
Følgende skjermbilde inneholder et eksempel på definisjonen av arbeidsflytprosessen som bruker de hierarkiske operatorene Under og Ikke under. I vårt eksempel bruker vi to ulike rabatter til to grupper av kontoer. I Legg til trinn valgte vi Kontroller betingelsen til å angi if-then-vilkår som inneholder operatorene Under eller Ikke under. Den første if-then-betingelsen gjelder for alle kontoer som er Under kontoen Alpine Ski House. Disse kontoene får 10 % rabatt på kjøpte varer og tjenester. Den andre if-then-betingelsen gjelder for alle kontoer som er Ikke under kontoen Alpine Ski House, og de får 5 % rabatt. Deretter valgte vi Oppdater rad til å definere hvilken handling som skal utføres basert på betingelsen.
Starte sanntidsarbeidsflyter før eller etter statusendringer
Når du konfigurerer Alternativer for automatiske prosesser for sanntidsarbeidsflyter, kan du via Start når-alternativene for statusendringshendelsen velge Etter eller Før for når statusen skal endres. Standardalternativet er Etter.
Når du velger Før, betyr dette at logikken i arbeidsflyten i sanntid skal brukes før data som endrer statusen, lagres. Dette gir deg muligheten til å kontrollere verdiene før annen logikken er brukt etter operasjonen, og hindre at ytterligere logikk utføres. Du kan for eksempel ha mer logikk i en plugin-modul eller en egendefinert arbeidsflythandling i sanntid som kan starte handlinger på et annet system. Ved å stoppe videre behandling kan du unngå tilfeller der eksterne systemer påvirkes. Bruk av sanntidsarbeidsflyter før denne hendelsen betyr også at andre sanntidsarbeidsflyt- eller plugin-handlinger som kan ha lagrede data, ikke trenger ikke å "tilbakerulles" når operasjonen avbrytes.
Handling | Start når | Forklaring |
---|---|---|
Raden er opprettet | Etter | Bare Etter er tilgjengelig. Raden har ikke en unik identifikator før den interne MainOperation-fasen så den kan ikke forekomme før raden opprettes. |
Endringer i radstatus | Før Etter |
Tilsvarer en oppdateringsoperasjon som gir mulighet til å bruke sanntidsarbeidsflytlogikk før eller etter at statusen endres. Før tilsvarer fasen før operasjonen. Etter tilsvarer fasen etter operasjonen. |
Raden tilordnes | Før Etter |
Tilsvarer en oppdateringsoperasjon som gir mulighet til å bruke sanntidsarbeidsflytlogikk før eller etter at statusen endres. Før tilsvarer fasen før operasjonen. Etter tilsvarer fasen etter operasjonen. |
Endring i radkolonner | Før Etter |
Tilsvarer en oppdateringsoperasjon som gir mulighet til å bruke sanntidsarbeidsflytlogikk før eller etter at statusen endres. Før tilsvarer fasen før operasjonen. Etter tilsvarer fasen etter operasjonen. |
Raden slettes | Før | Bare Før er tilgjengelig. Sletting av rader samsvarer med PreOperation-fasen. Når MainOperation er utført, slettes raden, og det blir ikke gjort flere statusendringer. |
Hvis du vil ha mer informasjon om faser før operasjon, hovedoperasjonfaser og faser etter operasjon, kan du se Forløp for hendelsesutføring.
Bruke sanntidsarbeidsflyter
Du kan konfigurere sanntidsarbeidsflyter, men du bør bruke dem med forsiktighet. Bakgrunnsarbeidsflyter anbefales generelt fordi systemet kan bruke dem når ressurser på serveren er tilgjengelige. Dette bidrar til å jevne ut arbeidet som serveren må utføre, og til å opprettholde topp ytelse for alle som bruker systemet. Ulempen er at handlinger som er definert av bakgrunnsarbeidsflyter, ikke skjer umiddelbart. Du kan ikke forutsi når de vil bli brukt, men vanligvis vil det ta noen minutter. For automatisering av de fleste forretningsprosesser er dette i orden fordi personer som bruker systemet, ikke trenger å være bevisst oppmerksomme på at prosessen kjører.
Bruk sanntidsarbeidsflyter når en forretningsprosess krever at noen umiddelbart ser resultatene av prosessen, eller hvis du vil ha muligheten til å avbryte en operasjon. Du ønsker for eksempel kanskje å angi visse standardverdier for en rad første gang den lagres, eller du ønsker å forsikre deg om at bestemte rader ikke er slettet.
Konvertere mellom sanntidsarbeidsflyter og bakgrunnsarbeidsflyter
Du kan endre en sanntidsarbeidsflyt til en bakgrunnsarbeidsflyt ved å velge Konverter til en bakgrunnsarbeidsflyt på verktøylinjen.
Du kan endre en bakgrunnsarbeidsflyt til en sanntidsarbeidsflyt ved å velge Konverter til en sanntidsarbeidsflyt på verktøylinjen. Hvis bakgrunnsarbeidsflyten bruker en ventebetingelse, blir den ugyldig, og du kan ikke aktivere den før du fjerner ventebetingelsen.
Starte sanntidsarbeidsflyter før eller etter statusendringer
Når du konfigurerer Alternativer for automatiske prosesser for sanntidsarbeidsflyter, kan du via Start når-alternativene for statusendringshendelsen velge Etter eller Før for når statusen skal endres. Standardalternativet er Etter.
Når du velger Før, betyr dette at logikken i arbeidsflyten i sanntid skal brukes før data som endrer statusen, lagres. Dette gir deg muligheten til å kontrollere verdiene før annen logikken er brukt etter operasjonen, og hindre at ytterligere logikk utføres. Du kan for eksempel ha mer logikk i en plugin-modul eller en egendefinert arbeidsflythandling i sanntid som kan starte handlinger på et annet system. Ved å stoppe videre behandling kan du unngå tilfeller der eksterne systemer påvirkes. Bruk av sanntidsarbeidsflyter før denne hendelsen betyr også at andre arbeidsflyt- eller plugin-handlinger i sanntid som kan ha lagrede data, ikke trenger ikke å "tilbakerulles" når operasjonen avbrytes.
Bruke handlingen Stopp arbeidsflyt med sanntidsarbeidsflyter
Når du bruker en Stopp arbeidsflyt-handling i en sanntidsarbeidsflyt, kan du angi en statusbetingelse som kan være enten Fullført eller Avbrutt. Når du angir statusen til Avbrutt, hindrer du operasjonen. En feilmelding som inneholder teksten fra statusmeldingen for stopphandlingen, vises for brukeren med overskriften Feil ved forretningsprosess.
Neste trinn
Overvåke og administrere arbeidsflytprosesser i sanntid
Anbefalte fremgangsmåter for arbeidsflytprosesser i sanntid
Obs!
Kan du fortelle oss om språkinnstillingene for dokumentasjonen? Ta en kort undersøkelse. (vær oppmerksom på at denne undersøkelsen er på engelsk)
Undersøkelsen tar rundt sju minutter. Det blir ikke samlet inn noen personopplysninger (personvernerklæring).