DZWONEK

Są tacy, którzy czytają tę wiadomość przed tobą.
Zapisz się, aby otrzymywać najnowsze artykuły.
E-mail
Nazwa
Nazwisko
Jak chcesz przeczytać The Bell
Bez spamu

Za pomocą systemy kompozycji danych 1C niemożliwe bez zbiory danych... W jednym schemacie składu danych może być ich kilka. I potrafią komunikować się ze sobą w określony sposób. A raczej albo, albo zjednoczyć... W tym artykule rozważymy łączenie zbiorów danych... Łączenie zbiorów danych w ACS jest podobne.

Aby połączyć dwa lub więcej zestawów danych w ACS, konieczne jest na karcie Zestawy danych utwórz wstępnie specjalny zestaw danych - unię


Mamy to zdjęcie


I już w tym utworzonym obiekcie dodajemy zestawy, które będą bezpośrednio łączone. Dodajmy dwa zbiory danych. Jednym z nich będzie zapytanie, a drugim dla odmiany obiekt (zewnętrzne źródło danych). Lubię to:


Jako przykład rozważ połączenie zbiorów danych z saldami produktów.

W zestawie, z którego będziemy korzystać, ręcznie dodaj pola Ilość przedmiotów i wpisz nazwę obiektu zawierającego dane


Dla zbioru danych, w którym używane jest zapytanie, otrzymamy dane przy użyciu sald z tego rejestru akumulacji:


Składanie prostej prośby

WYBIERZ Bilans towarów Prezentacja produktu AS Produkt, Bilans towarów Bilans ilości AS Saldo (WYBIERZ produkt, saldo) Z rejestru akumulacji Produkty Saldo Pozostało AS Saldo towarów

Aby pozbyć się magazynów, musieliśmy użyć w zapytaniu kompozycji danych (wszystko w formacie nawiasy klamrowe) i wyłącz flagę autouzupełniania u dołu. Ponadto nie element katalogu został przyjęty jako produkt, ale jego reprezentacja, dzięki czemu typ był taki sam, jak w zestawie z zewnętrznym źródłem danych. Aby dane z różnych zestawów trafiły do \u200b\u200bjednego pola, muszą mieć w polu taką samą nazwę Sposób... Dlatego na polu Resztki ścieżka została ręcznie poprawiona na numeraby zsynchronizować go z drugim zestawem danych. W rzeczywistości lepiej oczywiście od razu użyć żądanego aliasu w żądaniu. W tym przypadku celowo tego nie zrobiłem, aby zwrócić uwagę na taką funkcję.

Przejdźmy teraz bezpośrednio do danych
W rejestrze akumulacyjnym mam następujące salda towarów

i to jest obraz w zewnętrznym źródle danych

Skonfigurujmy układ w najbardziej prymitywny sposób.
Pole numer oczywiście zrobimy z niego zasób, a na karcie ustawień po prostu dodamy Szczegółowe zapisy... I oczywiście nie zapomnijmy o umieszczeniu Produkt i numer do wybranych pól. A dla pełnego szczęścia zorganizujemy według produktu.


W wyniku wykonania raportu z takimi ustawieniami ACS otrzymujemy następującą tabelę

Jak widać, lampa, która znajduje się w obu zestawach danych, jest reprezentowana przez dwa wiersze jako wynik zapytania. Aby zwinąć je w jedną linię, musisz nieco zmodyfikować strukturę w ustawienia ACS i zamiast szczegółowych rekordów grupuj według pola Produkt.


A teraz otrzymujemy wynik bez zduplikowanych linii.

Na tej karcie możesz utworzyć nieograniczoną liczbę zestawów danych. Zbiór danych jest źródłem pobierania danych.

Istnieje kilka typów zestawów danych:

  • Żądanie;
  • Obiekt;
  • Unia.

Żądanie jest zwykłym żądaniem 1c, tylko język żądania jest nieco rozszerzony. Dla wygody możesz użyć konstruktora zapytania.

