Del via


Utsette kjøringen av XML-elementer i ER-formater

Oversikt

Du kan bruke operasjonsutformingen i rammeverket for Elektronisk rapportering (ER) til å konfigurere formatkomponenten av en ER-løsning som brukes til å generere utgående dokumenter i et XML-format. Den hierarkiske strukturen til den konfigurerte formatkomponenten består av formateringselementer av forskjellige typer. Disse formatelementene brukes til å fylle genererte dokumenter med påkrevd informasjon ved kjøretid. Når du kjører et ER-format, kjøres formatelementene som standard i samme rekkefølge som de presenteres i i formathierarkiet: ett etter ett, fra øverst til nederst. På utformingstidspunktet kan du imidlertid endre kjøringsrekkefølgen for alle XML-elementer i den konfigurerte formatkomponenten.

Ved å aktivere Utsatt kjøring-alternativet for et XML-element i det konfigurerte formatet kan du utsette (skyve frem i tid) kjøringen av dette elementet. I dette tilfellet kjøres ikke elementet før alle andre elementer i det overordnede utvalget er kjørt.

Hvis du vil vite mer om denne funksjonen, kan du fullføre eksemplet i denne artikkelen.

Begrensninger

Utsatt kjøring-alternativet støttes bare for XML-elementer som er konfigurert for et ER-format som brukes til å generere utgående dokumenter i XML-format.

Utsatt kjøring-alternativet støttes bare for XML-elementer som befinner seg i bare ett annet XML-element. Derfor er det ikke aktuelt for XML-elementer som befinner seg i elementer av andre formattyper (for eksempel i et XML-sekvens-element).

Utsatt kjøring-alternativet støttes ikke for XML-elementer som befinner seg i Vanlig\Fil-formatelementet når Del fil-alternativet er satt til Ja. Hvis du vil ha mer informasjon om hvordan man deler XML-filer, kan du se Dele genererte XML-filer basert på filstørrelse og innholdsmengde.

Eksempel: Utsette kjøringen av et XML-element i et ER-format

Følgende trinn forklarer hvordan en bruker med rollen systemadministrator eller funksjonell konsulent for elektronisk rapportering kan konfigurere et ER-format som inneholder et XML-element der kjøringsrekkefølgen er forskjellig fra rekkefølgen i formathierarkiet.

Disse trinnene kan utføres i USMF-selskapet i Microsoft Dynamics 365 Finance.

Forutsetninger

For å fullføre dette eksempelet må du ha tilgang til USMF-selskapet i Finans for en av følgende roller:

  • Funksjonell konsulent for elektronisk rapportering
  • Systemansvarlig

Hvis du enda ikke har utført eksempelet i artikkelen Utsette kjøringen av sekvenselementer i ER-formater, laster du ned følgende konfigurasjoner av ER-eksempelløsningen.

Innholdsbeskrivelse Filnavn
ER-datamodellkonfigurasjon Modell for å lære utsatte elementer.versjon.1.xml
Konfigurasjon for ER-modellkartlegging Kartlegge for å lære utsatte elementer.versjon.1.1.xml

Før du begynner, må du også laste ned og lagre følgende konfigurasjon av ER-eksempelløsningen til den lokale datamaskinen.

Innholdsbeskrivelse Filnavn
ER-formatkonfigurasjon Formatere for å lære utsatte XML-elementer.versjon.1.1.xm

Importere ER-eksempelkonfigurasjonene

  1. Gå til Organisasjonsstyring>Arbeidsområder>Elektronisk rapportering.

  2. Velg Rapporteringskonfigurasjoner.

  3. Konfigurasjoner-siden gjelder følgende: Hvis Modell for å lære utsatte elementer-konfigurasjonen er ikke tilgjengelig i konfigurasjonstreet, importerer du ER-datamodellkonfigurasjonen:

    1. Velg Veksle, og velg deretter Last inn fra XML-fil.
    2. Velg Bla gjennom, finn og velg Modell for å lære utsatte elementer.1.xml-filen og velg deretter OK.
  4. Hvis Kartlegg for å lære utsatte elementer-konfigurasjonen er ikke tilgjengelig i konfigurasjonstreet, importerer du ER-modellkartleggingskonfigurasjonen:

    1. Velg Veksle, og velg deretter Last inn fra XML-fil.
    2. Velg Bla gjennom, finn og velg Kartlegge for å lære utsatte elementer.1.xml-filen og velg deretter OK.
  5. Importer ER-formatkonfigurasjonen:

    1. Velg Veksle, og velg deretter Last inn fra XML-fil.
    2. Velg Bla gjennom, finn og velg Format for å lære utsatte XML-elementer.1.xml-filen og velg deretter OK.
  6. I konfigurasjonstreet utvider du Modell for å lære utsatte elementer.

  7. Gjennomgå listen over importerte ER-konfigurasjoner i konfigurasjonstreet.

    Importerte ER-konfigurasjoner på konfigurasjonssiden.

