Del via


Opprette og redigere egendefinerte handlinger fra en arbeidsflyt

Dette emnet gjelder for Dynamics 365 Customer Engagement (on-premises). Du finner Power Apps-versjonen for dette emnet her: Konfigurere egendefinerte handlinger fra en arbeidsflyt

Du kan aktivere en egendefinert handling fra en arbeidsflyt uten å skrive kode. Mer informasjon: Aktiver egendefinerte handlinger fra en arbeidsflyt.

Du kan også opprette en handling, slik at en utvikler kan bruke den i koden, eller du må kanskje redigere en handling som er definert tidligere. Som arbeidsflytprosesser bør du vurdere følgende:

  • Hva skal handlingen gjøre?

  • Under hvilke betingelser skal handlingen utføres?

I motsetning til arbeidsflytprosesser trenger du ikke angi følgende alternativer:

  • Start når: Handlinger starter når koden kaller meldingen som er generert for dem.

  • Omfang: Handlinger kjøres alltid i konteksten til den anropende brukeren.

  • Kjør i bakgrunnen: Handlinger er alltid sanntidsarbeidsflyter.

Handlingen har også noe som arbeidsflytprosesser ikke har – inndata- og utdataargumenter. Mer informasjon: Definer prosessargumenter

Opprette en handling

Viktig

Hvis du oppretter en handling som skal bli inkludert som en del av en løsning som skal distribueres, kan du opprette den i forbindelse med løsningen. Gå til Innstillinger>Løsninger, og finn den uadministrert løsningen som denne handlingen skal være en del av. Velg deretter Ny>Prosess på menylinjen. Dette vil sørge for at tilpassingsprefikset knyttet til navnet på handlingen blir konsekvent med andre komponenter i løsningen. Når du har opprettet handlingen, kan du ikke endre prefikset.

Som arbeidsflytprosesser har handlinger følgende egenskaper i dialogboksen Opprett prosess.

Prosessnavn
Når du har skrevet inn et navn for prosessen, opprettes et entydig navn for prosessen ved å fjerne mellomrom eller spesialtegn fra prosessnavnet.

Kategori
Denne egenskapen angir at dette er en handlingsprosess. Du kan ikke endre dette når du har lagret prosessen.

Enhet
Med handlingsprosesser kan du velge en enhet for å gi en sammenheng for arbeidsflytet, akkurat som med andre typer prosesser, men du har også muligheten til å velge Ingen (global). Bruk dette hvis handlingen ikke krever sammenheng med en bestemt enhet. Du kan ikke endre dette når du har lagret prosessen.

Type
Bruk denne egenskapen til å velge om du vil bygge en ny handling fra grunnen av eller starte fra en eksisterende mal.

Redigere en handling

Du må deaktivere prosesser før du kan redigere dem.

Du kan redigere en handling som ble opprettet som en del av en uadministrert løsning eller inkludert i en løsning som er installert i organisasjonen. Hvis løsningen er en administrert løsning, kan det hende at du ikke kan redigere den. Løsningsutgiveren har muligheten til å redigere de forvaltede egenskapene slik at handlingen som installeres med en administrert løsning, ikke kan redigeres.

Når en handling lagres, genereres et unikt navn basert på prosessnavnet. Dette unike navnet har tilpassingsprefikset lagt til fra løsningsutgiveren. Dette er navnet på meldingen som en utvikler bruker i koden.

Når du redigerer en handling, har du følgende alternativer:

Prosessnavn
Når prosessen er opprettet og det unike navnet er generert fra prosessnavnet, kan du redigere prosessnavnet. Du ønsker kanskje å bruke en navnekonvensjon for å gjøre det enklere å finne bestemte prosesser.

Unikt navn
Når en handling lagres, genereres et unikt navn basert på prosessnavnet. Dette unike navnet har tilpassingsprefikset fra løsningsutgiveren lagt til. Dette er navnet på meldingen som en utvikler bruker i koden. Ikke endre dette unike navnet hvis prosessen er aktivert og koden er på plass, bortsett fra å kalle handlingen med dette navnet.

Viktig

Når handlingen er aktivert og koden skrevet for å bruke et unikt navn, må ikke det unike navnet endres uten også å endre koden som refererer til den.

Aktiver tilbakerulling
Generelt vil prosesser som støtter transaksjoner, "angre" (eller rulle tilbake) hele operasjonen hvis en del av dem mislykkes. Det finnes noen unntak fra dette. Enkelte handlinger som utviklere kan gjøre i kode iverksatt av handlingen, støtter kanskje ikke transaksjoner. Dette kan for eksempel være hvis koden utfører handlinger i andre systemer som er utenfor omfanget av transaksjonen. Disse kan ikke rulles tilbake av handlingen som kjører i en app. Enkelte meldinger i plattformen støtter ikke transaksjoner. Men alt du kan gjøre bare med brukergrensesnittet for handlingen, vil støtte transaksjoner. Alle handlinger som er en del av en sanntidsarbeidsflyt, blir tatt hensyn til i transaksjonen, men med handlinger har du muligheten til å reservere deg mot dette.