Obiekt to zewnętrzny zbiór danych, taki jak tabela wartości.

Unia to suma kilku zestawów danych typów zapytań i obiektów.

W tym artykule pokrótce przejdziemy przez wszystkie zakładki Projektanta schematu kompozycji danych. Zbiory danych Na tej karcie można tworzyć nieograniczoną liczbę zbiorów danych. Zbiór danych jest źródłem wyszukiwania danych. Istnieje kilka typów zestawów danych: Zapytanie; Obiekt; Unia. Żądanie jest zwykłym żądaniem 1c, tylko język żądania jest nieco rozszerzony. Dla wygody możesz użyć konstruktora zapytania. Obiekt to zewnętrzny zbiór danych, taki jak tabela wartości. Union to suma wielu zestawów danych typów zapytań i obiektów. Relacje między zbiorami danych Na tej karcie opisano relacje między zbiorami danych. Tutaj możesz określić, które zbiory danych mają być połączone oraz według których pól i jakich parametrów. Najważniejszą rzeczą do zapamiętania jest to, że w schemacie składu danych lewe sprzężenie jest zawsze używane podczas łączenia zbiorów! Pola obliczeniowe Na tej karcie możesz tworzyć dodatkowe polanie opisane na karcie Zestawy danych. Jako wyrażeń do obliczeń można używać języka wyrażeń kompozycji danych, pól z głównych zestawów danych i funkcji nieglobalnych wspólnych modułów. Zasoby Zasoby to podsumowanie grupowań. Na karcie można przypisać pola z zestawów danych, a także pola obliczeniowe jako zasób. Ponadto w przypadku zasobów wskazane jest wyrażenie, według którego są one obliczane, i można wskazać grupowanie, według którego obliczane będzie wyrażenie dotyczące zasobów. Wartości zasobów są również używane do obliczania ogólnych sum raportu. Parametry Parametry danych są zwykle używane w zestawie danych zapytania. Wszystkie parametry opisane w żądaniu pojawiają się na karcie Parametry. Na tej karcie możesz określić tytuł, dostępne typy, dostępne wartości i kilka innych rzeczy. Więcej o parametrach później. Układy Domyślnie układ wygenerowanego raportu jest generowany automatycznie przez system kompozycji danych. Ale system ma również możliwość samodzielnego zaprojektowania przez dewelopera poszczególnych obszarów raportów (pól, grup, zasobów ...). Wszystkie układy poszczególnych obszarów utworzone na tej zakładce są powiązane tylko z bieżącym raportem. Schematy zagnieżdżone Schematy zagnieżdżone są używane, gdy dane z jednego raportu muszą być użyte w innym. Innymi słowy, „osadzamy” jeden schemat składu danych w innym, wskazując związek przez wspólne pole. Przykład użycia zagnieżdżonych schematów można znaleźć w tym artykule. Ustawienia Na tej karcie programista tworzy standardowe ustawienia generowanie raportu. W górnej części okna ustawiona jest hierarchiczna struktura. Struktura generowania raportu może składać się z następujących elementów: Grupowanie; Stół; Diagram; Schemat zagnieżdżony W dolnej części okna możesz określić ustawienia dla całego raportu i dla każdego elementu struktury raportu. W skrócie w zakładkach ustawień: Wybrane pola - lista pól wyświetlanych w raporcie; Selekcja - wszelkiego rodzaju selekcja rekordów raportu; Kolejność - sortowanie rekordów w raporcie; Parametry danych - wartość parametrów raportu; Pola niestandardowe - dodatkowe pola raportów utworzone przez użytkownika; Formatowanie warunkowe - ustawia formatowanie warunkowe rekordów raportów; Inne ustawienia - różnego rodzaju dodatkowe ustawienia, takie jak: tytuł raportu, układ, układ pól itp.

