Funkcje agregacyjne systemu kompozycji danych. Funkcje agregacyjne systemu kompozycji danych Tworzenie ustawień prezentacji raportów
W układzie danych ustawianie sum wygląda trochę inaczej niż w prośbach. Zdefiniujmy zbiór danych „Kwerenda” w systemie kompozycji danych.
W samym zapytaniu nie ustawiamy sum, tylko przechodzimy do zakładki „Zasoby” kompozycji danych. Na poziomie schematu kompozycji danych, my zdefiniuj zasoby. Są to pola, które należy obliczyć na poziomie grupowania. Kliknij przycisk „>>”, a sam system przeniesie wszystkie pola numeryczne i zdefiniuje je jako zasoby.
Zasoby mogą również zawierać pola nieliczbowe. Na przykład, jeśli wybierzesz atrybut „Link”, system policzy liczbę dokumentów w naszych grupach. Ta informacja może być również pomocna. Więc, w schemacie layoutu definiujemy tylko zasoby, a same grupy są konfigurowane na poziomie wariantu raportu. Ponadto sam użytkownik może tworzyć grupy, które chce widzieć w ustawieniach wariantów raportu.
Stwórzmy standardowe ustawienie kompozycji danych.
Kliknij przycisk „Otwórz projektanta ustawień”.
Wybierzmy typ raportu - lista. Naciśnijmy przycisk „Dalej”.
Zaznacz wszystkie pola i przesuń pole kontrahenta na najwyższą pozycję. Naciśnijmy przycisk „Dalej”.
Zaznacz wszystkie pola i przesuń pole kontrahenta na najwyższą pozycję. Naciśnijmy przycisk „OK”.
Masz następującą konfigurację:
Jak widać, w ustawieniach wariantów raportu zasoby są wyróżnione zieloną ikoną, dzięki czemu można je szybko odróżnić od innych pól.
Jeśli otworzymy nasz raport w trybie 1C:Enterprise i wygenerujemy go, zobaczymy, że ostateczne dane są generowane na poziomie grupowania. Wyniki według nomenklatury i według kontrahentów.
Konfigurowanie zasobów w schemacie kompozycji danych 1C
Teraz zwróćmy naszą uwagę na ustawienia, które istnieją dla zasobów. W polu „Wyrażenie” możemy określić funkcję agregującą, za pomocą której możemy uzyskać wartość zasobu. Na liście rozwijanej możesz zobaczyć szereg standardowych funkcji, ale nie wszystkie. Na przykład nie ma funkcji.
Tutaj w polu "Wyrażenie" możemy wpisać własne wyrażenie.
W polu „Wyrażenie” możemy również odnieść się do funkcji wspólnych modułów.
Dodatkowo możesz określić w polu "Oblicz według..." dla jakich grupowań musisz obliczyć zasób. Jeżeli pole „Przelicz według...” nie zostanie wypełnione, to łączna wartość zasobu zostanie obliczona na wszystkich poziomach grupowania, które są zdefiniowane w ustawieniach wariantu raportu. W naszym przypadku musimy wypełnić pole "Oblicz według ..." zasobu "Ilość", ponieważ możemy sprzedawać towary w różnych jednostkach miary. Na przykład: olej w litrach i koła w kawałkach. Czy nie byłoby nielogiczne zsumowanie ilości tych towarów? Dlatego musimy zostawić sumowanie ilości na poziomie pozycji i na poziomie kontrahenta
usuń podsumowanie.
Jeśli wygenerujemy raport, zobaczymy, że sumy według ilości są obliczane tylko według nomenklatury, a według kontrahentów sumy ilości są puste.
Możliwości opisywania zasobów w schemacie układu danych 1C
Rozważmy szereg nieoczywistych cech związanych z opisem zasobów.
- Każdy zasób może: zdefiniuj wiele razy. Ale to ma sens tylko wtedy, gdy
zasób będzie obliczany na różnych poziomach grupowania. Na przykład, jeśli ilość, w jednym przypadku
jest sumowana dla pozycji, a dla kontrahentów otrzymujemy wartość minimalną.
Jeśli wygenerujemy raport, zobaczymy, że dla kontrahenta firmy Deria minimalny zakup to pięć jednostek papieru samoprzylepnego.
- W polu „Wyrażenie”, oprócz pisania formuły, możesz użyć specjalna funkcja składania danych o nazwie „Oblicz”. Ta funkcja pozwala obliczyć pewną wartość końcową za pomocą określonej formuły. Na przykład dla każdego kontrahenta musisz znać procent zakupów w jednostkach naturalnych w stosunku do całkowitego wolumenu. Ale jak uzyskać sumę zakupów według ilości? W tym celu użyj funkcji „Oblicz” i wpisz następujące wyrażenie w polu „Wyrażenie”:
Jak widać, wszystkie parametry funkcji „Oblicz” są ciągami. Aby pole ilości ładnie się wyświetlało w raporcie, skonfigurujemy je w zakładce „Zbiory danych”. W wierszu ilości znajdź pole „Opcje edycji”. Otwórzmy okno dialogowe, znajdźmy wiersz „Format” i edytujmy w nim ciąg formatu, ustawiając wartość „Precyzja” na dwa w zakładce „Liczba”.
Uruchommy raport i zobaczmy wynik obliczenia procentu zakupów dla kontrahenta „AUPP KOS LLP” względem
maksymalna głośność:
Na końcu artykułu chcę ci doradzić wolny od Anatolija Sotnikowa. To kurs od doświadczonego programisty. On pokaże Ci na osobnych zasadach, jak budować raporty w ACS. Wystarczy uważnie słuchać i pamiętać! Otrzymasz odpowiedzi na pytania takie jak:Może nie powinieneś sam próbować surfować po Internecie w poszukiwaniu potrzebnych informacji? Co więcej, wszystko jest gotowe do użycia. Po prostu zacznij! Wszystkie szczegóły dotyczące tego, co znajduje się w bezpłatnych samouczkach wideo
- Jak stworzyć prosty raport z listą?
- Do czego służą kolumny Pole, Ścieżka i Tytuł na karcie Pola?
- Jakie są ograniczenia dotyczące pól układu?
- Jak prawidłowo skonfigurować role?
- Jakie są role pól układu?
- Gdzie mogę znaleźć kartę układu danych w zapytaniu?
- Jak skonfigurować parametry w SKD?
- Dalsze ciekawsze...
Oto jedna z lekcji na temat zakładki kompozycji danych w zapytaniu:
Weźmy przykład:
Do klienta wysyłane jest kilka sztuk towaru z różnymi rabatami. Wymagane jest wyświetlenie wartości rabatów dla każdego produktu w raporcie oraz obliczenie średniego rabatu. Stwórzmy raport na temat SKD.
Dla wszystkich pól, dla których wymagane jest wyświetlanie sum, ustaw wyrażenie (metodę) ich obliczania w zakładce „Zasoby”. W polu „Rabat” ustaw metodę obliczania jako „Średnia”.
Wyprowadzamy raport:
Jak widać, suma dla pola „Rabat” liczona jest jako średnia arytmetyczna z wartości pola, tj. suma wszystkich wartości podzielona przez liczbę wartości. Lecz odkąd ilości wysyłanych towarów z różnymi rabatami są różne, wówczas średni rabat można obliczyć w inny sposób: na przykład jako stosunek całkowitej ilości wysłanego towaru z uwzględnieniem rabatu do całkowitej ilości wysłanego towaru. Ale tutaj pojawia się pytanie: jeśli w ACS można napisać formułę, aby obliczyć wartości pól szczegółowych rekordów, to sumy są obliczane automatycznie zgodnie z wyrażeniem określonym w zakładce „Zasoby”, i tam, jak widzieliśmy wcześniej, „Średnia” jest obliczana jako średnia arytmetyczna wyświetlanych wartości, jak w tym przypadku oblicz sumę w tej kolumnie za pomocą własnego wzoru?
Właściwie to nie jest trudne. W tym celu poprawimy nasz raport dodając niezbędne pola, które będą brały udział w kalkulacji, w naszym przypadku są to „KwotaZRabatem” oraz „KwotaByCena”.
Aby ACS „nauczyło” wyświetlania naszych wyników, wykonujemy następujące kroki:
1. na karcie „Ustawienia” dla grupowania „” przypisz nazwę, na przykład „TotalSKD”, w tym celu wywołujemy menu kontekstowe grupowania i klikamy „przypisz nazwę”;
2. na zakładce „Układy” dodaj „układ nagłówka grupującego”, w którym wybieramy wcześniej przypisaną nazwę „TotalSKD”;
3. narysuj linię układu, w której zostawiamy wszystkie sumy, których obliczenie nam odpowiada, a aby obliczyć średni procent rabatu, piszemy formułę do obliczeń;
Jeśli wszystko się zgadza, to podczas wyświetlania raportu, pod nim pojawią się dwa wiersze sum, najpierw ten, który jest generowany automatycznie, a następnie ten, który utworzyłeś.
Aby pozostawić dane wyjściowe tylko wiersza sum, musisz na karcie „Ustawienia” w sekcji „Inne ustawienia” danych wyjściowych układu wyłączyć dane wyjściowe dla „Pozycji w poziomie sum całkowitych” i „Pozycji w pionie sumy końcowe"
Ważny! Jeżeli parametr funkcji jest typu String i określa nazwę pola zawierającą spacje, to taka nazwa pola musi być ujęta w nawiasy kwadratowe.
Na przykład: „[Liczba obrotów]”.
1. Razem- oblicza sumę wartości wyrażeń przekazanych do niego jako argument dla wszystkich szczegółowych rekordów. Jako parametr można przekazać tablicę. W takim przypadku funkcja zostanie zastosowana do zawartości tablicy.
Przykład :
Kwota (Sprzedaż. Kwota Obrotu)
2. Liczba (liczba) - zlicza liczbę wartości innych niż null. Jako parametr można przekazać tablicę. W takim przypadku funkcja zostanie zastosowana do zawartości tablicy.
Składnia :
Ilość ([różne] parametr)
Określając sposób uzyskiwania różnych wartości, określ Distinct przed parametrem metody Quantity.
Przykład :
Ilość (Sales.Contractor)
Ilość (różna sprzedaż. Wykonawca)
3. Maksymalna (maksymalna)
- uzyskuje maksymalną wartość. Jako parametr można przekazać tablicę. W takim przypadku funkcja zostanie zastosowana do zawartości tablicy.
Przykład :
Maksimum (pozostałe. Ilość)
4. Minimum - pobiera wartość minimalną. Jako parametr można przekazać tablicę. W takim przypadku funkcja zostanie zastosowana do zawartości tablicy.
Przykład :
Minimum (bilans. Ilość)
5. Średnia - pobiera średnią wartość dla wartości innych niż null. Jako parametr można przekazać tablicę. W takim przypadku funkcja zostanie zastosowana do zawartości tablicy.
Przykład :
Średnia (pozostałe. Ilość)
6. Tablica - tworzy tablicę zawierającą wartość parametru dla każdego rekordu szczegółowego.
Składnia :
Array([Różne] wyrażenie)
Możesz użyć tabeli wartości jako parametru. W takim przypadku wynikiem funkcji będzie tablica zawierająca wartości pierwszej kolumny tabeli wartości, przekazane jako parametr. Jeśli wyrażenie zawiera funkcję Array, to wyrażenie jest uważane za wyrażenie agregujące. Jeśli określono słowo kluczowe Variant, wynikowa tablica nie będzie zawierać zduplikowanych wartości.
Przykład :
Tablica (konto)
7. Tabela wartości - generuje tabelę wartości zawierającą tyle kolumn ile jest parametrów dla funkcji. Szczegółowe rekordy są uzyskiwane z zestawów danych, które są potrzebne do uzyskania wszystkich pól związanych z wyrażeniami parametrów funkcji.
Składnia :
ValueTable([Różne] Wyrażenie1 [AS NazwaKolumny1][, Wyrażenie2 [AS NazwaKolumny2],...])
Jeżeli parametrami funkcji są pola rezydualne, to wynikowa tabela wartości będzie zawierała wartości dla rekordów dla unikalnych kombinacji pomiarów z innych okresów. W tym przypadku wartości uzyskuje się tylko dla pól bilansowych, wymiarów, kont, pól okresu i ich szczegółów. Wartości pozostałych pól w rekordach z innych okresów traktowane są jako NULL. Jeśli wyrażenie zawiera funkcję ValueTable, wyrażenie jest uważane za wyrażenie agregujące. W przypadku określenia słowa kluczowego Inny wynikowa tabela wartości nie będzie zawierać wierszy zawierających te same dane. Po każdym parametrze może następować opcjonalne słowo kluczowe AS i nazwa, która zostanie przypisana do kolumny tabeli wartości.
Przykład :
Tabela wartości (różna nomenklatura, nomenklatura cech AS Cecha)
8. Zwiń (Grupuj według) - przeznaczony do usuwania duplikatów z tablicy.
Składnia :
Zwiń (wyrażenie, numery kolumn)
Parametry:
- Wyrażenie- wyrażenie typu Array lub ValueTable, których wartości elementów należy zwinąć;
- LiczbyKolumny- (jeśli wyrażenie jest typu ValueTable) typu String. Numery lub nazwy (oddzielone przecinkami) kolumn tabeli wartości, wśród których należy szukać duplikatów. Wartość domyślna to wszystkie kolumny.
Collapse(ValueTable(PhoneNumber, Address), "PhoneNumber");
9. Pobierz część (Pobierz część) - pobiera tabelę wartości zawierającą określone kolumny z oryginalnej tabeli wartości.
Składnia :
GetPart (wyrażenie, numery kolumn)
Parametry:
- Wyrażenie- typTabelaWartości. Tabela wartości, z których uzyskać kolumny;
- LiczbyKolumny- wpisz Ciąg. Numery lub nazwy (oddzielone przecinkami) kolumn tabeli wartości do uzyskania.
Przykład :
GetPart(Collapse(ValueTable(PhoneNumber, Address) ,"PhoneNumber"),"PhoneNumber");
10. Zamówienie - służy do porządkowania elementów tablicy i tabeli wartości.
Składnia :
Kolejność (wyrażenie, numery kolumn)
Parametry:
- Wyrażenie- tablica lub tabela wartości, z której można uzyskać kolumny;
- LiczbyKolumny- (jeśli wyrażenie jest typu ValueTable) numery lub nazwy (oddzielone przecinkami) kolumn tabeli wartości, według których ma być sortowane. Może zawierać kierunek zamawiania i potrzebę automatycznego zamawiania: Malejąco/Rosnąco + Autozamawianie.
Przykład :
Sort(ValueTable(PhoneNumber, Address,CallDate),"CallDate Malejąco");
11. PołączStrings (JoinStrings) - przeznaczony do łączenia ciągów w jeden ciąg.
Składnia :
ConcatenateStrings (wartość, separator elementów, separatory kolumn)
Parametry:
- Oznaczający- wyrażenia do połączenia w jedną linię. Jeśli jest to Array, elementy tablicy zostaną połączone w łańcuch. Jeśli jest ValueTable, wszystkie kolumny i wiersze tabeli zostaną połączone w wiersz;
- Separator elementów- ciąg zawierający tekst, który ma być używany jako separator między elementami tablicy a wierszami tabeli wartości. Wartość domyślna to znak nowej linii;
- Separatory kolumn- ciąg zawierający tekst, który ma służyć jako separator między kolumnami tabeli wartości. Domyślna "; ".
ConnectStrings(TabelaWartości(Numer Telefonu, Adres));
12. Przetwarzanie grupowe - zwraca obiekt DataCompositionGroupProcessingData. W obiekcie we właściwości Dane umieszczane są wartości grupujące w postaci tabeli wartości dla każdego wyrażenia określonego w parametrze funkcji Wyrażenia. W przypadku korzystania z grupowania hierarchicznego, każdy poziom hierarchii jest przetwarzany osobno. W danych umieszczane są również wartości dla wpisów hierarchicznych. Właściwość CurrentElement obiektu jest ustawiona na ciąg tabeli wartości, dla którego funkcja jest aktualnie oceniana.
Składnia :
Przetwarzanie grupowe (wyrażenia, hierarchia wyrażeń, nazwa_grupy)
Parametry:
- Wyrażenia. Wyrażenia do oceny. Ciąg zawierający rozdzieloną przecinkami listę wyrażeń do oceny. Po każdym wyrażeniu może następować opcjonalne słowo kluczowe AS i nazwa kolumny wynikowej tabeli wartości. Każde wyrażenie tworzy kolumnę tabeli wartości właściwości Data obiektu DataCompositionGroupProcessingData.
- WyrażeniaHierarchie. Wyrażenia do oceny dla wpisów hierarchicznych. Podobny do parametru Expressions, z tą różnicą, że parametr Hierarchy Expressions jest używany dla rekordów hierarchicznych. Jeżeli parametr nie zostanie określony, to wyrażenia określone w parametrze Wyrażenie służą do obliczania wartości dla rekordów hierarchicznych.
- Nazwa grupy. Nazwa grupowania, w którym należy obliczyć grupowanie przetwarzania. Linia. Jeśli nie określono, obliczenie odbywa się w bieżącej grupie. Jeżeli obliczenie znajduje się w tabeli, a parametr zawiera pusty ciąg lub nie jest podany, to wartość jest obliczana do grupowania - ciąg. Konstruktor układu podczas generowania układu układu danych zastępuje podaną nazwę nazwą grupy w powstałym układzie. Jeśli grupowanie nie jest dostępne, funkcja zostanie zastąpiona wartością NULL.
Składnia :
Każdy (wyrażenie)
Parametr :
- Wyrażenie- Typ logiczny.
Każdy()
14. Dowolny (dowolny)- jeśli przynajmniej jeden wpis to prawda, wynik to prawda, w przeciwnym razie fałsz
Składnia :
Dowolny (wyrażenie)
Parametr :
- Wyrażenie- Typ logiczny.
Każdy()
15. Odchylenie standardowe populacji (Stddev_Pop) - Oblicza odchylenie standardowe populacji. Jest obliczany według wzoru: SQRT (odchylenie populacji ogólnej (X)).
Składnia :
Odchylenie standardowe populacji (wyrażenie)
Parametr :
- Wyrażenie- wpisz Numer.
Przykład :
x | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 |
Y | 7 | 1 | 2 | 5 | 7 | 34 | 32 | 43 | 87 |
Wynik: 805.694444
16. Przykładowe odchylenie standardowe (Stddev_Samp) - oblicza skumulowane odchylenie standardowe. Obliczane ze wzoru: PIERWIASTEK(Wariancja próbkowania(X)).
Składnia :
Przykładowe odchylenie standardowe (wyrażenie)
Parametr :
- Wyrażenie- wpisz Numer.
Przykład :
x | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 |
Y | 7 | 1 | 2 | 5 | 7 | 34 | 32 | 43 | 87 |
Wynik: 28,3847573
17. Próbkowanie wariancji (Var_Samp) - oblicza typową różnicę szeregu liczb bez uwzględniania wartości NULL w tym zestawie. Obliczane ze wzoru: (Sum(X^2) - Sum(X)^2 / Kwota(X)) / (Kwota(X) - 1). Jeśli Quantity(X) = 1, zwracana jest wartość NULL.
Składnia :
Próbkowanie wariancji (wyrażenie)
Parametr :
- Wyrażenie- wpisz Numer.
SELECT Wariancja populacji (Y) Z tabeli
Wynik: 716.17284
19. Kowariancja populacji (Covar_Pop) - oblicza kowariancję kilku par liczbowych. Obliczane za pomocą wzoru: (Sum(Y * X) - Sum(X) * Sum(Y) / n) / n, gdzie n to liczba par (Y, X), w których ani Y, ani X nie są NULL.
Składnia :
Kowariancja populacji (Y, X)
Parametry:
- Y- wpisz Numer;
- x- wpisz Numer.
x | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 |
Y | 7 | 1 | 2 | 5 | 7 | 34 | 32 | 43 | 87 |
Wynik: 59.4444444
20. Kowariancja próbki (Covar_Samp) - oblicza typową różnicę szeregu liczb bez uwzględniania wartości NULL w tym zestawie. Obliczane ze wzoru: (Sum(Y * X) - Sum(Y) * Sum(X) / n) / (n-1), gdzie n to liczba par (Y, X), w których ani Y, ani X są NULL.
Składnia :
Kowariancja próbki (Y, X)
Parametry:
- Y- wpisz Numer;
- x- wpisz Numer.
x | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 |
Y | 7 | 1 | 2 | 5 | 7 | 34 | 32 | 43 | 87 |
Wynik: 66,875
21. Korelacja (Corr) - oblicza współczynnik korelacji kilku par liczbowych. Obliczane według wzoru: Kowariancja populacji (Y, X) / (Odchylenie standardowe populacji (Y) * Odchylenie standardowe populacji (X)). Pary, w których Y lub X są NULL, nie są brane pod uwagę.
Składnia :
Korelacja (Y, X)
Parametry:
- Y- wpisz Numer;
- x- wpisz Numer.
x | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 |
Y | 7 | 1 | 2 | 5 | 7 | 34 | 32 | 43 | 87 |
Wynik: 0,860296149
22. Nachylenie regresji (Regr_Slope) - oblicza nachylenie linii. Obliczane według wzoru: Kowariancja populacji (Y, X) / Wariancja populacji (X). Obliczane bez uwzględniania par zawierających NULL.
Składnia :
Nachylenie regresji (Y, X)
Parametry:
- Y- wpisz Numer;
- x- wpisz Numer.
x | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 |
Y | 7 | 1 | 2 | 5 | 7 | 34 | 32 | 43 | 87 |
Wynik: 8.91666667
23. Przecięcie regresji (Regr_Intercept) - oblicza punkt Y przecięcia linii regresji. Obliczane ze wzoru: Średnia(Y) - Nachylenie regresji(Y,X) * Średnia(X). Obliczane bez uwzględniania par zawierających NULL.
Składnia :
Segment regresji (Y, X)
Parametry:
- Y- wpisz Numer;
- x- wpisz Numer.
SELECT Liczba regresji (Y, X) FROM Tabela
Wynik: 9
25. RegresjaR2 (Regr_R2) - oblicza współczynnik determinacji. Obliczane bez uwzględniania par zawierających NULL.
Składnia :
RegresjaR2(Y, X)
Parametry:
- Y- wpisz Numer;
- x- wpisz Numer.
- Null - jeśli wariancja populacji ogólnej (X) = 0;
- 1 - jeśli wariancja populacji(Y)=0 ORAZ wariancja populacji(X)<>0;
- POW(Correlation(Y,X),2) - jeśli wariancja populacji(Y)>0 ORAZ wariancja populacji(X)<>0.
x | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 |
Y | 7 | 1 | 2 | 5 | 7 | 34 | 32 | 43 | 87 |
Wynik: 0,740109464
26. RegresjaŚredniaX (Regr_AvgX) - Oblicza średnią X po wykluczeniu par X i Y, w których X lub Y są puste. Średnia(X) jest obliczana bez uwzględniania par zawierających NULL.
Składnia :
RegresjaŚredniaX(Y,X)
Parametry:
- Y- wpisz Numer;
- x- wpisz Numer.
x | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 |
Y | 7 | 1 | 2 | 5 | 7 | 34 | 32 | 43 | 87 |
Wynik: 5
27. Średnia regresji Y (Regr_AvgY) - oblicza średnią Y po wykluczeniu par X i Y, gdzie X lub Y są puste. Średnia(Y) jest obliczana bez uwzględniania par zawierających NULL.
Składnia :
Średnia regresji Y (Y, X)
Parametry:
- Y- wpisz Numer;
- x- wpisz Numer.
x | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 |
Y | 7 | 1 | 2 | 5 | 7 | 34 | 32 | 43 | 87 |
Wynik: 24.22222222
28. RegresjaSXX (Regr_SXX) - oblicza się według wzoru: Kwota Regresji (Y, X) * Wariancja populacji ogólnej (X). Obliczane bez uwzględniania par zawierających NULL.
Składnia :
RegresjaSXX(Y, X)
Parametry:
- Y- wpisz Numer;
- x- wpisz Numer.
Przykład :
SELECT RegresjaSYY(Y, X) FROM Tabela
Wynik: 6445.55556
30. RegresjaSXY (Regr_SXY) - oblicza się według wzoru: Kwota Regresji(Y, X) * Kowariancja Populacji Ogólnej (Y, X). Obliczane bez uwzględniania par zawierających NULL.
Składnia :
RegresjaSXY(Y,X)
Parametry:
- Y- wpisz Numer;
- x- wpisz Numer.
x | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 |
Y | 7 | 1 | 2 | 5 | 7 | 34 | 32 | 43 | 87 |
Wynik: 535
31. Pozycja
Składnia :
PlaceInOrder(Order, HierarchyOrder, GroupName)
Parametry:
- Zamówienie– wpisz Ciąg. Zawiera wyrażenia, w których należy umieścić rekordy grupy, oddzielone przecinkami. Kierunek porządkowania jest kontrolowany przez słowa Asc, Desc. Po polu może również występować ciąg AutoOrder, co oznacza, że kolejność łączy powinna wykorzystywać pola porządkowania zdefiniowane dla obiektu, do którego się odwołuje. Jeśli nie określono kolejności, wartość jest obliczana w kolejności grupowania;
- Zakon Hierarchii– wpisz Ciąg. Zawiera wyrażenia porządkujące dla rekordów hierarchicznych;
- Nazwa grupy– wpisz Ciąg. Nazwa grupowania, w którym należy obliczyć grupowanie przetwarzania. Jeśli nie określono, obliczenie odbywa się w bieżącej grupie. Jeżeli obliczenie znajduje się w tabeli, a parametr zawiera pusty ciąg lub nie jest podany, to wartość jest obliczana do grupowania - ciąg. Konstruktor układu podczas generowania układu układu danych zastępuje podaną nazwę nazwą grupy w powstałym układzie. Jeśli grupowanie nie jest dostępne, funkcja zostanie zastąpiona wartością NULL.
Przykład :
PlaceInOrder("[Liczba obrotów]")
32. KlasyfikacjaABC (KlasyfikacjaABC)
Składnia :
KlasyfikacjaABC (wartość, liczba grup, procenty dla grup, nazwa grupy)
Parametry:
- Oznaczający– wpisz Ciąg. na której należy obliczyć klasyfikację. Ciąg zawierający wyrażenie;
- Liczba grup- wpisz Numer. Określa liczbę grup do podziału;
- Zainteresowanie dla grup- wpisz Ciąg. Tyle grup musisz podzielić minus 1. Oddzielone przecinkami. Jeśli nie jest ustawiony, to automatycznie;
- Nazwa grupy- wpisz Ciąg. Nazwa grupowania, w którym należy obliczyć grupowanie przetwarzania. Jeśli nie określono, obliczenie odbywa się w bieżącej grupie. Jeżeli obliczenie znajduje się w tabeli, a parametr zawiera pusty ciąg lub nie jest podany, to wartość jest obliczana do grupowania - ciąg. Konstruktor układu podczas generowania układu układu danych zastępuje podaną nazwę nazwą grupy w powstałym układzie. Jeśli grupowanie nie jest dostępne, funkcja zostanie zastąpiona wartością NULL.
Przykład :
KlasyfikacjaABC("Kwota (zysk brutto)", 3, "60, 90")
Zaloguj się jako student
Zaloguj się jako uczeń, aby uzyskać dostęp do treści szkolnych
System kompozycji danych 1C 8.3 dla początkujących: liczenie wyników (zasobów)
Celem tej lekcji będzie:
- Napisz raport, który wyświetla listę produktów (katalog Żywności), ich zawartość kalorii i smak.
- Grupuj produkty według koloru.
- Zapoznaj się z funkcją podsumowania (zasoby) i polami obliczeniowymi.
Tworzenie nowego raportu
Podobnie jak w poprzednich lekcjach otwórz bazę danych ” Garmażeria" w konfiguratorze i utwórz nowy raport poprzez menu " Plik"->"Nowy...":
Rodzaj dokumentu - raport zewnętrzny:
W formularzu ustawień raportu wpisz nazwę „ Lekcja 3"i naciśnij przycisk" Otwórz diagram kompozycji danych":
Pozostaw domyślną nazwę schematu i kliknij „ Gotowy":
Dodawanie zapytania za pomocą konstruktora
Na karcie „ Zbiór danych"Kliknij Zielony znak plusa i wybierz „ Dodaj zbiór danych — zapytanie":
Zamiast ręcznie wpisywać tekst żądania, uruchom ponownie konstruktor zapytań:
Na karcie „ stoły„przeciągnij stół” Żywność” od pierwszej kolumny do drugiej:
Wybierz z tabeli Żywność" pola, o które poprosimy. W tym celu przeciągnij pola " Imię", "Smak", "Kolor" I " kalorie„od drugiej kolumny do trzeciej:
Wyszło tak:
Naciśnij przycisk " ok" - tekst żądania został wygenerowany automatycznie:
Tworzenie ustawień prezentacji raportu
Przejdź do zakładki Ustawienia"i kliknij magiczna różdżka, zadzwonić Konstruktor ustawień:
Wybierz typ raportu Lista..." i naciśnij przycisk " Dalej":
Przeciągnij i upuść z lewej kolumny do prawej pola, które będą wyświetlane na liście i kliknij „ Dalej":
Przeciągnij z lewej kolumny do prawego pola ” Kolor"- zgodnie z tym się stanie grupowanie wiersze w raporcie. Naciskać " ok":
A oto wynik konstruktora. Hierarchia naszego raportu:
- raport jako całość
- grupowanie „Kolor”
- szczegółowe zapisy - wiersze z nazwami żywności
Zapisz raport (przycisk dyskietka) I bez zamykania konfiguratora, natychmiast otworzymy go w trybie użytkownika. Wyszło tak:
Zmiana kolejności kolumn
Ale chodźmy zmień kolejność kolumny (strzałki w górę i w dół) tak, aby wyglądało to jak na poniższym obrazku:
Zapisz raport i otwórz go ponownie w trybie użytkownika:
Świetnie, znacznie lepiej.
Podsumowanie (suma) według zawartości kalorii
Byłoby miło wyświetlić całkowitą zawartość kalorii w żywności według grupy. Aby zobaczyć sumę zawartości kalorii we wszystkich produktach, powiedzmy, białych lub żółtych. Lub sprawdź całkowitą zawartość kalorii we wszystkich produktach spożywczych w bazie danych.
W tym celu istnieje mechanizm obliczania zasobów.
Przejdź do zakładki " Zasoby" i przeciągnij pole " kalorie"(podsumujemy to) od lewej kolumny do prawej.
Jednocześnie w polu wyrażenia wybierz z listy rozwijanej " Ilość (kalorie)”, ponieważ suma będzie sumą wszystkich elementów zawartych w sumie:
Zapisywanie i generowanie raportu:
Mamy wyniki dla każdej z grup i raportu jako całości.
Podsumowując (średnia) według zawartości kalorii
Teraz zróbmy to tak, aby wyświetlała się kolejna kolumna przeciętny zawartość kalorii w produktach według grup i ogólnie dla raportu.
Nie można dotknąć już istniejącej kolumny „Zawartość kalorii” - łączna suma jest już w niej wyświetlana, dlatego dodajmy kolejne pole, który będzie dokładną kopią pola „Kaloria”.
Do stworzenia takiego „wirtualnego” pola wykorzystujemy mechanizm pola obliczone.
Przejdź do zakładki Pola obliczeniowe„i naciśnij Zielony znak plus:
W kolumnie ” Ścieżka danych"wpisz nazwę nowego pola ( razem, bez przestrzeni). Niech się to nazywa Średnie kalorie", a w kolumnie " Wyrażenie" piszemy nazwę pola już istniejącego, na podstawie którego zostanie obliczone nowe pole. Tam piszemy " kalorie". Kolumna " nagłówek” zostanie wypełnione automatycznie.
Dodaliśmy nowe pole (" Średnie kalorie"), ale sam nie pojawi się w raporcie - musisz albo wywołać go ponownie Konstruktor ustawień("magiczna różdżka") lub dodaj to pole ręcznie.
Działajmy druga sposób. Aby to zrobić, przejdź do zakładki „ Ustawienia", wybierać " Raport" (w końcu chcemy dodać pole jako całość do raportu), wybierz zakładkę poniżej " Wybrane pola" i przeciągnij pole " Średnie kalorie” od lewej kolumny do prawej:
Wyszło tak:
Zapisywanie i generowanie raportu:
Pojawiło się pole i widzimy, że jego wartości są wartościami pola „Kaloria”. W porządku!
Aby to zrobić, ponownie używamy znanego nam mechanizmu. Surowce(zreasumowanie). Przejdź do zakładki Zasoby" i przeciągnij pole " Średnie kalorie” od lewej kolumny do prawej:
Jednocześnie w kolumnie Wyrażenie"wybierać" Średnia (średnia kalorie)":
Zapisywanie i generowanie raportu:
Widzimy, że dla grup, czyli dla każdego koloru i dla całego raportu, średnia wartość została obliczona całkiem poprawnie. Ale obecny dodatkowe wpisy dla poszczególnych produktów (nie dla grup), które chcesz usunąć z raportu.
Czy wiesz, dlaczego się pojawili (czyli nie w grupach)? Bo kiedy dodaliśmy pole " Średnie kalorie" w ustawieniach raportu, w drugim kroku wybraliśmy cały raport i to nowe pole trafiło w żywioł " Szczegółowe dokumentacja".
Naprawmy błąd. Aby to zrobić, wróć do zakładki „ Ustawienia", wybierać " Szczegółowe zapisy" najpierw od góry (krok 2), a potem " Szczegółowe zapisy"od dołu (krok 3), przejdź do zakładki" Wybrany pola" i zobacz w prawej kolumnie element " Automatyczny".
Element " Automatyczny" - to nie jest jedno pole. Jest to kilka pól, które automatycznie trafiają tutaj na podstawie wyższych ustawień.
Aby zobaczyć, co to za pola - kliknij element " Automatyczny" prawidłowy przycisk i wybierz " Zwiększać":
Element " Automatyczny” rozwinięty na następujące pola:
Oto nasze pole Średnie kalorie"który dostał się tutaj z akapitu" Raport"kiedy go tam przeciągnęliśmy. Po prostu startujemy zaznacz obok tego pola, aby usunąć jego dane wyjściowe.