Aktivere en konfigurasjonsleverandør

  1. Gå til Organisasjonsstyring>Arbeidsområder>Elektronisk rapportering.

  2. Lokaliseringskonfigurasjoner-siden i Konfigurasjonsleverandører-delen må du sørge for at konfigurasjonsleverandør for eksempelselskapet Litware, Inc. (http://www.litware.com) er oppført, og at den er merket som aktiv. Hvis denne konfigurasjonsleverandøren ikke er oppført, eller hvis den ikke er merket som aktiv, følger du trinnene i artikkelen Opprette en konfigurasjonsleverandør og merke den som aktiv.

    Eksempelselskapet Litware, Inc. på Lokaliseringskonfigurasjoner-siden.

Gjennomgå den importerte modellkartleggingen

Gjennomgå innstillingene for ER-modellkartleggingskomponenten som er konfigurert til å få tilgang til avgiftstransaksjoner, og som viser åpnede data på forespørsel.

  1. Gå til Organisasjonsstyring>Arbeidsområder>Elektronisk rapportering.

  2. Velg Rapporteringskonfigurasjoner.

  3. Konfigurasjoner-siden, i konfigurasjonstreet, utvider du Modell for å lære utsatte elementer.

  4. Velg Kartlegge for å lære utsatte elementer-konfigurasjonen.

  5. Velg Utforming for å åpne listen over tilordninger.

  6. Velg Utforming for å se gjennom tilordningensdetaljer.

  7. Velg Vis detaljer.

  8. Gjennomgå datakildene som er konfigurert for å få tilgang til avgiftstransaksjoner:

    • Transaksjoner-datakilden til Tabelloppføring-typen er konfigurert til å få tilgang til oppføringer i TaxTrans-applikasjonstabellen.

    • Bilag-datakilden til Beregnet felt-typen er konfigurert til å returnere de påkrevde bilagskodene (INV-10000349 og INV-10000350) som en liste over oppføringer.

    • Filtrert-datakilden til Beregnet felt-typen er konfigurert til å velge, fra Transaksjoner-datakilden, bare avgiftstransaksjoner med de påkrevde bilagene.

    • $TaxAmount-feltet i Beregnet felt-typen legges til for Filtrert-datakilden for å eksponere avgiftsverdien som har det motsatte tegnet.

    • Gruppert-datakilden til Grupper etter-typen er konfigurert til å gruppere filtrerte avgiftstransaksjoner av Filtrert-datakilden.

    • TotalSum-aggregeringsfeltet i Gruppert-datakilden er konfigurert til å summere verdiene i $TaxAmount-feltet i Filtrert-datakilden for alle filtrerte avgiftstransaksjoner med denne datakilden.

      TotalSum-aggregeringsfeltet på siden Rediger GroupBy-parametere.

  9. Gjennomgå hvordan de konfigurerte datakildene er bundet til datamodellen, og hvordan de viser tilgjengelige data for å gjøre dem tilgjengelige i et ER-format:

    • Filtrert-datakilden er bundet til Data.List-feltet for datamodellen.
    • $TaxAmount-feltet for Filtrert-datakilden er bundet til Data.List.Value-feltet for datamodellen.
    • TotalSum-feltet for Gruppert-datakilden er bundet til Data.Summary.Total-feltet for datamodellen.

    Modellkartleggingsutforming-siden.

  10. Lukk sidene Modellkartleggingsutforming og Modellkartlegginger.

Gå gjennom det importerte formatet

  1. Konfigurasjoner-siden, i konfigurasjonstreet, velger du Formater for å lære utsatte XML-elementer-konfigurasjonen.

  2. Velg Utforming for å se gjennom formatdetaljer.

  3. Velg Vis detaljer.

  4. Gjennomgå innstillingene for ER-formatkomponentene som er konfigurert til å generere et utgående dokument i XML-format, som inneholder detaljer om avgiftstransaksjonene:

    • XML-elementet Rapport\Melding er konfigurert til å fylle det utgående dokumentet med én enkelt node som inkluderer de nestede XML-elementene (Topptekst, Oppføring og Sammendrag).
    • XML-elementet Rapport\Melding\Topptekst er konfigurert til å fylle det utgående dokumentet med én enkelt topptekstnode som viser dato og klokkeslett for når behandlingen starter.
    • XML-elementet Rapport \Melding\Oppføring er konfigurert til å fylle det utgående dokumentet med én enkelt oppføringsnode som viser detaljene for én enkelt avgiftstransaksjon.
    • XML-elementet Rapport\Melding\Sammendrag er konfigurert til å fylle det utgående dokumentet med én enkelt sammendragsnode som inkluderer summen av avgiftsverdiene fra de behandlede avgiftstransaksjonene.

    XML-elementet Melding og nestede XML-elementer på Formatutforming-siden.

  5. Kartlegging-fanen gjennomgår du følgende detaljer.

    • Rapport\Melding\Topptekst-elementet trenger ikke å være bundet til en kilde for å generere én enkelt node i et utgående dokument.
    • ExecutionDateTime-attributtet genererer datoen og klokkeslettet (inkludert millisekunder) topptekstnoden legges til på.
    • Rapport\Melding\Oppføring-elementet er bundet til model.Data.List-listen for å generere én enkelt oppføringsnode for hver oppføring fra den bundne listen.
    • TaxAmount-attributtet er bundet til model.Data.List.Value (som vises som @.Value i den relative banevisningen) for å generere avgiftsverdien for den gjeldende avgiftstransaksjonen.
    • RunningTotal-attributtet er en plassholder for den løpende summen av avgiftsverdier. Dette attributtet har for øyeblikket ingen utdata, fordi verken en binding eller en standardverdi er konfigurert for det.
    • ExecutionDateTime-attributtet genererer datoen og klokkeslettet (inkludert millisekunder) som den gjeldende transaksjonen behandles i denne rapporten på.
    • Rapport\Melding\Sammendrag-elementet trenger ikke å være bundet til en datakilde for å generere én enkelt node i et utgående dokument.
    • TotalTaxAmount-attributtet er bundet til model.Data.Summary.Total for å generere summen av avgiftsverdiene for de behandlede avgiftstransaksjonene.
    • ExecutionDateTime-attributtet genererer datoen og klokkeslettet (inkludert millisekunder) sammendragsnoden legges til på.

    Kartlegging-fanen på Formatutforming-siden.

Kjør det importerte formatet

  1. Formatutforming-siden velger du Kjør.

  2. Last ned filen som nettleseren tilbyr, og åpne den for gjennomgang.

    Lastet ned fil i importert format.

Vær oppmerksom på at sammendragsnoden representerer summen av avgiftsverdiene for de behandlede transaksjonene. Fordi formatet er konfigurert til å bruke model.Data.Summary.Total-bindingen til å returnere denne summen, beregnes summen ved å kalle til TotalSum-aggregeringen av Gruppert-datakilden til GroupBy-typen i modellkartleggingen. For å beregne denne aggregeringen itererer modellkartleggingen over alle transaksjoner som er valgt i Filtrert-datakilden. Ved å sammenligne kjøringstidene for sammendragsnoden og den siste oppføringsnoden kan du bestemme at beregningen av summen tok 12 millisekunder (ms). Ved å sammenligne kjøringstidene for den første og siste oppføringsnoden kan du bestemme at genereringen av alle oppføringsnodene tok 9 ms. Derfor var totalt 21 ms påkrevd.

Endre formatet slik at beregningen baseres på genererte utdata

Hvis transaksjonsvolumet er mye større enn volumet i det gjeldende eksemplet, kan det hende at beregningstiden øker og forårsaker ytelsesproblemer. Hvis du endrer innstillingen for formatet, kan du bidra til å forhindre disse ytelsesproblemene. Fordi du får tilgang til avgiftsverdier for å inkludere dem i den genererte rapporten, kan du bruke denne informasjonen til å beregne avgiftsverdier. Hvis du vil ha mer informasjon, kan du se Konfigurere format for å utføre telling og summering.

  1. Formatutforming-siden i Format-fanen velger du Rapport-filelementet i formattreet.

  2. Sett Samle inn utdatadetaljer-alternativet til Ja. Du kan nå konfigurere dette formatet ved å bruke innholdet i en generert rapport som en datakilde, som du kan få tilgang til ved å bruke de innebygde ER-funksjonene i Datainnsamling-kategorien.

  3. Kartlegging-fanen velger du Rapport\Melding\Oppføring XML-element.

  4. Konfigurer Nøkkelnavn på innsamlede data-uttrykket som WsColumn.

  5. Konfigurer Nøkkelverdi for innsamlede data-uttrykket som WsRow.

    XML-elementet Oppføring på Formatutforming-siden.

  6. Velg Rapport\Melding\Oppføring\TaxAmount-attributtet.

  7. Konfigurer Nøkkelnavn på innsamlede data-uttrykket som SummingAmountKey.

    TaxAmount-attributtet på Formatutforming-siden.

    Du kan anse denne innstillingen som oppfyllelsen av et virtuelt arbeidsark, der verdien av celle A1 tilføyes med verdien på avgiftsbeløpet fra hver behandlet avgiftstransaksjon.

  8. Velg Rapport\Melding\Oppføring\RunningTotal-attributtet, og velg deretter Rediger formel.

  9. Konfigurer SUMIF(SummingAmountKey, WsColumn, WsRow)-uttrykket ved å bruke den innebygde ER-funksjonen SUMIF, og velg deretter Lagre.

    SUMIF-uttrykk.

  10. Lukk siden Formelutforming.

  11. Velg Lagre, og velg deretter Kjør.

  12. Last ned og gjennomgå filen som nettleseren tilbyr.

    Generert liste over avgiftsverdi med løpende total.

    Den siste oppføringsnoden inneholder den løpende summen av avgiftsverdiene, som er beregnet for alle behandlede transaksjoner ved å benytte de genererte utdataene som en datakilde. Denne datakilden starter fra begynnelsen av rapporten og fortsetter til den siste avgiftstransaksjonen. Sammendragsnoden inneholder summen av avgiftsverdiene for alle behandlede transaksjoner som er beregnet i modellkartleggingen ved å benytte datakilden av GroupBy-typen. Vær oppmerksom på at disse verdiene er like. Derfor kan den utdatabaserte summeringen brukes i stedet for GroupBy. Ved å sammenligne kjøringstidene for den første oppføringsnoden og summeringsnoden kan du bestemme at genereringen av alle oppføringsnodene og summeringen tok 11 ms. Når det gjelder genereringen av oppføringsnoder og summeringen av avgiftsverdier, er det endrede formatet derfor omtrent to ganger raskere enn det opprinnelige formatet.

  13. Velg Rapport\Melding\Sammendrag\TotalTaxAmount-attributtet, og velg deretter Rediger formel.

  14. Angi SUMIF(SummingAmountKey, WsColumn, WsRow)-uttrykket i stedet for det eksisterende uttrykket.

  15. Velg Lagre, og velg deretter Kjør.

  16. Last ned og gjennomgå filen som nettleseren tilbyr.

    Generert liste over avgiftsverdier ved hjelp av redigert formel.

    Vær oppmerksom på at den løpende summen av avgiftsverdier i den siste oppføringsnoden tilsvarer nå summen i sammendragsnoden.

Sett verdier av utdatabasert summering i rapporttoppteksten

Hvis du for eksempel må presentere summen av avgiftsverdier i rapportens topptekst, kan du endre formatet.

  1. Formatutforming-siden, i Format-fanen velger du XML-elementet Rapport\Melding\Sammendrag.

  2. Velg Flytt opp.

  3. Velg Lagre, og velg deretter Kjør.

  4. Last ned og gjennomgå filen som nettleseren tilbyr.

    Nedlastet fil med avgiftsverdier for rapporthode.

    Legg merke til at summen av avgiftsverdier i sammendragsnoden nå er lik 0 (null), fordi denne summen nå beregnes på grunnlag av de genererte utdataene. Når den første oppføringsnoden genereres, inneholder ikke de genererte utdataene oppføringsnoder med transaksjonsdetaljer enda. Du kan konfigurere dette formatet til å utsette kjøringen av Rapport\Melding\Sammendrag-elementet til Rapport\Melding\Oppføring-elementet er kjørt for alle avgiftstransaksjoner.

Utsett kjøringen av XML-elementet Sammendrag slik at beregnet sum brukes

  1. Formatutforming-siden, i Format-fanen velger du XML-elementet Rapport\Melding\Sammendrag.

  2. Sett Utsatt kjøring-alternativet til Ja.

    Utsatt kjøring-alternativet for XML-elementet Sammendrag på Formatutforming-siden.

  3. Velg Lagre, og velg deretter Kjør.

  4. Last ned og gjennomgå filen som nettleseren tilbyr.

    Nedlastet fil for utsatt kjøring.

    Rapport\Melding\Sammendrag-elementet kjøres nå bare etter alle andre elementer som er nestet under det overordnede elementet, Rapport\Melding, har blitt kjørt. Derfor kjøres det etter at Rapport\Melding\Oppføring-elementet har blitt kjørt for alle avgiftstransaksjoner med model.Data.List-datakilden. Kjøringstidene for den første og siste oppføringsnoden, samt for topptekst- og sammendragsnoden, avslører dette faktum.

Tilleggsressurser