Du bør kontakte utvikleren som skal bruke denne meldingen, for å finne ut om den må være i transaksjonen eller ikke. En handling bør vanligvis være i en transaksjon hvis handlingene som utføres av en forretningsprosess, ikke har noen mening med mindre alle blir fullført. Det klassiske eksemplet er overføring av penger mellom to konti. Hvis du trekker tilbake midler fra én konto, må du sette dem inn på den andre. Hvis én av disse mislykkes, må begge mislykkes.

Merk

Du kan ikke aktivere tilbakerulling hvis en egendefinert handling startes direkte fra en arbeidsflyt. Du kan aktivere tilbakestilling hvis en handling utløses av en Dynamics 365 Customer Engagement (on-premises) melding for nettjenester.

Aktiver som
På samme måte som med alle prosesser kan du aktivere prosessen som en mal og bruke den som et avansert utgangspunkt for prosesser som følger et lignende mønster.

Definere prosessargumenter
I dette området kan du angi eventuelle data som handlingen forventer å starte, og hvilke data som skal sendes ut av handlingen. Mer informasjon: Definer prosessargumenter

Legge til faser, betingelser og handlinger
På samme måte som andre prosesser kan du angi hvilke handlinger som skal utføres og de skal utføres. Mer informasjon: Legg til faser, betingelser og handlinger

Definere prosessargumenter

Når en utvikler bruker en melding, kan de starte med data som de kan sende i meldingen. For å opprette en ny saksoppføring, kan du for eksempel ha sakstittelverdien som skal sendes inn, som inndataargumentet.

Når meldingen er fullført, må utvikleren kanskje overføre data som ble endret eller generert av meldingen, til en annen operasjon i koden. Disse dataene er utdataargumentet.

Både inndata- og utdataargumenter må ha et navn, en type og informasjon om argumentet alltid er nødvendig. Du kan også oppgi en beskrivelse.

Navnet på meldingen og informasjon om alle prosessargumentene representerer "signaturen" for meldingen. Når en handling er aktivert, og den brukes i kode, må ikke signaturen endres. Hvis denne signaturen endres, vil all kode som bruker meldingen, mislykkes. Det eneste unntaket til dette kan være endring av en av parametrene, så dette er ikke alltid påkrevd.

Du kan endre rekkefølgen på argumentene ved å sortere dem eller flytte dem opp eller ned fordi argumentene er identifisert etter navn, ikke etter rekkefølge. Endring av beskrivelsen vil heller ikke bryte koden som bruker meldingen.

Argumenttyper for handlingsprosess

Tabellen nedenfor beskriver argumenttypene for handlingsprosesser.

Type Beskrivelse
Boolsk En true- eller false-verdi.
Dato/klokkeslett En verdi som lagrer informasjon om dato og klokkeslett.
Desimal En tallverdi med desimalpresisjon. Brukes når nøyaktighet er ekstremt viktig.
Enhet En oppføring for den angitte enheten. Når du velger Entity, aktiveres rullegardinlisten, og du kan velge enhetstypen.
EntityCollection En samling med enhetsoppføringer.
EntityReference Et objekt som inneholder navn, ID og type for en enhetsoppføring som identifiserer den unikt. Når du velger EntityReference, aktiveres rullegardinlisten, og du kan velge enhetstypen.
Flyttall En tallverdi med desimalpresisjon. Brukes når dataene kommer fra et mål som ikke er helt nøyaktig.
Heltall Et heltall.
Penger En verdi som lagrer data om et bestemt pengebeløp.
Plukkliste En verdi som representerer et alternativ for et OptionSet-attributt.
String En tekstverdi.

Merk

EntityCollection-argumentverdier kan ikke angis i brukergrensesnittet for betingelser eller handlinger. Disse er oppgitt for bruk av utviklere i egendefinert kode. Mer informasjon: Opprett dine egne handlinger

Legge til faser og trinn

Handlinger er en type prosess som er svært lik sanntidsarbeidsflyter. Alle trinn som kan brukes i sanntidsarbeidsflyter, kan brukes i handlinger. Hvis du vil ha informasjon om trinnene som kan brukes både for sanntidsarbeidsflyter og handlinger, kan du se Arbeidsflytfaser og -trinn.

I tillegg til trinnene som kan brukes for sanntidsarbeidsflyter, har handlinger også trinnet Tilordne verdi. I handlinger kan disse bare brukes til å angi utdataargumenter. Du kan bruke skjemahjelperen til å angi utdataargumenter til bestemte verdier, eller mer sannsynlig til verdier fra oppføringen som handlingen kjører mot, oppføringer knyttet til denne oppføringen med en mange-til-én-relasjon, oppføringer opprettet i et tidligere trinn eller verdier som er en del av selve prosessen.

Se også

Handlinger
Aktivere egendefinerte handlinger fra en arbeidsflyt
Overvåke arbeidsflyter og handlinger i sanntid
Arbeidsflytprosesser
Oversikt over forretningsprosesser
Overvåke og administrere arbeidsflytprosesser
Opprette dine egne handlinger