Uwaga! To jest wstępna wersja lekcji, której materiały mogą być niekompletne.

Zaloguj się jako student

Zaloguj się jako uczeń, aby uzyskać dostęp do materiałów szkolnych

1C 8.3 System kompozycji danych dla początkujących: prezentacja raportu w formie diagramu

Dziś uzupełnimy raport z ostatniej lekcji (a raczej jego kopię) o możliwość wyświetlenia tych samych danych w postaci diagramu.

Postawiliśmy sobie cel

  • Zrób kopię raportu z ostatniej lekcji.
  • Wyświetl te same dane na wykresie.
  • W takim przypadku serie (kolumny, oś Y) powinny być produktami, a punkty (oś X) powinny być klientami. Wartości kolumn (na osi Y) będą oznaczały ilość żywności, którą klient zamówił z danych.

Zmień kopię poprzedniego raportu

Wykonaj kopię raportu z ostatniej lekcji pod nazwą „Lekcja9” i otwórz tę kopię w konfiguratorze bazy danych „Deli”.

Zmień nazwę raportu na „Lekcja 9” i kliknij przycisk „Otwórz schemat kompozycji danych”:

Nie będziemy zmieniać zbiorów danych - naszym zadaniem jest zmiana ich prezentacji dla użytkownika.

Dlatego od razu przechodzimy do zakładki „Ustawienia” i zwracamy uwagę na lewą kolumnę z opcjami raportu.

Nie pracowaliśmy wcześniej z tą kolumną, ale dzisiaj powiem ci, jakie jest jej znaczenie.

Wszystkie ustawienia, które wprowadzamy w tej zakładce (za pomocą konstruktora magicznej różdżki lub ręcznie na dole) odnoszą się do jednej z opcji raportu, która jest podświetlona w lewej części okna.

Domyślnie ta opcja jest zawsze jedna i nosi nazwę „Podstawowa”. Sztuczka polega na tym, że w trybie użytkownika możesz łatwo przełączać się między tymi opcjami.

A teraz mamy główną opcję, której ustawienia wskazują - wyświetl dane w postaci tabeli:

Zmieńmy nazwę tej opcji (dwukrotne kliknięcie) i główną na „Tabela” w następujący sposób:

Dodaj nową wersję raportu

Teraz, używając znaku plus, dodaj jeszcze jedną opcję (gdzie przerzucimy ustawienie wyjścia danych w postaci diagramu):

Nazwijmy tę opcję „Diagramem”:

Utworzenie nowej wersji raportu

Jak widać, po prawej stronie tej opcji (wybraliśmy) jest pusta, to znaczy nie ma żadnych ustawień. Stwórzmy je naszą magiczną różdżką:

Tym razem wybierz typ raportu „Wykres ...”:

Wybierz „Ilość” jako pola do wyświetlenia (analogicznie do tabeli):

Jako szereg (oś Y) wskażemy pole „Żywność”, a jako punkty (oś X) - pole „Klienci”:

Okazało się tak:

Zapiszmy nasz raport w konfiguratorze i uruchommy go w trybie użytkownika:

Widzimy stół ... co to jest ?! Faktem jest, że wystarczy wybrać inną wersję raportu. Kliknij przycisk „Wybierz opcję ...” i wybierz opcję „Diagram”:

Schemat jest gotowy

Po raz kolejny generujemy raport:

Świetnie, co za piękno

Przetwarzanie odniesienia po wykonaniu wszystkich kroków w tej lekcji

Na zakończenie modułu

To kończy nasz przegląd podstaw systemu kompozycji danych. Próbowałem opowiedzieć i wyjaśnić na prostych przykładach podstawowe podstawy niezbędne dla początkujących do pracy z ACS.

Jeśli masz w przyszłości ( radzę zrobić to po ukończeniu całej szkoły) będzie potrzeba głębszego zbadania systemu kompozycji danych - jest tam wspaniała książka E. Yu. Khrustaleva „Rozwój złożonych raportów w 1C: Enterprise 8”.

