Asynkrone handlingstilstande
Udgivet: november 2016
Gælder for: Dynamics CRM 2015
Når asynkrone handlinger er føjet til den asynkrone kø, findes de i en veldefineret tilstand. En asynkron handling kan vente på at blive kørt, kan køre, eller den være fuldført. Der er også andre mulige tilstande, før handlingen senere bliver slettet fra køen. Tilstandene definerer levetiden for den asynkrone handling.
Dette emne indeholder
Tilstande for asynkrone handlinger
Hent og opdater AsyncOperation-tilstande
Tilstande for asynkrone handlinger
Tilstanden for den asynkrone handling kan ændres via tre metoder: af platform som en del af den regelmæssige købehandling, af brugerinteraktionen med webprogrammet Microsoft Dynamics 365 eller ved et webtjenestekald, der ændrer den asynkrone handling. Som udvikler kan du hente den aktuelle tilstand for en asynkron handling, du har adgang til, og du kan også ændre tilstanden.
I følgende tabel vises tilstandene og status for hver tilstand af en AsyncOperation.
Stat |
Status |
Numerisk statusværdi |
---|---|---|
Ready |
WaitingForResources |
0 |
Suspended |
Waiting |
10 |
Locked |
InProgress |
20 |
Locked |
Pausing |
21 |
Locked |
Canceling |
22 |
Completed |
Succeeded |
30 |
Completed |
Failed |
31 |
Completed |
Canceled |
32 |
De understøttede tilstande er defineret i AsyncOperationState-optællingen. I den tidligt bundne AsyncOperation-klasse er tilstanden tilgængelig i attributten AsyncOperation.StateCode, mens status er tilgængelig i attributten AsyncOperation.StatusCode. Du kan finde flere oplysninger i metadata for AsyncOperation-objektet.Du kan få vist objektmetadataene for din virksomhed ved at installere Metadata-browserløsningen, der er beskrevet i Gennemse metadata for organisationen. Du kan også få vist metadataene for en ikke-tilpasset virksomhed i Excel-filen kaldet EntityMetadata.xlsx, der findes i den øverste mappe i SDK download.. Status vises i Microsoft Dynamics 365-webprogrammet i feltet Statusårsag i gitteret Systemjob. Ved at vælge et af menupunkterne i menuen Flere handlinger i Systemjob, kan du interaktivt ændre status for en asynkron handling. Tilladte handlinger omfatter følgende: Annuller, Genoptag, Udsæt og Pause.
I følgende diagram vises de tilstandsovergange, der understøttes for den asynkrone handling.
Bemærk, at en asynkron handling kan kun overføres fra én tilstand til en anden langs bestemte stier som vist i diagrammet. Nogle stier startes ved at brugeren kommunikerer med Microsoft Dynamics 365-webprogrammet, mens andre stier startes af Microsoft Dynamics 365-platformen som en del af regelmæssig asynkron købehandling, eller pga. et kald til en webtjeneste. En asynkron handling kan f.eks. skifte direkte fra en suspenderet tilstand til en låst tilstand.
En låst tilstand angiver, at forekomsten AsyncOperation bruges af den asynkrone tjeneste. Mens tjenesten er låst, kan den ikke bruges af en anden forekomst. Det sikrer, at forekomsten ikke udføres flere gange, f.eks. ved to forskellige asynkrone tjenester.
Hent og opdater AsyncOperation-tilstande
Overvågning og opdatering af tilstanden for en asynkron handling udføres typisk interaktivt via gitteret Systemjob i Microsoft Dynamics 365-webprogrammet. Du kan imidlertid også bruge SDK'et til at skrive kode, der udfører de samme opgaver.
Læs tilstanden for en asynkron handling
Hent en AsyncOperation efter navn vha. metoden RetrieveMultiple eller id vha. metoden Retrieve.
Læs attributten AsyncOperation.StateCode.
Ændr tilstandskoden
Ændr den hentede tilstandskodeattribut til en ny værdi iht. de tilladte operationstilstande. Du kan også ændre attributten AsyncOperation.PostponeUntil.
Kald Update for at ændre værdien af disse attributter i databasen.
Tidligere handlinger kan også udføres vha. metoden Execute med passende anmodningsmeddelelser. Attributter for andre AsyncOperation end AsyncOperation.StateCode og AsyncOperation.PostponeUntil skal betragtes som skrivebeskyttet.
Gentagne systemjob
Du kan ikke annullere, holde pause i eller genoptage de fleste systemjob. Se listen nedenfor, der identificerer nogle af disse begrænsede systemjob. Værdien i den første kolonne er værdien af attributten OperationType for objektet AsyncOperation.
Asynkron handlingstype (valgværdi) |
Handlingsbeskrivelse |
---|---|
22 |
Beregn maksimal lagerstørrelse for organisationen |
18 |
Beregn lagerstørrelse for organisationen |
19 |
Indsaml statistik for organisationsdatabase |
20 |
Indsamling af statistik for organisation |
16 |
Indsaml organisationsstatistik |
9 |
SQM-datasamling |
25 |
Fuldtekstkatalogindeks for organisation |
31 |
Besked om lagergrænse |
24 |
Opdater statistikintervaller |
27 |
Opdater kontrakttilstande |
Du kan finde den fuldstændige liste over understøttede asynkrone handlingstyper i AsyncOperation-objektmetadataene.Du kan få vist objektmetadataene for din virksomhed ved at installere Metadata-browserløsningen, der er beskrevet i Gennemse metadata for organisationen. Du kan også få vist metadataene for en ikke-tilpasset virksomhed i Excel-filen kaldet EntityMetadata.xlsx, der findes i den øverste mappe i SDK download.
Se også
Asynkron tjeneste i Microsoft Dynamics CRM 2015
Objektet AsyncOperation (systemjob)
Afhængighed og udførelsesrækkefølge i asynkrone handlinger
© 2017 Microsoft. Alle rettigheder forbeholdes. Ophavsret