Odłóż wykonanie elementów XML w formatach raportowania elektronicznego
Omówienie
Za pomocą projektanta operacji w strukturze elektronicznego modułu sprawozdawczego (ER) można skonfigurować składnik formatu rozwiązania ER używanego do generowania dokumentów wychodzących w formacie XML. Hierarchiczna struktura skonfigurowanego składnika formatu składa się z elementów formatu różnych typów. Te elementy formatu służą do wypełniania wygenerowanych dokumentów informacjami wymaganymi w czasie wykonywania. Domyślnie w przypadku uruchamiania formatu ER elementy formatu są uruchamiane w tej samej kolejności, w jakiej są przedstawione w hierarchii formatów: jeden po jednym — od góry do dołu. Jednak w czasie projektowania można zmienić kolejność wykonywania wszystkich elementów XML skonfigurowanych składników formatu.
Włączając opcję Odroczone wykonanie dla elementu XML w skonfigurowanym formacie, można odroczyć (przełożyć) wykonanie tego elementu. W takim przypadku element nie jest uruchamiany, dopóki nie zostaną uruchomione wszystkie pozostałe elementy jego obiektu nadrzędnego.
Wykonaj przykład z tego artykułu, aby dowiedzieć się więcej na temat tej funkcji.
Ograniczenia
Opcja Odroczonego wykonania jest obsługiwana tylko w przypadku elementów XML skonfigurowanych dla formatu ER, które są używane do generowania dokumentów wychodzących w formacie XML.
Opcja odroczonego wykonania jest obsługiwana tylko dla elementów XML, które znajdują się tylko w jednym innym elemencie XML. Dlatego nie dotyczy elementów XML znajdujących się w innych typach elementów formatu (np. w elemencie sekwencji XML).
Opcja Odroczonego wykonania nie jest obsługiwana dla elementów XML, które znajdują się w elemencie formatu Common\File, gdy opcja podzielonego pliku jest ustawiona na Tak. Po więcej informacji nt. dzielenia plików XML, zobacz Dzielenie plików XML na podstawie rozmiaru pliku i ilości elementu zawartości..
Przykład: Odłóż wykonanie elementu XML w formatacie ER
Poniższe kroki wyjaśniają, jak użytkownik w roli Administratora systemu lub konsultanta funkcjonalnego lub raportu elektronicznego (rola) może skonfigurować format XML, który zawiera element sekwencji, w którym kolejność wykonywania różni się od kolejności w hierarchii formatu.
Kroki można wykonać na danych przykładowej firmy USMF w aplikacji Microsoft Dynamics 365 Finance.
Wymagania wstępne
Aby wykonać przykłady opisane w tym temacie, trzeba mieć dostęp do firmy USMF wrozwiązaniu Finance dla jednej z następujących ról:
- Konsultant funkcjonalny raportowania elektronicznego
- Administrator systemu
Jeśli nie zakończono jeszcze analizy przykładu, w artykule Wstrzymaj wykonywanie elementów sekwencji w formatach ER pobierz następujące konfiguracje przykładowego rozwiązania ER.
Opis zawartości | Nazwa pliku |
---|---|
Konfiguracja modelu danych ER | Model do nauki elementów odłożonych.version.1.xml |
Sesja mapowania konfiguracji modelu ER | Mapowanie do nauki elementów odłożonych.version.1.1.xml |
Przed rozpoczęciem należy również pobrać i zapisać następującą konfigurację przykładowego rozwiązania ER na maszynę lokalną.
Opis zawartości | Nazwa pliku |
---|---|
ER format konfiguracji | Format do nauki odłożonych elementów XML.version.1.1.xml. |
Importuj przykładowe konfiguracje formatu ER
Wybierz kolejno opcje Administrowanie organizacją>Obszary robocze>Raportowanie elektroniczne.
Wybierz Raportowanie konfiguracji.
Na stronie Konfiguracje, jeśli konfiguracja Model dla odłożonych elementów nie jest dostępna w drzewie konfiguracji, zaimportuj konfigurację modelu danych ER:
- Wybierz Wymiana, a następnie wybierz opcję Ładowanie z pliku XML.
- Wybierz Przeglądaj, znajdź i wybierz plik Model do nauki elementów odłożonych.xml, a następnie kliknij OK.
Jeśli konfiguracja Mapowanie do nauki odłożonych elementów nie jest dostępna w drzewie konfiguracji, zaimportuj konfigurację mapowania ER:
- Wybierz Wymiana, a następnie wybierz opcję Ładowanie z pliku XML.
- Wybierz Przeglądaj, znajdź i wybierz plik Mapowanie do nauki elementów odłożonych.1.1.xml, a następnie kliknij OK.
Import konfiguracji formatu ER:
- Wybierz Wymiana, a następnie wybierz opcję Ładowanie z pliku XML.
- Wybierz Przeglądaj, znajdź i wybierz plik Format do nauki odłożonych elementów XML.1.1.xml, a następnie kliknij OK.
W drzewie konfiguracji rozwiń węzeł Model, aby poznać odłożone elementy.
Przejrzyj listę zaimportowanych konfiguracji systemu ER w drzewie konfiguracji.
Aktywuj dostawcę konfiguracji
Wybierz kolejno opcje Administrowanie organizacją>Obszary robocze>Raportowanie elektroniczne.
Na stronie Konfiguracje lokalizacji w sekcji Dostawcy konfiguracji sprawdź, czy dostawca konfiguracji dla przykładowej firmy Litware, Inc.(
http://www.litware.com
) jest wymieniony na liście i czy jest oznaczony jako akywny. Jeśli tego dostawcy konfiguracji nie ma na liście lub jeśli nie jest on oznaczony jako aktywny, wykonaj kroki opisane w artykule Tworzenie dostawcy konfiguracji i oznaczanie go jako aktywnego.
Przeglądanie zaimportowanego mapowania modelu
Przejrzyj ustawienia składnika mapowania modelu ER, które skonfigurowano w celu uzyskania dostępu do transakcji podatkowych i udostępnienie danych dostępnych na żądanie.
Wybierz kolejno opcje Administrowanie organizacją>Obszary robocze>Raportowanie elektroniczne.
Wybierz Raportowanie konfiguracji.
Na stronie Konfiguracje w drzewie konfiguracji wybierz pozycję Model do nauki elementów odłożonych.
Wybierz konfigurację Mapowanie, aby poznać elementy odłożone.
Wybierz opcję Projektant, aby otworzyć listę mapowań.
Wybierz opcję Projektant, aby przejrzeć szczegóły mapowania.
Wybierz Pokaż szczegóły.
Przejrzyj źródła danych skonfigurowane pod kątem dostępu do transakcji podatkowych:
Źródło danych dla Transakcji w typie Rekord tabeli jest skonfigurowane do uzyskiwania dostępu do rekordów tabeli aplikacji TaxTrans.
Źródło danch Załączników w typie Obliczane pole jest skonfigurowane tak, aby zwracało wymagane kody załączników (INV -10000349 i INV -10000350) jako listę rekordów.
W Filtrowanym źródle danych w typie Obliczane pole jest skonfigurowane do wyboru, od źródła danych Transakcji, po tylko transakcje podatkowych wymaganych załączników.
Pole $TaxAmount typu Pola obliczeniowego jest dodawany do Filtrowanego źródła danych w celu udostępnienia wartości podatku o przeciwnym znaku.
Zgrupowane źródło danych dla typu Grupuj według jest skonfigurowane do grupowania odfiltrowanych transakcji podatkowych z Filtrowanego źródła danych.
Pole agregacji TotalSum w Pogrupowanym źródle danych jest skonfigurowane do podsumowywania wartości pola $TaxAmount w filtrowanym źródle danych dla wszystkich przefiltrowanych transakcji podatkowych z tego źródła danych.
Sprawdź, w jaki sposób skonfigurowane źródła danych są powiązane z modelem danych, i w jaki sposób uzyskują one dostęp do danych, aby udostępnić je w formacie ER:
- Filtrowane źródło danych jest powiązane z polem Data.list modelu danych.
- Pole $TaxAmountfiltrowanego źródła danych jest powiązane z polem Data.List.Value modelu danych.
- Pole TotalSumPogrupowanego źródła danych jest powiązane z polem Data.Summary.Total modelu danych.
Zamknij stronę Konstruktor mapowania modeli i Mapowania modeli.
Przeglądanie zaimportowanego formatu
Na stronie Konfiguracje w drzewie konfiguracji wybierz Format, aby poznać konfigurację odroczonych elementów XML.
Wybierz opcję Projektant, aby przejrzeć szczegóły formatu.
Wybierz Pokaż szczegóły.
Przejrzyj ustawienia składników formatu ER, które są skonfigurowane do generowania dokumentu wychodzącego w formacie XML zawierającym szczegółowe informacje o transakcjach podatkowych:
- Element XML Raport\Wiadomość jest skonfigurowany tak, aby wypełnił dokument wychodzący z jednym węzłem zawierającym zagnieżdżone elementy XML (Nagłówek, Rekord oraz Podsumowanie).
- Element XML Raport\Wiadomości\Nagłówek jest skonfigurowany do wypełniania dokumentu wychodzącego jednym węzłem nagłówka, który pokazuje datę i godzinę rozpoczęcia przetwarzania.
- Element sekwencji formatu Raport\Wiadomość\Rekord jest skonfigurowany tak, aby wypełnił dokument wychodzący jednym węzłem, w którym są wyświetlane szczegóły jednej transakcji podatkowejf.
- Element XML Raport\Wiadomość\Podsumowanie jest skonfigurowany do wypełniania dokumentu wychodzącego jednym węzłem, który zawiera sumę wartości podatku z przetworzonych transakcji podatkowych.
Na karcie Mapowanie przejrzyj następujące informacje:
- Element Raport\Wiadomość\Nagłówek nie musi być powiązany ze źródłem danych, aby wygenerować jeden wiersz w dokumencie wychodzącym.
- Atrybut ExecutionDateTime generuje datę i godzinę (w tym milisekundy), po dodaniu węzła nagłówka.
- Element Raport\Wiadomość\Rekord jest powiązany z model.Data.List i umożliwia wygenerowanie pojedynczego węzła rekordów dla każdego rekordu z listy powiązanej.
- Atrybut TaxAmount jest powiązany z model.Data.List.Value (wyświetlanym jako @.Value w widoku ścieżki względnej), aby wygenerować wartość podatku dla bieżącej transakcji podatkowej.
- Atrybut RunningTotal jest symbolem zastępczym sumy wartości podatku. Obecnie ten atrybut nie ma wyjścia, ponieważ nie skonfigurowano dla niego powiązania ani wartości domyślnej.
- Atrybut ExecutionDateTime generuje datę i godzinę (w tym milisekundy), po przetworzeniu bieżącej transakcji w tym raporcie.
- Element Raport\Wiadomość\Podsumowanie nie musi być powiązany ze źródłem danych, aby wygenerować jeden węzeł w dokumencie wychodzącym.
- Atrybut TotalTaxAmount jest powiązany z model.Data.Summary.Total, aby wygenerować sumę wartości podatku przetworzonych transakcji podatkowych.
- Atrybut ExecutionDateTime generuje datę i godzinę (w tym milisekundy), po dodaniu węzła podsumowania.
Uruchamianie zaimportowanego formatu
Na stronie Projektant formatów wybierz opcję Uruchom.
Pobierz plik oferowany przez przeglądarkę sieci Web i otwórz go do przeglądu.
Zauważ, że węzeł podsumowania przedstawia sumę wartości podatku dla przetwarzanych transakcji. Ponieważ format jest skonfigurowany do używania powiązania model.Data.Summary.Total, aby zwrócić tę sumę, suma jest obliczana przez wywołanie agregacji TotalSum dla zgrupowanego źródła danych typu GroupBy, który korzysta z mapowania modelu. Aby można było obliczyć tę agregację, mapowanie modeli powtarza się dla wszystkich transakcji, które zostały wybrane w filtrowanym źródle danych. Porównując czasy wykonania węzła podsumowania z ostatnim węzłem rekordu, można ustalić, że obliczenie sumy trwało 12 milisekund (ms). Porównując czasy wykonania pierwszego i ostatniego węzła rekordów, można ustalić, że wygenerowanie węzłów rekordów zajęło 9 milisekund (ms). W związku z tym wymagana było 21 ms.
Umożliwia zmodyfikowanie formatu w taki sposób, aby kalkulacja była oparte na wygenerowanych wynikach
Jeśli wielkość transakcji jest znacznie większa niż objętość w bieżącym przykładzie, czas kalkulacji może zwiększyć się i spowodować problemy z wydajnością. Zmiana ustawienia formatu pozwala uniknąć tych problemów z wydajnością. Ponieważ są dostępne wartości podatku w celu uwzględnienia ich w generowanym raporcie, można użyć tych informacji do kalkulacji wartości podatku. Aby uzyskać więcej informacji, zobacz Konfigurowanie formatu w celu zliczania i sumowania.
Na stronie Projektant formatów na karcie Format wybierz element pliku Raportu w drzewie formatu.
Ustawienie opcji Zbierz szczegóły pliku wychodzącego na wartość Tak. Teraz można skonfigurować ten format przy użyciu zawartości generowanego raportu jako źródła danych, do którego można uzyskać dostęp za pomocą wbudowanych funkcji ER w kategorii zbieranie danych.
Na karcie Mapowanie wybierz element XML Raport\Wiadomość\Rekord.
Skonfiguruj wyrażenie nazwy zebranego klucza danych jako
WsColumn
.Skonfiguruj wyrażenie wartości zebranego klucza danych jako
WsRow
.Wybierz atrybut Raport\Wiadomość\Rekord\TaxAmount.
Skonfiguruj wyrażenie nazwy zebranego klucza danych jako
SummingAmountKey
.To ustawienie można uznać za wypełnienie arkusza wirtualnego, gdzie wartość komórki A1 jest dołączana do wartości podatku z każdej przetworzonej transakcji podatkowej.
Zaznacz atrybut Raport\Wiadomość\Rekord\RunningTotal, a następnie wybierz opcję Edytuj formułę.
Skonfiguruj wyrażenie
SUMIF(SummingAmountKey, WsColumn, WsRow)
używając wbudowanej funckji ER SUMIF, a następnie wybierz Zapisz.Zamknij stronę Projektowanie formuły.
Wybierz Zapisz i następnie wybierz Uruchom.
Pobierz plik przez przeglądarkę sieci Web i otwórz go do przeglądu.
Ostatni węzeł rekordów zawiera bieżącą sumę wartości podatku, które są obliczane dla wszystkich przetworzonych transakcji przy użyciu wygenerowanego wyniku jako źródła danych. To źródło danych rozpoczyna się od początku raportu i jest kontynuowane przez ostatnią transakcję podatkową. Węzeł podsumowania zawiera sumę wartości podatku dla wszystkich przetworzonych transakcji, które są obliczane w mapowaniu modelu przy użyciu źródła danych typu GroupBy. Zauważ, że te wartości są równe. Z tego względu można użyć sumowania danych wyjściowych zamiast GroupBy. Porównując czasy wykonania pierwszego węzła rekordów i węzła podsumowania, można ustalić, że wygenerowanie wszystkich rekordów i sumowanie zajęło 11 milisekund (ms). Z tego względu, jeśli chodzi o generowanie węzłów rekordów i sumowanie wartości podatku, zmodyfikowany format jest o około dwa razy szybszy niż format oryginalny.
Zaznacz atrybut Raport\Wiadomość\Pdosumowanie\TotalTaxAmountl, a następnie wybierz opcję Edytuj formułę.
Umożliwia wprowadzenie wyrażenia
SUMIF(SummingAmountKey, WsColumn, WsRow)
zamiast istniejącego wyrażenia.Wybierz Zapisz i następnie wybierz Uruchom.
Pobierz plik przez przeglądarkę sieci Web i otwórz go do przeglądu.
Należy zauważyć, że suma bieżąca wartości podatku w ostatnim węźle rekordów jest teraz równa sumie w węźle podsumowania.
Umożliwia umieszczenie wartości sumowania na podstawie danych wyjściowych w nagłówku raportu
Jeśli na przykład w nagłówku raportu trzeba przedstawić sumę wartości podatku, można zmodyfikować format.
Na stronie Projektant formatów na karcie Format wybierz element XML Raport\Wiadomość\Podsumowanie.
Wybierz Przenieś w górę.
Wybierz Zapisz i następnie wybierz Uruchom.
Pobierz plik przez przeglądarkę sieci Web i otwórz go do przeglądu.
Należy zauważyć, że suma wartości podatku w węźle jest teraz równa 0 (zero), ponieważ ta suma jest teraz obliczana na podstawie wygenerowanych danych wyjściowych. Po wygenerowaniu pierwszego węzła rekordów wygenerowane dane wyjściowe nie zawierają jeszcze węzłów rekordów z informacjami o transakcjach. Można skonfigurować ten format, aby odroczyć wykonanie elementu sekwencji Raport\Wiadomość\Podsumowanie, dopóki sekwencja Raport\Wiadomość\Rekord nie zostanie uruchomiony dla wszystkich wierszy raportu dla transakcji podatkowych.
Odłóż wykonanie podsumowania elementu XML, tak aby była używana obliczona suma
Na stronie Projektant formatów na karcie Format wybierz element XML Raport\Wiadomość\Podsumowanie.
Ustaw wartość opcji Odłożone uruchomienie na Tak.
Wybierz Zapisz i następnie wybierz Uruchom.
Pobierz plik przez przeglądarkę sieci Web i otwórz go do przeglądu.
Element sekwencji Raport\Wiadomość\Podsumowanie jest teraz uruchamiany tylko po uruchomieniu wszystkich pozostałych elementów zagnieżdżonych pod jego elementem Raport\Wiadomość. Dlatego jest uruchamiany po uruchomieniu elementu sekwencji Raport\Wiadomość\Rekord dla wszystkich transakcji podatkowych źródła danych model.Data.List. Czasy wykonania pierwszego i ostatniego rekordu oraz węzły nagłówka i podsumowania ujawniają ten fakt.