Kamil Nešetřil

Správa a analýza dat o životním prostředí

Uživatelské nástroje

Nástroje pro tento web


Rozdíly

Zde můžete vidět rozdíly mezi vybranou verzí a aktuální verzí dané stránky.

Odkaz na výstup diff

Obě strany předchozí revizePředchozí verze
Následující verze
Předchozí verze
cs:cheatsheet [11.11.2022] – upraveno mimo DokuWiki 127.0.0.1cs:cheatsheet [20.04.2024] (aktuální) – [Dílčí tipy] Kamil Nešetřil
Řádek 2: Řádek 2:
 //Toto je návod pro práci s Pentaho Data Integration (<nowiki>PDI</nowiki>) – Kettle – zejména s vývojovým prostředím <nowiki>Spoon</nowiki>//. Nejprve si přečtěte [[tools#platforma_pentaho|Obecné informace o PDI a dalších komponentách platformy Pentaho]]. //Toto je návod pro práci s Pentaho Data Integration (<nowiki>PDI</nowiki>) – Kettle – zejména s vývojovým prostředím <nowiki>Spoon</nowiki>//. Nejprve si přečtěte [[tools#platforma_pentaho|Obecné informace o PDI a dalších komponentách platformy Pentaho]].
  
-> [[https://hop.apache.org/|{{ :hop_logo.svg?nolink&40|Apache Hop}}]]Od té doby, kdy byla firma Pentaho koupena korporací Hitachi, vývoj platformy Pentaho stagnuje a web platformy je zmatený. Původní autor PDI (Matt Casters) vytvořil [[https://hop.apache.org/|Apache Hop]], fork PDI, který má konečně elegantní architekturu a je intenzivně vyvíjen. Transformace PDI je možo do něj importovat.+> [[https://hop.apache.org/|{{ :hop_logo.svg?nolink&40|Apache Hop}}]]Od té doby, kdy byla firma Pentaho koupena korporací Hitachi, vývoj platformy Pentaho stagnuje a web platformy je zmatený. Původní autor PDI (Matt Casters) vytvořil [[hop>https://hop.apache.org/|Apache Hop]], fork PDI, který má konečně elegantní architekturu a je intenzivně vyvíjen. Transfor­mace PDI je možo do něj importovat. Nově funguje [[doc>https://hop.apache.org/blog/2022/12/hop-2.2.0/#_new_data_grid_toolbars_instead_of_right_click_menu|náhled dat na kliknutí]], stejně jako v PDI.
  
 {{ :spoon.png?nolink|}} {{ :spoon.png?nolink|}}
 ===== Jak začít ===== ===== Jak začít =====
-  - Nainstalujte si [[https://www.java.com/en/download/manual.jsp|Javu (64-bit)]]((Je třeba 64bit! Měl jsem 32bitový Firefox, který mi tedy stahoval 32bitvou Javu – ta mi nefungovala, protože spouštěcí skript PDI vyhradil více paměti, než 32bitová Java může alokovat. Pokud máte 32bitový operační systém, upravte alokovanou paměť ve spouštěcím skriptu.\\ Je možno využít i [[https://adoptopenjdk.net/?variant=openjdk11&jvmVariant=hotspot|open-source verzi]].\\ +  - Nainstalujte si [[javalang>https://www.java.com/en/download/manual.jsp|Javu (64-bit)]]((Je třeba 64bit! Měl jsem 32bitový Firefox, který mi tedy stahoval 32bitvou Javu – ta mi nefungovala, protože spouštěcí skript PDI vyhradil více paměti, než 32bitová Java může alokovat. Pokud máte 32bitový operační systém, upravte alokovanou paměť ve spouštěcím skriptu.\\ Je možno využít i [[foss>https://adoptopenjdk.net/?variant=openjdk11&jvmVariant=hotspot|open-source verzi]].\\ 
 Pokud nemůžete instalovat, použijte [[https://portableapps.com/apps/utilities/OpenJDK64|portable]] verzi.\\  Pokud nemůžete instalovat, použijte [[https://portableapps.com/apps/utilities/OpenJDK64|portable]] verzi.\\ 
 Při //aktualizaci// Javy je třeba ve Windows ručně aktualizovat cestu k Javě: „Upravit proměnné prostředí systému“ -> „Proměnné prostředí“ -> ''JAVA_HOME'')). Při //aktualizaci// Javy je třeba ve Windows ručně aktualizovat cestu k Javě: „Upravit proměnné prostředí systému“ -> „Proměnné prostředí“ -> ''JAVA_HOME'')).
-  - Stáhněte si [[https://sourceforge.net/projects/pentaho/files/Pentaho%208.3/client-tools/pdi-ce-8.3.0.0-371.zip/download|Pentaho Data Integration (Community Edition) 8.3]]. (Aktuální verze [[https://sourceforge.net/projects/pentaho/files/latest/download?aliId=137249511|9.2]] je totiž neodladěná.)+  - Stáhněte si [[download>https://www.hitachivantara.com/pentaho/pentaho-plus-platform/data-integration-analytics/pentaho-community-edition.html|Pentaho Data Integration (Community Edition)]].
   - Rozbalte archiv ZIP do libovolné složky.   - Rozbalte archiv ZIP do libovolné složky.
   - Spusťte ''<nowiki>Spoon</nowiki>.bat''((tento skript také nastaví prostředí spuštěním dávky ''set-pentaho-env.bat'' – netřeba spouštět samostatně. \\ Případné chyby: viz [[vid>https://www.youtube.com/watch?v=PH6mWe3YVCQ|video]]))   - Spusťte ''<nowiki>Spoon</nowiki>.bat''((tento skript také nastaví prostředí spuštěním dávky ''set-pentaho-env.bat'' – netřeba spouštět samostatně. \\ Případné chyby: viz [[vid>https://www.youtube.com/watch?v=PH6mWe3YVCQ|video]]))
Řádek 22: Řádek 22:
 ===== Některé často používané kroky v transformacích ===== ===== Některé často používané kroky v transformacích =====
 ^ Symbol                         ^ Název                                                                                                                                                 ^ Popis                                                                                                                                                                                                                                                                                                                                                                                                                              ^ ^ Symbol                         ^ Název                                                                                                                                                 ^ Popis                                                                                                                                                                                                                                                                                                                                                                                                                              ^
-| {{ :pdi07_textfileinput.png?40&nolink }} | [[https://help.hitachivantara.com/Documentation/Pentaho/9.1/Products/Text_File_Input|Text file input]]          | Čtení textových souborů. Používat i pro soubory CSV (nikoliv ''<nowiki>CSV</nowiki> file input'', který neumí zpracovat jednoduše celou složku). Pěkně umí fixed text. Pokud vyberu ''Number of header lines'', tak budu asi potřebovat definovat sloupce ručně, protože uvažuje jen první řádek a ostatní vynechává. Nebo raději pro vývoj upravit záhlaví na jednořádkové a pro produkci použít původní soubory. |+| {{ :pdi07_textfileinput.png?40&nolink }} | [[hitachi>https://help.hitachivantara.com/Documentation/Pentaho/9.4/Products/Text_File_Input|Text file input]]          | Čtení textových souborů. Používat i pro soubory CSV (nikoliv ''<nowiki>CSV</nowiki> file input'', který neumí zpracovat jednoduše celou složku). Pěkně umí fixed text. Pokud vyberu ''Number of header lines'', tak budu asi potřebovat definovat sloupce ručně, protože uvažuje jen první řádek a ostatní vynechává. Nebo raději pro vývoj upravit záhlaví na jednořádkové a pro produkci použít původní soubory. |
 |Jiné kroky umožňují načítat data z (a ukládat do) nejrůznějších databází, zdrojů (e-mail, lokální počítač, FTP, HTTP) a souborů (MS Excel, [[wpcs>Shapefile|ESRI SHP]], [[wpcs>JSON]], [[wpcs>YAML]], [[wpcs>RSS]], ZIP atd.) ||| |Jiné kroky umožňují načítat data z (a ukládat do) nejrůznějších databází, zdrojů (e-mail, lokální počítač, FTP, HTTP) a souborů (MS Excel, [[wpcs>Shapefile|ESRI SHP]], [[wpcs>JSON]], [[wpcs>YAML]], [[wpcs>RSS]], ZIP atd.) |||
-| {{ :pdi08_textfileoutput.png?40&nolink }} | [[https://help.hitachivantara.com/Documentation/Pentaho/9.1/Products/Text_File_Output|Text file output]]       | Vytvoření textových souborů. Může definovat obrovskou ''length'', díky které nahlásí chybu s pamětí – stačí smazat.                                                                                                                                                                                                                                                                                                            | +| {{ :pdi08_textfileoutput.png?40&nolink }} | [[hitachi>https://help.hitachivantara.com/Documentation/Pentaho/9.4/Products/Text_File_Output|Text file output]]       | Vytvoření textových souborů. Může definovat obrovskou ''length'', díky které nahlásí chybu s pamětí – stačí smazat.                                                                                                                                                                                                                                                                                                            | 
-| {{ :cheatsh17.png?40&nolink }}  | [[https://help.hitachivantara.com/Documentation/Pentaho/9.1/Products/Table_Output|Table output]]                         | Vkládání dat do SQL databáze. Obsahuje průvodce pro vytvoření připojení k databázi. Dále je třeba vybrat cílové schéma a tabulku v databázi. Dokáže také vrátit automaticky generované id záznamu.                                                                                                                                                        | +| {{ :cheatsh17.png?40&nolink }}  | [[hitachi>https://help.hitachivantara.com/Documentation/Pentaho/9.4/Products/Table_Output|Table output]]                         | Vkládání dat do SQL databáze. Obsahuje průvodce pro vytvoření připojení k databázi. Dále je třeba vybrat cílové schéma a tabulku v databázi. Dokáže také vrátit automaticky generované id záznamu.                                                                                                                                                        | 
-| {{ :pdi03_msexcelwriter.png?40&nolink }} | [[https://help.hitachivantara.com/Documentation/Pentaho/9.1/Products/Microsoft_Excel_Writer|Microsoft Excel Writer]]      | Ukládá data do dokumentu ve formátu Microsoft Excel.                                                                                                                                                                                                                                                                                                                                                                           | +| {{ :pdi03_msexcelwriter.png?40&nolink }} | [[hitachi>https://help.hitachivantara.com/Documentation/Pentaho/9.4/Products/Microsoft_Excel_Writer|Microsoft Excel Writer]]      | Ukládá data do dokumentu ve formátu Microsoft Excel.                                                                                                                                                                                                                                                                                                                                                                           | 
-| {{ :cheatsh05.png?40&nolink }}  | [[https://pentaho-community.atlassian.net/wiki/spaces/EAI/pages/371558145/Filter+Rows|Filter rows]]                                                                                         | Filtrování dat řádků pomocí vybraných podmínek. Datový tok je dále rozdělen na dvě větve podle splnění/nesplnění podmínky. Pokud se mají řádky rozdělit do více než dvou větví, použij [[https://help.hitachivantara.com/Documentation/Pentaho/9.1/Products/Switch-Case|Switch-Case]].                                                                                                                                                                       |+| {{ :cheatsh05.png?40&nolink }}  | [[https://pentaho-community.atlassian.net/wiki/spaces/EAI/pages/371558145/Filter+Rows|Filter rows]]                                                                                         | Filtrování dat řádků pomocí vybraných podmínek. Datový tok je dále rozdělen na dvě větve podle splnění/nesplnění podmínky. Pokud se mají řádky rozdělit do více než dvou větví, použij [[hitachi>https://help.hitachivantara.com/Documentation/Pentaho/9.4/Products/Switch-Case|Switch-Case]].                                                                                                                                                                       |
 | {{ :cheatsh06.png?40&nolink }}  | [[https://pentaho-community.atlassian.net/wiki/spaces/EAI/pages/376442115/Formula|Formula]]                                                                                                 | Možno použít pro jednoduché výpočty (např.: ''sloupec_1 * sloupec_2''), pro jednoduché logické podmínky či spojování řetězců. [[cheatsheet#formula|Mé příklady vzorců dole na této stránce]].                                                                                                                                                                                                               | | {{ :cheatsh06.png?40&nolink }}  | [[https://pentaho-community.atlassian.net/wiki/spaces/EAI/pages/376442115/Formula|Formula]]                                                                                                 | Možno použít pro jednoduché výpočty (např.: ''sloupec_1 * sloupec_2''), pro jednoduché logické podmínky či spojování řetězců. [[cheatsheet#formula|Mé příklady vzorců dole na této stránce]].                                                                                                                                                                                                               |
-| {{ :pdi06_calculator.png?40&nolink }} | [[https://help.hitachivantara.com/Documentation/Pentaho/9.1/Products/Calculator|Calculator]]                       | Vytvoření nového pole pomocí předdefinovaných vzorců. Je rychlejší než Formula (o řádek výše), ale méně obecný.                                                                                                                                                                                                                                                                                                                | +| {{ :pdi06_calculator.png?40&nolink }} | [[hitachi>https://help.hitachivantara.com/Documentation/Pentaho/9.4/Products/Calculator|Calculator]]                       | Vytvoření nového pole pomocí předdefino­vaných vzorců. Je rychlejší než Formula (o řádek výše), ale méně obecný.                                                                                                                                                                                                                                                                                                                | 
-| {{ :cheatsh09.png?40&nolink }}  | [[https://help.hitachivantara.com/Documentation/Pentaho/9.1/Products/Group_By|Group by]]                                 | Umožňuje počítat hodnoty pro skupiny dat. V nastavení se vyberou sloupce, které definují skupinu. Počítat se může například průměr, suma, minimum, maximum atd.                                                                                                                                                                                                                                              | +| {{ :cheatsh09.png?40&nolink }}  | [[hitachi>https://help.hitachivantara.com/Documentation/Pentaho/9.4/Products/Group_By|Group by]]                                 | Umožňuje počítat hodnoty pro skupiny dat. V nastavení se vyberou sloupce, které definují skupinu. Počítat se může například průměr, suma, minimum, maximum atd.                                                                                                                                                                                                                                              | 
-| {{ :cheatsh14.png?40&nolink }}  | [[https://help.hitachivantara.com/Documentation/Pentaho/9.1/Products/Select_Values|Select values]]                       | Vybírání, odstraňování a přejmenovávání sloupců. Umožňuje **měnit datový typ**, nastavovat délku textových řetězců, počty desetinných míst u reálných čísel a další formáty dat.                                                                                                                                                                                            | +| {{ :cheatsh14.png?40&nolink }}  | [[hitachi>https://help.hitachivantara.com/Documentation/Pentaho/9.4/Products/Select_Values|Select values]]                       | Vybírání, odstraňování a přejmenovávání sloupců. Umožňuje **měnit datový typ**, nastavovat délku textových řetězců, počty desetinných míst u reálných čísel a další formáty dat.                                                                                                                                                                                            | 
-| {{ :cheatsh15.png?40&nolink }}  | [[https://help.hitachivantara.com/Documentation/Pentaho/9.2/Products/Sort_rows|Sort rows]]                                                                                             | Seřadí data podle vybraného sloupce nebo několika sloupců. Podle nastavení řadí vzestupně nebo sestupně. Zaškrtnutím ''Only pass unique rows?'' nevyřadí duplicity na základě řadících kritérií. Klíč je něco jiného. **Proč? Teď mi to fungovalo!!!**                                                                                                                                                                         | +| {{ :cheatsh15.png?40&nolink }}  | [[hitachi>https://help.hitachivantara.com/Documentation/Pentaho/9.4/Products/Sort_rows|Sort rows]]                                                                                             | Seřadí data podle vybraného sloupce nebo několika sloupců. Podle nastavení řadí vzestupně nebo sestupně. Zaškrtnutím ''Only pass unique rows?'' nevyřadí duplicity na základě řadících kritérií. Klíč je něco jiného. **Proč? Teď mi to fungovalo!!!**                                                                                                                                                                         | 
-| {{ :cheatsh13.png?40&nolink }}  | [[https://help.hitachivantara.com/Documentation/Pentaho/9.2/Products/Replace_in_String|Replace in string]]                                                                             | Nahradí vybrané znaky/slova v textových řetězcích. Lze použít regulárních výrazů nebo přímo vyhledávací funkce, kterou tato komponenta obsahuje. Nahrazení hledané části je možné za jiný textový řetězec, nebo za hodnotu některého ze sloupců.                                                                                                                                                  | +| {{ :cheatsh13.png?40&nolink }}  | [[hitachi>https://help.hitachivantara.com/Documentation/Pentaho/9.4/Products/Replace_in_String|Replace in string]]                                                                             | Nahradí vybrané znaky/slova v textových řetězcích. Lze použít regulárních výrazů nebo přímo vyhledávací funkce, kterou tato komponenta obsahuje. Nahrazení hledané části je možné za jiný textový řetězec, nebo za hodnotu některého ze sloupců.                                                                                                                                                  | 
-| {{ :cheatsh16.png?40&nolink }}  | [[https://help.hitachivantara.com/Documentation/Pentaho/9.2/Products/Split_Fields|Split Fields]]                                                                                       | Rozdělí textový řetězec v jednom sloupci do více sloupců podle zvoleného oddělovacího znaku či textového řetězce.                                                                                                                                                                                                                                                                                                              |+| {{ :cheatsh16.png?40&nolink }}  | [[hitachi>https://help.hitachivantara.com/Documentation/Pentaho/9.4/Products/Split_Fields|Split Fields]]                                                                                       | Rozdělí textový řetězec v jednom sloupci do více sloupců podle zvoleného oddělova­cího znaku či textového řetězce.                                                                                                                                                                                                                                                                                                              |
 | {{ :pdi16_stremlookup.png?40&nolink }} | [[https://pentaho-community.atlassian.net/wiki/spaces/EAI/pages/371558139/Stream+Lookup|Stream lookup]]                                                                              | //Join//: propojení dvou streamů (tabulek – např. číselníku) aniž by bylo třeba mít záznamy seřazené.                                                                                                                                                                                                                                                                                                                                                                               | | {{ :pdi16_stremlookup.png?40&nolink }} | [[https://pentaho-community.atlassian.net/wiki/spaces/EAI/pages/371558139/Stream+Lookup|Stream lookup]]                                                                              | //Join//: propojení dvou streamů (tabulek – např. číselníku) aniž by bylo třeba mít záznamy seřazené.                                                                                                                                                                                                                                                                                                                                                                               |
-| {{ :pdi20_rownorm.png?40&nolink }} | [[https://help.hitachivantara.com/Documentation/Pentaho/9.1/Products/Row_Normaliser|Row Normaliser]]                  | ''Type field'' (název nového sloupce kategorií)\\ ''Fieldname'' (vstupní záhlaví)\\ ''Type'' (hodnoty výstupních kategorií)\\ ''New field'' (výstupní záhlaví hodnot) – //nefungovalo mi nastavit řádky různě //                                                                                                                                                                                                    | +| {{ :pdi20_rownorm.png?40&nolink }} | [[hitachi>https://help.hitachivantara.com/Documentation/Pentaho/9.4/Products/Row_Normaliser|Row Normaliser]]                  | ''Type field'' (název nového sloupce kategorií)\\ ''Fieldname'' (vstupní záhlaví)\\ ''Type'' (hodnoty výstupních kategorií)\\ ''New field'' (výstupní záhlaví hodnot) – //nefungovalo mi nastavit řádky různě //                                                                                                                                                                                                    | 
-| {{ :pdi21_rowdenorm.png?40&nolink }} | [[https://help.hitachivantara.com/Documentation/Pentaho/9.1/Products/Row_Denormaliser|Row denormaliser]]            | //Key// označuje vstupní kategorie.\\ ''The key field'' (název vstupního sloupce s kategoriemi),\\ ''Group field'' (co identifikuje celý budoucí řádek – např. //filename//),\\ ''Target fieldname'' = ''Key value'' (jednotlivé kategorie),\\ ''Value fieldname'' (název vstupního sloupce s hodnotami)\\ [[resources#microsoft_power_query|Více]]| +| {{ :pdi21_rowdenorm.png?40&nolink }} | [[hitachi>https://help.hitachivantara.com/Documentation/Pentaho/9.4/Products/Row_Denormaliser|Row denormaliser]]            | //Key// označuje vstupní kategorie.\\ ''The key field'' (název vstupního sloupce s kategoriemi),\\ ''Group field'' (co identifikuje celý budoucí řádek – např. //filename//),\\ ''Target fieldname'' = ''Key value'' (jednotlivé kategorie),\\ ''Value fieldname'' (název vstupního sloupce s hodnotami)\\ [[resources#microsoft_power_query|Více]]| 
-| {{ :pdi17_setvar.png?40&nolink }} | [[https://pentaho-community.atlassian.net/wiki/spaces/EAI/pages/371558231/Set+Variables|Set Variables]]                                                                                   | Nastav proměnnou. V ostatních transformacích je možno je volat jako proměnné i jako parametry. U parametrů je možno definovat implicitní hodnotu. Parametr může být definován např. pomocí proměnné, ale má i defaultní hodnotu, která se uplatní, pokud proměnná není naplněna. Dříve byla v PDI proměnná, později parametr.                                                                                                  | +| {{ :pdi17_setvar.png?40&nolink }} | [[https://pentaho-community.atlassian.net/wiki/spaces/EAI/pages/371558231/Set+Variables|Set Variables]]                                                                                   | Nastav proměnnou. V ostat­ních transformacích je možno je volat jako proměnné i jako parametry. U para­metrů je možno definovat implicitní hodnotu. Parametr může být definován např. pomocí proměnné, ale má i defaultní hodnotu, která se uplatní, pokud proměnná není naplněna. Dříve byla v PDI proměnná, později parametr.                                                                                                  | 
-| {{ :pdi18_etlmetadatainjec.png?40&nolink }} | [[https://help.hitachivantara.com/Documentation/Pentaho/9.1/Products/ETL_metadata_injection|ETL Metadata Injection]]    | Řízení transformací ze streamu. Pokud chci spustit s různými parametry, je třeba kombinovat s ''Transformation Executor'' (níže).\\ [[https://support.pentaho.com/hc/article_attachments/360003635351/PDI_Techniques_-_Design_Guidelines.pdf|Best practices]].\\ [[https://planet.mysql.com/entry/?id=27425|Matt Casters: Parse nasty XLS with dynamic ETL]] \\ Na konci [[http://kettle.bleuel.com/2016/04/14/pentaho-6-1-part-2/|článku]] je příklad včetně zdrojových souborů.\\ Alternativou je spustit transformaci v jobu a zaškrtnout //Execute every input row// – [[vid>https://www.youtube.com/watch?v=A8-oQHFi4VA|video]].| +| {{ :pdi18_etlmetadatainjec.png?40&nolink }} | [[hitachi>https://help.hitachivantara.com/Documentation/Pentaho/9.4/Products/ETL_metadata_injection|ETL Metadata Injection]]    | Řízení transformací ze streamu. Pokud chci spustit s různými parametry, je třeba kombinovat s ''Transformation Executor'' (níže).\\ [[https://support.pentaho.com/hc/article_attachments/360003635351/PDI_Techniques_-_Design_Guidelines.pdf|Best practices]].\\ [[https://planet.mysql.com/entry/?id=27425|Matt Casters: Parse nasty XLS with dynamic ETL]] \\ Na konci [[http://kettle.bleuel.com/2016/04/14/pentaho-6-1-part-2/|článku]] je příklad včetně zdrojových souborů.\\ Alternativou je spustit transformaci v jobu a zaškrtnout //Execute every input row// – [[vid>https://www.youtube.com/watch?v=A8-oQHFi4VA|video]].| 
-| {{ :pdi19_transformexe.png?40&nolink }} | [[https://help.hitachivantara.com/Documentation/Pentaho/9.1/Products/Transformation_Executor|Transformation Executor]]  | Spustí pro každý řádek novou transformaci. Předává proměnné, které se v odkazované transformaci volají ''${takto}''                                                                                                                                                                                                                                                                                                                                                        |+| {{ :pdi19_transformexe.png?40&nolink }} | [[hitachi>https://help.hitachivantara.com/Documentation/Pentaho/9.4/Products/Transformation_Executor|Transformation Executor]]  | Spustí pro každý řádek novou transformaci. Předává proměnné, které se v odkazované transformaci volají ''${takto}''                                                                                                                                                                                                                                                                                                                                                        |
 | {{ :cheatsh01.png?40&nolink }}  | [[https://pentaho-community.atlassian.net/wiki/spaces/EAI/pages/371558172/Add+Constants|Add Constants]]                                                                                     | Přidání jedné nebo více hodnot (konstant) do polí.                                                                                                                                                                                                                                                                                                                                                                             | | {{ :cheatsh01.png?40&nolink }}  | [[https://pentaho-community.atlassian.net/wiki/spaces/EAI/pages/371558172/Add+Constants|Add Constants]]                                                                                     | Přidání jedné nebo více hodnot (konstant) do polí.                                                                                                                                                                                                                                                                                                                                                                             |
 | {{ :cheatsh02.png?40&nolink }}  | [[https://pentaho-community.atlassian.net/wiki/spaces/EAI/pages/375133731/Analytic+Query|Analytic Query]]                                                                                   | Možnost zohlednit předchozí/nadcházející hodnoty. Data musí být seřazena. Slouží k přístupu k datům v jiných řádcích. Můžeme tak data z několika řádků převést do jednoho řádku s několika novými sloupci. Data je možné seskupit podle vybraných sloupců, aby se slučovala pouze data, která mají něco společného.                                                                                                         | | {{ :cheatsh02.png?40&nolink }}  | [[https://pentaho-community.atlassian.net/wiki/spaces/EAI/pages/375133731/Analytic+Query|Analytic Query]]                                                                                   | Možnost zohlednit předchozí/nadcházející hodnoty. Data musí být seřazena. Slouží k přístupu k datům v jiných řádcích. Můžeme tak data z několika řádků převést do jednoho řádku s několika novými sloupci. Data je možné seskupit podle vybraných sloupců, aby se slučovala pouze data, která mají něco společného.                                                                                                         |
 | {{ :cheatsh03.png?40&nolink }}  | [[https://pentaho-community.atlassian.net/wiki/spaces/EAI/pages/386803438/Concat+Fields|Concat Fields]]                                                                                     | Slučování více polí do jednoho.                                                                                                                                                                                                                                                                                                                                                                                                | | {{ :cheatsh03.png?40&nolink }}  | [[https://pentaho-community.atlassian.net/wiki/spaces/EAI/pages/386803438/Concat+Fields|Concat Fields]]                                                                                     | Slučování více polí do jednoho.                                                                                                                                                                                                                                                                                                                                                                                                |
-| {{ :cheatsh04.png?40&nolink }}  | [[https://pentaho-community.atlassian.net/wiki/spaces/EAI/pages/371558228/Copy+rows+to+result|Copy rows to result]]                                                                         | Zajišťuje převod dat do další transformace v rámci „jobu“. Pro vývoj netřeba spojovat jobem.                                                                                                                                                                                                                                                                                                                                   |+| {{ :cheatsh04.png?40&nolink }}  | [[https://pentaho-community.atlassian.net/wiki/spaces/EAI/pages/371558228/Copy+rows+to+result|Copy rows to result]]                                                                         | Zajišťuje převod dat do další transfor­mace v rámci „jobu“. Pro vývoj netřeba spojovat jobem.                                                                                                                                                                                                                                                                                                                                   |
 | {{ :cheatsh07.png?40&nolink }}  | [[https://pentaho-community.atlassian.net/wiki/spaces/EAI/pages/372081230/Get+Data+From+XML|Get data from XML]]                                                                             | Načítá data z XML souborů. Je možné přímo zvolit datové typy vstupních dat a jejich formát (např. u desetinných čísel). Obsahuje funkci pro automatické načtení sloupců podle tagů v XML souboru. Pokud požadovaná vstupní data nejsou textem mezi počátečním a ukončovacím tagem, ale například atributem tagu, je nutné přidat je ručně.                                                                                     | | {{ :cheatsh07.png?40&nolink }}  | [[https://pentaho-community.atlassian.net/wiki/spaces/EAI/pages/372081230/Get+Data+From+XML|Get data from XML]]                                                                             | Načítá data z XML souborů. Je možné přímo zvolit datové typy vstupních dat a jejich formát (např. u desetinných čísel). Obsahuje funkci pro automatické načtení sloupců podle tagů v XML souboru. Pokud požadovaná vstupní data nejsou textem mezi počátečním a ukončovacím tagem, ale například atributem tagu, je nutné přidat je ručně.                                                                                     |
-| {{ :cheatsh08.png?40&nolink }}  | [[https://help.hitachivantara.com/Documentation/Pentaho/9.1/Products/Get_rows_from_result|Get rows From result]]         | Zajišťuje načtení dat z transformace, na kterou je tato napojena v rámci „jobu“. Aby bylo možné data načíst, musí být předchozí transformace obsahovat komponentu „Copy rows to result“. V této komponentě se pak nastavují názvy sloupců a jejich datové typy. Pro vývoj netřeba spojovat jobem.                                                                                                                              |+| {{ :cheatsh08.png?40&nolink }}  | [[hitachi>https://help.hitachivantara.com/Documentation/Pentaho/9.4/Products/Get_rows_from_result|Get rows From result]]         | Zajišťuje načtení dat z transfor­mace, na kterou je tato napojena v rámci „jobu“. Aby bylo možné data načíst, musí být předchozí transfor­mace obsahovat komponentu „Copy rows to result“. V této komponentě se pak nastavují názvy sloupců a jejich datové typy. Pro vývoj netřeba spojovat jobem.                                                                                                                              |
 | {{ :cheatsh10.png?40&nolink }}  | [[https://pentaho-community.atlassian.net/wiki/spaces/EAI/pages/386793725/Mail+step|Mail]]                                                                                                       | Umožňuje posílat email na předem definované adresy. Je nutné nastavit SMTP server, kterým může být například Gmail a ověření. Text emailu musí být také předem definovaný. K emailu je možné přidat přílohu, jejíž adresa (v souborovém systému) se nastavuje přímo v této komponentě.                                                                                                                                        | | {{ :cheatsh10.png?40&nolink }}  | [[https://pentaho-community.atlassian.net/wiki/spaces/EAI/pages/386793725/Mail+step|Mail]]                                                                                                       | Umožňuje posílat email na předem definované adresy. Je nutné nastavit SMTP server, kterým může být například Gmail a ověření. Text emailu musí být také předem definovaný. K emailu je možné přidat přílohu, jejíž adresa (v souborovém systému) se nastavuje přímo v této komponentě.                                                                                                                                        |
-| {{ :cheatsh11.png?40&nolink }}  | [[https://help.hitachivantara.com/Documentation/Pentaho/9.1/Products/Modified_Java_Script_Value|Modified Java Script Value]]                                                           | Umožňuje vytvářet javascriptové výrazy. Ty mohou být použity například pro upravování textových řetězců (cesty k souborům ...). Ale má i spoustu dalších použití.                                                                                                                                                                                                                                                             |+| {{ :cheatsh11.png?40&nolink }}  | [[hitachi>https://help.hitachivantara.com/Documentation/Pentaho/9.4/Products/Modified_Java_Script_Value|Modified Java Script Value]]                                                           | Umožňuje vytvářet javascriptové výrazy. Ty mohou být použity například pro upravování textových řetězců (cesty k souborům ...). Ale má i spoustu dalších použití.                                                                                                                                                                                                                                                             |
 | {{ :pdi05_udefjavaexp.png?40&nolink }} | [[https://pentaho-community.atlassian.net/wiki/spaces/EAI/pages/376439964/User+Defined+Java+Expression|User Defined Java Expression]]                                                | Vlastní výraz napsaný v jazyce Java. [[java|Mé příklady]].                                                                                                                                                                                                                                                                                                                   | | {{ :pdi05_udefjavaexp.png?40&nolink }} | [[https://pentaho-community.atlassian.net/wiki/spaces/EAI/pages/376439964/User+Defined+Java+Expression|User Defined Java Expression]]                                                | Vlastní výraz napsaný v jazyce Java. [[java|Mé příklady]].                                                                                                                                                                                                                                                                                                                   |
-| {{ :cheatsh12.png?40&nolink }}  | [[https://help.hitachivantara.com/Documentation/Pentaho/9.1/Products/Pentaho_Reporting_Output|Pentaho Reporting Output]] | Umožňuje vytvářet reporty, podle předem definované šablony vytvořené v PRD. Cesta k šabloně a k souboru, který má být z této šablony vytvořen, musí být dopředu definována. V nastavení komponenty se vybírá formát výstupního reportu (např.: PDF, HTML atd.).                                                                                | +| {{ :cheatsh12.png?40&nolink }}  | [[hitachi>https://help.hitachivantara.com/Documentation/Pentaho/9.4/Products/Pentaho_Reporting_Output|Pentaho Reporting Output]] | Umožňuje vytvářet reporty, podle předem definované šablony vytvořené v PRD. Cesta k šabloně a k souboru, který má být z této šablony vytvořen, musí být dopředu defino­vána. V nastavení komponenty se vybírá formát výstupního reportu (např.: PDF, HTML atd.).                                                                                | 
-| {{ :cheatsh18.png?40&nolink }}  | [[https://help.hitachivantara.com/Documentation/Pentaho/9.1/Products/Unique_Rows|Unique rows]]                           | Odstraní duplicitní řádky. Nastavuje se sloupec, nebo sloupce, při jejichž shodné hodnotě u více řádků se zachová pouze první záznam. Před tímto krokem musí být data seřazena pomocí kroku ''Sort rows''                                                                                                                                                                                                                    | +| {{ :cheatsh18.png?40&nolink }}  | [[hitachi>https://help.hitachivantara.com/Documentation/Pentaho/9.4/Products/Unique_Rows|Unique rows]]                           | Odstraní duplicitní řádky. Nastavuje se sloupec, nebo sloupce, při jejichž shodné hodnotě u více řádků se zachová pouze první záznam. Před tímto krokem musí být data seřazena pomocí kroku ''Sort rows''                                                                                                                                                                                                                    | 
-| {{ :pdi01_msaccessinput.png?40&nolink }}  | [[https://wiki.pentaho.com/display/EAI/Access+Input|Microsoft Access Input]]                                                                   | Čte data ze souborů ve formátu Microsoft Access.                                                                                                                                                                                                                                                                                                                                                                               |+| {{ :pdi01_msaccessinput.png?40&nolink }}  | [[https://pentaho-community.atlassian.net/wiki/spaces/EAI/pages/371558259/Access+Input|Microsoft Access Input]]                                                                   | Čte data ze souborů ve formátu Microsoft Access.                                                                                                                                                                                                                                                                                                                                                                               |
 | {{ :pdi02_msaccessoutput.png?40&nolink }} | [[https://pentaho-community.atlassian.net/wiki/spaces/EAI/pages/371558136/Access+Output|Microsoft Access Output]]                                                                 | Ukládá data do tabulky databáze Microsoft Access.                                                                                                                                                                                                                                                                                                                                                                              | | {{ :pdi02_msaccessoutput.png?40&nolink }} | [[https://pentaho-community.atlassian.net/wiki/spaces/EAI/pages/371558136/Access+Output|Microsoft Access Output]]                                                                 | Ukládá data do tabulky databáze Microsoft Access.                                                                                                                                                                                                                                                                                                                                                                              |
 | {{ :pdi04_mergejoin.png?40&nolink }} | [[https://pentaho-community.atlassian.net/wiki/spaces/EAI/pages/371558201/Merge+Join|Merge Join]]                                                                                      | Spojí řádky dvou načítaných vstupů pomocí vybraného klíče do jednoho výstupu. Vstupy musí být před spojením seřazeny podle vybraného klíče.                                                                                                                                                                                                                                                                                    | | {{ :pdi04_mergejoin.png?40&nolink }} | [[https://pentaho-community.atlassian.net/wiki/spaces/EAI/pages/371558201/Merge+Join|Merge Join]]                                                                                      | Spojí řádky dvou načítaných vstupů pomocí vybraného klíče do jednoho výstupu. Vstupy musí být před spojením seřazeny podle vybraného klíče.                                                                                                                                                                                                                                                                                    |
-| {{ :pdi09_rowflattener.png?40&nolink }} | [[https://help.hitachivantara.com/Documentation/Pentaho/9.1/Products/Row_Flattener|Row flattener]]               | Převod sloupce na řádek                                                                                                                                                                                                                                                                                                                                                   | +| {{ :pdi09_rowflattener.png?40&nolink }} | [[hitachi>https://help.hitachivantara.com/Documentation/Pentaho/9.4/Products/Row_Flattener|Row flattener]]               | Převod sloupce na řádek                                                                                                                                                                                                                                                                                                                                                   | 
-| {{ :pdi10_addsequence.png?40&nolink }} | [[https://help.hitachivantara.com/Documentation/Pentaho/9.1/Products/Add_sequence|Add sequence]]                                                                                | Inkrementace hodnot (indexace řádků apod.)                                                                                                                                                                                                                                                                                                                                                                                     |+| {{ :pdi10_addsequence.png?40&nolink }} | [[hitachi>https://help.hitachivantara.com/Documentation/Pentaho/9.4/Products/Add_sequence|Add sequence]]                                                                                | Inkrementace hodnot (indexace řádků apod.)                                                                                                                                                                                                                                                                                                                                                                                     |
 | {{ :pdi11_xbaseinput.png?40&nolink }} | [[https://pentaho-community.atlassian.net/wiki/spaces/EAI/pages/371558120/XBase+Input|XBase input]]                                                                                   | Čte soubory databázového typu dbf                                                                                                                                                                                                                                                                                                                                                                                              | | {{ :pdi11_xbaseinput.png?40&nolink }} | [[https://pentaho-community.atlassian.net/wiki/spaces/EAI/pages/371558120/XBase+Input|XBase input]]                                                                                   | Čte soubory databázového typu dbf                                                                                                                                                                                                                                                                                                                                                                                              |
 | {{ :pdi12_getfilenames.png?40&nolink }} | [[https://pentaho-community.atlassian.net/wiki/spaces/EAI/pages/371558124/Get+File+Names|Get file names]]                                                                           | Získá cestu/jméno ke všem souborům ve vybrané složce                                                                                                                                                                                                                                                                                                                                                                           | | {{ :pdi12_getfilenames.png?40&nolink }} | [[https://pentaho-community.atlassian.net/wiki/spaces/EAI/pages/371558124/Get+File+Names|Get file names]]                                                                           | Získá cestu/jméno ke všem souborům ve vybrané složce                                                                                                                                                                                                                                                                                                                                                                           |
-| {{ :pdi15_regexeval.png?40&nolink }}  | [[https://help.hitachivantara.com/Documentation/Pentaho/9.1/Products/Regex_Evaluation|Regex evaluation]]           | Vlastní regulární výraz. Mé příklady dole na této stránce: [[cheatsheet#regularni_vyrazy|Regulární výrazy]].                                                                                                                                                                                                                                                                                        |+| {{ :pdi15_regexeval.png?40&nolink }}  | [[hitachi>https://help.hitachivantara.com/Documentation/Pentaho/9.4/Products/Regex_Evaluation|Regex evaluation]]           | Vlastní regulární výraz. Mé příklady dole na této stránce: [[cheatsheet#regularni_vyrazy|Regulární výrazy]].                                                                                                                                                                                                                                                                                        |
 | {{ :pdi22_blockuntil.png?40&nolink }} | [[https://pentaho-community.atlassian.net/wiki/spaces/EAI/pages/386799999/Block+this+step+until+steps+finish|Block this step until steps finish]]                                          |                                                                                                                                                                 | | {{ :pdi22_blockuntil.png?40&nolink }} | [[https://pentaho-community.atlassian.net/wiki/spaces/EAI/pages/386799999/Block+this+step+until+steps+finish|Block this step until steps finish]]                                          |                                                                                                                                                                 |
 | | [[https://pentaho-community.atlassian.net/wiki/spaces/EAI/pages/371558152/Dummy+do+nothing|Dummy (do nothing)]] | Spojování větví; zobrazení výsledků (např. ''Filter rows''                                                                | | | [[https://pentaho-community.atlassian.net/wiki/spaces/EAI/pages/371558152/Dummy+do+nothing|Dummy (do nothing)]] | Spojování větví; zobrazení výsledků (např. ''Filter rows''                                                                |
Řádek 69: Řádek 69:
     * Využívá [[wp>Apache Tika]], který podporuje [[https://tika.apache.org/1.22/formats.html|různé formáty]] –  pouze metadata k: DWG, GDAL, HDF, NetCDF, Matlab a nějakým geografickým formátům.     * Využívá [[wp>Apache Tika]], který podporuje [[https://tika.apache.org/1.22/formats.html|různé formáty]] –  pouze metadata k: DWG, GDAL, HDF, NetCDF, Matlab a nějakým geografickým formátům.
     * Pro PDF používá [[https://pdfbox.apache.org|Apache PDFBox]], který umí vyplňovat formuláře, dělit a slučovat soubory PDF atd.     * Pro PDF používá [[https://pdfbox.apache.org|Apache PDFBox]], který umí vyplňovat formuláře, dělit a slučovat soubory PDF atd.
-  * [[https://www.hitachivantara.com/en-us/pdfd/datasheet/pentaho-machine-learning-orchestration-datasheet.pdf|Machine Intelligence]] využívá volitelně různé enginy: R, Python, Weka či elegantně v Javě s využitím GPU Nvidia [[https://deeplearning4j.konduit.ai/|Deeplearning4j]].+  * [[git>pentaho-labs/pentaho-machine-intelligence|Machine Intelligence]] využívá volitelně různé enginy: R, Python, Weka či elegantně v Javě s využitím GPU Nvidia [[https://deeplearning4j.konduit.ai/|Deeplearning4j]].
   * [[git>pentaho-labs/pmi-visualization|PMI Visualization]] Plugin – vizualizace v PDI {{:pmi_visu_plugin.jfif?nolink|PMI Visualization – 3D Exploration and Scatter Plot Matrix}}   * [[git>pentaho-labs/pmi-visualization|PMI Visualization]] Plugin – vizualizace v PDI {{:pmi_visu_plugin.jfif?nolink|PMI Visualization – 3D Exploration and Scatter Plot Matrix}}
  
Řádek 75: Řádek 75:
 ^ Symbol ^ Název ^ Popis ^ ^ Symbol ^ Název ^ Popis ^
 | {{ :cheatsheet_job_02.png?40&nolink }}  | [[https://pentaho-community.atlassian.net/wiki/spaces/EAI/pages/370967988/Start|START]] | Možnosti spouštění jobu. | | {{ :cheatsheet_job_02.png?40&nolink }}  | [[https://pentaho-community.atlassian.net/wiki/spaces/EAI/pages/370967988/Start|START]] | Možnosti spouštění jobu. |
-| {{ :cheatsheet_job_03.png?40&nolink }}  | [[https://help.hitachivantara.com/Documentation/Pentaho/9.1/Products/Transformation_(job_entry)|Transformation]] | Spuštění transformace |+| {{ :cheatsheet_job_03.png?40&nolink }}  | [[hitachi>https://help.hitachivantara.com/Documentation/Pentaho/9.4/Products/Transformation_(job_entry)|Transformation]] | Spuštění transfor­mace |
 | {{ :cheatsheet_job_04.png?40&nolink }}  | [[https://pentaho-community.atlassian.net/wiki/spaces/EAI/pages/372703425/Success|Success]] | Možné ukončení jobu. Ignoruje chyby a vynutí úspěšné ukončení jobu. | | {{ :cheatsheet_job_04.png?40&nolink }}  | [[https://pentaho-community.atlassian.net/wiki/spaces/EAI/pages/372703425/Success|Success]] | Možné ukončení jobu. Ignoruje chyby a vynutí úspěšné ukončení jobu. |
 | {{ :cheatsheet_job_01.png?40&nolink }}  | [[https://pentaho-community.atlassian.net/wiki/spaces/EAI/pages/371558464/Get+a+file+with+FTP|Get a file with FTP]] |  | | {{ :cheatsheet_job_01.png?40&nolink }}  | [[https://pentaho-community.atlassian.net/wiki/spaces/EAI/pages/371558464/Get+a+file+with+FTP|Get a file with FTP]] |  |
Řádek 82: Řádek 82:
 | {{ :cheatsheet_job_07.png?40&nolink }}  | [[https://pentaho-community.atlassian.net/wiki/spaces/EAI/pages/372081674/Truncate+tables|Truncate tables]] |  | | {{ :cheatsheet_job_07.png?40&nolink }}  | [[https://pentaho-community.atlassian.net/wiki/spaces/EAI/pages/372081674/Truncate+tables|Truncate tables]] |  |
  
-Oficiální zdroj uvádí všechny kroky [[https://help.hitachivantara.com/Documentation/Pentaho/9.1/Products/Transformation_step_reference|transformací]] a entries [[https://help.hitachivantara.com/Documentation/Pentaho/9.1/Products/Job_entry_reference|jobů]].+Oficiální zdroj uvádí všechny kroky [[hitachi>https://help.hitachivantara.com/Documentation/Pentaho/9.4/Products/Transformation_step_reference|transformací]] a entries [[hitachi>https://help.hitachivantara.com/Documentation/Pentaho/9.4/Products/Job_entry_reference|jobů]].\\ 
 +Tomu v Apache Hop odpovídají [[doc>https://hop.apache.org/manual/latest/pipeline/transforms.html|transforms]] a [[doc>https://hop.apache.org/manual/latest/workflow/actions.html|actions]].
  
 =====Regulární výrazy===== =====Regulární výrazy=====
Řádek 122: Řádek 123:
  
 =====Formula===== =====Formula=====
-[[https://pentaho-community.atlassian.net/wiki/spaces/EAI/pages/376442115/Formula|Dokumentace]]\\+[[pentaho>https://pentaho-community.atlassian.net/wiki/spaces/EAI/pages/376442115/Formula|Dokumentace]], [[doc>https://hop.apache.org/manual/latest/pipeline/transforms/formula.html|Dokumentace Hop]]\\
 Názvy sloupců se zadávají v hranatých závorkách. Názvy sloupců se zadávají v hranatých závorkách.
  
Řádek 134: Řádek 135:
   * Nenechat prázdné řádky ve vstupním dialogu (smaž)   * Nenechat prázdné řádky ve vstupním dialogu (smaž)
   * Chyby odvádět do samostatných větví. První krok v transformaci však nemůže někam poslat chybové řádky, protože řádky ještě nejsou v PDI.   * Chyby odvádět do samostatných větví. První krok v transformaci však nemůže někam poslat chybové řádky, protože řádky ještě nejsou v PDI.
-  * Využívat krok [[https://help.hitachivantara.com/Documentation/Pentaho/9.1/Products/ETL_metadata_injection|ETL metadata injection]] (viz výše)+  * Využívat krok [[hitachi>https://help.hitachivantara.com/Documentation/Pentaho/9.4/Products/ETL_metadata_injection|ETL metadata injection]] (viz výše)
   * Využívat proměnné a parametry (viz výše)   * Využívat proměnné a parametry (viz výše)
   * Relativní cesty (''${Internal.Entry.Current.Directory}'')   * Relativní cesty (''${Internal.Entry.Current.Directory}'')
Řádek 144: Řádek 145:
      * <key>ctrl+🠕</key> = zarovná podle horní hrany; posune řádek nahoru      * <key>ctrl+🠕</key> = zarovná podle horní hrany; posune řádek nahoru
      * zmáčknutím mezerníku na stepu se ukážou atributy, dvojklik prostředním tlačítkem -> description      * zmáčknutím mezerníku na stepu se ukážou atributy, dvojklik prostředním tlačítkem -> description
-     * označit krok, na který chci navázat + dvojklik na nový krok v nabídce vlevo -> nový krok se přidá do transformace a vytvoří se skok (spojující šipka).+     * označit krok, na který chci navázat + dvojklik na nový krok v nabídce vlevo -> nový krok se přidá do transfor­mace a vytvoří se skok (spojující šipka).
      * málo užitečný [[https://pentaho-community.atlassian.net/wiki/spaces/EAI/pages/370967107/.12+Graphical+View#id-.12GraphicalView-KeyboardShortcuts|oficiální zdroj]]      * málo užitečný [[https://pentaho-community.atlassian.net/wiki/spaces/EAI/pages/370967107/.12+Graphical+View#id-.12GraphicalView-KeyboardShortcuts|oficiální zdroj]]
   * Dobrá praxe   * Dobrá praxe
Řádek 166: Řádek 167:
       * If you look inside the PDI main directory you'll see a sub-directory called ''simple-jndi'', which contains a file named ''jdbc.properties''. You should change this file so the JNDI information matches the one you use in your application server.       * If you look inside the PDI main directory you'll see a sub-directory called ''simple-jndi'', which contains a file named ''jdbc.properties''. You should change this file so the JNDI information matches the one you use in your application server.
  
-<html><center><iframe width="560" height="315" src="https://www.youtube.com/embed/A4wZJqovMP8" frameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe></center></html> +{{ youtube>A4wZJqovMP8 }}
- +
 ===== Literatura ===== ===== Literatura =====
 ROLDÁN, María Carina, 2017. //Learning Pentaho Data Integration 8 CE : Third Edition//. [[https://www.packtpub.com/product/learning-pentaho-data-integration-8-ce-third-edition/9781788292436|Packt Publishing]]. ISBN 978‑1‑78829‑007‑4. ROLDÁN, María Carina, 2017. //Learning Pentaho Data Integration 8 CE : Third Edition//. [[https://www.packtpub.com/product/learning-pentaho-data-integration-8-ce-third-edition/9781788292436|Packt Publishing]]. ISBN 978‑1‑78829‑007‑4.
Poslední úprava: 20.04.2024