W tym module zdobyłeś wystarczającą wiedzę i umiejętności praktyczne, aby zacząć czytać poważniejszą literaturę na ten temat.

Zrobiliśmy kawał dobrej roboty, czas odpocząć!

Czasami, aby uzyskać określony wynik kompozycji, konieczne jest utworzenie łączy do zbiorów danych w ACS. O tym, kiedy jest to potrzebne i jak to zrobić, postaramy się opowiedzieć w naszym artykule.

Schemat składu danych zaimplementowany w 1C obsługuje trzy typy źródeł danych (ryc.1)

Źródła danych

Najbardziej oczywistym i najczęściej używanym źródłem danych dla programistów jest Query.

Projektant zapytań zaimplementowany w wersji 8 1C jest bardzo wygodny iw większości przypadków można połączyć ze sobą kilka tabel, dokonać niezbędnych grupowań i wyborów bezpośrednio w nim.

W złożonych przypadkach, gdy jest wymagane lub bardziej celowe użycie wykonania jakiegoś kodu (na przykład załadowanie danych z pliku strony trzeciej) lub gdy nie jest możliwe użycie zapytania, z pomocą przychodzi źródło danych „Obiekt”. Dowolny kod wykonywany w module powinien mieć strukturę na wyjściu, do której ACS ma dostęp.

Trzecie źródło danych to „Unia”. W rzeczywistości to źródło można uznać za jeden z rodzajów komunikacji. Łączy (łączy kilka tabel), bez dopasowywania, ale zbieżność pewnych pól. Oznacza to, że jeśli w dwóch łączonych tabelach są odpowiednio 3 i 4 wiersze, wynikowe źródło danych będzie miało 7 wierszy.

Sformułowanie problemu

Jako poligon doświadczalny wybierzemy bazę UPP w wersji 1.3.92.3 działającą w normalnym trybie aplikacji.

Dostajemy następujące zadanie: korzystając tylko z ACS, stworzyć raport, który będzie wyświetlał zestawienie zakupionych towarów z dokumentu, z cenami pobranymi z pliku przesłanego przez kontrahenta.

Dlatego musimy:

  1. Weź tabelaryczną część dokumentu odbioru;
  2. Załaduj plik do źródła danych „Obiekt”;
  3. Połącz te dwa źródła według określony parametr (w naszym przypadku będzie to kod);
  4. Wydrukuj wynikową tabelę.

Proces realizacji

Przejdźmy przez wszystkie wymienione kroki:

  • Utwórz żądanie do sekcji tabelarycznej dokumentu przyjęcia (ryc.2)

Ryc.2

  • Utwórz obiekt zbioru danych (ryc. 3);

Ryc.3

W tym miejscu należy zwrócić uwagę na „Nazwę obiektu zawierającego dane”, będziemy musieli podać tę nazwę w kodzie modułu raportującego.

  • Przejdź do modułu raportów i utwórz procedurę „AtCompositionResult” (Rys.4);


Ryc.4

Nie będziemy opisywać procedury pozyskiwania danych z zewnętrznego pliku, zwrócimy uwagę na część kodu, która musi znajdować się w layoucie, abyśmy mogli otrzymać dane do „Zestawu danych 2” (rys.5).

Ryc.5

Ważny! Podczas tworzenia „obiektu” w kodzie procedury łączenia wartość parametru StandardProcessing musi mieć wartość False.

Przejdź do zakładki „Linki do zbioru danych”.

Zestawy łączące

Przechodzimy do odpowiedniej zakładki schematu (ryc.6).

Widzimy sekcję tabelaryczną, która jest bardzo podobna do sekcji tabelarycznej w projektancie zapytań, z pewnymi wyjątkami. Dla zestawu źródła i zestawu odbiornika komunikacji nie można zaznaczyć pola „Wszystkie”, ale dodano kilka dodatkowych kolumn.

W łączach zestawu danych można ustanowić tylko łącze, takie jak zewnętrzne sprzężenie lewe projektanta zapytań.

Zanim utworzymy łącze, określmy przeznaczenie kolumn:

  1. Źródłem odsyłacza jest pierwszy zbiór danych, z którego zostaną pobrane wszystkie dostępne wartości;
  2. Odbiornik komunikacyjny - zbiór danych, z których będą wybierane wartości odpowiadające naszemu stanowi;
  3. Wyrażenie źródłowe - pole lub wyrażenie pierwszego zestawu danych do dopasowania;
  4. Wyrażenie odbiorcy to pole lub wyrażenie zbioru zależnego;
  5. Parametr - jeżeli w polu tym podasz nazwę parametru, to połączenie z zestawem - odbiornikiem będzie realizowane tylko o wartość podaną w parametrze;
  6. Lista parametrów - określa możliwość użycia listy wartości jako parametru;
  7. Warunek łącza - określając tutaj wyrażenie za pomocą pól źródłowych, można stworzyć warunek, którego spełnienie posłuży jako sygnał do nawiązania połączenia;
  8. Wartość początkowa - pokazuje wartość początkowa Komunikacja;
  9. Mandatory Link - określa, czy zaangażowane są pola używane w źródle (ustawione na FALSE) czy w odbiorniku (ustawione na TRUE) i na tej podstawie dodaje łącze do układu.

W ten sposób:

  • Źródłem komunikacji będzie wynik naszej prośby;
  • Obiekt będzie działał jako odbiornik;
  • Wyrażeniem źródłowym będzie „NomenclatureCode”;
  • Odbiornik wyrażenia „Nomenclature”;
  • Komunikacja będzie wymagana (rys. 7).

Gdybyśmy wskazali nazwę jakiejś nomenklatury, jej rodzaj reprodukcji lub coś innego jako warunek połączenia, moglibyśmy uzyskać dokładniejszą próbkę do naszego zadania. Rezultat naszych działań można zobaczyć na rys.8.

Ryc.8

W pliku cenowym nie znaleziono dopasowania dla dwóch ostatnich wierszy raportu.

41
Niedawno utworzyłem raport z nieokreśloną liczbą kolumn. Nie chciałem majstrować przy kodzie, zdecydowałem się to zrobić na ACS. Nie było z tym problemu, trzeba było rozciągnąć wynik na dowolny układ (własny tytuł + ... 27
Chociaż uczniowie ACS spotykają się z tym w pierwszym lub drugim dniu, powinno się to znaleźć w sekcji FAQ. Prosty przykład programistycznego generowania raportu w układzie przy użyciu ustawień domyślnych. // Pobierz schemat z ... 18
Podczas generowania raportów na ACS domyślnie wszystkie zgrupowania są rozwijane, ale zdarza się, że natychmiast po wygenerowaniu konieczne jest pokazanie raportu ze zwiniętymi grupami! Ten kod w module raportów pozwala zwinąć ... 10
Na tej zakładce można określić, jakie połączenia są nawiązywane pomiędzy dwoma lub więcej zestawami danych, według jakich parametrów i warunków..png 1. „Źródło komunikacji” - wskazuje pierwszy zestaw danych z ... 9
Że przy tworzeniu raportów wymagane jest, aby dla użytkownika z ograniczonymi uprawnieniami raport był generowany całkowicie bez sprawdzania uprawnień! Zwłaszcza jeśli skonfigurowano RLS. Można to zrobić na kilka sposobów: 1. Zainstaluj ...

DZWONEK

Są tacy, którzy czytają tę wiadomość przed tobą.
Zapisz się, aby otrzymywać najnowsze artykuły.
E-mail
Nazwa
Nazwisko
Jak chcesz przeczytać The Bell
Bez spamu