{"id":29969,"date":"2025-05-13T15:59:28","date_gmt":"2025-05-13T13:59:28","guid":{"rendered":"https:\/\/pomoc.comarch.pl\/cee\/640\/?post_type=ht_kb&#038;p=29969"},"modified":"2025-05-30T11:06:10","modified_gmt":"2025-05-30T09:06:10","slug":"jezyk-skryptowy-systemu-funkcje-podstawowe","status":"publish","type":"ht_kb","link":"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/","title":{"rendered":"J\u0119zyk skryptowy systemu: Funkcje podstawowe"},"content":{"rendered":"<div id=\"ez-toc-container\" class=\"ez-toc-v2_0_82_2 ez-toc-wrap-left counter-hierarchy ez-toc-counter ez-toc-custom ez-toc-container-direction\">\n<div class=\"ez-toc-title-container\">\n<p class=\"ez-toc-title\" style=\"cursor:inherit\">Spis tre\u015bci<\/p>\n<span class=\"ez-toc-title-toggle\"><a href=\"#\" class=\"ez-toc-pull-right ez-toc-btn ez-toc-btn-xs ez-toc-btn-default ez-toc-toggle\" aria-label=\"Prze\u0142\u0105cznik Spisu Tre\u015bci\"><span class=\"ez-toc-js-icon-con\"><span class=\"\"><span class=\"eztoc-hide\" style=\"display:none;\">Toggle<\/span><span class=\"ez-toc-icon-toggle-span\"><svg style=\"fill: #999;color:#999\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" class=\"list-377408\" width=\"20px\" height=\"20px\" viewBox=\"0 0 24 24\" fill=\"none\"><path d=\"M6 6H4v2h2V6zm14 0H8v2h12V6zM4 11h2v2H4v-2zm16 0H8v2h12v-2zM4 16h2v2H4v-2zm16 0H8v2h12v-2z\" fill=\"currentColor\"><\/path><\/svg><svg style=\"fill: #999;color:#999\" class=\"arrow-unsorted-368013\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"10px\" height=\"10px\" viewBox=\"0 0 24 24\" version=\"1.2\" baseProfile=\"tiny\"><path d=\"M18.2 9.3l-6.2-6.3-6.2 6.3c-.2.2-.3.4-.3.7s.1.5.3.7c.2.2.4.3.7.3h11c.3 0 .5-.1.7-.3.2-.2.3-.5.3-.7s-.1-.5-.3-.7zM5.8 14.7l6.2 6.3 6.2-6.3c.2-.2.3-.5.3-.7s-.1-.5-.3-.7c-.2-.2-.4-.3-.7-.3h-11c-.3 0-.5.1-.7.3-.2.2-.3.5-.3.7s.1.5.3.7z\"\/><\/svg><\/span><\/span><\/span><\/a><\/span><\/div>\n<nav><ul class='ez-toc-list ez-toc-list-level-1 ' ><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-1\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#Grupa_docelowa\" >Grupa docelowa<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-2\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#Definicje_terminow\" >Definicje termin\u00f3w<\/a><ul class='ez-toc-list-level-4' ><li class='ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-3\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#GUID\" >GUID<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-4\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#Systemowy_jezyk_skryptowy\" >Systemowy j\u0119zyk skryptowy<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-5\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#Funkcje_ogolne\" >Funkcje og\u00f3lne<\/a><ul class='ez-toc-list-level-4' ><li class='ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-6\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#Funkcje_arytmetyczne_Arithmetic_functions\" >Funkcje arytmetyczne (Arithmetic functions)<\/a><ul class='ez-toc-list-level-5' ><li class='ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-7\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#abs\" >abs<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-8\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#ceil\" >ceil<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-9\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#floor\" >floor<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-10\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#max\" >max<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-11\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#min\" >min<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-12\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#neg\" >neg<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-13\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#round\" >round<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-14\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#Funkcje_logiczne_Logic_functions\" >Funkcje logiczne (Logic functions)<\/a><ul class='ez-toc-list-level-5' ><li class='ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-15\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#not\" >not<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-16\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#Funkcje_dla_ciagow_znakow_String_functions\" >Funkcje dla ci\u0105g\u00f3w znak\u00f3w (String functions)<\/a><ul class='ez-toc-list-level-5' ><li class='ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-17\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#char\" >char<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-18\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#charAt\" >charAt<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-19\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#decrypt\" >decrypt\u00a0<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-20\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#encrypt\" >encrypt<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-21\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#endsWith\" >endsWith<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-22\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#format\" >format<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-23\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#indexOf\" >indexOf<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-24\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#lastIndexOf\" >lastIndexOf<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-25\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#lenght\" >lenght<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-26\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#startsWith\" >startsWith<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-27\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#substring\" >substring<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-28\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#toHTML\" >toHTML<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-29\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#toLower\" >toLower<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-30\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#toUpper\" >toUpper<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-31\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#trim\" >trim<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-32\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#unzipText\" >unzipText<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-33\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#Funkcje_daty_i_godziny_Date_and_time_functions\" >Funkcje daty i godziny (Date and time functions)<\/a><ul class='ez-toc-list-level-5' ><li class='ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-34\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#addDays\" >addDays<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-35\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#addHours\" >addHours<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-36\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#addMilliseconds\" >addMilliseconds<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-37\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#addMinutes\" >addMinutes<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-38\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#addSeconds\" >addSeconds<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-39\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#createCisDate\" >createCisDate<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-40\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#createTimestamp\" >createTimestamp<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-41\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#day\" >day<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-42\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#days\" >days<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-43\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#dateString\" >dateString<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-44\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#endOfDay\" >endOfDay<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-45\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#hour\" >hour<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-46\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#hours\" >hours<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-47\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#isMaxDate\" >isMaxDate<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-48\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#isMinDate\" >isMinDate<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-49\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#isUndefinedDate\" >isUndefinedDate<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-50\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#millisecond\" >millisecond<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-51\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#milliseconds\" >milliseconds<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-52\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#minute\" >minute<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-53\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#minutes\" >minutes<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-54\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#month\" >month<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-55\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#months\" >months<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-56\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#now\" >now<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-57\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#second\" >second<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-58\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#seconds\" >seconds<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-59\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#startOfDay\" >startOfDay<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-60\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#timeString\" >timeString<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-61\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#timeZoneId\" >timeZoneId<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-62\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#timeZoneString\" >timeZoneString<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-63\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#today\" >today<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-64\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#toTimestamp\" >toTimestamp<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-65\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#weeks\" >weeks<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-66\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#year\" >year<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-67\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#years\" >years<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-68\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#Funkcje_dla_list_List_functions\" >Funkcje dla list (List functions)<\/a><ul class='ez-toc-list-level-5' ><li class='ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-69\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#add\" >add<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-70\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#addAll\" >addAll<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-71\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#contains\" >contains<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-72\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#intersection\" >intersection<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-73\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#isEmpty\" >isEmpty<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-74\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#list\" >list<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-75\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#minus\" >minus<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-76\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#size\" >size<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-77\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#toCharList\" >toCharList<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-78\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#union\" >union<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-79\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#Funkcje_GUID_GUID_functions\" >Funkcje GUID (GUID functions)<\/a><ul class='ez-toc-list-level-5' ><li class='ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-80\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#guidToString\" >guidToString<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-81\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#newGuid\" >newGuid<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-82\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#Funkcje_dla_zestawow_wartosci_ValueSet_functions\" >Funkcje dla zestaw\u00f3w warto\u015bci (ValueSet functions)<\/a><ul class='ez-toc-list-level-5' ><li class='ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-83\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#valueSet\" >valueSet<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-84\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#valueSetDescription\" >valueSetDescription<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-85\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#valueSetName\" >valueSetName<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-86\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#Funkcje_dla_obiektow_biznesowych_Business_object_functions\" >Funkcje dla obiekt\u00f3w biznesowych (Business object functions)<\/a><ul class='ez-toc-list-level-5' ><li class='ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-87\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#getAttribute\" >getAttribute<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-88\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#getByBusinessKey\" >getByBusinessKey<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-89\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#getByPrimaryKey\" >getByPrimaryKey<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-90\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#getCisObjectList\" >getCisObjectList<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-91\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#getURL\" >getURL<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-92\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#Funkcje_dla_instrukcji_OQL_Result_list_functions\" >Funkcje dla instrukcji OQL (Result list functions)<\/a><ul class='ez-toc-list-level-5' ><li class='ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-93\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#getResultList\" >getResultList<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-94\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#Funkcje_NLS_NLS_functions\" >Funkcje NLS (NLS functions)<\/a><ul class='ez-toc-list-level-5' ><li class='ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-95\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#getNLSContentLanguage\" >getNLSContentLanguage<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-96\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#getNLSDisplayLanguage\" >getNLSDisplayLanguage<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-97\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#setNLSContentLanguage\" >setNLSContentLanguage<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-98\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#setNLSDisplayLanguage\" >setNLSDisplayLanguage<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-99\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#setNLSLanguage\" >setNLSLanguage<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-100\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#Funkcje_dla_plikow\" >Funkcje dla plik\u00f3w<\/a><ul class='ez-toc-list-level-5' ><li class='ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-101\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#readFile\" >readFile<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-102\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#readTextFile\" >readTextFile<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-103\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#writeFile\" >writeFile<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-104\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#Funkcje_dla_uzytkownikow_User_functions\" >Funkcje dla u\u017cytkownik\u00f3w (User functions)<\/a><ul class='ez-toc-list-level-5' ><li class='ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-105\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#resolveRole\" >resolveRole<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-106\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#userAbsent\" >userAbsent<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-107\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#userFullName\" >userFullName<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-108\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#userGuid\" >userGuid<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-109\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#userMailAddress\" >userMailAddress<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-110\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#userName\" >userName<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-111\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#Polecenia_wyzwalania_zdarzen_Workflow_events_functions\" >Polecenia wyzwalania zdarze\u0144 (Workflow events functions)<\/a><ul class='ez-toc-list-level-5' ><li class='ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-112\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#fireEvent\" >fireEvent<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-113\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#fireRepositoryEvent\" >fireRepositoryEvent<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-114\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#Funkcje_systemowe_i_konfiguracyjne_System_and_Configuration_functions\" >Funkcje systemowe i konfiguracyjne (System and Configuration functions)<\/a><ul class='ez-toc-list-level-5' ><li class='ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-115\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#databaseName\" >databaseName<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-116\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#memoryLevel\" >memoryLevel<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-117\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#objectName\" >objectName<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-118\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#serverLinkTarget\" >serverLinkTarget<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-119\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#serverName\" >serverName<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-120\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#systemName\" >systemName<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-121\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#versionString\" >versionString<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-122\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#Funkcje_wiadomosci_Message_functions\" >Funkcje wiadomo\u015bci (Message functions)<\/a><ul class='ez-toc-list-level-5' ><li class='ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-123\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#popProgramMessagePath\" >popProgramMessagePath<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-124\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#pushProgramMessagePath\" >pushProgramMessagePath<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-125\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#sendMessage\" >sendMessage<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-126\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#setProgramMessageGroup\" >setProgramMessageGroup<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-127\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#setProgramMessageId\" >setProgramMessageId<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-128\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#Funkcje_dla_wartosci_zerowych_Null_functions\" >Funkcje dla warto\u015bci zerowych (Null functions)<\/a><ul class='ez-toc-list-level-5' ><li class='ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-129\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#first\" >first<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-130\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#isNull\" >isNull<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-131\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#Inne_funkcje_Miscellaneous_functions\" >Inne funkcje (Miscellaneous functions)<\/a><ul class='ez-toc-list-level-5' ><li class='ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-132\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#call\" >call<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-133\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#cast\" >cast<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-134\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#echo\" >echo<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-135\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#hashMap\" >hashMap<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-136\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#import\" >import<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-137\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#if\" >if<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-138\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#load\" >load<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-139\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#sendMail\" >sendMail<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-140\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-podstawowe\/#new\" >new<\/a><\/li><\/ul><\/li><\/ul><\/li><\/ul><\/nav><\/div>\n<p><span style=\"color: #000000;\">J\u0119zyk skryptowy systemu jest u\u017cywany w Workflow Management, na przyk\u0142ad do formu\u0142owania warunku wst\u0119pnego lub warunku przej\u015bcia lub do okre\u015blania operator\u00f3w, kt\u00f3rzy nie s\u0105 podsumowani w roli workflow.<\/span><\/p>\n<p><span style=\"color: #000000;\">Silnik workflow obs\u0142uguje zar\u00f3wno w\u0142asny j\u0119zyk skryptowy systemu, jak i JavaScript do wyra\u017cania z\u0142o\u017conych relacji. Niniejsza dokumentacja zawiera szczeg\u00f3\u0142owe informacje na temat poszczeg\u00f3lnych funkcji og\u00f3lnych j\u0119zyka skryptowego systemu. Funkcje og\u00f3lne to funkcje, kt\u00f3rych kontekst u\u017cycia nie wymaga ani definicji dzia\u0142ania, ani bazy danych OLTP. Przyk\u0142adami funkcji og\u00f3lnych s\u0105 <em>createCisDate<\/em> i <em>createTimestamp<\/em>, kt\u00f3re tworz\u0105 <em>CisDate<\/em> lub czas, a tak\u017ce <em>getByPrimaryKey<\/em> i <em>getByBusinessKey<\/em>, kt\u00f3re otwieraj\u0105 obiekt biznesowy przy u\u017cyciu jego klucza podstawowego lub klucza biznesowego.<\/span><\/p>\n<p><span style=\"color: #000000;\">Przyk\u0142ady zawarte w tym dokumencie maj\u0105 pom\u00f3c w zrozumieniu sposobu korzystania z funkcji i polece\u0144 j\u0119zyka skryptowego systemu. Aby u\u017cy\u0107 przyk\u0142ad\u00f3w w innych kontekstach aplikacji, mo\u017ce by\u0107 konieczne ich dostosowanie. Niniejszy dokument zawiera r\u00f3wnie\u017c przyk\u0142ady funkcji, kt\u00f3re nie s\u0105 cz\u0119\u015bci\u0105 j\u0119zyka skryptowego systemu. W takim przypadku przyk\u0142ady wskazuj\u0105, w jaki spos\u00f3b mo\u017cna osi\u0105gn\u0105\u0107 t\u0119 sam\u0105 lub podobn\u0105 funkcjonalno\u015b\u0107 przy u\u017cyciu j\u0119zyka skryptowego systemu.<\/span><\/p>\n<h3 id=\"grupa-docelowa\" ><span class=\"ez-toc-section\" id=\"Grupa_docelowa\"><\/span>Grupa docelowa<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p><span style=\"color: #000000;\">Grup\u0105 docelow\u0105 tego dokumentu s\u0105 programi\u015bci i konsultanci techniczni, kt\u00f3rzy tworz\u0105 lub dostosowuj\u0105 workflow dla klient\u00f3w, a tak\u017ce klienci, kt\u00f3rzy zarz\u0105dzaj\u0105 w\u0142asnym workflow.<\/span><\/p>\n<p><span style=\"color: #000000;\">Niniejszy dokument zak\u0142ada zrozumienie zakresu funkcji Workflow Management widocznych dla u\u017cytkownika. Ponadto, czytelnik powinien posiada\u0107 podstawow\u0105 znajomo\u015b\u0107 SQL lub innego j\u0119zyka programowania w celu zrozumienia j\u0119zyka skryptowego systemu.<\/span><\/p>\n<h3 id=\"definicje-terminow\" ><span class=\"ez-toc-section\" id=\"Definicje_terminow\"><\/span>Definicje termin\u00f3w<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<h4 id=\"guid\" ><span class=\"ez-toc-section\" id=\"GUID\"><\/span>GUID<span class=\"ez-toc-section-end\"><\/span><\/h4>\n<p>GUID jest skr\u00f3tem od\u00a0<em>Globally Unique Identifier<\/em>\u00a0i odpowiada globalnie unikalnemu identyfikatorowi. GUID to 128-bitowy numer obliczany zgodnie ze schematem Open Software Foundation (OSF) dla rozproszonych \u015brodowisk obliczeniowych (DCE). Zawiera on mi\u0119dzy innymi adres IP komputera generuj\u0105cego, sk\u0142adnik czasu i sk\u0142adnik losowy. Oznacza to, \u017ce dwa niezale\u017cne komputery mog\u0105 zawsze obliczy\u0107 r\u00f3\u017cne identyfikatory GUID bez synchronizacji. W Comarch ERP Enterprise identyfikatory GUID s\u0105 reprezentowane jako tablice bajt\u00f3w Java o d\u0142ugo\u015bci 16 i s\u0105 u\u017cywane g\u0142\u00f3wnie jako kompaktowe klucze podstawowe i obce w Business Objects.<\/p>\n<h4 id=\"systemowy-jezyk-skryptowy\" id=\"systemowy-jezyk-skryptowy\" ><span class=\"ez-toc-section\" id=\"Systemowy_jezyk_skryptowy\"><\/span>Systemowy j\u0119zyk skryptowy<span class=\"ez-toc-section-end\"><\/span><\/h4>\n<p>Wyra\u017cenia, warunki, polecenia, funkcje i deklaracje s\u0105 u\u017cywane do wyra\u017cania z\u0142o\u017conych relacji. Wszystkie te wyra\u017cenia s\u0105 cz\u0119\u015bci\u0105 wsp\u00f3lnego j\u0119zyka skryptowego zwanego j\u0119zykiem skryptowym systemu. Sk\u0142adnia j\u0119zyka skryptowego systemu jest oparta na SQL, Pascal i Java. J\u0119zyk skryptowy systemu jest u\u017cywany w Workflow Management, na przyk\u0142ad do formu\u0142owania warunku wst\u0119pnego lub warunku przej\u015bcia lub do okre\u015blania operator\u00f3w, kt\u00f3rzy nie s\u0105 podsumowani w roli workflow.<\/p>\n<h3 id=\"funkcje-ogolne\" ><span class=\"ez-toc-section\" id=\"Funkcje_ogolne\"><\/span>Funkcje og\u00f3lne<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p><span style=\"color: #000000;\">Funkcje og\u00f3lne to funkcje, kt\u00f3rych kontekst u\u017cycia nie wymaga ani definicji dzia\u0142ania, ani bazy danych OLTP. Niniejszy dokument dzieli funkcje og\u00f3lne na nast\u0119puj\u0105ce grupy:<\/span><\/p>\n<ul>\n<li><span style=\"color: #000000;\"><strong>Funkcje arytmetyczne<\/strong><\/span><\/li>\n<li><span style=\"color: #000000;\"><strong>Funkcje logiczne<\/strong><\/span><\/li>\n<li><span style=\"color: #000000;\"><strong>Funkcje dla ci\u0105g\u00f3w znak\u00f3w<\/strong><\/span><\/li>\n<li><span style=\"color: #000000;\"><strong>Funkcje daty i godziny<\/strong><\/span><\/li>\n<li><span style=\"color: #000000;\"><strong>Funkcje dla list<\/strong><\/span><\/li>\n<li><span style=\"color: #000000;\"><strong>Funkcje GUID<\/strong><\/span><\/li>\n<li><span style=\"color: #000000;\"><strong>Funkcje dla zestaw\u00f3w warto\u015bci\u00a0<\/strong><\/span><\/li>\n<li><span style=\"color: #000000;\"><strong>Funkcje dla obiekt\u00f3w biznesowych<\/strong><\/span><\/li>\n<li><span style=\"color: #000000;\"><strong>Funkcje dla instrukcji OQL<\/strong><\/span><\/li>\n<li><span style=\"color: #000000;\"><strong>Funkcje NLS<\/strong><\/span><\/li>\n<li><span style=\"color: #000000;\"><strong>Funkcje dla plik\u00f3w<\/strong><\/span><\/li>\n<li><span style=\"color: #000000;\"><strong>Funkcje dla u\u017cytkownik\u00f3w<\/strong><\/span><\/li>\n<li><span style=\"color: #000000;\"><strong>Polecenia wyzwalania zdarze\u0144<\/strong><\/span><\/li>\n<li><span style=\"color: #000000;\"><strong>Funkcje systemowe i konfiguracyjne<\/strong><\/span><\/li>\n<li><span style=\"color: #000000;\"><strong>Funkcje wiadomo\u015bci<\/strong><\/span><\/li>\n<li><span style=\"color: #000000;\"><strong>Funkcje dla warto\u015bci zerowych<\/strong><\/span><\/li>\n<li><span style=\"color: #000000;\"><strong>Inne funkcje<\/strong><\/span><\/li>\n<\/ul>\n<h4 id=\"funkcje-arytmetyczne-arithmetic-functions\" ><span class=\"ez-toc-section\" id=\"Funkcje_arytmetyczne_Arithmetic_functions\"><\/span>Funkcje arytmetyczne (Arithmetic functions)<span class=\"ez-toc-section-end\"><\/span><\/h4>\n<p><span style=\"color: #000000;\">Funkcje arytmetyczne reprezentuj\u0105 podstawowe operacje arytmetyczne. Funkcje arytmetyczne obejmuj\u0105<\/span><\/p>\n<ul>\n<li><span style=\"color: #000000;\"><strong>abs<\/strong><\/span><\/li>\n<li><span style=\"color: #000000;\"><strong>ceil<\/strong><\/span><\/li>\n<li><span style=\"color: #000000;\"><strong>floor<\/strong><\/span><\/li>\n<li><span style=\"color: #000000;\"><strong>max<\/strong><\/span><\/li>\n<li><span style=\"color: #000000;\"><strong>min<\/strong><\/span><\/li>\n<li><span style=\"color: #000000;\"><strong>neg<\/strong><\/span><\/li>\n<li><span style=\"color: #000000;\"><strong>round<\/strong><\/span><\/li>\n<\/ul>\n<h5 id=\"abs\" ><span class=\"ez-toc-section\" id=\"abs\"><\/span>abs<span class=\"ez-toc-section-end\"><\/span><\/h5>\n<table style=\"border-style: outset; border-color: #000000; background-color: #ffffff; width: 100%; height: 730px;\">\n<tbody>\n<tr style=\"height: 68px;\">\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"132\">\n<p><span style=\"color: #000000;\">Nazwa<\/span><\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"406\">\n<p><span style=\"color: #000000;\">abs<\/span><\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 68px;\">\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"132\">\n<p><span style=\"color: #000000;\">Opis<\/span><\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"406\">\n<p><span style=\"color: #000000;\"><em>abs<\/em> zwraca warto\u015b\u0107 bezwzgl\u0119dn\u0105 liczby.<\/span><\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 68px;\">\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"132\">\n<p><span style=\"color: #000000;\">Podpisy<\/span><\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"406\">\n<p><em><span style=\"color: #000000;\">Number abs(Number value)<\/span><\/em><\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 68px;\">\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"132\">\n<p><span style=\"color: #000000;\">Parametry<\/span><\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"406\">\n<p><span style=\"color: #000000;\"><em>value<\/em> jest liczb\u0105.<\/span><\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 68px;\">\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"132\">\n<p><span style=\"color: #000000;\">Wynik<\/span><\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"406\">\n<p><span style=\"color: #000000;\">Warto\u015b\u0107 bezwzgl\u0119dna <em>value<\/em> jako liczby.<\/span><\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 68px;\">\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"132\">\n<p><span style=\"color: #000000;\">\u0179r\u00f3d\u0142a b\u0142\u0119d\u00f3w<\/span><\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"406\">\n<p><span style=\"color: #000000;\">Brak<\/span><\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 118px;\">\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 118px;\" width=\"132\">\n<p><span style=\"color: #000000;\">Przyk\u0142ady<\/span><\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 118px;\" width=\"406\">\n<p><span style=\"color: #000000;\"><em>abs(3.14159)<\/em> zwraca warto\u015b\u0107 3.14159.<\/span><\/p>\n<p><span style=\"color: #000000;\"><em>abs(-3.14159)<\/em> zwraca -3.14159.<\/span><\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 68px;\">\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"132\">\n<p><span style=\"color: #000000;\">Kontekst<\/span><\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"406\">\n<p><em><span style=\"color: #000000;\">ALL<\/span><\/em><\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 68px;\">\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"132\">\n<p><span style=\"color: #000000;\">Uwagi<\/span><\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"406\">\u00a0<\/td>\n<\/tr>\n<tr style=\"height: 68px;\">\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"132\">\n<p><span style=\"color: #000000;\">Zobacz tak\u017ce<\/span><\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"406\">\u00a0<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p><span style=\"color: #000000;\"><section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\">Poni\u017cszy przyk\u0142ad z definicji dzia\u0142ania <em>help.abs<\/em> zwraca warto\u015b\u0107 bezwzgl\u0119dn\u0105 liczby:<\/span><\/p>\n<p><span style=\"color: #000000;\"><em>function create()<\/em><\/span><\/p>\n<p><span style=\"color: #000000;\"><em>{<\/em><\/span><\/p>\n<p><span style=\"color: #000000;\"><em>\u00a0 var p_number := parameters.NUMBER;<\/em><\/span><\/p>\n<p><span style=\"color: #000000;\"><em>\u00a0 var r_abs := abs(p_number);<\/em><\/span><\/p>\n<p><span style=\"color: #000000;\"><em>\u00a0 result.VALUE := r_abs;<\/em><\/span><\/p>\n<p><span style=\"color: #000000;\"><em>}<\/em><\/div><\/section><\/span><\/p>\n<h5 id=\"ceil\" ><span class=\"ez-toc-section\" id=\"ceil\"><\/span>ceil<span class=\"ez-toc-section-end\"><\/span><\/h5>\n<table style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\">\n<tbody>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Nazwa<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>ceil<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Opis<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>ceil <\/em>zaokr\u0105gla liczb\u0119 w g\u00f3r\u0119.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Podpisy<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>Number ceil(Number value)<\/em><\/p>\n<p><em>Number ceil(Number value, Number scale)<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Parametry<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>value <\/em>to liczba, kt\u00f3ra powinna zosta\u0107 zaokr\u0105glona w g\u00f3r\u0119.<\/p>\n<p><em>scale<\/em> to liczba cyfr potomnych dla wyniku.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Wynik<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Liczba <em>value <\/em>zaokr\u0105glona do <em>scale<\/em> miejsc dziesi\u0119tnych. Je\u015bli warto\u015b\u0107 <em>scale<\/em> nie jest okre\u015blona, przyjmowane jest 0 miejsc po przecinku. Je\u015bli <em>scale<\/em> jest liczb\u0105 ujemn\u0105 lub nie jest liczb\u0105 ca\u0142kowit\u0105, jest zaokr\u0105glana do <em>round(abs(&#8222;scale&#8221;)).<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>\u0179r\u00f3d\u0142a b\u0142\u0119d\u00f3w<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Brak<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Przyk\u0142ady<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>ceil(3.14159)<\/em> zwraca 4.<\/p>\n<p><em>ceil(-3.1415)<\/em> zwraca -3.<\/p>\n<p><em>ceil(3.14159 2)<\/em> zwraca 3.15.<\/p>\n<p><em>ceil(-3.14159 4)<\/em> zwraca -3.1415.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Kontekst<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>ALL<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Uwagi<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\u00a0<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>ceil, round<\/em><\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\">Poni\u017cszy przyk\u0142ad z definicji dzia\u0142ania <em>help.ceil<\/em> zaokr\u0105gla liczb\u0119 w g\u00f3r\u0119:<\/p>\n<p><em>function create()<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 var p_number := parameters.NUMBER;<\/em><\/p>\n<p><em>\u00a0 var p_scale := parameters.SCALE;<\/em><\/p>\n<p><em>\u00a0 var r_ceil := ceil(p_number, p_scale);<\/em><\/p>\n<p><em>\u00a0 <\/em><\/p>\n<p><em>\u00a0 result.VALUE := r_ceil;<\/em><\/p>\n<p><em>}<\/em><\/div><\/section>\n<h5 id=\"floor\" ><span class=\"ez-toc-section\" id=\"floor\"><\/span>floor<span class=\"ez-toc-section-end\"><\/span><\/h5>\n<table style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\">\n<tbody>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Nazwa<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>floor<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Opis<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>floor <\/em>zaokr\u0105gla liczb\u0119.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Podpisy<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>Number floor(Number value)<\/em><\/p>\n<p><em>Number floor(Number value, Number scale)<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Parametry<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>value<\/em> to liczba, kt\u00f3ra powinna zosta\u0107 zaokr\u0105glona w d\u00f3\u0142.<\/p>\n<p><em>scale<\/em> to liczba cyfr potomnych dla wyniku.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Wynik<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Liczba <em>value <\/em>jest zaokr\u0105glana w d\u00f3\u0142 do <em>scale<\/em> miejsc dziesi\u0119tnych. Je\u015bli warto\u015b\u0107 <em>scale<\/em> nie jest okre\u015blona, przyjmowane jest 0 miejsc po przecinku. Je\u015bli <em>scale<\/em> jest liczb\u0105 ujemn\u0105 lub nie jest liczb\u0105 ca\u0142kowit\u0105, jest zaokr\u0105glana w d\u00f3\u0142 do <em>round(abs(&#8222;scale&#8221;)).<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>\u0179r\u00f3d\u0142a b\u0142\u0119d\u00f3w<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Brak<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Przyk\u0142ady<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>floor(3.14159)<\/em> zwraca 3.<\/p>\n<p><em>floor(-3.1415)<\/em> zwraca -4.<\/p>\n<p><em>floor(3.14159 4)<\/em> zwraca warto\u015b\u0107 3.1415.<\/p>\n<p><em>floor(-3.14159 2)<\/em> zwraca -3.15.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Kontekst<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>ALL<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Uwagi<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\u00a0<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>ceil, round<\/em><\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\">Poni\u017cszy przyk\u0142ad z definicji dzia\u0142ania <em>help.floor<\/em> zaokr\u0105gla liczb\u0119.<\/p>\n<p><em>function create()<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 var p_number := parameters.NUMBER;<\/em><\/p>\n<p><em>\u00a0 var p_scale := parameters.SCALE;<\/em><\/p>\n<p><em>\u00a0 var r_ceil := floor(p_number, p_scale);<\/em><\/p>\n<p><em>\u00a0 result.VALUE := r_ceil;<\/em><\/p>\n<p><em>}<\/em><\/div><\/section>\n<h5 id=\"max\" ><span class=\"ez-toc-section\" id=\"max\"><\/span>max<span class=\"ez-toc-section-end\"><\/span><\/h5>\n<table style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\">\n<tbody>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Nazwa<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>max<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Opis<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>max<\/em> okre\u015bla najwi\u0119ksz\u0105 liczb\u0119, <em>CisDate<\/em> lub <em>Timestamp<\/em> z maksymalnie 9 parametr\u00f3w.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Podpisy<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>Number max(Number p1)<\/em><\/p>\n<p><em>Number max(Number p1, Number p2)<\/em><\/p>\n<p><em>Number max(Number p1, Number p2, Number p3,&#8230;, Number p9)<\/em><\/p>\n<p><em>CisDate max(CisDate p1)<\/em><\/p>\n<p><em>CisDate max(CisDate p1, CisDate p2)<\/em><\/p>\n<p><em>CisDate max(CisDate p1, CisDate p2, CisDate p3,&#8230;, CisDate p9)<\/em><\/p>\n<p><em>Timestamp max(Timestamp p1)<\/em><\/p>\n<p><em>Timestamp max(Timestamp p1, Timestamp p2)<\/em><\/p>\n<p><em>Timestamp max(Timestamp p1, Timestamp p2, Timestamp p3,&#8230;, Timestamp p9)<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Parametry<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>p1<\/em> to pierwsza liczba, <em>CisDate<\/em> lub punkt w czasie.<\/p>\n<p><em>p2<\/em> to druga liczba, <em>CisDate<\/em> lub punkt w czasie.<\/p>\n<p><em>p3<\/em> to trzecia liczba, <em>CisDate<\/em> lub punkt w czasie.<\/p>\n<p>[&#8230;]<\/p>\n<p><em>p9<\/em> to dziewi\u0105ta liczba, <em>CisDate<\/em> lub punkt w czasie.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Wynik<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Najwi\u0119ksza liczba, <em>CisDate<\/em> lub <em>Timestamp<\/em> spo\u015br\u00f3d przes\u0142anych parametr\u00f3w.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>\u0179r\u00f3d\u0142a b\u0142\u0119d\u00f3w<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Brak<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Przyk\u0142ady<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>max(-3, 1)<\/em> zwraca 1.<\/p>\n<p><em>max(MIN_DATE, MAX_DATE)<\/em> zwraca 9999.12.31.<\/p>\n<p><em>max(MIN_DATE, UNDEFINED_DATE)<\/em> zwraca 1000.01.01.<\/p>\n<p>Je\u015bli <em>parameters <\/em>odwo\u0142uje si\u0119 do obiektu biznesowego z cz\u0119\u015bci\u0105 <em>updateInfo<\/em>, w\u00f3wczas <em>max(parameters.object:updateInfo.createTime, parameters.object:updateInfo.updateTime)<\/em> zwraca czas ostatniej zmiany. Je\u015bli obiekt biznesowy nie zosta\u0142 zmieniony od czasu jego utworzenia, wyra\u017cenie zwraca czas utworzenia.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Kontekst<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>ALL<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Uwagi<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\u00a0<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>min<\/em><\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\">Poni\u017cszy przyk\u0142ad z definicji dzia\u0142ania <em>help.max<\/em> zwraca najwi\u0119ksz\u0105 z dw\u00f3ch liczb, dw\u00f3ch czas\u00f3w i dw\u00f3ch <em>CisDates<\/em>:<\/p>\n<p><em>function create()<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 var p_number1 := parameters.NUMBER1;<\/em><\/p>\n<p><em>\u00a0 var p_number2 := parameters.NUMBER2;<\/em><\/p>\n<p><em>\u00a0 var p_timestamp1 := parameters.TIMESTAMP1;<\/em><\/p>\n<p><em>\u00a0 var p_timestamp2 := parameters.TIMESTAMP2;<\/em><\/p>\n<p><em>\u00a0 var p_cisDate1 := createCisDate(year(p_timestamp1), month(p_timestamp1), day(p_timestamp1));<\/em><\/p>\n<p><em>\u00a0 var p_cisDate2 := createCisDate(year(p_timestamp2), month(p_timestamp2), day(p_timestamp2));<\/em><\/p>\n<p><em>\u00a0 var r_max_number := max(p_number1, p_number2);<\/em><\/p>\n<p><em>\u00a0 var r_max_cisDate := max(p_cisDate1, p_cisDate2);<\/em><\/p>\n<p><em>\u00a0 var r_max_timestamp := max(p_timestamp1, p_timestamp2);<\/em><\/p>\n<p><em>\u00a0 result.VALUE_NUMBER := r_max_number;<\/em><\/p>\n<p><em>\u00a0 result.VALUE_CISDATE := r_max_cisDate;<\/em><\/p>\n<p><em>\u00a0 result.VALUE_CISDATE := r_max_cisDate;<\/em><\/p>\n<p><em>\u00a0 result.VALUE_TIMESTAMP := r_max_timestamp;<\/em><\/p>\n<p><em>}<\/em><\/p>\n<p>Aby okre\u015bli\u0107 najwi\u0119ksz\u0105 liczb\u0119 z listy zawieraj\u0105cej wi\u0119cej ni\u017c 9 liczb, mo\u017cna u\u017cy\u0107 na przyk\u0142ad nast\u0119puj\u0105cej funkcji zdefiniowanej przez u\u017cytkownika:<\/p>\n<p><em>function maxOfList(numberList as Number[]) as Number {<\/em><\/p>\n<p><em>\u00a0 var largest := 0;<\/em><\/p>\n<p><em>\u00a0 if (size(numberList) &gt; 0) <\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 najwi\u0119kszy := numberList[0];<\/em><\/p>\n<p><em>\u00a0 for (n as Number : numberList)<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 if (n &gt; najwi\u0119kszy)<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0 largest := n;}<\/em><\/p>\n<p><em>\u00a0 return largest;<\/em><\/p>\n<p><em>}<\/em><\/div><\/section>\n<h5 id=\"min\" ><span class=\"ez-toc-section\" id=\"min\"><\/span>min<span class=\"ez-toc-section-end\"><\/span><\/h5>\n<table style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\">\n<tbody>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Nazwa<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>min<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Opis<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>min<\/em> okre\u015bla najmniejsz\u0105 liczb\u0119, <em>CisDate<\/em> lub <em>Timestamp<\/em> z maksymalnie 9 parametr\u00f3w.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Podpisy<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>Number min(Number p1)<\/em><\/p>\n<p><em>Number min(Number p1, Number p2)<\/em><\/p>\n<p><em>Number min(Number p1, Number p2, Number, p3,&#8230;, Number p9)<\/em><\/p>\n<p><em>CisDate min(CisDate p1)<\/em><\/p>\n<p><em>CisDate min(CisDate p1, CisDate p2)<\/em><\/p>\n<p><em>CisDate min(CisDate p1, CisDate p2, CisDate p3,&#8230;, CisDate p9)<\/em><\/p>\n<p><em>Timestamp min(Timestamp p1)<\/em><\/p>\n<p><em>Timestamp min(Timestamp p1, Timestamp p2)<\/em><\/p>\n<p><em>Timestamp min(Timestamp p1, Timestamp p2, Timestamp p3,&#8230;, Timestamp p9)<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Parametry<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>p1<\/em> to pierwsza liczba, <em>CisDate<\/em> lub punkt w czasie.<\/p>\n<p><em>p2<\/em> to druga liczba, <em>CisDate<\/em> lub punkt w czasie.<\/p>\n<p><em>p3<\/em> to trzecia liczba, <em>CisDate<\/em> lub punkt w czasie.<\/p>\n<p>[&#8230;]<\/p>\n<p><em>p9<\/em> to dziewi\u0105ta liczba, <em>CisDate<\/em> lub punkt w czasie.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Wynik<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Najmniejsza liczba, <em>CisDate<\/em> lub <em>Timestamp<\/em> spo\u015br\u00f3d przes\u0142anych parametr\u00f3w.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>\u0179r\u00f3d\u0142a b\u0142\u0119d\u00f3w<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Brak<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Przyk\u0142ady<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>min(-3, 1)<\/em> zwraca -3.<\/p>\n<p><em>min(MIN_DATE, MIN_DATE)<\/em> zwraca 1000.01.01.<\/p>\n<p><em>min(MIN_DATE, UNDEFINED_DATE)<\/em> zwraca 1000.01.01.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Kontekst<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>ALL<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Uwagi<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\u00a0<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>max<\/em><\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\">Poni\u017cszy przyk\u0142ad z definicji dzia\u0142ania <em>help.min<\/em> zwraca najmniejsz\u0105 z dw\u00f3ch liczb, dw\u00f3ch czas\u00f3w i dw\u00f3ch <em>CisDates<\/em>:<\/p>\n<p><em>function create()<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 var p_number1 := parameters.NUMBER1;<\/em><\/p>\n<p><em>\u00a0 var p_number2 := parameters.NUMBER2;<\/em><\/p>\n<p><em>\u00a0 var p_timestamp1 := parameters.TIMESTAMP1;<\/em><\/p>\n<p><em>\u00a0 var p_timestamp2 := parameters.TIMESTAMP2;<\/em><\/p>\n<p><em>\u00a0 var p_cisDate1 as CisDate; <\/em><\/p>\n<p><em>\u00a0 var p_cisDate2 as CisDate;<\/em><\/p>\n<p><em>\u00a0 if (p_timestamp1 &lt;&gt; UNDEFINED_DATE)<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 p_cisDate1 := createCisDate(year(p_timestamp1), month(p_timestamp1), day(p_timestamp1));<\/em><\/p>\n<p><em>\u00a0 if (p_timestamp2 &lt;&gt; UNDEFINED_DATE)<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 p_cisDate2 := createCisDate(year(p_timestamp2), month(p_timestamp2), day(p_timestamp2));<\/em><\/p>\n<p><em>\u00a0 var r_min_liczba := min(p_liczba1, p_liczba2);<\/em><\/p>\n<p><em>\u00a0 var r_min_cisDate := min(p_cisDate1, p_cisDate2);<\/em><\/p>\n<p><em>\u00a0 var r_min_timestamp := min(p_timestamp1, p_timestamp2);<\/em><\/p>\n<p><em>\u00a0 result.VALUE_NUMBER := r_min_number;<\/em><\/p>\n<p><em>\u00a0 result.VALUE_TIMESTAMP := r_min_timestamp;<\/em><\/p>\n<p><em>\u00a0 result.VALUE_CISDATE := r_min_cisDate;<\/em><\/p>\n<p><em>\u00a0 result.IS_NULL := isNull(r_min_cisDate);<\/em><\/p>\n<p><em>}<\/em><\/p>\n<p>Aby okre\u015bli\u0107 najmniejsz\u0105 liczb\u0119 z listy zawieraj\u0105cej wi\u0119cej ni\u017c 9 liczb, mo\u017cna u\u017cy\u0107 na przyk\u0142ad nast\u0119puj\u0105cej funkcji zdefiniowanej przez u\u017cytkownika:<\/p>\n<p><em>function minOfList(numberList as Number[]) as Number {<\/em><\/p>\n<p><em>\u00a0 var smallest := 0;<\/em><\/p>\n<p><em>\u00a0 if (size(numberList) &gt; 0)<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 smallest := numberList[0];<\/em><\/p>\n<p><em>\u00a0 for (n as Number : numberList)<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 if (n &lt; najmniejszy)<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0 smallest := n;<\/em><\/p>\n<p><em>\u00a0 return smallest;<\/em><\/p>\n<p><em>}<\/em> <\/div><\/section>\n<h5 id=\"neg\" ><span class=\"ez-toc-section\" id=\"neg\"><\/span>neg<span class=\"ez-toc-section-end\"><\/span><\/h5>\n<table style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\">\n<tbody>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Nazwa<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>neg<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Opis<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>neg<\/em> zwraca ujemn\u0105 warto\u015b\u0107 liczby.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Podpisy<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>Number neg(Number value)<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Parametry<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>value <\/em>jest liczb\u0105.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Wynik<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Ujemna warto\u015b\u0107 <em>value <\/em>jako liczba.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>\u0179r\u00f3d\u0142a b\u0142\u0119d\u00f3w<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Brak<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Przyk\u0142ady<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>neg(3.14159)<\/em> zwraca -3.14159.<\/p>\n<p><em>neg(-3.14159)<\/em> zwraca 3.14159.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Kontekst<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>ALL<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Uwagi<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\u00a0<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>abs<\/em><\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\">Poni\u017cszy przyk\u0142ad z definicji dzia\u0142ania <em>help.neg<\/em> neguje liczb\u0119:<\/p>\n<p><em>function create()<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 var p_number := parameters.NUMBER;<\/em><\/p>\n<p><em>\u00a0 var r_neg := neg(p_number);<\/em><\/p>\n<p><em>\u00a0 result.VALUE := r_neg;<\/em><\/p>\n<p><em>}<\/em> <\/div><\/section>\n<h5 id=\"round\" ><span class=\"ez-toc-section\" id=\"round\"><\/span>round<span class=\"ez-toc-section-end\"><\/span><\/h5>\n<table style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\">\n<tbody>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Nazwa<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>round<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Opis<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>round <\/em>zaokr\u0105gla liczb\u0119.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Podpisy<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>Number round(Number value)<\/em><\/p>\n<p><em>Number round(Number value, Number scale)<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Parametry<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>value<\/em> to liczba, kt\u00f3ra ma zosta\u0107 zaokr\u0105glona.<\/p>\n<p><em>scale<\/em> to liczba cyfr potomnych dla wyniku.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Wynik<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Liczba <em>value<\/em> zaokr\u0105glona do <em>scale<\/em> miejsc dziesi\u0119tnych. Je\u015bli warto\u015b\u0107 <em>scale<\/em> nie zostanie okre\u015blona, przyjmowane jest 0 miejsc po przecinku. Je\u015bli <em>scale<\/em> jest liczb\u0105 ujemn\u0105 lub nie jest liczb\u0105 ca\u0142kowit\u0105, u\u017cywane jest <em>round(abs(&#8222;scale&#8221;)).<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>\u0179r\u00f3d\u0142a b\u0142\u0119d\u00f3w<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Brak<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Przyk\u0142ady<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>round(3.14159)<\/em> zwraca 3.<\/p>\n<p><em>round(-3.1415)<\/em> zwraca -3.<\/p>\n<p><em>round(3.14159 4)<\/em> zwraca 3.1416.<\/p>\n<p><em>round(-3.14159 4)<\/em> zwraca -3.1416.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Kontekst<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>ALL<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Uwagi<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\u00a0<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>ceil, floor<\/em><\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\">Poni\u017cszy przyk\u0142ad z definicji dzia\u0142ania <em>help.round<\/em> zaokr\u0105gla liczb\u0119 do okre\u015blonej liczby miejsc po przecinku:<\/p>\n<p><em>function create()<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 var p_number := parameters.NUMBER;<\/em><\/p>\n<p><em>\u00a0 var p_scale := parameters.SCALE;<\/em><\/p>\n<p><em>\u00a0 var r_round := round(p_number, p_scale);<\/em><\/p>\n<p><em>\u00a0 result.VALUE := r_round;<\/em><\/p>\n<p><em>} <\/em><\/div><\/section>\n<h4 id=\"funkcje-logiczne-logic-functions\" ><span class=\"ez-toc-section\" id=\"Funkcje_logiczne_Logic_functions\"><\/span>Funkcje logiczne (Logic functions)<span class=\"ez-toc-section-end\"><\/span><\/h4>\n<p>Funkcja logiczna<em> not <\/em>mo\u017ce by\u0107 u\u017cyta do odwr\u00f3cenia warto\u015bci prawdy wyra\u017cenia logicznego.<\/p>\n<h5 id=\"not\" ><span class=\"ez-toc-section\" id=\"not\"><\/span>not<span class=\"ez-toc-section-end\"><\/span><\/h5>\n<table style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\">\n<tbody>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Nazwa<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>not<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Opis<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>not<\/em> odwraca warto\u015b\u0107 prawdy (<em>Boolean<\/em>).<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Podpisy<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>Boolean not(Boolean value)<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Parametry<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>value<\/em> jest liczb\u0105.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Wynik<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Je\u015bli <em>value<\/em> ma warto\u015b\u0107 true, zwracana jest warto\u015b\u0107 <em>false<\/em>. Je\u015bli <em>value<\/em> nie jest warto\u015bci\u0105 true, zwracana jest warto\u015b\u0107 <em>true<\/em>.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>\u0179r\u00f3d\u0142a b\u0142\u0119d\u00f3w<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Brak<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Przyk\u0142ady<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>not(true)<\/em> zwraca warto\u015b\u0107 prawdy <em>false<\/em>.<\/p>\n<p><em>not(false)<\/em> zwraca warto\u015b\u0107 prawdy <em>true<\/em>.<\/p>\n<p><em>not(isEmpty(intersection(list(format(today(), &#8222;EEE&#8221;, &#8222;en&#8221;)), list(&#8222;Sat&#8221;, &#8222;Sun&#8221;))))<\/em> zwraca <em>true<\/em>, je\u015bli dzisiaj jest sobota lub niedziela, w przeciwnym razie <em>false<\/em>.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Kontekst<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>ALL<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Uwagi<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\u00a0<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\u00a0<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\">Poni\u017cszy przyk\u0142ad z definicji dzia\u0142ania <em>help.not<\/em> odwraca warto\u015b\u0107 prawdy:<\/p>\n<p><em>function create()<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 var p_number := parameters.NUMBER;<\/em><\/p>\n<p><em>\u00a0 var r_not := not(p_number = 0);<\/em><\/p>\n<p><em>\u00a0 result.VALUE := r_not;<\/em><\/p>\n<p><em>} <\/em><\/div><\/section>\n<h4 id=\"funkcje-dla-ciagow-znakow-string-functions\" ><span class=\"ez-toc-section\" id=\"Funkcje_dla_ciagow_znakow_String_functions\"><\/span>Funkcje dla ci\u0105g\u00f3w znak\u00f3w (String functions)<span class=\"ez-toc-section-end\"><\/span><\/h4>\n<p>Ci\u0105gi znak\u00f3w mo\u017cna edytowa\u0107 i wyszukiwa\u0107 za pomoc\u0105 funkcji dla ci\u0105g\u00f3w znak\u00f3w. Funkcje dla ci\u0105g\u00f3w znak\u00f3w obejmuj\u0105:<\/p>\n<ul>\n<li><strong>char<\/strong><\/li>\n<li><strong>charAt<\/strong><\/li>\n<li><strong>decrypt<\/strong><\/li>\n<li><strong>encrypt<\/strong><\/li>\n<li><strong>endsWith<\/strong><\/li>\n<li><strong>format<\/strong><\/li>\n<li><strong>indexOf<\/strong><\/li>\n<li><strong>lastIndexOf<\/strong><\/li>\n<li><strong>lenght<\/strong><\/li>\n<li><strong>startsWith<\/strong><\/li>\n<li><strong>substring<\/strong><\/li>\n<li><strong>toHtml<\/strong><\/li>\n<li><strong>toLower<\/strong><\/li>\n<li><strong>toUpper<\/strong><\/li>\n<li><strong>trim<\/strong><\/li>\n<li><strong>unzipText<\/strong><\/li>\n<\/ul>\n<h5 id=\"char\" ><span class=\"ez-toc-section\" id=\"char\"><\/span>char<span class=\"ez-toc-section-end\"><\/span><\/h5>\n<table style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\">\n<tbody>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Nazwa<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>char<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Opis<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>char <\/em>zwraca znak Unicode numerycznego punktu kodowego.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Podpisy<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>String char(Number codepoint)<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Parametry<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>codepoint<\/em> to punkt kodowy znaku Unicode.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Wynik<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Znak Unicode punktu kodowego jako ci\u0105g jednego znaku.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>\u0179r\u00f3d\u0142a b\u0142\u0119d\u00f3w<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Brak<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Przyk\u0142ady<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>char(97)<\/em> zwraca znak Unicode<em> a<\/em>.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Kontekst<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>ALL<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Uwagi<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Comarch ERP Enterprise wykorzystuje Unicode w ca\u0142ym systemie. Oznacza to, \u017ce wszystkie popularne znaki globalne mog\u0105 by\u0107 u\u017cywane i drukowane na formularzach.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>charAt<\/em><\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\">Poni\u017cszy przyk\u0142ad z definicji dzia\u0142ania <em>help.char<\/em> zwraca znak Unicode numerycznego punktu kodowego:<\/p>\n<p><em>function create()<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 var p_codepoint := parameters.CODEPOINT;<\/em><\/p>\n<p><em>\u00a0 var r_char := char(p_codepoint);<\/em><\/p>\n<p><em>\u00a0 result.VALUE := r_char;<\/em><\/p>\n<p><em>}<\/em> <\/div><\/section>\n<h5 id=\"charat\" ><span class=\"ez-toc-section\" id=\"charAt\"><\/span>charAt<span class=\"ez-toc-section-end\"><\/span><\/h5>\n<table style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\">\n<tbody>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Nazwa<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>charAt<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Opis<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>charAt<\/em> zwraca numeryczny punkt kodowy znaku Unicode.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Podpisy<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>Number charAt(String text, Number index)<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Parametry<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>text <\/em>to ci\u0105g znak\u00f3w zawieraj\u0105cy znaki Unicode.<\/p>\n<p><em>index<\/em> to pozycja znaku Unicode w ci\u0105gu znak\u00f3w.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Wynik<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Punkt kodowy znaku Unicode na pozycji okre\u015blonej przez <em>index <\/em>w \u0142a\u0144cuchu znak\u00f3w <em>text<\/em>.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>\u0179r\u00f3d\u0142a b\u0142\u0119d\u00f3w<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Je\u015bli<em> index<\/em> nie jest prawid\u0142ow\u0105 pozycj\u0105 ci\u0105gu <em>text<\/em>, zwracana jest warto\u015b\u0107 zero.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Przyk\u0142ady<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>charAt(&#8222;abc&#8221;, 1)<\/em> zwraca warto\u015b\u0107 98 dla znaku Unicode b.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Kontekst<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>ALL<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Uwagi<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Comarch ERP Enterprise wykorzystuje Unicode w ca\u0142ym systemie. Oznacza to, \u017ce wszystkie popularne znaki globalne mog\u0105 by\u0107 u\u017cywane i drukowane na formularzach.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>char<\/em><\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\">Poni\u017cszy przyk\u0142ad z definicji dzia\u0142ania <em>help.charAt<\/em> zwraca numeryczny punkt kodowy znaku Unicode:<\/p>\n<p><em>function create()<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 var p_text := parameters.TEXT;<\/em><\/p>\n<p><em>\u00a0 var p_index := parameters.INDEX;<\/em><\/p>\n<p><em>\u00a0 var r_charAt := charAt(p_text, p_index);<\/em><\/p>\n<p><em>\u00a0 result.IS_NULL := isNull(r_charAt);<\/em><\/p>\n<p><em>\u00a0 result.VALUE := r_charAt;<\/em><\/p>\n<p><em>} <\/em><\/div><\/section>\n<h5 id=\"decrypt\" ><span class=\"ez-toc-section\" id=\"decrypt\"><\/span>decrypt\u00a0<span class=\"ez-toc-section-end\"><\/span><\/h5>\n<table style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\">\n<tbody>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Nazwa<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>decrypt<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Opis<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>decrypt<\/em> u\u017cywa klucza, aby zwr\u00f3ci\u0107 zaszyfrowany tekst w postaci niezaszyfrowanej.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Podpisy<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>String decrypt(String key, String encryptedText)<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Parametry<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>key<\/em> to 32-cyfrowy klucz, za pomoc\u0105 kt\u00f3rego tekst zosta\u0142 zaszyfrowany.<\/p>\n<p><em>encryptedText<\/em> to zaszyfrowany tekst.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Wynik<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Tekst <em>encryptedText<\/em> jako niezaszyfrowany ci\u0105g znak\u00f3w.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>\u0179r\u00f3d\u0142a b\u0142\u0119d\u00f3w<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Je\u015bli klucz<em> key<\/em> nie ma d\u0142ugo\u015bci 32 znak\u00f3w, zwracana jest warto\u015b\u0107 zero.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Przyk\u0142ady<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>decrypt(&#8222;u22Teu88mN\/8hND92ch+hkDj84PlQMMWUE2Y4cnVuCk=&#8221;)<\/em> odszyfrowuje zaszyfrowany tekst przy u\u017cyciu klucza standardowego i zwraca niezaszyfrowan\u0105 warto\u015b\u0107 jako ci\u0105g znak\u00f3w.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Kontekst<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>ALL<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Uwagi<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\u00a0<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>encrypt<\/em><\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\">Poni\u017cszy przyk\u0142ad z definicji dzia\u0142ania <em>help.decrypt<\/em> zwraca zaszyfrowany tekst niezaszyfrowany przy u\u017cyciu klucza:<\/p>\n<p><em>function create()<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 var p_encrypted_text := parameters.ENCRYPTED_TEXT;<\/em><\/p>\n<p><em>\u00a0 var p_key := parameters.KEY;<\/em><\/p>\n<p><em>\u00a0 var r_decrypted_text as String;<\/em><\/p>\n<p><em>\u00a0 r_decrypted_text := decrypt(p_key, p_encrypted_text);<\/em><\/p>\n<p><em>\u00a0 result.IS_NULL := isNull(r_decrypted_text);<\/em><\/p>\n<p><em>\u00a0 result.DECRYPTED_TEXT := r_decrypted_text;<\/em><\/p>\n<p><em>} <\/em><\/div><\/section>\n<h5 id=\"encrypt\" ><span class=\"ez-toc-section\" id=\"encrypt\"><\/span>encrypt<span class=\"ez-toc-section-end\"><\/span><\/h5>\n<table style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\">\n<tbody>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Nazwa<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>encrypt<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Opis<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>encrypt<\/em> szyfruje tekst przy u\u017cyciu klucza i zwraca zaszyfrowany tekst jako ci\u0105g znak\u00f3w.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Podpisy<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>String encrypt(String plainText)<\/em><\/p>\n<p><em>String encrypt(String key, String plainText)<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Parametry<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>plainText <\/em>to ci\u0105g znak\u00f3w, kt\u00f3ry ma zosta\u0107 zaszyfrowany.<\/p>\n<p><em>key <\/em>jest kluczem. Je\u015bli nie okre\u015blono klucza, <em>plainText<\/em> jest szyfrowany przy u\u017cyciu standardowego klucza.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Wynik<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Tekst <em>plainText<\/em> jako zaszyfrowany ci\u0105g znak\u00f3w.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>\u0179r\u00f3d\u0142a b\u0142\u0119d\u00f3w<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Je\u015bli klucz <em>key<\/em> nie jest znany systemowi, zwracana jest warto\u015b\u0107 zero.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Przyk\u0142ady<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>encrypt(&#8222;abc&#8221;)<\/em> szyfruje tekst <em>abc<\/em> przy u\u017cyciu standardowego klucza systemowego i zwraca zaszyfrowan\u0105 warto\u015b\u0107 jako ci\u0105g znak\u00f3w.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Kontekst<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>ALL<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Uwagi<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\u00a0<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>decrypt<\/em><\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\">Poni\u017cszy przyk\u0142ad z definicji dzia\u0142ania <em>help.encrypt<\/em> szyfruje tekst przy u\u017cyciu klucza:<\/p>\n<p><em>function create()<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 var p_decrypted_text := parameters.DECRYPTED_TEXT;<\/em><\/p>\n<p><em>\u00a0 var p_key := parameters.KEY;<\/em><\/p>\n<p><em>\u00a0 var r_encrypted_text as String; <\/em><\/p>\n<p><em>\u00a0 if(p_key &lt;&gt; &#8222;&#8221;)<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 r_encrypted_text := encrypt(p_key, p_decrypted_text);<\/em><\/p>\n<p><em>\u00a0 inny<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 r_encrypted_text := encrypt(p_decrypted_text);<\/em><\/p>\n<p><em>\u00a0 result.IS_NULL := isNull(r_encrypted_text);<\/em><\/p>\n<p><em>\u00a0 result.ENCRYPTED_TEXT := r_encrypted_text;<\/em><\/p>\n<p><em>} <\/em><\/div><\/section>\n<h5 id=\"endswith\" ><span class=\"ez-toc-section\" id=\"endsWith\"><\/span>endsWith<span class=\"ez-toc-section-end\"><\/span><\/h5>\n<table style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\">\n<tbody>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Nazwa<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>endsWith<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Opis<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>endsWith<\/em> sprawdza, czy ci\u0105g znak\u00f3w ko\u0144czy si\u0119 okre\u015blonym sufiksem.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Podpisy<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>Boolean endsWith(String text, String suffix)<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Parametry<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>text <\/em>to ci\u0105g znak\u00f3w, kt\u00f3ry ma zosta\u0107 sprawdzony.<\/p>\n<p><em>suffix<\/em> jest znakiem lub ci\u0105giem znak\u00f3w.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Wynik<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Je\u015bli ci\u0105g <em>text<\/em> ko\u0144czy si\u0119 na <em>suffix<\/em>, wynikiem jest <em>true<\/em>, w przeciwnym razie <em>false<\/em>.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>\u0179r\u00f3d\u0142a b\u0142\u0119d\u00f3w<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Brak<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Przyk\u0142ady<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>endsWith(&#8222;ERP&#8221;, &#8222;P&#8221;)<\/em> zwraca warto\u015b\u0107<em> true<\/em>.<\/p>\n<p><em>endsWith(&#8222;ERP&#8221;, &#8222;E&#8221;)<\/em> zwraca warto\u015b\u0107 <em>false<\/em>.<\/p>\n<p><em>endsWith(&#8222;Comarch&#8221;, &#8222;arch&#8221;)<\/em> zwraca warto\u015b\u0107 <em>true<\/em>.<\/p>\n<p><em>endsWith(&#8222;Enterprise&#8221;, &#8222;&#8221;)<\/em> zwraca warto\u015b\u0107 <em>true<\/em>.<\/p>\n<p><em>endsWith(&#8222;&#8221;, &#8222;CEE&#8221;)<\/em> zwraca warto\u015b\u0107 <em>false<\/em>.<\/p>\n<p><em>endsWith(&#8222;&#8221;,&#8221;&#8221;)<\/em> zwraca warto\u015b\u0107 <em>true<\/em>.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Kontekst<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>ALL<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Uwagi<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\u00a0<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>startsWith<\/em><\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\">Poni\u017cszy przyk\u0142ad z definicji dzia\u0142ania <em>help.endsWith<\/em> sprawdza, czy ci\u0105g znak\u00f3w ko\u0144czy si\u0119 okre\u015blonym sufiksem:<\/p>\n<p><em>function create()<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 var p_text := parameters.TEXT;<\/em><\/p>\n<p><em>\u00a0 var p_suffix := parameters.SUFFIX;<\/em><\/p>\n<p><em>\u00a0 var r_endsWith := endsWith(p_text, p_suffix);<\/em><\/p>\n<p><em>\u00a0 result.VALUE := r_endsWith;<\/em><\/p>\n<p><em>} <\/em><\/div><\/section>\n<h5 id=\"format\" ><span class=\"ez-toc-section\" id=\"format\"><\/span>format<span class=\"ez-toc-section-end\"><\/span><\/h5>\n<table style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\">\n<tbody>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Nazwa<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>format<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Opis<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>format <\/em>zwraca parametr jako sformatowany ci\u0105g znak\u00f3w. Parametr jest formatowany w r\u00f3\u017cny spos\u00f3b w zale\u017cno\u015bci od typu danych.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Podpisy<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>String format(CisDate date)<\/em><\/p>\n<p><em>String format(CisDate date, String pattern)<\/em><\/p>\n<p><em>String format(CisDate date, String pattern, String language)<\/em><\/p>\n<p><em>String format(Timestamp time)<\/em><\/p>\n<p><em>String format(Timestamp time, String pattern)<\/em><\/p>\n<p><em>String format(Timestamp time, String pattern, String language)<\/em><\/p>\n<p><em>String format(Number number)<\/em><\/p>\n<p><em>String format(Number number, String pattern)<\/em><\/p>\n<p><em>String format(Number number, String pattern, String language)<\/em><\/p>\n<p><em>String format(String text)<\/em><\/p>\n<p><em>String format(String text, String p1)<\/em><\/p>\n<p><em>String format(String text, String p1, String p2)<\/em><\/p>\n<p><em>String format(String text, String p1, String p2, String p3,&#8230;,String p8)<\/em><\/p>\n<p><em>String format(String text, String[] parameters)<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Parametry<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>date<\/em> jest CisDate.<\/p>\n<p><em>time<\/em> to punkt w czasie (znacznik czasu).<\/p>\n<p><em>number<\/em> jest liczb\u0105.<\/p>\n<p><em>pattern <\/em>to ci\u0105g znak\u00f3w z instrukcjami formatowania <em>CisDate<\/em>, godziny lub liczby. Je\u015bli format nie zostanie okre\u015blony, wyprowadzana jest liczba w formacie <em>#<\/em> oraz <em>CisDate<\/em> lub godzina w formacie <em>rrrrMMddHHmmssSSS<\/em>.<\/p>\n<p><em>language<\/em> to 2-literowy kod ISO s\u0142u\u017c\u0105cy do formatowania <em>CisDate<\/em>, godziny lub liczby zgodnie ze standardowym formatem krajowym.<\/p>\n<p><em>text<\/em> to ci\u0105g znak\u00f3w, kt\u00f3ry mo\u017ce zawiera\u0107 symbole zast\u0119pcze <em>{0}, {1}, {2},&#8230;, {n}.<\/em><\/p>\n<p><em>p1<\/em> do <em>p8<\/em> to ci\u0105gi do 8 znak\u00f3w z okre\u015blonymi warto\u015bciami dla symboli zast\u0119pczych w <em>text<\/em>.<\/p>\n<p><em>parameters <\/em>to lista z dowoln\u0105 liczb\u0105 symboli zast\u0119pczych.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Wynik<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Je\u015bli parametr jest ci\u0105giem znak\u00f3w, <em>format<\/em> zast\u0119puje symbole zast\u0119pcze w ci\u0105gu znak\u00f3w. Dla wszystkich innych typ\u00f3w danych, <em>format<\/em> zwraca parametr jako sformatowany ci\u0105g znak\u00f3w.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>\u0179r\u00f3d\u0142a b\u0142\u0119d\u00f3w<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Je\u015bli nie istnieje odpowiedni format dla okre\u015blonego j\u0119zyka, wynikiem jest zero.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Przyk\u0142ady<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Dla ci\u0105g\u00f3w znak\u00f3w:<\/p>\n<p><em>format(&#8222;Hello {0}!&#8221;, &#8222;world&#8221;)<\/em> zwraca <em>Hello world!.<\/em><\/p>\n<p><em>format(&#8222;Hello {0}!&#8221;, list(&#8222;world&#8221;))<\/em> zwraca <em>Hello world!.<\/em><\/p>\n<p>Dla <em>CisDate<\/em>:<\/p>\n<p><em>format(MIN_DATE, &#8222;dd MMMM rrrr&#8221;, &#8222;pl&#8221;))<\/em> zwraca 01 stycze\u0144 0002.<\/p>\n<p><em>format(MIN_DATE))<\/em> zwraca 00020101000002.<\/p>\n<p>Dla punkt\u00f3w czasowych:<\/p>\n<p>Dla liczb:<\/p>\n<p><em>format(3,1415926))<\/em> zwraca 3.<\/p>\n<p><em>format(3,1415926, &#8222;###.##&#8221;, &#8222;de&#8221;))<\/em> zwraca 3,14.<\/p>\n<p><em>format(3,1415926, &#8222;0000.0000&#8221;, &#8222;de&#8221;))<\/em> zwraca 0003,1416.<\/p>\n<p><em>format(3,1415926, &#8222;#.00&#8221;, &#8222;en&#8221;))<\/em> zwraca 3.14.<\/p>\n<p><em>format(3,1415926, &#8222;#%&#8221;))<\/em> zwraca 314%.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Kontekst<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>ALL<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Uwagi<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Je\u015bli w tek\u015bcie ma zosta\u0107 zast\u0105pionych wi\u0119cej ni\u017c 8 symboli zast\u0119pczych, warto\u015bci musz\u0105 zosta\u0107 przes\u0142ane jako lista ci\u0105g\u00f3w znak\u00f3w.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>dateString<\/em><em>, <\/em><em>timeString<\/em><em>, <\/em><em>toHtml<\/em><\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>Do formatowania liczb dost\u0119pne s\u0105 nast\u0119puj\u0105ce symbole:<\/p>\n<table style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\">\n<tbody>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p><strong>Symbol<\/strong><\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><strong>Wyja\u015bnienie<\/strong><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>0<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Liczba z zerem wiod\u0105cym<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>#<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Liczba bez zera wiod\u0105cego<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>.<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Separator dziesi\u0119tny w zale\u017cno\u015bci od j\u0119zyka<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>&#8211;<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Znak minus<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>,<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Grupowanie znak\u00f3w w zale\u017cno\u015bci od j\u0119zyka<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>;<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Oddziela formaty dodatnie i ujemne.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>%<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Mno\u017cy liczb\u0119 przez 100 i wy\u015bwietla j\u0105 jako warto\u015b\u0107 procentow\u0105.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>&#8217;<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Charakteryzuje znaki specjalne.<\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>Nast\u0119puj\u0105ce symbole s\u0105 dost\u0119pne do formatowania <em>CisDate<\/em> i czasu:<\/p>\n<table style=\"border-style: outset; border-color: #000000; background-color: #ffffff; width: 100%; height: 1256px;\">\n<thead>\n<tr style=\"height: 68px;\">\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"132\">\n<p><strong>Symbol<\/strong><\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"406\">\n<p><strong>Opis<\/strong><\/p>\n<\/td>\n<\/tr>\n<\/thead>\n<tbody>\n<tr style=\"height: 68px;\">\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"132\">\n<p>G<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"406\">\n<p>Era, np. GG-&gt;AD<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 68px;\">\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"132\">\n<p>y<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"406\">\n<p>Rok, np. rrrr-&gt;2021, rrrr-&gt;21<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 100px;\">\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 100px;\" width=\"132\">\n<p>M<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 100px;\" width=\"406\">\n<p>Miesi\u0105c, np. MM-&gt;08, MMM-&gt;sierpie\u0144, MMMM-&gt;sierpie\u0144, w zale\u017cno\u015bci od j\u0119zyka.<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 68px;\">\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"132\">\n<p>w<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"406\">\n<p>tydzie\u0144 w roku, np. ww-&gt;27<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 68px;\">\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"132\">\n<p>W<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"406\">\n<p>tydzie\u0144 na miesi\u0105c, np. W-&gt;2<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 68px;\">\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"132\">\n<p>D<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"406\">\n<p>dzie\u0144 roku, np: DDD-&gt;183<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 68px;\">\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"132\">\n<p>d<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"406\">\n<p>Dzie\u0144 miesi\u0105ca, np. dd-&gt;05, d-&gt;5<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 68px;\">\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"132\">\n<p>F<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"406\">\n<p>dzie\u0144 tygodnia w miesi\u0105cu, np. F-&gt;2<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 68px;\">\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"132\">\n<p>E<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"406\">\n<p>Dzie\u0144 tygodnia, np. EEE-&gt;Tue, EEEE-&gt; Tuesday, w zale\u017cno\u015bci od j\u0119zyka.<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 68px;\">\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"132\">\n<p>a<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"406\">\n<p>am\/pm, np. aa -&gt; PM<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 68px;\">\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"132\">\n<p>H<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"406\">\n<p>godzin dziennie (0-23), np. 13<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 68px;\">\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"132\">\n<p>k<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"406\">\n<p>Godzina na dzie\u0144 (1-24), np. 24<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 68px;\">\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"132\">\n<p>K<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"406\">\n<p>Godzina w am\/ppm (0-11), np. 0<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 68px;\">\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"132\">\n<p>h<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"406\">\n<p>Godzina w am\/pm (1-12), np. 12<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 68px;\">\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"132\">\n<p>m<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"406\">\n<p>minut na godzin\u0119, np. 53<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 68px;\">\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"132\">\n<p>s<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"406\">\n<p>Sekunda w minucie, np. 55<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 68px;\">\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"132\">\n<p>S<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"406\">\n<p>Milisekunda w sekundzie, np. 978<\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>Funkcji formatu mo\u017cna u\u017cywa\u0107 na przyk\u0142ad do nast\u0119puj\u0105cych zada\u0144:<\/p>\n<ul>\n<li>W opisie dzia\u0142ania liczby ca\u0142kowite powinny by\u0107 zapisane bez miejsc dziesi\u0119tnych.<\/li>\n<li>Je\u015bli u\u017cytkownik chce sformatowa\u0107 liczby, <em>CisDates<\/em> i godziny zgodnie z j\u0119zykiem korespondencji odbiorcy wiadomo\u015bci e-mail. Nale\u017cy upewni\u0107 si\u0119, \u017ce funkcja zwraca zero, je\u015bli nie ma odpowiedniego formatu dla okre\u015blonego j\u0119zyka.<\/li>\n<li>Do pliku eksportu, kt\u00f3ry ma zosta\u0107 wygenerowany, nale\u017cy przypisa\u0107 unikatow\u0105 nazw\u0119 z odniesieniem czasowym.<\/li>\n<li>Je\u015bli u\u017cytkownik chce utworzy\u0107 plik importu, aby zaimportowa\u0107 go p\u00f3\u017aniej. W takim przypadku mo\u017cna zapisa\u0107 plik szablonu importu z symbolami zast\u0119pczymi w Knowledge Store i odczyta\u0107 go za pomoc\u0105 funkcji <em>readTextFile<\/em>. Nast\u0119pnie nale\u017cy u\u017cyc formatu, aby wype\u0142ni\u0107 symbole zast\u0119pcze okre\u015blonymi warto\u015bciami, a nast\u0119pnie zapisa\u0107 gotowy plik importu w Knowledge Store do importu za pomoc\u0105 funkcji <em>writeFile<\/em>.<\/li>\n<li>W opisie dzia\u0142ania nale\u017cy u\u017cy\u0107 modu\u0142\u00f3w tekstowych z symbolami zast\u0119pczymi, aby m\u00f3c zarz\u0105dza\u0107 opisami niezale\u017cnie od definicji dzia\u0142ania.<\/li>\n<\/ul>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\">Poni\u017cszy przyk\u0142ad z definicji dzia\u0142ania <em>help.format<\/em> pokazuje, jak formatowane s\u0105 typy danych dla daty, daty i godziny oraz liczb. Przyk\u0142ad pokazuje r\u00f3wnie\u017c, jak u\u017cywa\u0107 funkcji format do zast\u0119powania symboli zast\u0119pczych w ci\u0105gu znak\u00f3w konkretnymi warto\u015bciami.<\/p>\n<p><em>function create()<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 var p_date as CisDate;<\/em><\/p>\n<p><em>\u00a0 var p_timestamp as Timestamp;<\/em><\/p>\n<p><em>\u00a0 var p_number := parameters.NUMBER;<\/em><\/p>\n<p><em>\u00a0 var p_pattern := parameters.PATTERN;<\/em><\/p>\n<p><em>\u00a0 var p_language := parameters.LANGUAGE;<\/em><\/p>\n<p><em>\u00a0 var p_parameters := parameters.PARAMETERS; <\/em><\/p>\n<p><em>\u00a0 var r_date as String;<\/em><\/p>\n<p><em>\u00a0 var r_timestamp as String;<\/em><\/p>\n<p><em>\u00a0 var r_number as String;<\/em><\/p>\n<p><em>\u00a0 p_date := today();<\/em><\/p>\n<p><em>\u00a0 p_timestamp := now();<\/em><\/p>\n<p><em>\u00a0 \/* format CisDate, Timestamp i Number zgodnie z wzorcem *\/<\/em><\/p>\n<p><em>\u00a0 if (p_language = &#8222;&#8221;) {<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 r_date:= format(today(), p_pattern);<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 r_timestamp := format(p_timestamp, p_pattern);<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 r_number := format(p_number, p_pattern);<\/em><\/p>\n<p><em>\u00a0 } else {<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 r_date := format(today(), p_pattern, p_language);<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 r_timestamp := format(p_timestamp, p_pattern, p_language);<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 r_number := format(p_number, p_pattern, p_language);<\/em><\/p>\n<p><em>\u00a0 }<\/em><\/p>\n<p><em>\u00a0 \/* return result if not null *\/<\/em><\/p>\n<p><em>\u00a0 if (not isNull(r_date)) result.VALUE_DATE := r_date;<\/em><\/p>\n<p><em>\u00a0 if (not isNull(r_date)) result.VALUE_TIMESTAMP := format(p_timestamp, p_pattern);<\/em><\/p>\n<p><em>\u00a0 if (not isNull(r_date)) result.VALUE_NUMBER := format(p_number, p_pattern);<\/em><\/p>\n<p><em>\u00a0 if (isNull(r_date)) result.VALUE_DATE := &#8222;null&#8221;;<\/em><\/p>\n<p><em>\u00a0 if (isNull(r_date)) result.VALUE_TIMESTAMP := &#8222;null&#8221;;<\/em><\/p>\n<p><em>\u00a0 if (isNull(r_date)) result.VALUE_NUMBER := &#8222;null&#8221;<\/em><\/p>\n<p><em>\u00a0 \/* zast\u0119puje parametry (symbole zast\u0119pcze) w \u0142a\u0144cuchu *\/<\/em><\/p>\n<p><em>\u00a0 var p_text := &#8222;p0={0}, p1={1}, p2={2}, p3={3}, p4={4}, p5={5}, p6={6}, p7={7}, p8={8}, p9={9}&#8221;;<\/em><\/p>\n<p><em>\u00a0 var pList := split(p_parameters, &#8221; &#8222;);<\/em><\/p>\n<p><em>\u00a0 if (size(pList) = 1)<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 result.VALUE_STRING := format(p_text, p_parameters);<\/em><\/p>\n<p><em>\u00a0 else<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 result.VALUE_STRING := format(p_text, pList);<\/em><\/p>\n<p><em>}<\/em><\/p>\n<p><em>\/* Dzieli &#8222;p_text&#8221; na tablic\u0119 przy ka\u017cdym wyst\u0105pieniu &#8222;p_separator&#8221; *\/<\/em><\/p>\n<p><em>function split(p_text as String, p_separator as String) as String[]<\/em><\/p>\n<p><em>{ <\/em><\/p>\n<p><em>\u00a0 if (p_separator = &#8222;&#8221;)<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 p_separator := &#8221; &#8222;;<\/em><\/p>\n<p><em>\u00a0 var increment := length(p_separator);<\/em><\/p>\n<p><em>\u00a0 var sep as String;<\/em><\/p>\n<p><em>\u00a0 var word as String;<\/em><\/p>\n<p><em>\u00a0 var r_wordList as String[];<\/em><\/p>\n<p><em>\u00a0 var i := 0;<\/em><\/p>\n<p><em>\u00a0 var startPos := 0;<\/em><\/p>\n<p><em>\u00a0 while (i + increment &#8211; 1 &lt; length(p_text)) {<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 sep := substring(p_text, i, i + increment);<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 if (sep = p_separator) {<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0 word := trim(substring(p_text, startPos, i));<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0 i := i + przyrost;<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0 startPos := i;<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0 if (word &lt;&gt; &#8222;&#8221; and word &lt;&gt; p_separator) <\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 add(r_wordList, word);<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 } else {<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0 i := i + 1;<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 }<\/em><\/p>\n<p><em>\u00a0 }<\/em><\/p>\n<p><em>\u00a0 word := substring(p_text, startPos);<\/em><\/p>\n<p><em>\u00a0 if (word &lt;&gt; &#8222;&#8221; and word &lt;&gt; p_separator) <\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 add(r_wordList, word);<\/em><\/p>\n<p><em>\u00a0 return r_wordList;<\/em><\/p>\n<p><em>}[\/<\/em>example]<\/p>\n<h5 id=\"indexof\" ><span class=\"ez-toc-section\" id=\"indexOf\"><\/span>indexOf<span class=\"ez-toc-section-end\"><\/span><\/h5>\n<table style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\">\n<tbody>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Nazwa<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>indexOf<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Opis<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>indexOf<\/em> okre\u015bla pierwsz\u0105 pozycj\u0119 znaku lub ci\u0105gu znak\u00f3w w tek\u015bcie.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Podpisy<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>Number indexOf(String text, String searchValue)<\/em><\/p>\n<p><em>Number indexOf(String text, String searchValue, Number firstPos)<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Parametry<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>text<\/em> to tekst do przeszukania.<\/p>\n<p><em>searchValue<\/em> to znak lub ci\u0105g znak\u00f3w, kt\u00f3ry ma zosta\u0107 wyszukany.<\/p>\n<p><em>firstPos<\/em> to pozycja w tek\u015bcie, od kt\u00f3rej powinno rozpocz\u0105\u0107 si\u0119 wyszukiwanie.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Wynik<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Pozycja pierwszego wyst\u0105pienia <em>searchValue<\/em> w <em>text<\/em> od pozycji <em>firstPos<\/em>.<\/p>\n<p>Je\u015bli wyszukiwanie nie powiod\u0142o si\u0119, zwracane jest -1.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>\u0179r\u00f3d\u0142a b\u0142\u0119d\u00f3w<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Brak<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Przyk\u0142ady<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>indexOf(&#8222;abcabc&#8221;, &#8222;a&#8221;)<\/em> zwraca 0.<\/p>\n<p><em>indexOf(&#8222;abcabc&#8221;, &#8222;b&#8221;)<\/em> zwraca 1.<\/p>\n<p><em>indexOf(&#8222;abcabc&#8221;, &#8222;z&#8221;)<\/em> zwraca -1.<\/p>\n<p><em>indexOf(&#8222;abcabc&#8221;, &#8222;bc&#8221;)<\/em> zwraca 1.<\/p>\n<p><em>indexOf(&#8222;abcabc&#8221;, &#8222;&#8221;)<\/em> zwraca 0.<\/p>\n<p><em>indexOf(&#8222;&#8221;, &#8222;a&#8221;)<\/em> zwraca -1.<\/p>\n<p><em>indexOf(&#8222;&#8221;, &#8222;&#8221;)<\/em> zwraca 0.<\/p>\n<p><em>indexOf(&#8222;abcabc&#8221;, &#8222;c&#8221;, 2)<\/em> zwraca 2.<\/p>\n<p><em>indexOf(&#8222;abcabc&#8221;, &#8222;c&#8221;, 3)<\/em> zwraca 5.<\/p>\n<p><em>indexOf(&#8222;abcabc&#8221;, &#8222;c&#8221;, -10)<\/em> zwraca 2.<\/p>\n<p><em>indexOf(&#8222;abcabc&#8221;, &#8222;c&#8221;, 10)<\/em> zwraca -1.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Kontekst<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>ALL<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Uwagi<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\u00a0<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>lastIndexOf<\/em><em>, substring<\/em><\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p><section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\"><\/div><\/section>Poni\u017cszy przyk\u0142ad z definicji dzia\u0142ania <em>help.indexOf <\/em>zwraca pozycj\u0119 pierwszego wyst\u0105pienia ci\u0105gu znak\u00f3w w innym ci\u0105gu znak\u00f3w:<\/p>\n<p><em>function create()<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 var p_text := parameters.TEXT;<\/em><\/p>\n<p><em>\u00a0 var p_searchValue := parameters.SEARCH_VALUE;<\/em><\/p>\n<p><em>\u00a0 var p_firstPos := parameters.FIRST_POS;<\/em><\/p>\n<p><em>\u00a0 var r_indexOf as Number;<\/em><\/p>\n<p><em>\u00a0 if (p_firstPos = 0) <\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 r_indexOf := indexOf(p_text, p_searchValue);<\/em><\/p>\n<p><em>\u00a0 inny<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 r_indexOf := indexOf(p_text, p_searchValue, p_firstPos);<\/em><\/p>\n<p><em>\u00a0 result.VALUE := r_indexOf;<\/em><\/p>\n<p><em>} <\/em><\/div><\/section>\n<h5 id=\"lastindexof\" ><span class=\"ez-toc-section\" id=\"lastIndexOf\"><\/span>lastIndexOf<span class=\"ez-toc-section-end\"><\/span><\/h5>\n<table style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\">\n<tbody>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Nazwa<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>lastIndexOf<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Opis<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>indexOf<\/em> okre\u015bla ostatni\u0105 pozycj\u0119 znaku lub ci\u0105gu znak\u00f3w w tek\u015bcie.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Podpisy<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>Number lastIndexOf(String text, String searchValue)<\/em><\/p>\n<p><em>Number lastIndexOf(String text, String searchValue, Number firstPos)<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Parametry<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>text <\/em>to tekst do przeszukania.<\/p>\n<p><em>searchValue <\/em>to znak lub ci\u0105g znak\u00f3w, kt\u00f3ry ma zosta\u0107 wyszukany.<\/p>\n<p><em>firstPos<\/em> to pozycja w tek\u015bcie, od kt\u00f3rej powinno rozpocz\u0105\u0107 si\u0119 wyszukiwanie.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Wynik<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Pozycja pierwszego wyst\u0105pienia <em>searchValue<\/em> w <em>text<\/em> od pozycji <em>firstPos<\/em>. W przeciwie\u0144stwie do funkcji <em>indexOf<\/em>, <em>text<\/em> jest przeszukiwany wstecz od <em>firstPos<\/em>.<\/p>\n<p>Je\u015bli wyszukiwanie nie powiod\u0142o si\u0119, zwracane jest -1.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>\u0179r\u00f3d\u0142a b\u0142\u0119d\u00f3w<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Brak<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Przyk\u0142ady<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>lastIndexOf(&#8222;abcabc&#8221;, &#8222;a&#8221;)<\/em> zwraca 3.<\/p>\n<p><em>lastIndexOf(&#8222;abcabc&#8221;, &#8222;b&#8221;)<\/em> zwraca 4.<\/p>\n<p><em>lastIndexOf(&#8222;abcabc&#8221;, &#8222;d&#8221;)<\/em> zwraca -1.<\/p>\n<p><em>lastIndexOf(&#8222;abcabc&#8221;, &#8222;bc&#8221;)<\/em> zwraca 4.<\/p>\n<p><em>lastIndexOf(&#8222;abcabc&#8221;, &#8222;&#8221;)<\/em> zwraca 5.<\/p>\n<p><em>lastIndexOf(&#8222;&#8221;, &#8222;a&#8221;)<\/em> zwraca -1.<\/p>\n<p><em>lastIndexOf(&#8222;&#8221;, &#8222;&#8221;)<\/em> zwraca 0.<\/p>\n<p><em>lastIindexOf(&#8222;abcabc&#8221; &#8222;a&#8221;, 2)<\/em> zwraca 0.<\/p>\n<p><em>lastIndexOf(&#8222;abcabc&#8221;, &#8222;a&#8221;, 3)<\/em> zwraca 3.<\/p>\n<p><em>lastIndexOf(&#8222;abcabc&#8221;, &#8222;a&#8221;, -10)<\/em> zwraca -1.<\/p>\n<p><em>lastIndexOf(&#8222;abcabc&#8221;, &#8222;a&#8221;, 10)<\/em> zwraca 3.<\/p>\n<p><em>substring(objectName(event.guid), lastIndexOf(objectName(event.guid), &#8222;.&#8221;))<\/em> zwraca nazw\u0119 jednostki biznesowej zdarzenia typu <em>Jednostka biznesowa<\/em> bez jej przestrzeni nazw.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Kontekst<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>ALL<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Uwagi<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\u00a0<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>indexOf<\/em><em>, substring<\/em><\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\">Poni\u017cszy przyk\u0142ad z definicji dzia\u0142ania <em>help.indexOf<\/em> zwraca pozycj\u0119 ostatniego wyst\u0105pienia ci\u0105gu znak\u00f3w w innym ci\u0105gu znak\u00f3w:<\/p>\n<p><em>function create()<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 var p_text := parameters.TEXT;<\/em><\/p>\n<p><em>\u00a0 var p_searchValue := parameters.SEARCH_VALUE;<\/em><\/p>\n<p><em>\u00a0 var p_lastPos := parameters.LAST_POS;<\/em><\/p>\n<p><em>\u00a0 var r_lastIndexOf as Number;<\/em><\/p>\n<p><em>\u00a0 if (p_lastPos = 0) <\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 r_lastIndexOf := lastIndexOf(p_text, p_searchValue);<\/em><\/p>\n<p><em>\u00a0 inny<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 r_lastIndexOf := lastIndexOf(p_text, p_searchValue, p_lastPos)<\/em><\/p>\n<p><em>\u00a0 result.VALUE := r_lastIndexOf;<\/em><\/p>\n<p><em>}<\/em> <\/div><\/section>\n<h5 id=\"lenght\" ><span class=\"ez-toc-section\" id=\"lenght\"><\/span>lenght<span class=\"ez-toc-section-end\"><\/span><\/h5>\n<table style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\">\n<tbody>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Nazwa<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>lenght<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Opis<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>length<\/em> zwraca d\u0142ugo\u015b\u0107 ci\u0105gu znak\u00f3w.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Podpisy<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>Number (String text)<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Parametry<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>text<\/em> to ci\u0105g znak\u00f3w, kt\u00f3rego d\u0142ugo\u015b\u0107 ma zosta\u0107 okre\u015blona.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Wynik<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>D\u0142ugo\u015b\u0107 ci\u0105gu znak\u00f3w text.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>\u0179r\u00f3d\u0142a b\u0142\u0119d\u00f3w<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Brak<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Przyk\u0142ady<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>length(&#8222;abc&#8221;)<\/em> zwraca 3.<\/p>\n<p><em>length(&#8222;&#8221;)<\/em> zwraca 0.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Kontekst<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>ALL<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Uwagi<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>D\u0142ugo\u015b\u0107 to liczba znak\u00f3w w ci\u0105gu znak\u00f3w. Pierwszy znak ma pozycj\u0119 0. Dlatego ostatni znak niepustego ci\u0105gu <em>text<\/em> ma pozycj\u0119 <em>length(text)-1<\/em>.<\/p>\n<p>Liczba element\u00f3w na li\u015bcie jest okre\u015blana przez <em>size<\/em>.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\u00a0<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\">Poni\u017cszy przyk\u0142ad z definicji dzia\u0142ania <em>help.length<\/em> zwraca d\u0142ugo\u015b\u0107 ci\u0105gu znak\u00f3w:<\/p>\n<p><em>function create()<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 var p_text := parameters.TEXT;<\/em><\/p>\n<p><em>\u00a0 var r_length := length(p_text);<\/em><\/p>\n<p><em>\u00a0 result.VALUE := r_length;<\/em><\/p>\n<p><em>} <\/em><\/div><\/section>\n<h5 id=\"startswith\" ><span class=\"ez-toc-section\" id=\"startsWith\"><\/span>startsWith<span class=\"ez-toc-section-end\"><\/span><\/h5>\n<table style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\">\n<tbody>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Nazwa<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>startsWith<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Opis<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>startsWith<\/em> sprawdza, czy ci\u0105g znak\u00f3w zaczyna si\u0119 od okre\u015blonego prefiksu.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Podpisy<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>Boolean startsWith(String text, String prefix)<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Parametry<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>text<\/em> to ci\u0105g znak\u00f3w, kt\u00f3ry ma zosta\u0107 sprawdzony.<\/p>\n<p><em>prefix<\/em> to znak lub ci\u0105g znak\u00f3w.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Wynik<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Je\u015bli ci\u0105g <em>text<\/em> zaczyna si\u0119 od <em>prefix<\/em>, wynikiem jest <em>true<\/em>, w przeciwnym razie <em>false<\/em>.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>\u0179r\u00f3d\u0142a b\u0142\u0119d\u00f3w<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Brak<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Przyk\u0142ady<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>startsWith(&#8222;ERP&#8221;, &#8222;E&#8221;)<\/em> zwraca warto\u015b\u0107 <em>true<\/em>.<\/p>\n<p><em>startsWith(&#8222;ERP&#8221;, &#8222;e&#8221;)<\/em> zwraca warto\u015b\u0107 <em>false<\/em>.<\/p>\n<p><em>startsWith(&#8222;Comarch&#8221;, &#8222;Com&#8221;)<\/em> zwraca warto\u015b\u0107 <em>true<\/em>.<\/p>\n<p><em>startsWith(&#8222;Enterprise&#8221;, &#8222;&#8221;)<\/em> zwraca warto\u015b\u0107 <em>true<\/em>.<\/p>\n<p><em>startsWith(&#8222;&#8221;, &#8222;CEE&#8221;)<\/em> zwraca warto\u015b\u0107 <em>false<\/em>.<\/p>\n<p><em>startsWith(&#8222;&#8221;,&#8221;&#8221;)<\/em> zwraca warto\u015b\u0107 <em>true<\/em>.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Kontekst<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>ALL<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Uwagi<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\u00a0<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>endsWith<\/em><\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\">Poni\u017cszy przyk\u0142ad z definicji dzia\u0142ania <em>help.startsWith<\/em> sprawdza, czy ci\u0105g znak\u00f3w zaczyna si\u0119 od okre\u015blonego prefiksu:<\/p>\n<p><em>function create()<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 var p_text := parameters.TEXT;<\/em><\/p>\n<p><em>\u00a0 var p_prefix := parameters.PREFIX;<\/em><\/p>\n<p><em>\u00a0 var r_startsWith := startsWith(p_text, p_prefix);<\/em><\/p>\n<p><em>\u00a0 result.IS_NULL := isNull(r_startsWith);<\/em><\/p>\n<p><em>\u00a0 result.VALUE := r_startsWith;<\/em><\/p>\n<p><em>} <\/em><\/div><\/section>\n<h5 id=\"substring\" ><span class=\"ez-toc-section\" id=\"substring\"><\/span>substring<span class=\"ez-toc-section-end\"><\/span><\/h5>\n<table style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\">\n<tbody>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Nazwa<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>substring<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Opis<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>substring<\/em> zwraca wszystkie znaki ci\u0105gu znak\u00f3w od okre\u015blonej pozycji.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Podpisy<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>String substring(String text, firstIncluded)<\/em><\/p>\n<p><em>String substring(String text, firstIncluded, firstExcluded)<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Parametry<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>text<\/em> to ci\u0105g znak\u00f3w.<\/p>\n<p><em>firstIncluded <\/em>to pozycja pierwszego znaku w parametrze <em>text<\/em>, kt\u00f3ry ma zosta\u0107 zwr\u00f3cony.<\/p>\n<p><em>firstExcluded<\/em> to pozycja pierwszego znaku po <em>firstIncluded<\/em>, kt\u00f3ry nie powinien zosta\u0107 zwr\u00f3cony.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Wynik<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Ci\u0105g znak\u00f3w zawieraj\u0105cy wszystkie znaki w <em>text<\/em> od pozycji <em>firstIncluded<\/em> (w\u0142\u0105cznie) do pozycji <em>firstExcluded<\/em> (wy\u0142\u0105cznie).<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>\u0179r\u00f3d\u0142a b\u0142\u0119d\u00f3w<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Je\u015bli warto\u015b\u0107 <em>firstIncluded<\/em> jest ujemna lub wi\u0119ksza ni\u017c <em>firstExcluded<\/em>, zwracana jest warto\u015b\u0107 zero.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Przyk\u0142ady<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>substring(&#8222;012345&#8221;, 2)<\/em> zwraca 2345.<\/p>\n<p><em>substring(&#8222;012345&#8221;, 2, 4)<\/em> zwraca 23.<\/p>\n<p><em>substring(&#8222;012345&#8221;, 2, 2)<\/em> zwraca &#8222;&#8221;.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Kontekst<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>ALL<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Uwagi<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\u00a0<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>indexOf<\/em><em>, <\/em><em>lastIndexOf<\/em><\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\">Poni\u017cszy przyk\u0142ad z definicji dzia\u0142ania <em>help.substring<\/em> zwraca wszystkie znaki ci\u0105gu znak\u00f3w pomi\u0119dzy dwoma pozycjami:<\/p>\n<p><em>function create()<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 var p_text := parameters.TEXT;<\/em><\/p>\n<p><em>\u00a0 var p_firstIncluded := parameters.FIRST_INCLUDED;<\/em><\/p>\n<p><em>\u00a0 var p_firstExcluded := parameters.FIRST_EXCLUDED;<\/em><\/p>\n<p><em>\u00a0 var r_substring as String;<\/em><\/p>\n<p><em>\u00a0 if (p_firstExcluded = 0)<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 r_substring := substring(p_text, p_firstIncluded);<\/em><\/p>\n<p><em>\u00a0 else<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 r_substring := substring(p_text, p_firstIncluded, p_firstExcluded);<\/em><\/p>\n<p><em>\u00a0 result.IS_NULL := isNull(r_substring);<\/em><\/p>\n<p><em>\u00a0 result.VALUE := r_substring;<\/em><\/p>\n<p><em>}<\/em> <\/div><\/section>\n<h5 id=\"tohtml\" ><span class=\"ez-toc-section\" id=\"toHTML\"><\/span>toHTML<span class=\"ez-toc-section-end\"><\/span><\/h5>\n<table style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\">\n<tbody>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Nazwa<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>toHtml<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Opis<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>toHtml<\/em> zwraca ci\u0105g znak\u00f3w ze znakami specjalnymi jako encje HTML.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Podpisy<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>String toHtml(String plainText)<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Parametry<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>plainText <\/em>to ci\u0105g znak\u00f3w.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Wynik<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\u00a0<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>\u0179r\u00f3d\u0142a b\u0142\u0119d\u00f3w<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Brak<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Przyk\u0142ady<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>toHtml(&#8222;&lt;p&gt;text&lt;\/p&gt;&#8221;)<\/em> zwraca ci\u0105g znak\u00f3w <em>&amp;lt;p&amp;gt;text&amp;lt;\/p&amp;gt<\/em>;.<\/p>\n<p><em>toHtml(&#8222;Pozdrowienia&#8221;)<\/em> zwraca ci\u0105g znak\u00f3w <em>Gr&amp;uuml;&amp;szlig;e<\/em>.<\/p>\n<p>Poni\u017cszy przyk\u0142ad dodaje link do artyku\u0142u 10010 do opisu dzia\u0142ania:<\/p>\n<p><em>formatDescriptionHTML(&#8222;company&#8221;, &#8222;&lt;a href=\\&#8221;&#8221; + getURL(getCustomizingValue(&#8222;com.cisag.app.General&#8221;)-&gt;Company) + &#8222;\\&#8221;&gt;&#8221; + toHtml(getCustomizingValue(&#8222;com.cisag.app.General&#8221;)-&gt;Company:searchString) + &#8222;&lt;\/a&gt;&#8221;)<\/em> zast\u0119puje parametr company w nazwie dzia\u0142ania wyszukiwanym terminem partnera powi\u0105zanego z klientem i linkiem do otwarcia partnera.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Kontekst<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>ALL<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Uwagi<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\u00a0<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>format<\/em><\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\">Poni\u017cszy przyk\u0142ad z definicji dzia\u0142ania <em>help.toHtml<\/em> zwraca ci\u0105g znak\u00f3w ze wszystkimi znakami specjalnymi zakodowanymi zgodnie z HTML:<\/p>\n<p><em>function create()<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 var p_text := parameters.TEXT;<\/em><\/p>\n<p><em>\u00a0 var var r_toHtml as String;<\/em><\/p>\n<p><em>\u00a0 r_toHtml := toHtml(p_text);<\/em><\/p>\n<p><em>\u00a0 result.VALUE := r_toHtml;<\/em><\/p>\n<p><em>}<\/em> <\/div><\/section>\n<h5 id=\"tolower\" ><span class=\"ez-toc-section\" id=\"toLower\"><\/span>toLower<span class=\"ez-toc-section-end\"><\/span><\/h5>\n<table style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\">\n<tbody>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Nazwa<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>toLower<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Opis<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>toLower<\/em> konwertuje wszystkie wielkie litery w ci\u0105gu znak\u00f3w na ma\u0142e litery.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Podpisy<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>String (String text)<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Parametry<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>text <\/em>to ci\u0105g znak\u00f3w, kt\u00f3rego wielkie litery maj\u0105 zosta\u0107 zamienione na ma\u0142e.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Wynik<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Ci\u0105g znak\u00f3w <em>text<\/em> ze wszystkimi du\u017cymi literami zamienionymi na ma\u0142e.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>\u0179r\u00f3d\u0142a b\u0142\u0119d\u00f3w<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Brak<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Przyk\u0142ady<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>toLower(&#8222;Abc123&#8221;)<\/em> zwraca <em>abc123<\/em>.<\/p>\n<p><em>toLower(&#8222;ABC123&#8221;)<\/em> zwraca <em>abc123<\/em>.<\/p>\n<p><em>toLower(&#8222;&#8221;)<\/em> zwraca &#8222;&#8221;.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Kontekst<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>ALL<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Uwagi<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\u00a0<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>toUpper<\/em><\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\">Poni\u017cszy przyk\u0142ad z definicji dzia\u0142ania <em>help.toLower<\/em> konwertuje wszystkie wielkie litery w ci\u0105gu znak\u00f3w na ma\u0142e litery:<\/p>\n<p><em>function create()<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 var p_text := parameters.TEXT;<\/em><\/p>\n<p><em>\u00a0 var r_toLower := toLower(p_text);<\/em><\/p>\n<p><em>\u00a0 result.VALUE := r_toLower;<\/em><\/p>\n<p><em>}<\/em> <\/div><\/section>\n<h5 id=\"toupper\" ><span class=\"ez-toc-section\" id=\"toUpper\"><\/span>toUpper<span class=\"ez-toc-section-end\"><\/span><\/h5>\n<table style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\">\n<tbody>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Nazwa<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>toUpper<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Opis<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>toUpper<\/em> konwertuje wszystkie ma\u0142e litery w ci\u0105gu znak\u00f3w na wielkie litery.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Podpisy<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>String (String text)<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Parametry<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>text<\/em> to ci\u0105g znak\u00f3w, kt\u00f3rego ma\u0142e litery maj\u0105 zosta\u0107 zamienione na du\u017ce.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Wynik<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Ci\u0105g znak\u00f3w <em>text <\/em>ze wszystkimi ma\u0142ymi literami zamienionymi na wielkie.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>\u0179r\u00f3d\u0142a b\u0142\u0119d\u00f3w<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Brak<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Przyk\u0142ady<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>toUpper(&#8222;Abc123&#8221;)<\/em> zwraca <em>ABC123<\/em>.<\/p>\n<p><em>toUpper(&#8222;abc123&#8221;)<\/em> zwraca <em>ABC123<\/em>.<\/p>\n<p><em>toUpper(&#8222;&#8221;)<\/em> zwraca &#8222;&#8221;.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Kontekst<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>ALL<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Uwagi<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\u00a0<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>toLower<\/em><\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\">Poni\u017cszy przyk\u0142ad z definicji dzia\u0142ania <em>help.toUpper<\/em> konwertuje wszystkie ma\u0142e litery w ci\u0105gu znak\u00f3w na wielkie litery:<\/p>\n<p><em>function create()<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 var p_text := parameters.TEXT;<\/em><\/p>\n<p><em>\u00a0 var r_toUpper := toUpper(p_text);<\/em><\/p>\n<p><em>\u00a0 result.VALUE := r_toUpper;<\/em><\/p>\n<p><em>}<\/em> <\/div><\/section>\n<h5 id=\"trim\" ><span class=\"ez-toc-section\" id=\"trim\"><\/span>trim<span class=\"ez-toc-section-end\"><\/span><\/h5>\n<table style=\"border-style: outset; border-color: #000000; background-color: #ffffff; width: 100%; height: 680px;\">\n<tbody>\n<tr style=\"height: 68px;\">\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"132\">\n<p>Nazwa<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"406\">\n<p>trim<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 68px;\">\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"132\">\n<p>Opis<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"406\">\n<p><em>trim<\/em> usuwa spacje na pocz\u0105tku i ko\u0144cu ci\u0105gu znak\u00f3w.<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 68px;\">\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"132\">\n<p>Podpisy<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"406\">\n<p><em>String (String text)<\/em><\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 68px;\">\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"132\">\n<p>Parametry<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"406\">\n<p><em>string<\/em> to ci\u0105g znak\u00f3w.<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 68px;\">\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"132\">\n<p>Wynik<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"406\">\n<p>Usuni\u0119to ci\u0105g znak\u00f3w <em>text <\/em>ze spacjami na pocz\u0105tku i ko\u0144cu.<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 68px;\">\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"132\">\n<p>\u0179r\u00f3d\u0142a b\u0142\u0119d\u00f3w<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"406\">\n<p>Brak<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 68px;\">\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"132\">\n<p>Przyk\u0142ady<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"406\">\n<p><em>trim(&#8221; JOB &#8222;)<\/em> zwraca warto\u015b\u0107 <em>JOB<\/em>.<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 68px;\">\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"132\">\n<p>Kontekst<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"406\">\n<p><em>ALL<\/em><\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 68px;\">\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"132\">\n<p>Uwagi<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"406\">\n<p>Spacje w ci\u0105gu znak\u00f3w <em>text<\/em> nie s\u0105 usuwane.<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 68px;\">\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"132\">\n<p>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"406\">\u00a0<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\">Poni\u017cszy przyk\u0142ad z definicji dzia\u0142ania <em>help.trim<\/em> usuwa spacje na pocz\u0105tku i ko\u0144cu ci\u0105gu znak\u00f3w:<\/p>\n<p><em>function create()<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 var p_text := parameters.TEXT;<\/em><\/p>\n<p><em>\u00a0 var r_trim as String;<\/em><\/p>\n<p><em>\u00a0 result.VALUE := trim(p_text);<\/em><\/p>\n<p><em>}<\/em> <\/div><\/section>\n<h5 id=\"unziptext\" ><span class=\"ez-toc-section\" id=\"unzipText\"><\/span>unzipText<span class=\"ez-toc-section-end\"><\/span><\/h5>\n<table style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\">\n<tbody>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Nazwa<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>unzipText<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Opis<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>unzipText <\/em>rozpakowuje ci\u0105g znak\u00f3w z BLOB i zwraca go jako ci\u0105g znak\u00f3w.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Podpisy<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>String unzipText(Bytes blob)<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Parametry<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>blob <\/em>to ci\u0105g znak\u00f3w przechowywany jako BLOB.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Wynik<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Rozpakowany ci\u0105g znak\u00f3w.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>\u0179r\u00f3d\u0142a b\u0142\u0119d\u00f3w<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Je\u015bli BLOB nie zawiera \u017cadnego spakowanego tekstu, wynikiem funkcji jest zero.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Przyk\u0142ady<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Je\u015bli <em>parameters.object<\/em> jest modu\u0142em tekstowym, w\u00f3wczas <em>unzipText(parameters.object:text)<\/em> zwraca zawarto\u015b\u0107 modu\u0142u tekstowego jako ci\u0105g znak\u00f3w.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Kontekst<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>ALL<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Uwagi<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>W celu rozpakowania za pomoc\u0105 funkcji <em>unzipText<\/em>, BLOB musi by\u0107 spakowany zgodnie ze standardow\u0105 procedur\u0105. Nie dotyczy to wszystkich obiekt\u00f3w BLOB.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\u00a0<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\">Poni\u017cszy przyk\u0142ad z definicji dzia\u0142ania <em>help.unzipText<\/em> rozpakowuje ci\u0105g znak\u00f3w z modu\u0142u tekstowego i zwraca go jako ci\u0105g znak\u00f3w:<\/p>\n<p><em>function create()<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 var p_textModule := parameters.TEXT_MODULE;<\/em><\/p>\n<p><em>\u00a0 var var r_unzipText as String;<\/em><\/p>\n<p><em>\u00a0 var p_language := getByBusinessKey(CisObject(com.cisag.app.general.obj.Language), parameters.LANGUAGE);<\/em><\/p>\n<p><em>\u00a0 if (not isNull(p_language)) {<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 var textModule := getByBusinessKey(CisObject(com.cisag.app.general.obj.Text), p_language:guid, ZERO_GUID, p_textModule);<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 r_unzipText := unzipText(textModule:text);<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 result.IS_NULL := isNull(r_unzipText);<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 result.VALUE := r_unzipText;<\/em><\/p>\n<p><em>\u00a0 }<\/em><\/p>\n<p><em>}<\/em> <\/div><\/section>\n<h4 id=\"funkcje-daty-i-godziny-date-and-time-functions\" ><span class=\"ez-toc-section\" id=\"Funkcje_daty_i_godziny_Date_and_time_functions\"><\/span>Funkcje daty i godziny (Date and time functions)<span class=\"ez-toc-section-end\"><\/span><\/h4>\n<p>Funkcje daty i godziny mog\u0105 by\u0107 u\u017cywane do tworzenia i edytowania dat i godzin <em>CisDates<\/em>. Funkcje daty i godziny obejmuj\u0105:<\/p>\n<ul>\n<li><strong>addDays<\/strong><\/li>\n<li><strong>addHours<\/strong><\/li>\n<li><strong>addMilliseconds<\/strong><\/li>\n<li><strong>addMinutes<\/strong><\/li>\n<li><strong>addSeconds<\/strong><\/li>\n<li><strong>createCisDate<\/strong><\/li>\n<li><strong>createTimestamp<\/strong><\/li>\n<li><strong>day<\/strong><\/li>\n<li><strong>days<\/strong><\/li>\n<li><strong>dateString<\/strong><\/li>\n<li><strong>endOfDay<\/strong><\/li>\n<li><strong>hour<\/strong><\/li>\n<li><strong>hours<\/strong><\/li>\n<li><strong>isMaxDate<\/strong><\/li>\n<li><strong>isMinDate<\/strong><\/li>\n<li><strong>isUndefinedDate<\/strong><\/li>\n<li><strong>milisecond<\/strong><\/li>\n<li><strong>miliseconds<\/strong><\/li>\n<li><strong>minute<\/strong><\/li>\n<li><strong>minutes<\/strong><\/li>\n<li><strong>month<\/strong><\/li>\n<li><strong>months<\/strong><\/li>\n<li><strong>now<\/strong><\/li>\n<li><strong>second<\/strong><\/li>\n<li><strong>seconds<\/strong><\/li>\n<li><strong>startOfDay<\/strong><\/li>\n<li><strong>timeString<\/strong><\/li>\n<li><strong>timeZoneId<\/strong><\/li>\n<li><strong>timeZoneString<\/strong><\/li>\n<li><strong>today<\/strong><\/li>\n<li><strong>toTimestamp<\/strong><\/li>\n<li><strong>weeks<\/strong><\/li>\n<li><strong>year<\/strong><\/li>\n<li><strong>years<\/strong><\/li>\n<\/ul>\n<h5 id=\"adddays\" ><span class=\"ez-toc-section\" id=\"addDays\"><\/span>addDays<span class=\"ez-toc-section-end\"><\/span><\/h5>\n<table style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\">\n<tbody>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Nazwa<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>addDays<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Opis<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>addDays<\/em> dodaje dni do <em>CisDate<\/em> lub punktu w czasie.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Podpisy<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>CisDate addDays(CisDate date, Number offset)<\/em><\/p>\n<p><em>Timestamp addDays(Timestamp time, Number offset)<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Parametry<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>date<\/em> jest <em>CisDate<\/em>.<\/p>\n<p><em>time<\/em> to punkt w czasie.<\/p>\n<p><em>offset <\/em>to liczba dni dodawana do parametru<em> date<\/em> lub <em>time<\/em>.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Wynik<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>CisDate<\/em> lub <em>Timestamp<\/em> <em>offset<\/em> dni po parametrze <em>date<\/em> lub <em>time<\/em>.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>\u0179r\u00f3d\u0142a b\u0142\u0119d\u00f3w<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Brak<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Przyk\u0142ady<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>addDays(today(), 7)<\/em> zwraca <em>CisDate<\/em> za dok\u0142adnie jeden tydzie\u0144.<\/p>\n<p><em>addDays(now(), 7)<\/em> zwraca czas za dok\u0142adnie jeden tydzie\u0144.<\/p>\n<p><em>addDays(startOfDay(now()), 1)<\/em> zwraca czas jutro o godzinie 00:00:00.000.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Kontekst<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>ALL<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Uwagi<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Je\u015bli <em>offset<\/em> jest ujemny, w\u00f3wczas <em>addDays<\/em> zwraca <em>CisDate<\/em> lub czas, kt\u00f3ry le\u017cy przed<em> date<\/em> lub <em>time<\/em>.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>addHours<\/em><em>, <\/em><em>addMilliseconds<\/em><em>, <\/em><em>addMinutes<\/em><em>, <\/em><em>addSeconds<\/em><\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\">Poni\u017cszy przyk\u0142ad z definicji dzia\u0142ania <em>help.addDays<\/em> dodaje dni do bie\u017c\u0105cego dnia i bie\u017c\u0105cej godziny:<\/p>\n<p><em>function create()<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 var p_offset := parameters.OFFSET;<\/em><\/p>\n<p><em>\u00a0 var r_addDaysDate as CisDate;<\/em><\/p>\n<p><em>\u00a0 var r_addDaysTime as Timestamp;<\/em><\/p>\n<p><em>\u00a0 r_addDaysDate := addDays(today(), p_offset);<\/em><\/p>\n<p><em>\u00a0 r_addDaysTime := addDays(now(), p_offset);<\/em><\/p>\n<p><em>\u00a0 result.VALUE_DATE := dateString(r_addDaysDate);<\/em><\/p>\n<p><em>\u00a0 result.VALUE_TIME := r_addDaysTime;<\/em><\/p>\n<p><em>}<\/em> <\/div><\/section>\n<h5 id=\"addhours\" ><span class=\"ez-toc-section\" id=\"addHours\"><\/span>addHours<span class=\"ez-toc-section-end\"><\/span><\/h5>\n<table style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\">\n<tbody>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Nazwa<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>addHours<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Opis<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>addHours<\/em> dodaje godziny do <em>CisDate<\/em> lub godziny.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Podpisy<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>CisDate addHours(CisDate date, Number offset)<\/em><\/p>\n<p><em>Timestamp addHours(Timestamp time, Number offset)<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Parametry<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>date<\/em> jest CisDate.<\/p>\n<p><em>time<\/em> to punkt w czasie.<\/p>\n<p><em>offset<\/em> to liczba godzin dodawana do parametru <em>date<\/em> lub <em>time<\/em>.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Wynik<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>CisDate<\/em> lub <em>Timestamp offset<\/em> godzin po parametrze <em>date<\/em> lub <em>time<\/em>.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>\u0179r\u00f3d\u0142a b\u0142\u0119d\u00f3w<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Brak<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Przyk\u0142ady<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>addHours(today(), 24)<\/em> zwraca <em>CisDate<\/em> dok\u0142adnie za jeden dzie\u0144.<\/p>\n<p><em>addHours(now(), 24)<\/em> zwraca czas za dok\u0142adnie jeden dzie\u0144.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Kontekst<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>ALL<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Uwagi<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Je\u015bli <em>offset<\/em> jest ujemny, w\u00f3wczas <em>addHours<\/em> zwraca <em>CisDate<\/em> lub czas, kt\u00f3ry jest przed <em>date<\/em> lub <em>time<\/em>.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>addDays<\/em><em>, <\/em><em>addMilliseconds<\/em><em>, <\/em><em>addMinutes<\/em><em>, <\/em><em>addSeconds<\/em><\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\">Poni\u017cszy przyk\u0142ad z definicji dzia\u0142ania <em>help.addHours<\/em> dodaje godziny do bie\u017c\u0105cego dnia i bie\u017c\u0105cego czasu:<\/p>\n<p><em>function create()<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 var p_offset := parameters.OFFSET;<\/em><\/p>\n<p><em>\u00a0 var r_addHoursDate as CisDate;<\/em><\/p>\n<p><em>\u00a0 var r_addHoursTime as Timestamp;<\/em><\/p>\n<p><em>\u00a0 r_addHoursDate := addHours(today(), p_offset);<\/em><\/p>\n<p><em>\u00a0 r_addHoursTime := addHours(now(), p_offset);<\/em><\/p>\n<p><em>\u00a0 result.VALUE_DATE := dateString(r_addHoursDate);<\/em><\/p>\n<p><em>\u00a0 result.VALUE_TIME := r_addHoursTime;<\/em><\/p>\n<p><em>}<\/em> <\/div><\/section>\n<h5 id=\"addmilliseconds\" ><span class=\"ez-toc-section\" id=\"addMilliseconds\"><\/span>addMilliseconds<span class=\"ez-toc-section-end\"><\/span><\/h5>\n<table style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\">\n<tbody>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Nazwa<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>addMilliseconds<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Opis<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>addMilliseconds<\/em> dodaje milisekundy do <em>CisDate<\/em> lub punktu w czasie.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Podpisy<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>CisDate addMilliseconds(CisDate date, Number offset)<\/em><\/p>\n<p><em>Timestamp addMilliseconds(Timestamp time, Number offset)<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Parametry<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>date<\/em> jest <em>CisDate<\/em>.<\/p>\n<p><em>time<\/em> to punkt w czasie.<\/p>\n<p><em>offset <\/em>to liczba milisekund dodawana do parametru <em>date<\/em> lub <em>time<\/em>.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Wynik<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>CisDate<\/em> lub <em>Timestamp offset<\/em> milisekund po parametrze <em>date<\/em> lub <em>time<\/em>.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>\u0179r\u00f3d\u0142a b\u0142\u0119d\u00f3w<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Brak<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Przyk\u0142ady<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>addMilliseconds(today(), 24*60*60*1000)<\/em> zwraca <em>CisDate<\/em> dok\u0142adnie za jeden dzie\u0144.<\/p>\n<p><em>addMilliseconds(now(),24*60*60*1000)<\/em> zwraca czas za dok\u0142adnie jeden dzie\u0144.<\/p>\n<p><em>addMilliseconds(endOfDay(now()), 1)<\/em> zwraca jutrzejsz\u0105 godzin\u0119 dok\u0142adnie jedn\u0105 milisekund\u0119 po p\u00f3\u0142nocy.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Kontekst<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>ALL<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Uwagi<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Je\u015bli <em>offset<\/em> jest ujemny, w\u00f3wczas <em>addMilliseconds<\/em> zwraca <em>CisDate<\/em> lub czas, kt\u00f3ry le\u017cy przed <em>date <\/em>lub <em>time<\/em>.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>addDays<\/em><em>, <\/em><em>addHours<\/em><em>, <\/em><em>addMinutes<\/em><em>, <\/em><em>addSeconds<\/em><\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\">Poni\u017cszy przyk\u0142ad z definicji dzia\u0142ania <em>help.addMilliseconds<\/em> dodaje milisekundy do bie\u017c\u0105cego dnia i godziny:<\/p>\n<p><em>function create()<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 var p_offset := parameters.OFFSET;<\/em><\/p>\n<p><em>\u00a0 var r_addMillisecondsDate as CisDate;<\/em><\/p>\n<p><em>\u00a0 var r_addMillisecondsTime as Timestamp;<\/em><\/p>\n<p><em>\u00a0 r_addMillisecondsDate := addMilliseconds(today(), p_offset);<\/em><\/p>\n<p><em>\u00a0 r_addMillisecondsTime := addMilliseconds(now(), p_offset);<\/em><\/p>\n<p><em>\u00a0 result.VALUE_DATE := dateString(r_addMillisecondsDate);<\/em><\/p>\n<p><em>\u00a0 result.VALUE_TIME := r_addMillisecondsTime;<\/em><\/p>\n<p><em>}<\/em> <\/div><\/section>\n<h5 id=\"addminutes\" ><span class=\"ez-toc-section\" id=\"addMinutes\"><\/span>addMinutes<span class=\"ez-toc-section-end\"><\/span><\/h5>\n<table style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\">\n<tbody>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Nazwa<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>addMinutes<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Opis<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>addMinutes <\/em>dodaje minuty do <em>CisDate<\/em> lub godziny.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Podpisy<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>CisDate addMinutes(CisDate date, Number offset)<\/em><\/p>\n<p><em>Timestamp addMinutes(Timestamp time, Number offset)<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Parametry<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>date <\/em>jest <em>CisDate<\/em>.<\/p>\n<p><em>time <\/em>to punkt w czasie.<\/p>\n<p><em>offset <\/em>to liczba minut, kt\u00f3ra ma zosta\u0107 dodana do parametru <em>date<\/em> lub<em> time<\/em>.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Wynik<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>CisDate<\/em> lub <em>Timestamp offset<\/em> minut po parametrze <em>date<\/em> lub <em>time<\/em>.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>\u0179r\u00f3d\u0142a b\u0142\u0119d\u00f3w<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Brak<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Przyk\u0142ady<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>addMinutes(today(), 24*60)<\/em> zwraca <em>CisDate<\/em> za dok\u0142adnie jeden dzie\u0144.<\/p>\n<p><em>addMinutes(now(),24*60)<\/em> zwraca czas za dok\u0142adnie jeden dzie\u0144.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Kontekst<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>ALL<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Uwagi<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Je\u015bli <em>offset<\/em> jest ujemny, w\u00f3wczas <em>addMinutes<\/em> zwraca <em>CisDate<\/em> lub czas, kt\u00f3ry le\u017cy przed <em>date<\/em> lub<em> time<\/em>.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>addDays<\/em><em>, <\/em><em>addHours<\/em><em>, <\/em><em>addMilliseconds<\/em><em>, <\/em><em>addSeconds<\/em><\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\">Poni\u017cszy przyk\u0142ad z definicji dzia\u0142ania <em>help.addMinutes<\/em> dodaje minuty do bie\u017c\u0105cego dnia i aktualnej godziny:<\/p>\n<p><em>function create()<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 var p_offset := parameters.OFFSET;<\/em><\/p>\n<p><em>\u00a0 var r_addMinutesDate as CisDate;<\/em><\/p>\n<p><em>\u00a0 var r_addMinutesTime as Timestamp;<\/em><\/p>\n<p><em>\u00a0 r_addMinutesDate := addMinutes(today(), p_offset);<\/em><\/p>\n<p><em>\u00a0 r_addMinutesTime := addMinutes(now(), p_offset);<\/em><\/p>\n<p><em>\u00a0 result.VALUE_DATE := dateString(r_addMinutesDate);<\/em><\/p>\n<p><em>\u00a0 result.VALUE_TIME := r_addMinutesTime;<\/em><\/p>\n<p><em>}<\/em> <\/div><\/section>\n<h5 id=\"addseconds\" ><span class=\"ez-toc-section\" id=\"addSeconds\"><\/span>addSeconds<span class=\"ez-toc-section-end\"><\/span><\/h5>\n<table style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\">\n<tbody>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Nazwa<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>addSeconds<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Opis<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>addSeconds<\/em> dodaje sekundy do <em>CisDate<\/em> lub godziny.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Podpisy<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>CisDate addSeconds(CisDate date, Number offset)<\/em><\/p>\n<p><em>Timestamp addSeconds(Timestamp time, Number offset)<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Parametry<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>date<\/em> jest <em>CisDate<\/em>.<\/p>\n<p><em>time<\/em> to punkt w czasie.<\/p>\n<p><em>offset <\/em>to liczba sekund dodawana do parametru <em>date<\/em> lub <em>time<\/em>.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Wynik<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>CisDate <\/em>lub <em>Timestamp offset<\/em> sekund po parametrze <em>date<\/em> lub <em>time<\/em>.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>\u0179r\u00f3d\u0142a b\u0142\u0119d\u00f3w<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Brak<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Przyk\u0142ady<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>addSeconds(today(), 24*60*60)<\/em> zwraca <em>CisDate<\/em> dok\u0142adnie za jeden dzie\u0144.<\/p>\n<p><em>addSeconds(now(),24*60*60)<\/em> zwraca czas za dok\u0142adnie jeden dzie\u0144.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Kontekst<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>ALL<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Uwagi<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Je\u015bli <em>offset<\/em> jest ujemny, w\u00f3wczas <em>addSeconds<\/em> zwraca <em>CisDate<\/em> lub czas, kt\u00f3ry le\u017cy przed <em>date<\/em> lub <em>time<\/em>.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>addDays<\/em><em>, <\/em><em>addHours<\/em><em>, <\/em><em>addMilliseconds<\/em><em>, <\/em><em>addMinutes<\/em><\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\">Poni\u017cszy przyk\u0142ad z definicji dzia\u0142ania <em>help.addSeconds<\/em> dodaje sekundy do bie\u017c\u0105cego dnia i aktualnej godziny.<\/p>\n<p><em>function create()<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 var p_offset := parameters.OFFSET;<\/em><\/p>\n<p><em>\u00a0 var r_addSecondsDate as CisDate;<\/em><\/p>\n<p><em>\u00a0 var r_addSecondsTime as Timestamp;<\/em><\/p>\n<p><em>\u00a0 r_addSecondsDate := addSeconds(today(), p_offset);<\/em><\/p>\n<p><em>\u00a0 r_addSecondsTime := addSeconds(now(), p_offset);<\/em><\/p>\n<p><em>\u00a0 result.VALUE_DATE := dateString(r_addSecondsDate);<\/em><\/p>\n<p><em>\u00a0 result.VALUE_TIME := r_addSecondsTime;<\/em><\/p>\n<p><em>} <\/em><\/div><\/section>\n<h5 id=\"createcisdate\" ><span class=\"ez-toc-section\" id=\"createCisDate\"><\/span>createCisDate<span class=\"ez-toc-section-end\"><\/span><\/h5>\n<table style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\">\n<tbody>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Nazwa<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>createCisDate<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Opis<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>createCisDate<\/em> tworzy dowoln\u0105 dat\u0119 <em>CisDate<\/em>.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Podpisy<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>CisDate createCisDate(Number year)<\/em><\/p>\n<p><em>CisDate createCisDate(Number year, Number month)<\/em><\/p>\n<p><em>CisDate createCisDate(Number year, Number month, Number day)<\/em><\/p>\n<p><em>CisDate createCisDate(Number year, Number month, Number day, Number hour)<\/em><\/p>\n<p><em>CisDate createCisDate(Number year, Number month, Number day, Number hour, Number minute)<\/em><\/p>\n<p><em>CisDate createCisDate(Number year, Number month, Number day, Number hour, Number minute, Number second)<\/em><\/p>\n<p><em>CisDate createCisDate(Number year, Number month, Number day, Number hour, Number minute, Number second, Number millisecond)<\/em><\/p>\n<p><em>CisDate createCisDate(String timeZoneId, Number year)<\/em><\/p>\n<p><em>CisDate createCisDate(String timeZoneId, Number year, Number month)<\/em><\/p>\n<p><em>CisDate createCisDate(String timeZoneId, Number year, Number month, Number day)<\/em><\/p>\n<p><em>CisDate createCisDate(String timeZoneId, Number year, Number month, Number day, Number hour)<\/em><\/p>\n<p><em>CisDate createCisDate(String timeZoneId, Number year, Number month, Number day, Number hour, Number minute)<\/em><\/p>\n<p><em>CisDate createCisDate(String timeZoneId, Number year, Number month, Number day, Number hour, Number minute, Number second)<\/em><\/p>\n<p><em>CisDate createCisDate(String timeZoneId, Number year, Number month, Number day, Number hour, Number minute, Number second, Number millisecond)<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Parametry<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>year<\/em> oznacza rok.<\/p>\n<p><em>month <\/em>oznacza miesi\u0105c.<\/p>\n<p><em>day<\/em> to dzie\u0144.<\/p>\n<p><em>hour<\/em> oznacza godzin\u0119.<\/p>\n<p><em>minute <\/em>oznacza minut\u0119.<\/p>\n<p><em>second<\/em> to sekunda<\/p>\n<p><em>millisecond<\/em> oznacza milisekund\u0119.<\/p>\n<p><em>timeZoneId<\/em> to strefa czasowa <em>CisDate.<\/em><\/p>\n<p>Wszystkie parametry z wyj\u0105tkiem <em>year <\/em>s\u0105 opcjonalne. Brakuj\u0105ce cz\u0105stki czasu s\u0105 wype\u0142niane warto\u015bci\u0105 0. Brakuj\u0105ce cz\u0105stki daty s\u0105 wype\u0142niane warto\u015bci\u0105 1. Je\u015bli nie okre\u015blono strefy czasowej, jest ona pobierana z bie\u017c\u0105cego kontekstu uruchomieniowego.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Wynik<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>A CisDate<\/em>.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>\u0179r\u00f3d\u0142a b\u0142\u0119d\u00f3w<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Brak<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Przyk\u0142ady<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>createCisDate(year(today()), 1, 1)<\/em> zwraca <em>CisDate<\/em> na pocz\u0105tku bie\u017c\u0105cego roku.<\/p>\n<p><em>createCisDate(year(today()), 3, -4)<\/em> zwraca <em>CisDate <\/em>5 dni przed rozpocz\u0119ciem 3 miesi\u0105ca w bie\u017c\u0105cym roku.<\/p>\n<p><em>createCisDate(&#8222;GMT&#8221;, 1980)<\/em> zwraca <em>CisDate<\/em> 1980-01-01 GMT.<\/p>\n<p><em>createCisDate(&#8222;GMT&#8221;, 1980, 0, 0)<\/em> zwraca <em>CisDate<\/em> 1979-11-30 GMT.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Kontekst<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>ALL<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Uwagi<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Dost\u0119pne identyfikatory stref czasowych mo\u017cna wy\u015bwietli\u0107 w kolumnie<em> Identyfikacja <\/em>w aplikacji <em>Strefy czasowe<\/em>.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>createTimestamp<\/em><\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\">Poni\u017cszy przyk\u0142ad z definicji dzia\u0142ania <em>help.createCisDate<\/em> tworzy dowoln\u0105 dat\u0119 <em>CisDate<\/em> w dowolnej strefie czasowej:<\/p>\n<p><em>function create()<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 var p_timezoneId := parameters.TIMEZONE_ID;<\/em><\/p>\n<p><em>\u00a0 var p_year := parameters.YEAR;<\/em><\/p>\n<p><em>\u00a0 var p_month := parameters.MONTH;<\/em><\/p>\n<p><em>\u00a0 var p_day := parameters.DAY;<\/em><\/p>\n<p><em>\u00a0 var p_hour := parameters.HOUR;<\/em><\/p>\n<p><em>\u00a0 var p_minute := parameters.MINUTE;<\/em><\/p>\n<p><em>\u00a0 var p_second := parameters.SECOND;<\/em><\/p>\n<p><em>\u00a0 var p_millisecond := parameters.MILLISECOND;<\/em><\/p>\n<p><em>\u00a0 var r_createCisDate as CisDate;<\/em><\/p>\n<p><em>\u00a0 if (p_timezoneId = &#8222;&#8221;)<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 r_createCisDate := createCisDate(p_year, p_month, p_day, p_hour, p_minute, p_second, p_millisecond);<\/em><\/p>\n<p><em>\u00a0 else<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 r_createCisDate := createCisDate(p_timezoneId, p_year, p_month, p_day, p_hour, p_minute, p_second, p_millisecond);<\/em><\/p>\n<p><em>\u00a0 result.VALUE_CISDATE := dateString(r_createCisDate);<\/em><\/p>\n<p><em>\u00a0 result.VALUE_TIMEZONE_ID := timeZoneId(r_createCisDate);<\/em><\/p>\n<p><em>}<\/em> <\/div><\/section>\n<h5 id=\"createtimestamp\" ><span class=\"ez-toc-section\" id=\"createTimestamp\"><\/span>createTimestamp<span class=\"ez-toc-section-end\"><\/span><\/h5>\n<table style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\">\n<tbody>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Nazwa<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>createTimestamp<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Opis<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>createTimestamp<\/em> tworzy dowolny czas.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Podpisy<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>Timestamp createTimestamp(Number year)<\/em><\/p>\n<p><em>Timestamp createTimestamp(Number year, Number month)<\/em><\/p>\n<p><em>Timestamp createTimestamp(Number year, Number month, Number day)<\/em><\/p>\n<p><em>Timestamp createTimestamp(Number year, Number month, Number day, Number hour)<\/em><\/p>\n<p><em>Timestamp createTimestamp(Number year, Number month, Number day, Number hour, Number minute)<\/em><\/p>\n<p><em>Timestamp createTimestamp(Number year, Number month, Number day, Number hour, Number minute, Number second)<\/em><\/p>\n<p><em>Timestamp createTimestamp(Number year, Number month, Number day, Number hour, Number minute, Number second, Number millisecond)<\/em><\/p>\n<p><em>Timestamp createTimestamp(String timeZoneId, Number year)<\/em><\/p>\n<p><em>Timestamp createTimestamp(String timeZoneId, Number year, Number month)<\/em><\/p>\n<p><em>Timestamp createTimestamp(String timeZoneId, Number year, Number month, Number day)<\/em><\/p>\n<p><em>Timestamp createTimestamp(String timeZoneId, Number year, Number month, Number day, Number hour)<\/em><\/p>\n<p><em>Timestamp createTimestamp(String timeZoneId, Number year, Number month, Number day, Number hour, Number minute)<\/em><\/p>\n<p><em>Timestamp createTimestamp(String timeZoneId, Number year, Number month, Number day, Number hour, Number minute, Number second)<\/em><\/p>\n<p><em>Timestamp createTimestamp(String timeZoneId, Number year, Number month, Number day, Number hour, Number minute, Number second, Number millisecond)<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Parametry<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>year<\/em> oznacza rok.<\/p>\n<p><em>month <\/em>oznacza miesi\u0105c.<\/p>\n<p><em>day<\/em> to dzie\u0144.<\/p>\n<p><em>hour<\/em> oznacza godzin\u0119.<\/p>\n<p><em>minute<\/em> oznacza minut\u0119.<\/p>\n<p><em>second<\/em> oznacza sekund\u0119<\/p>\n<p><em>millisecond<\/em> oznacza milisekund\u0119.<\/p>\n<p><em>timeZoneId<\/em> to strefa czasowa, w kt\u00f3rej wy\u015bwietlane s\u0105 cz\u0105steczki czasu.<\/p>\n<p>Wszystkie parametry z wyj\u0105tkiem<em> year<\/em> s\u0105 opcjonalne. Brakuj\u0105ce cz\u0105stki czasu s\u0105 wype\u0142niane warto\u015bci\u0105 0. Brakuj\u0105ce cz\u0105stki daty s\u0105 wype\u0142niane warto\u015bci\u0105 1<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Wynik<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Znacznik czasu w strefie czasowej systemu.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>\u0179r\u00f3d\u0142a b\u0142\u0119d\u00f3w<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Brak<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Przyk\u0142ady<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>createTimestamp(year(today()), 1, 1)<\/em> zwraca czas na pocz\u0105tku bie\u017c\u0105cego roku.<\/p>\n<p><em>createTimestamp(year(today()), 3, -4)<\/em> zwraca czas 5 dni przed rozpocz\u0119ciem 3 miesi\u0105ca w bie\u017c\u0105cym roku.<\/p>\n<p><em>createTimestamp(&#8222;EST&#8221;, year(today()), 1, 1)<\/em> zwraca czas na pocz\u0105tku roku w okre\u015blonej strefie czasowej. W zale\u017cno\u015bci od strefy czasowej kontekstu uruchomieniowego i bie\u017c\u0105cej daty, mo\u017ce to by\u0107 na przyk\u0142ad 2019-12-31 14:00:00.000 w strefie czasowej CES.<\/p>\n<p><em>createTimestamp(1980)<\/em> zwraca 1980-01-01 00:00:00.000 w strefie czasowej bie\u017c\u0105cego kontekstu uruchomieniowego.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Kontekst<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>ALL<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Uwagi<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\u00a0<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>createCisDate<\/em><\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\">Poni\u017cszy przyk\u0142ad z definicji dzia\u0142ania <em>help.createTimestamp<\/em> tworzy dowolny czas w strefie czasowej systemu:<\/p>\n<p><em>function create()<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 var p_timezoneId := parameters.TIMEZONE_ID;<\/em><\/p>\n<p><em>\u00a0 var p_year := parameters.YEAR;<\/em><\/p>\n<p><em>\u00a0 var p_month := parameters.MONTH;<\/em><\/p>\n<p><em>\u00a0 var p_day := parameters.DAY;<\/em><\/p>\n<p><em>\u00a0 var p_hour := parameters.HOUR;<\/em><\/p>\n<p><em>\u00a0 var p_minute := parameters.MINUTE;<\/em><\/p>\n<p><em>\u00a0 var p_second := parameters.SECOND;<\/em><\/p>\n<p><em>\u00a0 var p_millisecond := parameters.MILLISECOND;<\/em><\/p>\n<p><em>\u00a0 var r_createTimestamp as Timestamp;<\/em><\/p>\n<p><em>\u00a0 if (p_timezoneId = &#8222;&#8221;)<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 r_createTimestamp := createTimestamp(p_year, p_month, p_day, p_hour, p_minute, p_second, p_millisecond);<\/em><\/p>\n<p><em>\u00a0 inny<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 r_createTimestamp := createTimestamp(p_timezoneId, p_year, p_month, p_day, p_hour, p_minute, p_second, p_millisecond);<\/em><\/p>\n<p><em>\u00a0 result.VALUE_TIMESTAMP := r_createTimestamp;<\/em><\/p>\n<p><em>\u00a0 result.VALUE_TIMEZONE_ID := timeZoneString(r_createTimestamp);<\/em><\/p>\n<p><em>}<\/em> <\/div><\/section>\n<h5 id=\"day\" ><span class=\"ez-toc-section\" id=\"day\"><\/span>day<span class=\"ez-toc-section-end\"><\/span><\/h5>\n<table style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\">\n<tbody>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Nazwa<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>day<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Opis<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>day<\/em> zwraca dzie\u0144 miesi\u0105ca jako liczb\u0119 dla <em>CisDate<\/em> lub punktu w czasie.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Podpisy<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>Number day(CisDate date)<\/em><\/p>\n<p><em>Number day(Timestamp time)<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Parametry<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>date<\/em> jest <em>CisDate<\/em>, kt\u00f3rego dzie\u0144 miesi\u0105ca jest okre\u015blony.<\/p>\n<p><em>time<\/em> to punkt w czasie, kt\u00f3rego dzie\u0144 miesi\u0105ca jest okre\u015blony.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Wynik<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Dzie\u0144 miesi\u0105ca jako liczba.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>\u0179r\u00f3d\u0142a b\u0142\u0119d\u00f3w<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Brak<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Przyk\u0142ady<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>day(createCisDate(1980, 1, 1)<\/em> zwraca 1.<\/p>\n<p><em>day(today())<\/em> zwraca dzisiejszy dzie\u0144 miesi\u0105ca.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Kontekst<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>ALL<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Uwagi<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Poszczeg\u00f3lne cz\u0119\u015bci <em>CisDate<\/em> s\u0105 dost\u0119pne ze stref\u0105 czasow\u0105 wskazan\u0105 w <em>CisDate<\/em>. Na przyk\u0142ad <em>day(createCisDate(&#8222;EET&#8221;, 1980, 1, 1)<\/em> zwraca liczb\u0119 1 niezale\u017cnie od strefy czasowej bie\u017c\u0105cego kontekstu uruchomieniowego.<\/p>\n<p>Je\u015bli wygenerowana data <em>CisDate<\/em> zostanie przekonwertowana na punkt w czasie i zostanie okre\u015blony jej rok, wynik zale\u017cy od strefy czasowej bie\u017c\u0105cego kontekstu uruchomieniowego. Na przyk\u0142ad, <em>day(toTimestamp(createCisDate(&#8222;EET&#8221;, 1980, 1, 1))<\/em> zwraca liczb\u0119 31, je\u015bli bie\u017c\u0105cy kontekst runtime u\u017cywa strefy czasowej, kt\u00f3ra jest na zach\u00f3d od EET.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>hour, millisecond, minute, month, second, year<\/em><\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\">Poni\u017cszy przyk\u0142ad z definicji dzia\u0142ania <em>help.day<\/em> zwraca dzie\u0144 w miesi\u0105cu jako liczb\u0119 dla bie\u017c\u0105cej daty i godziny:<\/p>\n<p><em>function create()<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 var p_today := today();<\/em><\/p>\n<p><em>\u00a0 var p_now := now();<\/em><\/p>\n<p><em>\u00a0 result.VALUE_CISDATE := day(p_today);<\/em><\/p>\n<p><em>\u00a0 result.VALUE_TIMESTAMP := day(p_now);<\/em><\/p>\n<p><em>}<\/em> <\/div><\/section>\n<h5 id=\"days\" ><span class=\"ez-toc-section\" id=\"days\"><\/span>days<span class=\"ez-toc-section-end\"><\/span><\/h5>\n<table style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\">\n<tbody>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Nazwa<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>days<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Opis<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>days<\/em> okre\u015bla d\u0142ugo\u015b\u0107 okresu mi\u0119dzy dwoma <em>CisDates<\/em> lub punktami w czasie w dniach.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Podpisy<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>Number days(CisDate from, CisDate to)<\/em><\/p>\n<p><em>Number days(Timestamp from, Timestamp to)<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Parametry<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>from<\/em> to pierwsza <em>CisDate<\/em> lub punkt w czasie.<\/p>\n<p><em>to<\/em> jest drug\u0105 dat\u0105 <em>CisDate <\/em>lub punktem w czasie.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Wynik<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Funkcja zwraca d\u0142ugo\u015b\u0107 okresu mi\u0119dzy <em>from<\/em> i <em>to<\/em> w dniach. Miejsca dziesi\u0119tne s\u0105 obcinane w wyniku funkcji, tj. 1,9 dnia staje si\u0119 1 dniem. W przeciwie\u0144stwie do funkcji okre\u015blaj\u0105cych d\u0142ugo\u015b\u0107 okresu w jednostkach czasu: godzina, minuta, sekunda i milisekunda, <em>days<\/em> zwraca warto\u015b\u0107 r\u00f3\u017cn\u0105 od 0, gdy tylko <em>from<\/em> i <em>to<\/em> przypadaj\u0105 na r\u00f3\u017cne dni, nawet je\u015bli mi\u0119dzy nimi nie ma 24 godzin. Na przyk\u0142ad, <em>days(addSeconds(today(), -1), today())<\/em> zwraca 1, a <em>hours(addSeconds(today(), -1), today())<\/em> zwraca 0. Takie zachowanie wynika ze zmiennej d\u0142ugo\u015bci miesi\u0119cy i przepis\u00f3w dotycz\u0105cych czasu letniego, roku przest\u0119pnego i sekundy przest\u0119pnej.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>\u0179r\u00f3d\u0142a b\u0142\u0119d\u00f3w<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Brak<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Przyk\u0142ady<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>days(today(), addDays(today(), 7))<\/em> zwraca 7.<\/p>\n<p><em>days(today(), addHours(today(), 20))<\/em> zwraca 0.<\/p>\n<p><em>days(today(), addHours(today(), 36)<\/em> zwraca 1.<\/p>\n<p><em>days(addHours(today(), 36), today())<\/em> zwraca -1.<\/p>\n<p><em>days(addHours(today(), -4), today())<\/em> zwraca 1.<\/p>\n<p><em>days(now(), addDays(now(), 7))<\/em> zwraca 7.<\/p>\n<p><em>days(createCisDate(year(today())), createCisDate(year(today()))) + 1)) &gt; 365<\/em> jest prawd\u0105, je\u015bli bie\u017c\u0105cy rok jest rokiem przest\u0119pnym.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Kontekst<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>ALL<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Uwagi<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Je\u015bli <em>from<\/em> i <em>to<\/em> s\u0105 typu danych <em>CisDate<\/em>, s\u0105 one konwertowane do strefy czasowej GMT+0 do oblicze\u0144. <em>days(createCisDate(&#8222;NST&#8221;, 1980), createCisDate(&#8222;NPT1&#8221;, 1980))<\/em> zwraca zatem -1, poniewa\u017c strefa czasowa NST znajduje si\u0119 na zach\u00f3d, a strefa czasowa NPT1 na wsch\u00f3d od GMT+0. <em>CisDate<\/em> <em>from<\/em> przypada zatem na ostatni dzie\u0144 1979 roku ze strefy czasowej GMT+0.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>hours, milliseconds, minutes, months, seconds, weeks, years<\/em><\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\">Poni\u017cszy przyk\u0142ad z definicji dzia\u0142ania <em>help.days<\/em> okre\u015bla dzie\u0144 roku dla bie\u017c\u0105cej daty:<\/p>\n<p><em>function create()<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 var p_today := today();<\/em><\/p>\n<p><em>\u00a0 var r_dayOfYear := days(createCisDate(year(p_today)), today()) + 1;<\/em><\/p>\n<p><em>\u00a0 result.VALUE := r_dayOfYear;<\/em><\/p>\n<p><em>}<\/em> <\/div><\/section>\n<h5 id=\"datestring\" ><span class=\"ez-toc-section\" id=\"dateString\"><\/span>dateString<span class=\"ez-toc-section-end\"><\/span><\/h5>\n<table style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\">\n<tbody>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Nazwa<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>dateString<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Opis<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>dateString <\/em>zwraca cz\u0119\u015b\u0107 daty <em>CisDate<\/em> lub punkt w czasie jako ci\u0105g znak\u00f3w.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Podpisy<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>String dateString(CisDate date)<\/em><\/p>\n<p><em>String dateString(Timestamp time)<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Parametry<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>date<\/em> to po\u0142\u0105czenie godziny i strefy czasowej.<\/p>\n<p><em>time<\/em> to punkt w czasie z dok\u0142adno\u015bci\u0105 do milisekund.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Wynik<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Cz\u0119\u015b\u0107 daty <em>date <\/em>lub <em>time<\/em>. Je\u015bli parametrem jest czas, cz\u0119\u015b\u0107 daty jest zwracana w strefie czasowej bie\u017c\u0105cego kontekstu uruchomieniowego.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>\u0179r\u00f3d\u0142a b\u0142\u0119d\u00f3w<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Brak<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Przyk\u0142ady<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>dateString(today()) <\/em><em>i dateString(now())<\/em> zwracaj\u0105 cz\u0119\u015b\u0107 dzisiejszej daty jako ci\u0105g znak\u00f3w.<\/p>\n<p><em>dateString(MIN_DATE)<\/em> zwraca 1000-01-01 jako ci\u0105g znak\u00f3w zgodnie z formatowaniem w ustawieniach u\u017cytkownika.<\/p>\n<p><em>dateString(MAX_DATE)<\/em> zwraca 9999-12-31 jako ci\u0105g znak\u00f3w zgodnie z formatowaniem w ustawieniach u\u017cytkownika.<\/p>\n<p><em>dateString(createCisDate(&#8222;NPT1&#8221;, 1980))<\/em> zwraca 1980-01-01.<\/p>\n<p><em>dateString(createTimestamp(&#8222;NPT1&#8221;, 1980))<\/em> zwraca 1979-12-31, je\u015bli strefa czasowa bie\u017c\u0105cego kontekstu uruchomieniowego jest na zach\u00f3d od Katmandu.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Kontekst<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>ALL<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Uwagi<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\u00a0<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>format<\/em><em>, <\/em><em>timeString<\/em><em>, <\/em><em>timeZoneString<\/em><\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\">Poni\u017cszy przyk\u0142ad z definicji dzia\u0142ania <em>help.dateString<\/em> zwraca cz\u0119\u015b\u0107 bie\u017c\u0105cej daty i bie\u017c\u0105cy czas jako ci\u0105g znak\u00f3w:<\/p>\n<p><em>function create()<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 result.VALUE1 := dateString(today());<\/em><\/p>\n<p><em>\u00a0 result.VALUE2 := dateString(now());<\/em><\/p>\n<p><em>}<\/em> <\/div><\/section>\n<h5 id=\"endofday\" ><span class=\"ez-toc-section\" id=\"endOfDay\"><\/span>endOfDay<span class=\"ez-toc-section-end\"><\/span><\/h5>\n<table style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\">\n<tbody>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Nazwa<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>endOfDay<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Opis<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>endOfDay<\/em> okre\u015bla ostatni czas na koniec dnia.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Podpisy<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>Timestamp endOfDay(CisDate date)<\/em><\/p>\n<p><em>Timestamp endOfDay(Timestamp time)<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Parametry<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>date<\/em> to <em>CisDate<\/em>, kt\u00f3rego ostatni czas jest okre\u015blany na koniec dnia.<\/p>\n<p><em>time<\/em> to czas, kt\u00f3rego ostatni czas jest okre\u015blany na koniec dnia.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Wynik<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Ostatni moment pod koniec dnia<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>\u0179r\u00f3d\u0142a b\u0142\u0119d\u00f3w<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Brak<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Przyk\u0142ady<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>endOfDay(today()) <\/em><em>i endOfDay(now())<\/em> zwracaj\u0105 godzin\u0119 23:59:59.999 dnia dzisiejszego.<\/p>\n<p><em>setActivityWorkDelay(seconds(activity:creationTime, endOfDay(today()))) + 1)<\/em> ustawia czas rozpocz\u0119cia dzia\u0142ania na pierwsz\u0105 sekund\u0119 po p\u00f3\u0142nocy nast\u0119pnego dnia.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Kontekst<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>ALL<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Uwagi<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\u00a0<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>startOfDay<\/em><\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\">Poni\u017cszy przyk\u0142ad z definicji dzia\u0142ania <em>help.endOfDay<\/em> okre\u015bla ostatni czas na koniec bie\u017c\u0105cej daty:<\/p>\n<p><em>function create()<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 var p_now := now();<\/em><\/p>\n<p><em>\u00a0 var r_endOfDay := endOfDay(p_now);<\/em><\/p>\n<p><em>\u00a0 result.VALUE := r_endOfDay;<\/em><\/p>\n<p><em>} <\/em><\/div><\/section>\n<h5 id=\"hour\" ><span class=\"ez-toc-section\" id=\"hour\"><\/span>hour<span class=\"ez-toc-section-end\"><\/span><\/h5>\n<table style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\">\n<tbody>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Nazwa<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>hour<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Opis<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>hour <\/em>zwraca godzin\u0119 w ci\u0105gu dnia jako liczb\u0119 dla <em>CisDate<\/em> lub punktu w czasie.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Podpisy<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>Number hour(CisDate date)<\/em><\/p>\n<p><em>Number hour(Timestamp time)<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Parametry<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>date <\/em>to <em>CisDate<\/em>, kt\u00f3rego godzina jest okre\u015blona.<\/p>\n<p><em>time<\/em> to punkt w czasie, kt\u00f3rego godzina jest okre\u015blona.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Wynik<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Godzina w ci\u0105gu dnia jako liczba.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>\u0179r\u00f3d\u0142a b\u0142\u0119d\u00f3w<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Brak<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Przyk\u0142ady<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>hour(createCisDate(1980, 1, 1)<\/em> zwraca 0.<\/p>\n<p><em>hour(createCisDate(1980, 1, 1, 7)<\/em> zwraca 7.<\/p>\n<p><em>hour(now())<\/em> zwraca bie\u017c\u0105c\u0105 godzin\u0119 dnia.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Kontekst<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>ALL<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Uwagi<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Poszczeg\u00f3lne cz\u0119\u015bci <em>CisDate<\/em> s\u0105 dost\u0119pne przy u\u017cyciu strefy czasowej okre\u015blonej w <em>CisDate<\/em>. Na przyk\u0142ad <em>hour(createCisDate(&#8222;EET&#8221;, 1980, 1, 1, 7)<\/em> zwraca liczb\u0119 7, niezale\u017cnie od strefy czasowej bie\u017c\u0105cego kontekstu uruchomieniowego.<\/p>\n<p>Je\u015bli wygenerowana data <em>CisDate<\/em> zostanie przekonwertowana na czas i zostanie okre\u015blona jej godzina, wynik zale\u017cy od strefy czasowej bie\u017c\u0105cego kontekstu uruchomieniowego. Na przyk\u0142ad <em>hour(toTimestamp(createCisDate(&#8222;EET&#8221;, 1980, 1, 1)) <\/em>zwraca liczb\u0119 23, je\u015bli istnieje r\u00f3\u017cnica jednej godziny mi\u0119dzy EET a stref\u0105 czasow\u0105 bie\u017c\u0105cego kontekstu uruchomieniowego.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>day, millisecond, minute, month, second, year<\/em><\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\">Poni\u017cszy przyk\u0142ad z definicji dzia\u0142ania <em>help.hour<\/em> zwraca bie\u017c\u0105c\u0105 godzin\u0119:<\/p>\n<p><em>function create()<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 var p_today := today();<\/em><\/p>\n<p><em>\u00a0 var p_now := now();\u00a0 <\/em><\/p>\n<p><em>\u00a0 result.VALUE_CISDATE := hour(p_today);<\/em><\/p>\n<p><em>\u00a0 result.VALUE_TIMESTAMP := hour(p_now);<\/em><\/p>\n<p><em>}<\/em> <\/div><\/section>\n<h5 id=\"hours\" ><span class=\"ez-toc-section\" id=\"hours\"><\/span>hours<span class=\"ez-toc-section-end\"><\/span><\/h5>\n<table style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\">\n<tbody>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Nazwa<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>hours<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Opis<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>hours<\/em> okre\u015bla d\u0142ugo\u015b\u0107 okresu mi\u0119dzy dwoma <em>CisDates<\/em> lub punktami w czasie w godzinach.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Podpisy<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>Number hours(CisDate from, CisDate to)<\/em><\/p>\n<p><em>Number hours(Timestamp from, Timestamp to)<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Parametry<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>from <\/em>jest pierwsz\u0105 dat\u0105 <em>CisDate<\/em> lub punktem w czasie.<\/p>\n<p><em>to <\/em>jest drug\u0105 dat\u0105 <em>CisDate <\/em>lub punktem w czasie.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Wynik<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Funkcja zwraca d\u0142ugo\u015b\u0107 okresu mi\u0119dzy <em>from<\/em> i <em>to<\/em> w godzinach. Miejsca dziesi\u0119tne s\u0105 obcinane w wyniku funkcji, tj. 1,9 godziny staje si\u0119 1 godzin\u0105.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>\u0179r\u00f3d\u0142a b\u0142\u0119d\u00f3w<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Brak<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Przyk\u0142ady<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>hours(today(), addHours(today(), 7))<\/em> zwraca 7.<\/p>\n<p><em>hours(today(), addMinutes(today(), 20))<\/em> zwraca 0.<\/p>\n<p><em>hours(today(), addMinutes(today(), 80)<\/em> zwraca 1.<\/p>\n<p><em>hours(addMinutes(today(), 80), today())<\/em> zwraca -1.<\/p>\n<p><em>hours(addMinutes(today(), -4), today())<\/em> zwraca 0.<\/p>\n<p><em>hours(now(), addHours(now(), 7))<\/em> zwraca 7.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Kontekst<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>ALL<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Uwagi<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Je\u015bli <em>from<\/em> i <em>to<\/em> s\u0105 typu danych <em>CisDate<\/em>, s\u0105 one konwertowane do strefy czasowej GMT+0 do oblicze\u0144. <em>hours(createCisDate(&#8222;NPT1&#8221;, 1980), createCisDate(&#8222;NST&#8221;, 1980))<\/em> zwraca zatem 9, poniewa\u017c istnieje r\u00f3\u017cnica czasu wynosz\u0105ca 9 godzin mi\u0119dzy strefami czasowymi NPT1 i NST.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>days, milliseconds, minutes, months, seconds, weeks, years<\/em><\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\">Poni\u017cszy przyk\u0142ad z definicji dzia\u0142ania <em>help.hours<\/em> zwraca bie\u017c\u0105c\u0105 godzin\u0119:<\/p>\n<p><em>function create()<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 var p_today := today();<\/em><\/p>\n<p><em>\u00a0 var r_hourOfDay := hours(startOfDay(p_today), p_now);<\/em><\/p>\n<p><em>\u00a0 result.VALUE := r_hourOfDay;<\/em><\/p>\n<p><em>}<\/em> <\/div><\/section>\n<h5 id=\"ismaxdate\" ><span class=\"ez-toc-section\" id=\"isMaxDate\"><\/span>isMaxDate<span class=\"ez-toc-section-end\"><\/span><\/h5>\n<table style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\">\n<tbody>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Nazwa<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>isMaxDate<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Opis<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>isMaxDate<\/em> sprawdza, czy <em>CisDate<\/em> lub czas ma najwi\u0119ksz\u0105 wy\u015bwietlan\u0105 warto\u015b\u0107.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Podpisy<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>Boolean isMaxDate(CisDate date)<\/em><\/p>\n<p><em>Boolean isMaxDate(Timestamp time)<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Parametry<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>date <\/em>jest <em>CisDate<\/em>.<\/p>\n<p><em>time<\/em> to punkt w czasie.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Wynik<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Je\u015bli <em>date <\/em>lub <em>time<\/em> ma najwi\u0119ksz\u0105 wy\u015bwietlan\u0105 warto\u015b\u0107, wynikiem funkcji jest <em>true<\/em>.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>\u0179r\u00f3d\u0142a b\u0142\u0119d\u00f3w<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Brak<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Przyk\u0142ady<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>isMaxDate(MAX_DATE)<\/em> zwraca warto\u015b\u0107 <em>true<\/em>.<\/p>\n<p><em>isMaxDate(MIN_DATE)<\/em> zwraca warto\u015b\u0107 <em>false<\/em>.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Kontekst<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>ALL<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Uwagi<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Najwi\u0119ksza wy\u015bwietlana warto\u015b\u0107 <em>CisDate<\/em> lub czasu (znacznika czasu) mo\u017ce by\u0107 u\u017cywana na przyk\u0142ad dla zakres\u00f3w wa\u017cno\u015bci, kt\u00f3re s\u0105 otwarte u g\u00f3ry.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>isMinDate<\/em><em>, <\/em><em>isUndefinedDate<\/em><\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\">Poni\u017cszy przyk\u0142ad z definicji dzia\u0142ania <em>help.isMaxDate<\/em> sprawdza, czy sta\u0142a <em>MAX_DATE<\/em> reprezentuje najwi\u0119ksz\u0105 wy\u015bwietlan\u0105 warto\u015b\u0107:<\/p>\n<p><em>function create()<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 var r_isMaxDate := isMaxDate(MAX_DATE);<\/em><\/p>\n<p><em>\u00a0 result.VALUE := r_isMaxDate;<\/em><\/p>\n<p><em>} <\/em><\/div><\/section>\n<h5 id=\"ismindate\" ><span class=\"ez-toc-section\" id=\"isMinDate\"><\/span>isMinDate<span class=\"ez-toc-section-end\"><\/span><\/h5>\n<table style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\">\n<tbody>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Nazwa<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>isMinDate<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Opis<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>isMinDate<\/em> sprawdza, czy <em>CisDate<\/em> lub czas ma najmniejsz\u0105 reprezentowaln\u0105 warto\u015b\u0107.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Podpisy<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>Boolean isMinDate(CisDate date)<\/em><\/p>\n<p><em>Boolean isMinDate(Timestamp time)<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Parametry<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>date<\/em> jest <em>CisDate<\/em>.<\/p>\n<p><em>time<\/em> to punkt w czasie.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Wynik<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Je\u015bli <em>date <\/em>lub <em>time<\/em> ma najmniejsz\u0105 reprezentowaln\u0105 warto\u015b\u0107, wynikiem funkcji jest <em>true<\/em>.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>\u0179r\u00f3d\u0142a b\u0142\u0119d\u00f3w<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Brak<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Przyk\u0142ady<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>isMinDate(MIN_DATE)<\/em> zwraca warto\u015b\u0107 <em>true<\/em>.<\/p>\n<p><em>isMinDate(MAX_DATE)<\/em> zwraca warto\u015b\u0107 <em>false<\/em>.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Kontekst<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>ALL<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Uwagi<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Najmniejsza wy\u015bwietlana warto\u015b\u0107 <em>CisDate<\/em> lub czasu (znacznik czasu) mo\u017ce by\u0107 u\u017cywana na przyk\u0142ad dla zakres\u00f3w wa\u017cno\u015bci, kt\u00f3re s\u0105 otwarte na dole.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>isMaxDate<\/em><em>, <\/em><em>isUndefinedDate<\/em><\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\">Poni\u017cszy przyk\u0142ad z definicji dzia\u0142ania <em>help.isMinDate<\/em> sprawdza, czy sta\u0142a <em>MIN_DATE<\/em> reprezentuje najmniejsz\u0105 warto\u015b\u0107, jak\u0105 mo\u017cna wy\u015bwietli\u0107.<\/p>\n<p><em>function create()<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 var r_isMinDate := isMinDate(MIN_DATE);<\/em><\/p>\n<p><em>\u00a0 result.VALUE := r_isMinDate;<\/em><\/p>\n<p><em>}<\/em> <\/div><\/section>\n<h5 id=\"isundefineddate\" ><span class=\"ez-toc-section\" id=\"isUndefinedDate\"><\/span>isUndefinedDate<span class=\"ez-toc-section-end\"><\/span><\/h5>\n<table style=\"border-style: outset; border-color: #000000; background-color: #ffffff; width: 100%; height: 1042px;\">\n<tbody>\n<tr style=\"height: 68px;\">\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"132\">\n<p>Nazwa<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"406\">\n<p>isUndefinedDate<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 100px;\">\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 100px;\" width=\"132\">\n<p>Opis<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 100px;\" width=\"406\">\n<p><em>isUndefinedDate<\/em> sprawdza, czy <em>CisDate<\/em> lub czas ma warto\u015b\u0107, kt\u00f3rej nie mo\u017cna wy\u015bwietli\u0107.<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 118px;\">\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 118px;\" width=\"132\">\n<p>Podpisy<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 118px;\" width=\"406\">\n<p><em>Boolean isUndefinedDate(CisDate date)<\/em><\/p>\n<p><em>Boolean isUndefinedDate(Timestamp time)<\/em><\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 118px;\">\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 118px;\" width=\"132\">\n<p>Parametry<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 118px;\" width=\"406\">\n<p><em>date<\/em> jest <em>CisDate<\/em>.<\/p>\n<p><em>time<\/em> to punkt w czasie.<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 100px;\">\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 100px;\" width=\"132\">\n<p>Wynik<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 100px;\" width=\"406\">\n<p>Je\u015bli<em> date<\/em> lub <em>time<\/em> nie ma reprezentowalnej warto\u015bci, wynikiem funkcji jest <em>true<\/em>.<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 68px;\">\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"132\">\n<p>\u0179r\u00f3d\u0142a b\u0142\u0119d\u00f3w<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"406\">\n<p>Brak<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 169px;\">\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 169px;\" width=\"132\">\n<p>Przyk\u0142ady<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 169px;\" width=\"406\">\n<p><em>isUndefinedDate(UNEDFINED_DATE)<\/em> zwraca warto\u015b\u0107 <em>true<\/em>.<\/p>\n<p><em>isMinDate(MAX_DATE)<\/em> zwraca warto\u015b\u0107 <em>false<\/em>.<\/p>\n<p><em>isMinDate(MIN_DATE)<\/em> zwraca warto\u015b\u0107 <em>true<\/em>.<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 68px;\">\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"132\">\n<p>Kontekst<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"406\">\n<p><em>ALL<\/em><\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 165px;\">\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 165px;\" width=\"132\">\n<p>Uwagi<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 165px;\" width=\"406\">\n<p>Niezdefiniowana warto\u015b\u0107 jest u\u017cywana dla <em>CisDates<\/em> i czas\u00f3w przed przypisaniem konkretnej warto\u015bci, takiej jak czas ostatniej zmiany obiektu biznesowego (w atrybucie <em>updateInfo.updateTime<\/em>), kt\u00f3ry nie zosta\u0142 zmieniony od czasu jego utworzenia.<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 68px;\">\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"132\">\n<p>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"406\">\n<p><em>isMaxDate<\/em><em>, <\/em><em>isMinDate<\/em><\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\">Poni\u017cszy przyk\u0142ad z definicji dzia\u0142ania <em>help.isUndefinedDate<\/em> sprawdza, czy sta\u0142a <em>UNDEFINED_DATE<\/em> ma warto\u015b\u0107, kt\u00f3rej nie mo\u017cna wy\u015bwietli\u0107.<\/p>\n<p><em>function create()<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 var r_isUndefinedDate := isUndefinedDate(UNDEFINED_DATE);<\/em><\/p>\n<p><em>\u00a0 result.VALUE := r_isUndefinedDate;<\/em><\/p>\n<p><em>}<\/em> <\/div><\/section>\n<h5 id=\"millisecond\" ><span class=\"ez-toc-section\" id=\"millisecond\"><\/span>millisecond<span class=\"ez-toc-section-end\"><\/span><\/h5>\n<table style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\">\n<tbody>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Nazwa<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>milisecond<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Opis<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>millisecond<\/em> zwraca milisekund\u0119 jako liczb\u0119 dla <em>CisDate <\/em>lub punktu w czasie.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Podpisy<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>Number millisecond(CisDate date)<\/em><\/p>\n<p><em>Number millisecond(Timestamp time)<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Parametry<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>date <\/em>jest <em>CisDate<\/em>, kt\u00f3rego milisekunda jest okre\u015blona.<\/p>\n<p><em>time <\/em>to punkt w czasie, kt\u00f3rego milisekunda jest okre\u015blona.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Wynik<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Milisekunda jako liczba.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>\u0179r\u00f3d\u0142a b\u0142\u0119d\u00f3w<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Brak<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Przyk\u0142ady<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>millisecond(createCisDate(1980, 1, 1)<\/em> zwraca 0.<\/p>\n<p><em>millisecond(createCisDate(1980, 12, 31, 23, 59, 59, 999)<\/em> zwraca 999.<\/p>\n<p><em>second(now())<\/em> zwraca bie\u017c\u0105c\u0105 milisekund\u0119.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Kontekst<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>ALL<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Uwagi<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Poszczeg\u00f3lne cz\u0119\u015bci <em>CisDate<\/em> s\u0105 dost\u0119pne w strefie czasowej okre\u015blonej w <em>CisDate<\/em>.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>day, hour, minute, month, second, year<\/em><\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\">Poni\u017cszy przyk\u0142ad z definicji dzia\u0142ania <em>help.millisecond<\/em> zwraca milisekundy dla bie\u017c\u0105cej daty i godziny:<\/p>\n<p><em>function create()<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 var p_today := today();<\/em><\/p>\n<p><em>\u00a0 var p_now := now();<\/em><\/p>\n<p><em>\u00a0 result.VALUE_CISDATE := millisecond(p_today);<\/em><\/p>\n<p><em>\u00a0 result.VALUE_TIMESTAMP := millisecond(p_now);<\/em><\/p>\n<p><em>}<\/em> <\/div><\/section>\n<h5 id=\"milliseconds\" ><span class=\"ez-toc-section\" id=\"milliseconds\"><\/span>milliseconds<span class=\"ez-toc-section-end\"><\/span><\/h5>\n<table style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\">\n<tbody>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Nazwa<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>milliseconds<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Opis<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>milliseconds <\/em>okre\u015bla d\u0142ugo\u015b\u0107 okresu mi\u0119dzy dwoma <em>CisDates<\/em> lub punktami w czasie w milisekundach.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Podpisy<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>Number milliseconds(CisDate od, CisDate do)<\/em><\/p>\n<p><em>Number milliseconds(Timestamp from, Timestamp to)<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Parametry<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>from<\/em> jest pierwsz\u0105 dat\u0105 <em>CisDate <\/em>lub punktem w czasie.<\/p>\n<p><em>to<\/em> jest drug\u0105 dat\u0105 <em>CisDate<\/em> lub punktem w czasie.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Wynik<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Funkcja zwraca d\u0142ugo\u015b\u0107 okresu mi\u0119dzy <em>from<\/em> i <em>to<\/em> w milisekundach.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>\u0179r\u00f3d\u0142a b\u0142\u0119d\u00f3w<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Brak<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Przyk\u0142ady<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>milliseconds(today(), addMilliseconds(today(), 7))<\/em> zwraca 7.<\/p>\n<p><em>milliseconds(today(), addSeconds(today(), 7))<\/em> zwraca 7000.<\/p>\n<p><em>milliseconds(addMilliseconds(today(), -1), today())<\/em> zwraca 1.<\/p>\n<p><em>milliseconds(now(), addMilliseconds(now(), 7))<\/em> zwraca 7.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Kontekst<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>ALL<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Uwagi<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Je\u015bli <em>from<\/em> i <em>to<\/em> s\u0105 typu danych <em>CisDate<\/em>, s\u0105 one konwertowane do strefy czasowej GMT+0 na potrzeby oblicze\u0144.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>days, hours, minutes, months, seconds, weeks, years<\/em><\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\">Poni\u017cszy przyk\u0142ad z definicji dzia\u0142ania <em>help.milliseconds<\/em> okre\u015bla liczb\u0119 milisekund od pocz\u0105tku dnia.<\/p>\n<p><em>function create()<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 var p_today := today();<\/em><\/p>\n<p><em>\u00a0 var p_now := now();<\/em><\/p>\n<p><em>\u00a0 var r_millisecondOfDay := milliseconds(startOfDay(p_today), p_now);<\/em><\/p>\n<p><em>\u00a0 result.VALUE := r_millisecondOfDay;<\/em><\/p>\n<p><em>} <\/em><\/div><\/section>\n<h5 id=\"minute\" ><span class=\"ez-toc-section\" id=\"minute\"><\/span>minute<span class=\"ez-toc-section-end\"><\/span><\/h5>\n<table style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\">\n<tbody>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Nazwa<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>minute<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Opis<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>minute<\/em> zwraca minut\u0119 jako liczb\u0119 dla <em>CisDate<\/em> lub punktu w czasie.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Podpisy<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>Number minute(CisDate date)<\/em><\/p>\n<p><em>Number minute(Timestamp time)<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Parametry<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>date <\/em>to <em>CisDate<\/em>, kt\u00f3rego minuta jest okre\u015blona.<\/p>\n<p><em>time<\/em> to punkt w czasie, kt\u00f3rego minuta jest okre\u015blona.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Wynik<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Minuta w godzinie jako liczba.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>\u0179r\u00f3d\u0142a b\u0142\u0119d\u00f3w<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Brak<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Przyk\u0142ady<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>minute(createCisDate(1980, 1, 1)<\/em> zwraca 0.<\/p>\n<p><em>minute(createCisDate(1980, 1, 1, 0, 5)<\/em> zwraca 5.<\/p>\n<p><em>minute(now())<\/em> zwraca bie\u017c\u0105c\u0105 minut\u0119 w godzinie.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Kontekst<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>ALL<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Uwagi<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Poszczeg\u00f3lne cz\u0119\u015bci <em>CisDate<\/em> s\u0105 dost\u0119pne ze stref\u0105 czasow\u0105 wskazan\u0105 w <em>CisDate<\/em>. Na przyk\u0142ad, <em>minute(createCisDate(&#8222;EET&#8221;, 1980, 1, 1, 0, 5)<\/em> zwraca liczb\u0119 5 niezale\u017cnie od strefy czasowej bie\u017c\u0105cego kontekstu uruchomieniowego.<\/p>\n<p>Je\u015bli wygenerowana data <em>CisDate<\/em> zostanie przekonwertowana na czas i zostanie okre\u015blona jej godzina, wynik zale\u017cy od strefy czasowej bie\u017c\u0105cego kontekstu uruchomieniowego. Na przyk\u0142ad, <em>minute(toTimestamp(createCisDate(&#8222;NPT1&#8221;, 1980, 1, 1, 12))<\/em> zwraca liczb\u0119 15, poniewa\u017c strefa czasowa bie\u017c\u0105cego kontekstu uruchomieniowego <em>(&#8222;CET&#8221;)<\/em> jest 4 godziny i 45 minut po strefie czasowej Katmandu.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>day, hour, millisecond, month, second, year<\/em><\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\">Poni\u017cszy przyk\u0142ad z definicji dzia\u0142ania <em>help.minute<\/em> zwraca minuty dla bie\u017c\u0105cej daty i godziny.<\/p>\n<p><em>function create()<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 var p_today := today();<\/em><\/p>\n<p><em>\u00a0 var p_now := now();<\/em><\/p>\n<p><em>\u00a0 result.VALUE_CISDATE := minute(p_today);<\/em><\/p>\n<p><em>\u00a0 result.VALUE_TIMESTAMP := minute(p_now);<\/em><\/p>\n<p><em>}<\/em> <\/div><\/section>\n<h5 id=\"minutes\" ><span class=\"ez-toc-section\" id=\"minutes\"><\/span>minutes<span class=\"ez-toc-section-end\"><\/span><\/h5>\n<table style=\"border-style: outset; border-color: #000000; background-color: #ffffff; width: 100%; height: 1193px;\">\n<tbody>\n<tr style=\"height: 68px;\">\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Nazwa<\/p>\n<\/td>\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>minutes<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 100px;\">\n<td style=\"height: 100px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Opis<\/p>\n<\/td>\n<td style=\"height: 100px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>minutes<\/em> okre\u015bla d\u0142ugo\u015b\u0107 okresu mi\u0119dzy dwoma <em>CisDates<\/em> lub punktami w czasie w minutach.<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 118px;\">\n<td style=\"height: 118px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Podpisy<\/p>\n<\/td>\n<td style=\"height: 118px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>Number minutes(CisDate from, CisDate to)<\/em><\/p>\n<p><em>Number minutes(Timestamp from, Timestamp to)<\/em><\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 118px;\">\n<td style=\"height: 118px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Parametry<\/p>\n<\/td>\n<td style=\"height: 118px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>from<\/em> jest pierwsz\u0105 dat\u0105 <em>CisDate <\/em>lub punktem w czasie.<\/p>\n<p><em>to<\/em> jest drug\u0105 dat\u0105 <em>CisDate<\/em> lub punktem w czasie.<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 100px;\">\n<td style=\"height: 100px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Wynik<\/p>\n<\/td>\n<td style=\"height: 100px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Funkcja zwraca d\u0142ugo\u015b\u0107 okresu mi\u0119dzy<em> from<\/em> i <em>to<\/em> w minutach. Miejsca dziesi\u0119tne s\u0105 obcinane w wyniku funkcji, tj. 1,9 minuty staje si\u0119 1 minut\u0105.<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 68px;\">\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>\u0179r\u00f3d\u0142a b\u0142\u0119d\u00f3w<\/p>\n<\/td>\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Brak<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 320px;\">\n<td style=\"height: 320px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Przyk\u0142ady<\/p>\n<\/td>\n<td style=\"height: 320px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>minutes(today(), addMinutes(today(), 7))<\/em> zwraca 7.<\/p>\n<p><em>minutes(today(), addSeconds(today(), 20))<\/em> zwraca 0.<\/p>\n<p><em>minutes(today(), addSeconds(today(), 80)<\/em> zwraca 1.<\/p>\n<p><em>minutes(addSeconds(today(), 80), today())<\/em> zwraca -1.<\/p>\n<p><em>minutes(addSeconds(today(), -1), today())<\/em> zwraca 0.<\/p>\n<p><em>minutes(now(), addMinutes(now(), 7))<\/em> zwraca 7.<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 68px;\">\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Kontekst<\/p>\n<\/td>\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>ALL<\/em><\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 165px;\">\n<td style=\"height: 165px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Uwagi<\/p>\n<\/td>\n<td style=\"height: 165px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Je\u015bli <em>from<\/em> i <em>to<\/em> s\u0105 typu danych <em>CisDate<\/em>, s\u0105 one konwertowane do strefy czasowej GMT+0 do oblicze\u0144. <em>minutes(createCisDate(&#8222;NPT1&#8221;, 1980), createCisDate(&#8222;NST&#8221;, 1980))<\/em> zwraca zatem 555, poniewa\u017c istnieje r\u00f3\u017cnica czasu 555 minut mi\u0119dzy strefami czasowymi NPT1 i NST.<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 68px;\">\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>days, hours, milliseconds, months, seconds, weeks, years<\/em><\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\">Poni\u017cszy przyk\u0142ad z definicji dzia\u0142ania <em>help.minutes<\/em> okre\u015bla liczb\u0119 minut od pocz\u0105tku dnia:<\/p>\n<p><em>function create()<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 var p_today := today();<\/em><\/p>\n<p><em>\u00a0 var p_now := now();<\/em><\/p>\n<p><em>\u00a0 var r_minuteOfDay := minutes(startOfDay(p_today), p_now);<\/em><\/p>\n<p><em>\u00a0 result.VALUE := r_minuteOfDay;<\/em><\/p>\n<p><em>}<\/em> <\/div><\/section>\n<h5 id=\"month\" ><span class=\"ez-toc-section\" id=\"month\"><\/span>month<span class=\"ez-toc-section-end\"><\/span><\/h5>\n<table style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\">\n<tbody>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Nazwa<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>month<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Opis<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>month <\/em>zwraca miesi\u0105c w roku jako liczb\u0119 dla <em>CisDate<\/em> lub punktu w czasie.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Podpisy<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>Number month(CisDate date)<\/em><\/p>\n<p><em>Number month(Timestamp time)<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Parametry<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>date<\/em> to <em>CisDate<\/em>, kt\u00f3rego miesi\u0105c jest okre\u015blony w roku.<\/p>\n<p><em>time<\/em> to punkt w czasie, kt\u00f3rego miesi\u0105c w roku jest okre\u015blony.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Wynik<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Miesi\u0105c w roku jako liczba.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>\u0179r\u00f3d\u0142a b\u0142\u0119d\u00f3w<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Brak<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Przyk\u0142ady<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>month(createCisDate(1980, 1, 10)<\/em> zwraca 1.<\/p>\n<p><em>month(today())<\/em> zwraca dzisiejszy miesi\u0105c w roku.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Kontekst<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>ALL<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Uwagi<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Poszczeg\u00f3lne cz\u0119\u015bci <em>CisDate<\/em> s\u0105 dost\u0119pne ze stref\u0105 czasow\u0105 wskazan\u0105 w <em>CisDate<\/em>. Na przyk\u0142ad, <em>month(createCisDate(&#8222;EET&#8221;, 1980, 1, 10)<\/em> zwraca liczb\u0119 1, niezale\u017cnie od strefy czasowej bie\u017c\u0105cego kontekstu uruchomieniowego.<\/p>\n<p>Je\u015bli wygenerowana data <em>CisDate<\/em> zostanie przekonwertowana na punkt w czasie i zostanie okre\u015blony jej rok, wynik zale\u017cy od strefy czasowej bie\u017c\u0105cego kontekstu uruchomieniowego. Na przyk\u0142ad, <em>month(toTimestamp(createCisDate(&#8222;EET&#8221;, 1980, 1, 1))<\/em> zwraca liczb\u0119 12, je\u015bli bie\u017c\u0105cy kontekst runtime u\u017cywa strefy czasowej, kt\u00f3ra jest na zach\u00f3d od EET.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>day, hour, millisecond, minute, second, year<\/em><\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\">Poni\u017cszy przyk\u0142ad z definicji dzia\u0142ania <em>help.month<\/em> zwraca miesi\u0105c w roku dla bie\u017c\u0105cej daty i czasu.<\/p>\n<p><em>function create()<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 var p_today := today();<\/em><\/p>\n<p><em>\u00a0 var p_now := now();<\/em><\/p>\n<p><em>\u00a0 result.VALUE_CISDATE := month(p_today);<\/em><\/p>\n<p><em>\u00a0 result.VALUE_TIMESTAMP := month(p_now);<\/em><\/p>\n<p><em>}<\/em> <\/div><\/section>\n<h5 id=\"months\" ><span class=\"ez-toc-section\" id=\"months\"><\/span>months<span class=\"ez-toc-section-end\"><\/span><\/h5>\n<table style=\"border-style: outset; border-color: #000000; background-color: #ffffff; width: 100%; height: 1380px;\">\n<tbody>\n<tr style=\"height: 68px;\">\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Nazwa<\/p>\n<\/td>\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>months<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 100px;\">\n<td style=\"height: 100px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Opis<\/p>\n<\/td>\n<td style=\"height: 100px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>months<\/em> okre\u015bla d\u0142ugo\u015b\u0107 okresu mi\u0119dzy dwiema datami <em>CisDate<\/em> lub punktami w czasie w miesi\u0105cach.<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 118px;\">\n<td style=\"height: 118px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Podpisy<\/p>\n<\/td>\n<td style=\"height: 118px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>Number months(CisDate od, CisDate do)<\/em><\/p>\n<p><em>Number months(Timestamp from, Timestamp to)<\/em><\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 118px;\">\n<td style=\"height: 118px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Parametry<\/p>\n<\/td>\n<td style=\"height: 118px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>from<\/em> to pierwsza <em>CisDate<\/em> lub punkt w czasie.<\/p>\n<p><em>to<\/em> jest drug\u0105 dat\u0105 <em>CisDate<\/em> lub punktem w czasie.<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 359px;\">\n<td style=\"height: 359px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Wynik<\/p>\n<\/td>\n<td style=\"height: 359px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Funkcja zwraca d\u0142ugo\u015b\u0107 okresu mi\u0119dzy <em>from<\/em> i <em>to <\/em>w miesi\u0105cach. Miejsca dziesi\u0119tne s\u0105 obcinane w wyniku funkcji, tj. 1,9 miesi\u0105ca staje si\u0119 1 miesi\u0105cem. W przeciwie\u0144stwie do funkcji okre\u015blaj\u0105cych d\u0142ugo\u015b\u0107 okresu czasu w jednostkach czasu godzina, minuta, sekunda i milisekunda, <em>months<\/em> zwraca warto\u015b\u0107 r\u00f3\u017cn\u0105 od 0, gdy tylko <em>from<\/em> i <em>to <\/em>przypadaj\u0105 na r\u00f3\u017cne miesi\u0105ce. Na przyk\u0142ad, <em>months(addSeconds(createTimestamp(1980), -1), createTimestamp(1980))<\/em> zwraca 1, a <em>hours(addSeconds(createTimestamp(1980), -1), createTimestamp(1980)) <\/em>zwraca 0. Takie zachowanie wynika ze zmiennej d\u0142ugo\u015bci miesi\u0119cy i przepis\u00f3w dotycz\u0105cych czasu letniego, roku przest\u0119pnego i sekundy przest\u0119pnej.<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 68px;\">\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>\u0179r\u00f3d\u0142a b\u0142\u0119d\u00f3w<\/p>\n<\/td>\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Brak<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 183px;\">\n<td style=\"height: 183px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Przyk\u0142ady<\/p>\n<\/td>\n<td style=\"height: 183px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>months(today(), addDays(today(), 20))<\/em> zwraca 0, je\u015bli do nast\u0119pnej zmiany miesi\u0105ca pozosta\u0142o wi\u0119cej ni\u017c 20 dni.<\/p>\n<p><em>months(addDays(today(), -20), today())<\/em> zwraca 0, je\u015bli od pocz\u0105tku miesi\u0105ca nie min\u0119\u0142o jeszcze 20 dni.<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 68px;\">\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Kontekst<\/p>\n<\/td>\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>ALL<\/em><\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 230px;\">\n<td style=\"height: 230px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Uwagi<\/p>\n<\/td>\n<td style=\"height: 230px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Je\u015bli <em>from<\/em> i <em>to <\/em>s\u0105 typu danych <em>CisDate<\/em>, s\u0105 one konwertowane do strefy czasowej GMT+0 do oblicze\u0144. <em>months(createCisDate(&#8222;NST&#8221;, 1980), createCisDate(&#8222;NPT1&#8221;, 1980))<\/em> zwraca zatem -1, poniewa\u017c strefa czasowa NST znajduje si\u0119 na zach\u00f3d, a strefa czasowa NPT1 na wsch\u00f3d od GMT+0. Oznacza to, \u017ce <em>CisDate<\/em> <em>from <\/em>przypada na ostatni dzie\u0144 1979 roku, patrz\u0105c ze strefy czasowej GMT+0.<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 68px;\">\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>days, hours, milliseconds, minutes, seconds, weeks, years<\/em><\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\">Poni\u017cszy przyk\u0142ad z definicji dzia\u0142ania <em>help.months<\/em> okre\u015bla miesi\u0105c w roku:<\/p>\n<p><em>function create()<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 var p_today := today();<\/em><\/p>\n<p><em>\u00a0 var r_monthOfYear := months(createCisDate(year(p_today)), createCisDate(year(p_today), month(p_today))) + 1;<\/em><\/p>\n<p><em>\u00a0 result.VALUE := r_monthOfYear;<\/em><\/p>\n<p><em>}<\/em> <\/div><\/section>\n<h5 id=\"now\" ><span class=\"ez-toc-section\" id=\"now\"><\/span>now<span class=\"ez-toc-section-end\"><\/span><\/h5>\n<table style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\">\n<tbody>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Nazwa<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>now<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Opis<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>now <\/em>zwraca bie\u017c\u0105cy czas.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Podpisy<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>Timestamp now()<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Parametry<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Brak<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Wynik<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Bie\u017c\u0105cy czas, tj. bie\u017c\u0105ca data z dok\u0142adno\u015bci\u0105 do milisekund.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>\u0179r\u00f3d\u0142a b\u0142\u0119d\u00f3w<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Brak<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Przyk\u0142ady<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>now()<\/em> zwraca aktualny czas systemu.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Kontekst<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>ALL<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Uwagi<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\u00a0<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>today<\/em><\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\">Poni\u017cszy przyk\u0142ad z definicji dzia\u0142ania <em>help.now<\/em> zwraca aktualny czas:<\/p>\n<p><em>function create()<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 result.VALUE := now();<\/em><\/p>\n<p><em>}<\/em> <\/div><\/section>\n<h5 id=\"second\" ><span class=\"ez-toc-section\" id=\"second\"><\/span>second<span class=\"ez-toc-section-end\"><\/span><\/h5>\n<table style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\">\n<tbody>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Nazwa<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>second<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Opis<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>second<\/em> zwraca sekund\u0119 jako liczb\u0119 dla <em>CisDate<\/em> lub punktu w czasie.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Podpisy<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>Number second(CisDate date)<\/em><\/p>\n<p><em>Number second(Timestamp time)<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Parametry<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>date<\/em> to <em>CisDate<\/em>, kt\u00f3rego druga warto\u015b\u0107 jest okre\u015blona.<\/p>\n<p><em>time<\/em> to punkt w czasie, kt\u00f3rego druga cz\u0119\u015b\u0107 jest okre\u015blona.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Wynik<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Sekunda w minucie jako liczba.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>\u0179r\u00f3d\u0142a b\u0142\u0119d\u00f3w<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Brak<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Przyk\u0142ady<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>second(createCisDate(1980, 1, 1)<\/em> zwraca 0.<\/p>\n<p><em>second(createCisDate(1980, 1, 1, 0, 0, 5)<\/em> zwraca 5.<\/p>\n<p><em>second(now())<\/em> zwraca bie\u017c\u0105c\u0105 sekund\u0119 w minucie.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Kontekst<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>ALL<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Uwagi<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Poszczeg\u00f3lne cz\u0119\u015bci <em>CisDate<\/em> s\u0105 dost\u0119pne w strefie czasowej okre\u015blonej w <em>CisDate<\/em>.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>day, hour, millisecond, minute, month, year<\/em><\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\">Poni\u017cszy przyk\u0142ad z definicji dzia\u0142ania <em>help.second <\/em>zwraca sekundy dla bie\u017c\u0105cej daty i godziny.<\/p>\n<p><em>function create()<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 var p_today := today();<\/em><\/p>\n<p><em>\u00a0 var p_now := now();<\/em><\/p>\n<p><em>\u00a0 result.VALUE_CISDATE := second(p_today);<\/em><\/p>\n<p><em>\u00a0 result.VALUE_TIMESTAMP := second(p_now);<\/em><\/p>\n<p><em>} <\/em><\/div><\/section>\n<h5 id=\"seconds\" ><span class=\"ez-toc-section\" id=\"seconds\"><\/span>seconds<span class=\"ez-toc-section-end\"><\/span><\/h5>\n<table style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\">\n<tbody>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Nazwa<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>seconds<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Opis<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>seconds<\/em> okre\u015bla d\u0142ugo\u015b\u0107 okresu mi\u0119dzy dwoma <em>CisDates<\/em> lub punktami w czasie w sekundach.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Podpisy<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>Number seconds(CisDate from, CisDate to)<\/em><\/p>\n<p><em>Number seconds(Timestamp from, Timestamp to)<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Parametry<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>from <\/em>to pierwsza <em>CisDate<\/em> lub punkt w czasie.<\/p>\n<p><em>to<\/em> jest drug\u0105 dat\u0105 <em>CisDate <\/em>lub punktem w czasie.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Wynik<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Funkcja zwraca d\u0142ugo\u015b\u0107 okresu mi\u0119dzy <em>from<\/em> i <em>to<\/em> w sekundach. Miejsca dziesi\u0119tne s\u0105 obcinane w wyniku funkcji, tj. 1,9 sekundy staje si\u0119 1 sekund\u0105.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>\u0179r\u00f3d\u0142a b\u0142\u0119d\u00f3w<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Brak<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Przyk\u0142ady<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>seconds(today(), addSeconds(today(), 7))<\/em> zwraca 7.<\/p>\n<p><em>seconds(today(), addMilliseconds(today(), 800))<\/em> zwraca 0.<\/p>\n<p><em>seconds(today(), addMilliseconds(today(), 1000)<\/em> zwraca 1.<\/p>\n<p><em>seconds(addMilliseconds(today(), -1000), today())<\/em> zwraca -1.<\/p>\n<p><em>seconds(addMilliseconds(today(), -1), today())<\/em> zwraca 0.<\/p>\n<p><em>seconds(now(), addSeconds(now(), 7))<\/em> zwraca 7.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Kontekst<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>ALL<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Uwagi<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Je\u015bli <em>from<\/em> i <em>to<\/em> s\u0105 typu danych <em>CisDate<\/em>, s\u0105 one konwertowane do strefy czasowej GMT+0 na potrzeby oblicze\u0144.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>days, hours, milliseconds, minutes, months, weeks, years<\/em><\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\">Poni\u017cszy przyk\u0142ad z definicji dzia\u0142ania <em>help.seconds<\/em> okre\u015bla liczb\u0119 sekund od pocz\u0105tku dnia.<\/p>\n<p><em>function create()<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 var p_today := today();<\/em><\/p>\n<p><em>\u00a0 var p_now := now();<\/em><\/p>\n<p><em>\u00a0 var r_secondOfDay := seconds(startOfDay(p_today), p_now);<\/em><\/p>\n<p><em>\u00a0 result.VALUE := r_secondOfDay;<\/em><\/p>\n<p><em>}<\/em> <\/div><\/section>\n<h5 id=\"startofday\" ><span class=\"ez-toc-section\" id=\"startOfDay\"><\/span>startOfDay<span class=\"ez-toc-section-end\"><\/span><\/h5>\n<table style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\">\n<tbody>\n<tr style=\"height: 68px;\">\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Nazwa<\/p>\n<\/td>\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>startOfDay<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 68px;\">\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Opis<\/p>\n<\/td>\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>startOfDay<\/em> okre\u015bla pierwszy raz na pocz\u0105tku dnia.<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 118px;\">\n<td style=\"height: 118px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Podpisy<\/p>\n<\/td>\n<td style=\"height: 118px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>Timestamp startOfDay(CisDate date)<\/em><\/p>\n<p><em>Timestamp startOfDay(Timestamp time)<\/em><\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 118px;\">\n<td style=\"height: 118px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Parametry<\/p>\n<\/td>\n<td style=\"height: 118px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>date<\/em> to <em>CisDate<\/em>, kt\u00f3rej pierwsza godzina jest okre\u015blana na pocz\u0105tku dnia.<\/p>\n<p><em>time<\/em> to czas, kt\u00f3rego pierwsza godzina jest okre\u015blana na pocz\u0105tku dnia.<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 68px;\">\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Wynik<\/p>\n<\/td>\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Pierwszy raz na pocz\u0105tku dnia<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 68px;\">\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>\u0179r\u00f3d\u0142a b\u0142\u0119d\u00f3w<\/p>\n<\/td>\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\u00a0<\/td>\n<\/tr>\n<tr style=\"height: 215px;\">\n<td style=\"height: 215px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Przyk\u0142ady<\/p>\n<\/td>\n<td style=\"height: 215px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>startOfDay(today())<\/em> i <em>startOfDay(now())<\/em> zwracaj\u0105 czas o godzinie 00:00:00.000 dnia dzisiejszego.<\/p>\n<p><em>setActivityWorkDelay(seconds(activity:creationTime, endOfDay(today())))<\/em> ustawia czas rozpocz\u0119cia dzia\u0142ania na ostatni\u0105 sekund\u0119 przed p\u00f3\u0142noc\u0105 bie\u017c\u0105cego dnia.<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 68px;\">\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Kontekst<\/p>\n<\/td>\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>ALL<\/em><\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 68px;\">\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Uwagi<\/p>\n<\/td>\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\u00a0<\/td>\n<\/tr>\n<tr style=\"height: 68px;\">\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>endOfDay<\/em><\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\">Poni\u017cszy przyk\u0142ad z definicji dzia\u0142ania <em>help.startOfDay<\/em> okre\u015bla pierwsz\u0105 godzin\u0119 bie\u017c\u0105cego dnia:<\/p>\n<p><em>function create()<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 var p_now := now();<\/em><\/p>\n<p><em>\u00a0 var r_startOfDay := startOfDay(p_now);<\/em><\/p>\n<p><em>\u00a0 result.VALUE := r_startOfDay;<\/em><\/p>\n<p><em>}<\/em> <\/div><\/section>\n<h5 id=\"timestring\" ><span class=\"ez-toc-section\" id=\"timeString\"><\/span>timeString<span class=\"ez-toc-section-end\"><\/span><\/h5>\n<table style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\">\n<tbody>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Nazwa<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>timeString<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Opis<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>timeString<\/em> zwraca cz\u0119\u015b\u0107 czasow\u0105 <em>CisDate<\/em> lub punkt w czasie jako ci\u0105g znak\u00f3w.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Podpisy<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>String timeString(CisDate date)<\/em><\/p>\n<p><em>String timeString(Timestamp time)<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Parametry<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>date<\/em> to <em>CisDate<\/em>, czyli po\u0142\u0105czenie punktu w czasie ze stref\u0105 czasow\u0105.<\/p>\n<p><em>time <\/em>to punkt w czasie z dok\u0142adno\u015bci\u0105 do milisekund.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Wynik<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Cz\u0119\u015b\u0107 czasowa <em>date<\/em> lub <em>time<\/em>.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>\u0179r\u00f3d\u0142a b\u0142\u0119d\u00f3w<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Brak<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Przyk\u0142ady<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>timeString(today())<\/em> zwraca cz\u0119\u015b\u0107 czasu na pocz\u0105tku dnia dzisiejszego jako ci\u0105g znak\u00f3w.<\/p>\n<p><em>timeString(now())<\/em> zwraca cz\u0119\u015b\u0107 czasu bie\u017c\u0105cego punktu w czasie jako ci\u0105g znak\u00f3w.<\/p>\n<p><em>timeString(createCisDate(&#8222;NPT1&#8221;, 1980))<\/em> zwraca 00:00.<\/p>\n<p><em>timeString(createTimestamp(&#8222;NPT1&#8221;, 1980))<\/em> zwraca 21:15:00, je\u015bli r\u00f3\u017cnica mi\u0119dzy stref\u0105 czasow\u0105 bie\u017c\u0105cego kontekstu uruchomieniowego a stref\u0105 czasow\u0105 Katmandu wynosi 2:45 godziny.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Kontekst<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>ALL<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Uwagi<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\u00a0<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>dateString<\/em><em>, <\/em><em>format<\/em><em>, <\/em><em>timeZoneId<\/em><em>, <\/em><em>timeZoneString<\/em><\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\">Poni\u017cszy przyk\u0142ad z definicji dzia\u0142ania <em>help.timeString<\/em> zwraca cz\u0119\u015b\u0107 czasow\u0105 bie\u017c\u0105cej daty i bie\u017c\u0105cego czasu jako ci\u0105g znak\u00f3w:<\/p>\n<p><em>function create()<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 result.VALUE1 := timeString(today());<\/em><\/p>\n<p><em>\u00a0 result.VALUE2 := timeString(now());<\/em><\/p>\n<p><em>}<\/em> <\/div><\/section>\n<h5 id=\"timezoneid\" ><span class=\"ez-toc-section\" id=\"timeZoneId\"><\/span>timeZoneId<span class=\"ez-toc-section-end\"><\/span><\/h5>\n<table style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\">\n<tbody>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Nazwa<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>timeZoneId<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Opis<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>timeZoneId<\/em> zwraca identyfikator strefy czasowej <em>CisDate<\/em> lub punktu w czasie.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Podpisy<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>String timeZoneId(CisDate date)<\/em><\/p>\n<p><em>String timeZoneId(Timestamp time)<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Parametry<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>date<\/em> to <em>CisDate<\/em>, kt\u00f3rego strefa czasowa jest okre\u015blona.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Wynik<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Identyfikacja strefy czasowej <em>date<\/em>.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>\u0179r\u00f3d\u0142a b\u0142\u0119d\u00f3w<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Brak<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Przyk\u0142ady<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>timeZoneId(today())<\/em> zwraca identyfikator strefy czasowej bie\u017c\u0105cego kontekstu uruchomieniowego.<\/p>\n<p><em>timeZoneId(createCisDate(&#8222;NPT1&#8221;, 1980))<\/em> zwraca NPT1.<\/p>\n<p><em>timeZoneId(createTimestamp(&#8222;NPT1&#8221;, 1980))<\/em> zwraca identyfikator strefy czasowej bie\u017c\u0105cego kontekstu uruchomieniowego.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Kontekst<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>ALL<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Uwagi<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Dost\u0119pne identyfikatory stref czasowych mo\u017cna wy\u015bwietli\u0107 w kolumnie <em>Identyfikacja<\/em> w aplikacji <em>Strefy czasowe<\/em>.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>dateString<\/em><em>, <\/em><em>timeString<\/em><em>, <\/em><em>timeZoneString<\/em><\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\">Poni\u017cszy przyk\u0142ad z definicji dzia\u0142ania <em>help.timeZoneId<\/em> zwraca identyfikacj\u0119 strefy czasowej bie\u017c\u0105cej daty i godziny:<\/p>\n<p><em>function create()<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 var p_today := today();<\/em><\/p>\n<p><em>\u00a0 var r_timeZoneId := timeZoneId(p_today);<\/em><\/p>\n<p><em>\u00a0 result.VALUE := r_timeZoneId;<\/em><\/p>\n<p><em>}<\/em> <\/div><\/section>\n<h5 id=\"timezonestring\" ><span class=\"ez-toc-section\" id=\"timeZoneString\"><\/span>timeZoneString<span class=\"ez-toc-section-end\"><\/span><\/h5>\n<table style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\">\n<tbody>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Nazwa<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>timeZoneString<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Opis<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>timeZoneString<\/em> zwraca skr\u00f3t strefy czasowej <em>CisDate<\/em> lub punktu w czasie.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Podpisy<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>String timeZoneString(CisDate date)<\/em><\/p>\n<p><em>String timeZoneString(Timestamp time)<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Parametry<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>date <\/em>to <em>CisDate<\/em>, kt\u00f3rego strefa czasowa jest okre\u015blona.<\/p>\n<p><em>time<\/em> to punkt w czasie, kt\u00f3rego strefa czasowa jest okre\u015blona.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Wynik<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Skr\u00f3t strefy czasowej od <em>date<\/em> lub <em>time<\/em>.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>\u0179r\u00f3d\u0142a b\u0142\u0119d\u00f3w<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Brak<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Przyk\u0142ady<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>timeZoneString(today())<\/em> zwraca skr\u00f3t strefy czasowej bie\u017c\u0105cego kontekstu uruchomieniowego.<\/p>\n<p><em>timeZoneString(createCisDate(&#8222;NPT1&#8221;, 1980))<\/em> zwraca NPT.<\/p>\n<p><em>timeZoneString(createTimestamp(&#8222;NPT1&#8221;, 1980))<\/em> zwraca skr\u00f3t strefy czasowej bie\u017c\u0105cego kontekstu uruchomieniowego.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Kontekst<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>ALL<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Uwagi<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Dost\u0119pne identyfikatory stref czasowych mo\u017cna wy\u015bwietli\u0107 w kolumnie <em>Identyfikacja<\/em> w aplikacji <em>Strefy czasowe<\/em>.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>dateString<\/em><em>, <\/em><em>timeString<\/em><em>, <\/em><em>timeZoneId<\/em><\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\">Poni\u017cszy przyk\u0142ad z definicji dzia\u0142ania <em>help.timeZoneString<\/em> zwraca skr\u00f3t strefy czasowej bie\u017c\u0105cej daty i godziny:<\/p>\n<p><em>function create()<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 result.VALUE1 := timeZoneString(today());<\/em><\/p>\n<p><em>\u00a0 result.VALUE2 := timeZoneString(now());<\/em><\/p>\n<p><em>}<\/em> <\/div><\/section>\n<h5 id=\"today\" ><span class=\"ez-toc-section\" id=\"today\"><\/span>today<span class=\"ez-toc-section-end\"><\/span><\/h5>\n<table style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\">\n<tbody>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Nazwa<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>today<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Opis<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>today <\/em>zwraca bie\u017c\u0105c\u0105 dat\u0119 jako <em>CisDate<\/em> bez sk\u0142adnika czasu.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Podpisy<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>Timestamp today()<\/em><\/p>\n<p><em>Timestamp (String timeZoneId)<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Parametry<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>timeZoneId<\/em> jest identyfikatorem strefy czasowej.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Wynik<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Funkcja zwraca bie\u017c\u0105c\u0105 dat\u0119 systemu jako <em>CisDate<\/em>, tj. dok\u0142adny czas milisekundowy ze stref\u0105 czasow\u0105.<\/p>\n<p>Je\u015bli okre\u015blono identyfikacj\u0119 strefy czasowej, data jest generowana i wyprowadzana zgodnie z okre\u015blon\u0105 stref\u0105 czasow\u0105. Je\u015bli nie podano identyfikacji strefy czasowej, strefa czasowa jest pobierana z bie\u017c\u0105cego kontekstu wykonawczego.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>\u0179r\u00f3d\u0142a b\u0142\u0119d\u00f3w<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Brak<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Przyk\u0142ady<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>today()<\/em> zwraca bie\u017c\u0105c\u0105 dat\u0119 systemu.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Kontekst<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>ALL<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Uwagi<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Dost\u0119pne identyfikatory stref czasowych mo\u017cna wy\u015bwietli\u0107 w kolumnie <em>Identyfikacja<\/em> w aplikacji <em>Strefy czasowe<\/em>.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>now<\/em><\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\">Poni\u017cszy przyk\u0142ad z definicji dzia\u0142ania <em>help.today<\/em> zwraca bie\u017c\u0105c\u0105 dat\u0119 bez sk\u0142adnika czasu:<\/p>\n<p><em>function create()<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 var p_timeZoneId := parameters.TIMEZONE_ID;<\/em><\/p>\n<p><em>\u00a0 var r_today as CisDate;<\/em><\/p>\n<p><em>\u00a0 if (p_timeZoneId = &#8222;&#8221;)<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 r_today := today();<\/em><\/p>\n<p><em>\u00a0 else<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 r_today := today(p_timeZoneId);<\/em><\/p>\n<p><em>\u00a0 result.IS_NULL := isNull(r_today);<\/em><\/p>\n<p><em>\u00a0 result.VALUE := dateString(r_today) + &#8221; &#8221; + timeString(r_today);<\/em><\/p>\n<p><em>} <\/em><\/div><\/section>\n<h5 id=\"totimestamp\" ><span class=\"ez-toc-section\" id=\"toTimestamp\"><\/span>toTimestamp<span class=\"ez-toc-section-end\"><\/span><\/h5>\n<table style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\">\n<tbody>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Nazwa<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>toTimestamp<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Opis<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>toTimestamp <\/em>konwertuje <em>CisDate<\/em> na czas.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Podpisy<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>Timestamp toTimestamp(CisDate date)<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Parametry<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>date<\/em> to <em>CisDate<\/em>, kt\u00f3ra ma zosta\u0107 przekonwertowana na czas.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Wynik<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Parametr <em>date<\/em> jako godzina<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>\u0179r\u00f3d\u0142a b\u0142\u0119d\u00f3w<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Brak<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Przyk\u0142ady<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>toTimestamp(today)<\/em> zwraca pierwsz\u0105 godzin\u0119 bie\u017c\u0105cego dnia.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Kontekst<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>ALL<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Uwagi<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\u00a0<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>cast<\/em><em>, <\/em><em>createTimestamp<\/em><\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\">Poni\u017cszy przyk\u0142ad z definicji dzia\u0142ania <em>help.toTimestamp<\/em> konwertuje <em>CisDate<\/em> dla bie\u017c\u0105cej daty na czas:<\/p>\n<p><em>function create()<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 var p_today := today();<\/em><\/p>\n<p><em>\u00a0 var r_toTimestamp := toTimestamp(p_today);<\/em><\/p>\n<p><em>\u00a0 result.VALUE := toCisDate(&#8222;&#8221;, r_toTimestamp);<\/em><\/p>\n<p><em>}<\/em> <\/div><\/section>\n<h5 id=\"weeks\" ><span class=\"ez-toc-section\" id=\"weeks\"><\/span>weeks<span class=\"ez-toc-section-end\"><\/span><\/h5>\n<table style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\">\n<tbody>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Nazwa<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>weeks<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Opis<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>weeks <\/em>okre\u015bla d\u0142ugo\u015b\u0107 okresu mi\u0119dzy dwiema datami <em>CisDate <\/em>lub punktami w czasie w tygodniach kalendarzowych.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Podpisy<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>Number weeks(CisDate od, CisDate do)<\/em><\/p>\n<p><em>Number weeks(Timestamp from, Timestamp to)<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Parametry<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>from<\/em> to pierwsza <em>CisDate<\/em> lub punkt w czasie.<\/p>\n<p><em>to <\/em>jest drug\u0105 dat\u0105 <em>CisDate<\/em> lub punktem w czasie.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Wynik<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Funkcja zwraca d\u0142ugo\u015b\u0107 okresu mi\u0119dzy <em>from<\/em> i <em>to<\/em> w tygodniach kalendarzowych. Miejsca dziesi\u0119tne s\u0105 obcinane w wyniku funkcji, tj. 1,9 tygodnia staje si\u0119 1 tygodniem. W przeciwie\u0144stwie do funkcji okre\u015blaj\u0105cych d\u0142ugo\u015b\u0107 okresu w jednostkach czasu: godzina, minuta, sekunda i milisekunda, <em>weeks<\/em> zwraca warto\u015b\u0107 inn\u0105 ni\u017c 0, gdy tylko <em>from<\/em> i <em>to<\/em> przypadaj\u0105 na r\u00f3\u017cne tygodnie. Na przyk\u0142ad funkcja <em>weeks(addDays(createCisDate(2020), -1), createCisDate(2020))<\/em> zwraca 0, poniewa\u017c 31 grudnia 2019 r. i 1 stycznia 2020 r. nale\u017c\u0105 do tygodnia kalendarzowego 1 w 2020 r. Z drugiej strony funkcja <em>weeks(addDays(createCisDate(2018), -1), createCisDate(2020))<\/em> zwraca 1, poniewa\u017c 31 grudnia 2017 r. nale\u017cy do tygodnia kalendarzowego 52 w 2017 r., a 1 stycznia 2018 r. nale\u017cy do tygodnia kalendarzowego 1 w 2018 r.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>\u0179r\u00f3d\u0142a b\u0142\u0119d\u00f3w<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Brak<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Przyk\u0142ady<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>weeks(createCisDate(year(today()))), today()) + 1<\/em> zwraca bie\u017c\u0105cy tydzie\u0144 kalendarzowy.<\/p>\n<p><em>weeks(today(), addDays(today(), 2))<\/em> zwraca 0, je\u015bli bie\u017c\u0105cy tydzie\u0144 kalendarzowy nadal ma co najmniej 2 dni.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Kontekst<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>ALL<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Uwagi<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Je\u015bli <em>from<\/em> i <em>to<\/em> s\u0105 typu danych <em>CisDate<\/em>, s\u0105 one konwertowane do strefy czasowej GMT+0 na potrzeby oblicze\u0144.<\/p>\n<section class=\"document-alert-box warning\"><div class=\"document-alert-title\">Uwaga<\/div><div class=\"document-alert-content\">Je\u015bli from i to jest dat\u0105 w ostatnim lub pierwszym tygodniu kalendarzowym roku, funkcja weeks mo\u017ce zwr\u00f3ci\u0107 nieprawid\u0142owy wynik, je\u015bli ostatni dzie\u0144 roku nale\u017cy do tygodnia kalendarzowego 1 nast\u0119pnego roku lub pierwszy dzie\u0144 roku nale\u017cy do ostatniego tygodnia kalendarzowego poprzedniego roku.<\/div><\/section>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>days, hours, milliseconds, minutes, months, seconds, years<\/em><\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\">Poni\u017cszy przyk\u0142ad z definicji dzia\u0142ania <em>help.weeks<\/em> okre\u015bla liczb\u0119 tygodni kalendarzowych od pocz\u0105tku roku:<\/p>\n<p><em>function create()<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 var p_today := today();<\/em><\/p>\n<p><em>\u00a0 var r_weekOfYear := weeks(createCisDate(year(p_today)), p_today) + 1;<\/em><\/p>\n<p><em>\u00a0 result.VALUE := r_weekOfYear;<\/em><\/p>\n<p><em>}<\/em> <\/div><\/section>\n<h5 id=\"year\" ><span class=\"ez-toc-section\" id=\"year\"><\/span>year<span class=\"ez-toc-section-end\"><\/span><\/h5>\n<table style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\">\n<tbody>\n<tr style=\"height: 68px;\">\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Nazwa<\/p>\n<\/td>\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>year<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 68px;\">\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Opis<\/p>\n<\/td>\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>year<\/em> zwraca rok <em>CisDate <\/em>lub punkt w czasie jako liczb\u0119.<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 118px;\">\n<td style=\"height: 118px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Podpisy<\/p>\n<\/td>\n<td style=\"height: 118px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>Number year(CisDate date)<\/em><\/p>\n<p><em>Number year(Timestamp time)<\/em><\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 118px;\">\n<td style=\"height: 118px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Parametry<\/p>\n<\/td>\n<td style=\"height: 118px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>date<\/em> to <em>CisDate<\/em>, kt\u00f3rego rok jest okre\u015blony.<\/p>\n<p><em>time<\/em> to punkt w czasie, kt\u00f3rego rok jest okre\u015blony.<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 68px;\">\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Wynik<\/p>\n<\/td>\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Rok jako liczba.<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 68px;\">\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>\u0179r\u00f3d\u0142a b\u0142\u0119d\u00f3w<\/p>\n<\/td>\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Brak<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 118px;\">\n<td style=\"height: 118px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Przyk\u0142ady<\/p>\n<\/td>\n<td style=\"height: 118px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>year(createCisDate(1980, 1, 1)<\/em> zwraca 1980.<\/p>\n<p><em>year(today())<\/em> zwraca bie\u017c\u0105cy rok.<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 68px;\">\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Kontekst<\/p>\n<\/td>\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>ALL<\/em><\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 313px;\">\n<td style=\"height: 313px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Uwagi<\/p>\n<\/td>\n<td style=\"height: 313px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Poszczeg\u00f3lne cz\u0119\u015bci <em>CisDate <\/em>s\u0105 dost\u0119pne ze stref\u0105 czasow\u0105 wskazan\u0105 w <em>CisDate<\/em>. Na przyk\u0142ad <em>year(createCisDate(&#8222;EET&#8221;, 1980, 1, 1)<\/em> zwraca liczb\u0119 1980, niezale\u017cnie od strefy czasowej bie\u017c\u0105cego kontekstu uruchomieniowego.<\/p>\n<p>Je\u015bli wygenerowana data <em>CisDate<\/em> zostanie przekonwertowana na punkt w czasie i zostanie okre\u015blony jej rok, wynik zale\u017cy od strefy czasowej bie\u017c\u0105cego kontekstu uruchomieniowego. Na przyk\u0142ad, <em>year(toTimestamp(createCisDate(&#8222;EET&#8221;, 1980, 1, 1))<\/em> zwraca liczb\u0119 1979, je\u015bli bie\u017c\u0105cy kontekst runtime u\u017cywa strefy czasowej, kt\u00f3ra jest na zach\u00f3d od EET.<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 68px;\">\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>day, hour, millisecond, minute, month, second<\/em><\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\">Poni\u017cszy przyk\u0142ad z definicji dzialania <em>help.year<\/em> zwraca rok dla bie\u017c\u0105cej daty i godziny:<\/p>\n<p><em>function create()<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 var p_today := today();<\/em><\/p>\n<p><em>\u00a0 var p_now := now();<\/em><\/p>\n<p><em>\u00a0 result.VALUE_CISDATE := year(p_today);<\/em><\/p>\n<p><em>\u00a0 result.VALUE_TIMESTAMP := year(p_now);<\/em><\/p>\n<p><em>}<\/em> <\/div><\/section>\n<h5 id=\"years\" ><span class=\"ez-toc-section\" id=\"years\"><\/span>years<span class=\"ez-toc-section-end\"><\/span><\/h5>\n<table style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\">\n<tbody>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Nazwa<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>years<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Opis<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>years<\/em> okre\u015bla d\u0142ugo\u015b\u0107 okresu mi\u0119dzy dwoma <em>CisDates<\/em> lub punktami w czasie w latach.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Podpisy<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>Number years(CisDate od, CisDate do)<\/em><\/p>\n<p><em>Number years(Timestamp from, Timestamp to)<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Parametry<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>from<\/em> jest pierwsz\u0105 dat\u0105 <em>CisDate<\/em> lub punktem w czasie.<\/p>\n<p><em>to <\/em>jest drug\u0105 dat\u0105 <em>CisDate<\/em> lub punktem w czasie.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Wynik<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Funkcja zwraca d\u0142ugo\u015b\u0107 okresu mi\u0119dzy <em>from<\/em> i <em>to<\/em> w latach. Miejsca dziesi\u0119tne s\u0105 obcinane w wyniku funkcji, tj. 1,9 roku staje si\u0119 1 rokiem. W przeciwie\u0144stwie do funkcji okre\u015blaj\u0105cych d\u0142ugo\u015b\u0107 okresu w jednostkach czasu: godzina, minuta, sekunda i milisekunda, funkcja <em>years<\/em> zwraca warto\u015b\u0107 inn\u0105 ni\u017c 0, gdy tylko <em>from<\/em> i <em>to<\/em> przypadaj\u0105 na r\u00f3\u017cne lata. Tak wi\u0119c, <em>years(addSeconds(createTimestamp(1980), -1), createTimestamp(1980))<\/em> zwraca 1, a <em>hours(addSeconds(createTimestamp(1980), -1), createTimestamp(1980)) <\/em>zwraca 0. Takie zachowanie wynika ze zmiennej d\u0142ugo\u015bci miesi\u0119cy i przepis\u00f3w dotycz\u0105cych czasu letniego, roku przest\u0119pnego i sekundy przest\u0119pnej.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>\u0179r\u00f3d\u0142a b\u0142\u0119d\u00f3w<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Brak<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Przyk\u0142ady<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>years(today(), addDays(today(), 100))<\/em> zwraca 0, je\u015bli do nast\u0119pnego prze\u0142omu roku pozosta\u0142o wi\u0119cej ni\u017c sto dni.<\/p>\n<p><em>years(addDays(today(), -100), today())<\/em> zwraca 0, je\u015bli od pocz\u0105tku roku nie min\u0119\u0142o jeszcze sto dni.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Kontekst<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>ALL<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Uwagi<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Je\u015bli <em>from<\/em> i <em>to<\/em> s\u0105 typu danych <em>CisDate<\/em>, s\u0105 one konwertowane do strefy czasowej GMT+0 do oblicze\u0144. <em>years(createCisDate(&#8222;NST&#8221;, 1980), createCisDate(&#8222;NPT1&#8221;, 1980))<\/em> zwraca zatem -1, poniewa\u017c strefa czasowa NST znajduje si\u0119 na zach\u00f3d, a strefa czasowa NPT1 na wsch\u00f3d od GMT+0. <em>CisDate<\/em> <em>from <\/em>przypada zatem na ostatni dzie\u0144 1979 roku, patrz\u0105c ze strefy czasowej <em>GMT+0<\/em>.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>days, hours, milliseconds, minutes, months, seconds, weeks<\/em><\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\">Poni\u017cszy przyk\u0142ad z definicji dzia\u0142ania <em>help.years<\/em> wykorzystuje dat\u0119 urodzenia do okre\u015blenia wieku osoby w latach:<\/p>\n<p><em>function create()<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 var p_dateOfBirth := parameters.DATE_OF_BIRTH;<\/em><\/p>\n<p><em>\u00a0 var p_now := now();<\/em><\/p>\n<p><em>\u00a0 result.VALUE := years(p_dateOfBirth, p_now);<\/em><\/p>\n<p><em>}<\/em> <\/div><\/section>\n<h4 id=\"funkcje-dla-list-list-functions\" ><span class=\"ez-toc-section\" id=\"Funkcje_dla_list_List_functions\"><\/span>Funkcje dla list (List functions)<span class=\"ez-toc-section-end\"><\/span><\/h4>\n<p>Listy mo\u017cna tworzy\u0107 i edytowa\u0107 za pomoc\u0105 funkcji list. Funkcje dla list obejmuj\u0105:<\/p>\n<ul>\n<li><strong>add<\/strong><\/li>\n<li><strong>addAll<\/strong><\/li>\n<li><strong>contains<\/strong><\/li>\n<li><strong>intersection<\/strong><\/li>\n<li><strong>isEmpty<\/strong><\/li>\n<li><strong>list<\/strong><\/li>\n<li><strong>minus<\/strong><\/li>\n<li><strong>size<\/strong><\/li>\n<li><strong>toCharList<\/strong><\/li>\n<li><strong>union<\/strong><\/li>\n<\/ul>\n<h5 id=\"add\" ><span class=\"ez-toc-section\" id=\"add\"><\/span>add<span class=\"ez-toc-section-end\"><\/span><\/h5>\n<table style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\">\n<tbody>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Nazwa<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>add<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Opis<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>add <\/em>dodaje kolejny element do listy.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Podpisy<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>add(Unknown[] list, Unknown element)<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Parametry<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>list <\/em>jest list\u0105.<\/p>\n<p><em>element <\/em>to element, kt\u00f3ry ma zosta\u0107 dodany do listy <em>list<\/em>.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Wynik<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Element <em>element<\/em> jest dodawany do listy <em>list<\/em> jako ostatni element. Typ danych elementu <em>element<\/em> zostaje zachowany.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>\u0179r\u00f3d\u0142a b\u0142\u0119d\u00f3w<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Element <em>element<\/em> mo\u017ce zosta\u0107 dodany do listy <em>list<\/em> tylko wtedy, gdy typ danych elementu jest zgodny z typem danych elementu listy lub mo\u017ce zosta\u0107 do niego przekonwertowany. Na przyk\u0142ad, je\u015bli lista <em>list1<\/em> ma typ danych <em>Number[]<\/em><em>,<\/em> w\u00f3wczas wyra\u017cenie <em>add(list1, &#8222;1&#8221;)<\/em> prowadzi do b\u0142\u0119du sk\u0142adniowego, poniewa\u017c ci\u0105g znak\u00f3w nie mo\u017ce zosta\u0107 przekonwertowany na liczb\u0119. Je\u015bli natomiast <em>list1<\/em> jest zadeklarowana jako <em>String[],<\/em> w\u00f3wczas wyra\u017cenie <em>add(list1, 1)<\/em> jest poprawne sk\u0142adniowo, poniewa\u017c liczba mo\u017ce zosta\u0107 przekonwertowana na ci\u0105g znak\u00f3w.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Przyk\u0142ady<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>add(list1, 3)<\/em> dodaje element 3 do listy <em>list1<\/em>.<\/p>\n<p><em>add(list1, now())<\/em> dodaje bie\u017c\u0105cy czas do listy <em>list1<\/em> jako nowy element.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Kontekst<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>ALL<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Uwagi<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\u00a0<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>addAll<\/em><em>, list, union<\/em><\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\">Poni\u017cszy przyk\u0142ad z definicji dzia\u0142ania <em>help.add<\/em> tworzy list\u0119 danych typu <em>String[]<\/em> z jednym elementem dla ka\u017cdego s\u0142owa w tek\u015bcie <em>parameters.TEXT<\/em>:<\/p>\n<p><em>function create()<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 var p_text := trim(parameters.TEXT);<\/em><\/p>\n<p><em>\u00a0 var p_text := trim(parameters.TEXT);<\/em><\/p>\n<p><em>\u00a0 var r_wordList as String[];<\/em><\/p>\n<p><em>\u00a0 var word as String;<\/em><\/p>\n<p><em>\u00a0 var startPos := 0;<\/em><\/p>\n<p><em>\u00a0 var i := 0;<\/em><\/p>\n<p><em>\u00a0 while (i &lt; length(p_text)) {<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 if (substring(p_text, i, i + 1) = &#8221; &#8222;) {<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0 word := trim(substring(p_text, startPos, i));<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0 startPos := i;<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0 if (word &lt;&gt; &#8222;&#8221;) <\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 add(r_wordList, word);<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 } <\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 i := i + 1;<\/em><\/p>\n<p><em>\u00a0 }<\/em><\/p>\n<p><em>\u00a0 word := trim(substring(p_text, startPos));<\/em><\/p>\n<p><em>\u00a0 if (word &lt;&gt; &#8222;&#8221;) <\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 add(r_wordList, word);<\/em><\/p>\n<p><em>\u00a0 result.VALUE := r_wordList;<\/em><\/p>\n<p><em>}<\/em> <\/div><\/section>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\"> <strong>Lista parametr\u00f3w z r\u00f3\u017cnymi typami danych<\/strong><\/p>\n<p>Je\u015bli lista ma typ danych <em>Unknown[],<\/em> mo\u017cna doda\u0107 elementy dowolnego typu danych, poniewa\u017c wszystkie typy danych mo\u017cna przekonwertowa\u0107 na <em>Unknown<\/em>. Mo\u017cna zatem u\u017cy\u0107 funkcji <em>add<\/em>, na przyk\u0142ad, aby utworzy\u0107 list\u0119 parametr\u00f3w dla funkcji <em>getCisObjectList<\/em>, je\u015bli zapytanie OQL ma parametry r\u00f3\u017cnych typ\u00f3w danych, kt\u00f3re nie mog\u0105 by\u0107 automatycznie konwertowane na typ danych pierwszego parametru.<\/p>\n<p>Poni\u017cszy przyk\u0142ad wykorzystuje list\u0119 parametr\u00f3w typu danych <em>Unknown[]<\/em> do okre\u015blenia pierwszych 100 os\u00f3b wewn\u0119trznych za pomoc\u0105 funkcji <em>getCisObjectList <\/em>i wypisania ich na konsoli:<\/p>\n<p><em>const PartnerType as valueSet(com.cisag.app.general.PartnerType);<\/em><\/p>\n<p><em>const BlockSize := 100;<\/em><\/p>\n<p><em>function create()<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 var partnerList as CisObject(com.cisag.app.general.obj.Partner)[];<\/em><\/p>\n<p><em>\u00a0 var params as Unknown[];<\/em><\/p>\n<p><em>\u00a0 var OQL := <\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 &#8222;SELECT FROM com.cisag.app.general.obj.Partner p &#8221; + <\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 &#8222;WHERE p:type = ? AND p:human = ? &#8221; + <\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 &#8222;ORDER BY p:number&#8221;;<\/em><\/p>\n<p><em>\u00a0 add(params, PartnerType.INTERNAL);<\/em><\/p>\n<p><em>\u00a0 add(params, true);<\/em><\/p>\n<p><em>\u00a0 var cisObjectList := getCisObjectList(OQL, params, BlockSize);<\/em><\/p>\n<p><em>\u00a0 for (p as CisObject(com.cisag.app.general.obj.Partner) : cisObjectList) <\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 echo(p:number);<\/em><\/p>\n<p><em>} <\/em><\/div><\/section>\n<h5 id=\"addall\" ><span class=\"ez-toc-section\" id=\"addAll\"><\/span>addAll<span class=\"ez-toc-section-end\"><\/span><\/h5>\n<table style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\">\n<tbody>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Nazwa<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>addAll<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Opis<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>addAll<\/em> dodaje wszystkie elementy innej listy do listy.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Podpisy<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>addAll(Unknown[] list, Unknown[] listToAdd)<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Parametry<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>list<\/em> to lista, do kt\u00f3rej maj\u0105 zosta\u0107 dodane elementy innej listy.<\/p>\n<p><em>listToAdd<\/em> jest list\u0105, kt\u00f3rej elementy maj\u0105 zosta\u0107 dodane do listy <em>list<\/em>.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Wynik<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Lista <em>list<\/em> jest rozszerzana o wszystkie elementy listy <em>listToAdd<\/em>. Typy danych element\u00f3w na li\u015bcie <em>listToAdd<\/em> zostaj\u0105 zachowane.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>\u0179r\u00f3d\u0142a b\u0142\u0119d\u00f3w<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Element listy <em>listToAdd<\/em> mo\u017ce zosta\u0107 dodany tylko wtedy, gdy typ danych elementu jest zgodny z typem danych elementu listy <em>list<\/em> lub mo\u017ce zosta\u0107 do niego przekonwertowany. Na przyk\u0142ad, je\u015bli <em>list<\/em> ma typ danych <em>Number[]<\/em>, a element listy <em>listToAdd<\/em> ma typ danych elementu <em>String<\/em>, w\u00f3wczas element <em>list <\/em>nie mo\u017ce zosta\u0107 dodany, poniewa\u017c ci\u0105g znak\u00f3w nie mo\u017ce zosta\u0107 przekonwertowany na liczb\u0119. Je\u015bli jednak <em>list<\/em> ma typ danych <em>String[]<\/em>, a element listy <em>listToAdd<\/em> ma typ danych <em>Number<\/em>, w\u00f3wczas element <em>list<\/em> mo\u017ce zosta\u0107 dodany, poniewa\u017c liczba mo\u017ce zosta\u0107 przekonwertowana na ci\u0105g znak\u00f3w.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Przyk\u0142ady<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>addAll(list1, list2)<\/em> dodaje wszystkie elementy listy <em>list2<\/em> do listy <em>list1<\/em>. Typy danych element\u00f3w s\u0105 zachowywane.<\/p>\n<p><em>addAll(list1, list(now()))<\/em> dodaje bie\u017c\u0105cy czas do listy <em>list1<\/em> jako nowy element typu danych elementu <em>Timestamp<\/em>.<\/p>\n<p><em>addAll(list1, minus(list2, list1))<\/em> dodaje do listy <em>list1<\/em> wszystkie elementy listy <em>list2<\/em>, kt\u00f3re nie znajduj\u0105 si\u0119 jeszcze na li\u015bcie <em>list1<\/em>.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Kontekst<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>ALL<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Uwagi<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Funkcja <em>union(list1, list2) <\/em>zwraca po\u0142\u0105czenie list <em>list1<\/em> i <em>list2<\/em>. Nale\u017cy u\u017cy\u0107 funkcji <em>union<\/em>, aby wykluczy\u0107 zduplikowane warto\u015bci.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>add, list, union<\/em><\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\">Poni\u017cszy przyk\u0142ad z definicji dzia\u0142ania <em>help.AddAll<\/em> dodaje wszystkie elementy innej listy do listy:<\/p>\n<p><em>function create()<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 var p_list1 as Unknown[];<\/em><\/p>\n<p><em>\u00a0 var p_list2 as Unknown[];<\/em><\/p>\n<p><em>\u00a0 add(p_list1, &#8222;carpe&#8221;);<\/em><\/p>\n<p><em>\u00a0 add(p_list1, &#8222;diem&#8221;);<\/em><\/p>\n<p><em>\u00a0 add(p_list2, now());<\/em><\/p>\n<p><em>\u00a0 addAll(p_list1, p_list2);<\/em><\/p>\n<p><em>\u00a0 result.VALUE := p_list1;<\/em><\/p>\n<p><em>}<\/em> <\/div><\/section>\n<h5 id=\"contains\" ><span class=\"ez-toc-section\" id=\"contains\"><\/span>contains<span class=\"ez-toc-section-end\"><\/span><\/h5>\n<table style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\">\n<tbody>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Nazwa<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>contains<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Opis<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>contains <\/em>sprawdza, czy lista zawiera okre\u015blony element.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Podpisy<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>Boolean contains(Unknown[] list, Unknown element)<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Parametry<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>list<\/em> jest list\u0105.<\/p>\n<p><em>element<\/em> jest elementem.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Wynik<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Je\u015bli lista <em>list<\/em> zawiera element <em>element<\/em>, zwracana jest warto\u015b\u0107 prawdy <em>true<\/em>, w przeciwnym razie <em>false<\/em>.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>\u0179r\u00f3d\u0142a b\u0142\u0119d\u00f3w<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Brak.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Przyk\u0142ady<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>contains(list(1, 2, 3), 1)<\/em> zwraca warto\u015b\u0107 <em>true<\/em>.<\/p>\n<p><em>contains(list(1, 2, 3), 4)<\/em> zwraca <em>false<\/em>.<\/p>\n<p><em>contains(list(1, 2, 3), &#8222;1&#8221;)<\/em> zwraca <em>false<\/em>.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Kontekst<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>ALL<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Uwagi<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\u00a0<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>intersection<\/em><\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\">Poni\u017cszy przyk\u0142ad z definicji dzia\u0142ania <em>help.contains<\/em> sprawdza, czy znak wyst\u0119puje w ci\u0105gu znak\u00f3w:<\/p>\n<p><em>function create()<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 var p_text := parameters.TEXT;<\/em><\/p>\n<p><em>\u00a0 var p_element := parameters.ELEMENT;<\/em><\/p>\n<p><em>\u00a0 var p_list := new(String[], length(p_text));<\/em><\/p>\n<p><em>\u00a0 var i := 0;<\/em><\/p>\n<p><em>\u00a0 while (i &lt; size(p_list)) {<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 p_list[i] := substring(p_text, i, i + 1);<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 i := i + 1;<\/em><\/p>\n<p><em>\u00a0 }<\/em><\/p>\n<p><em>\u00a0 result.VALUE_LIST := p_list;<\/em><\/p>\n<p><em>\u00a0 result.VALUE := contains(p_list, p_element);<\/em><\/p>\n<p><em>}<\/em> <\/div><\/section>\n<h5 id=\"intersection\" ><span class=\"ez-toc-section\" id=\"intersection\"><\/span>intersection<span class=\"ez-toc-section-end\"><\/span><\/h5>\n<table style=\"border-style: outset; border-color: #000000; background-color: #ffffff; width: 100%; height: 1158px;\">\n<tbody>\n<tr style=\"height: 68px;\">\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Nazwa<\/p>\n<\/td>\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>intersection<\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<thead>\n<tr style=\"height: 68px;\">\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Opis<\/p>\n<\/td>\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>intersection<\/em> zwraca przeci\u0119cie dw\u00f3ch lub wi\u0119cej list.<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 118px;\">\n<td style=\"height: 118px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Podpisy<\/p>\n<\/td>\n<td style=\"height: 118px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>Unknown[] intersection(Unknown[] list1, Unknown[] list2)<\/em><\/p>\n<p><em>Unknown[] intersection(Unknown[] list1, Unknown[] list2,&#8230;,Unknown[] listN)<\/em><\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 169px;\">\n<td style=\"height: 169px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Parametry<\/p>\n<\/td>\n<td style=\"height: 169px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>list1<\/em> to pierwsza lista.<\/p>\n<p><em>list2 <\/em>to druga lista.<\/p>\n<p><em>listN<\/em> jest ostatni\u0105 list\u0105.<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 133px;\">\n<td style=\"height: 133px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Wynik<\/p>\n<\/td>\n<td style=\"height: 133px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Przeci\u0119cie przeniesionych list jako lista o tym samym typie danych co <em>list1<\/em>. Przeci\u0119cie sk\u0142ada si\u0119 z element\u00f3w, kt\u00f3re s\u0105 zawarte we wszystkich przeniesionych listach <em>list1, list2,&#8230;, listN <\/em>i maj\u0105 ten sam typ danych elementu.<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 197px;\">\n<td style=\"height: 197px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>\u0179r\u00f3d\u0142a b\u0142\u0119d\u00f3w<\/p>\n<\/td>\n<td style=\"height: 197px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Aby m\u00f3c utworzy\u0107 zestaw r\u00f3\u017cnic, typy danych element\u00f3w list <em>list2, list3,&#8230;, listN<\/em> musz\u0105 by\u0107 w stanie zosta\u0107 przekonwertowane na typ danych elementu listy <em>list1<\/em>. Je\u015bli na przyk\u0142ad <em>list1<\/em> jest zadeklarowana jako <em>Number[]<\/em>, a <em>list2<\/em> jako <em>String[]<\/em><em>,<\/em> to <em>intersection(list1, list2)<\/em> spowoduje b\u0142\u0105d sk\u0142adni, ale <em>intersection(list2, list1)<\/em> nie.<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 201px;\">\n<td style=\"height: 201px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Przyk\u0142ady<\/p>\n<\/td>\n<td style=\"height: 201px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>intersection(list(1, 2, 3), list(1, 2), list(2, 3))<\/em> zwraca list\u0119 typu danych <em>Number[]<\/em> z przeci\u0119ciem 2 z elementem typu danych <em>Number.<\/em><\/p>\n<p><em>intersection(list(1), list(2))<\/em> zwraca pust\u0105 list\u0119 danych typu <em>Number[].<\/em><\/p>\n<p><em>intersection(list(&#8222;1&#8221;), list(1))<\/em> zwraca pust\u0105 list\u0119 danych typu <em>String[].<\/em><\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 68px;\">\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Kontekst<\/p>\n<\/td>\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>ALL<\/em><\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 68px;\">\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Uwagi<\/p>\n<\/td>\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\u00a0<\/td>\n<\/tr>\n<tr style=\"height: 68px;\">\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>contains, minus, union<\/em><\/p>\n<\/td>\n<\/tr>\n<\/thead>\n<\/table>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\">Poni\u017cszy przyk\u0142ad z definicji dzia\u0142ania <em>help.intersection<\/em> okre\u015bla wszystkie znaki zawarte w obu \u0142a\u0144cuchach <em>parameters.TEXT1<\/em> i <em>parameters.TEXT2<\/em>:<\/p>\n<p><em>function create()<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 var p_text1 := parameters.TEXT1;<\/em><\/p>\n<p><em>\u00a0 var p_text2 := parameters.TEXT2;<\/em><\/p>\n<p><em>\u00a0 var p_list1 := new(String[], length(p_text1));<\/em><\/p>\n<p><em>\u00a0 var p_list2 := new(String[], length(p_text2));<\/em><\/p>\n<p><em>\u00a0 var i := 0;<\/em><\/p>\n<p><em>\u00a0 while (i &lt; size(p_list1)) {<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 p_list1[i] := substring(p_text1, i, i + 1);<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 i := i + 1;<\/em><\/p>\n<p><em>\u00a0 }<\/em><\/p>\n<p><em>\u00a0 i := 0;<\/em><\/p>\n<p><em>\u00a0 while (i &lt; size(p_list2)) {<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 p_list2[i] := substring(p_text2, i, i + 1);<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 i := i + 1;<\/em><\/p>\n<p><em>\u00a0 }<\/em><\/p>\n<p><em>\u00a0 result.VALUE := intersection(p_list1, p_list2);<\/em><\/p>\n<p><em>}<\/em> <\/div><\/section>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\"><strong>Okre\u015blanie operatora dzia\u0142ania <\/strong><strong>workflow<\/strong><\/p>\n<p>Mo\u017cna u\u017cy\u0107 funkcji <em>union<\/em><em>, intersection<\/em> i <em>minus<\/em>, aby okre\u015bli\u0107 operator\u00f3w dzia\u0142ania workflow w kontek\u015bcie, jak pokazano w poni\u017cszym przyk\u0142adzie.<\/p>\n<p>Operatorzy dzia\u0142ania workflow dla zatwierdzania zam\u00f3wienia nale\u017cy okre\u015bli\u0107 za pomoc\u0105 roli workflow <em>PO_APPROVERS<\/em>. W tym celu nale\u017cy najpierw wybra\u0107 operatora <em>Wyra\u017cenie<\/em> w definicji dzia\u0142ania. Nast\u0119pnie nalezy wprowadzi\u0107 pracownik\u00f3w w polu <em>Wyra\u017cenie dla operatora<\/em> i zadeklarowa\u0107 zmienn\u0105 globaln\u0105 <em>workers<\/em> poza funkcjami.<\/p>\n<p><em>var workers as Guid[];<\/em><\/p>\n<p>W ramach funkcji tworzenia przypisuje si\u0119 pracownikom identyfikatory u\u017cytkownika w\u0142a\u015bciciela roli workflow.<\/p>\n<p><em>function create()<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 \/* zatwierdzaj\u0105cy zlecenia zakupu *\/<\/em><\/p>\n<p><em>\u00a0 workers := resolveRole(&#8222;PO_APPROVERS&#8221;);<\/em><\/p>\n<p><em>}<\/em><\/p>\n<p>Je\u015bli kwota brutto zam\u00f3wienia przekracza 10 000,00 EUR (w pierwszej walucie wewn\u0119trznej), odpowiedzialny pracownik odbiorcy faktury powinien r\u00f3wnie\u017c zatwierdzi\u0107 zam\u00f3wienie.<\/p>\n<p>W tym celu w funkcji <em>create<\/em> nale\u017cy u\u017cy\u0107 funkcji <em>union<\/em>. Aby zapobiec zwracaniu przez funkcj\u0119 <em>union<\/em> warto\u015bci zero, je\u015bli dla odbiorcy faktury nie jest zapisany \u017caden odpowiedzialny pracownik, nale\u017cy sprawdzi\u0107 wynik funkcji <em>loadResponsibleOfPartner <\/em><em>za pomoc\u0105 funkcji isNull.<\/em><\/p>\n<p><em>\u00a0 \/* dodatkowa osoba zatwierdzaj\u0105ca du\u017ce zam\u00f3wienia *\/<\/em><\/p>\n<p><em>\u00a0 if (parameters.object:totalValues.grossValueDomestic.amount1 &gt; 10000) {<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 var responsibleOfPartner := loadResponsibleOfPartner(parameters.object-&gt;InvoiceRecipientData:partner);<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 if (not isNull(responsibleOfPartner))<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0 workers := union(workers, resolvePartner(responsibleOfPartner:guid));<\/em><\/p>\n<p><em>\u00a0 }<\/em><\/p>\n<p>Je\u015bli wnioskodawca nie jest upowa\u017cniony do zatwierdzania w\u0142asnego zam\u00f3wienia, nale\u017cy wykluczy\u0107 wyzwalacz zdarzenia i pracownika odpowiedzialnego za zam\u00f3wienie z zestawu procesor\u00f3w za pomoc\u0105 funkcji minus.<\/p>\n<p><em>\u00a0 \/* usuni\u0119cie \u017c\u0105daj\u0105cego *\/<\/em><\/p>\n<p><em>\u00a0 workers := minus(workers, list(parameters.userGuid));<\/em><\/p>\n<p><em>\u00a0 if (not isNull(parameters.object:responsible))<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 workers := minus(workers, resolvePartner(parameters.object:responsible), list(parameters.userGuid));<\/em><\/p>\n<p>Aby wykluczy\u0107 pracownik\u00f3w, kt\u00f3rzy s\u0105 aktualnie nieobecni jako redaktorzy, nale\u017cy u\u017cy\u0107 funkcji <em>minus<\/em>.<\/p>\n<p><em>\u00a0 \/* usuni\u0119cie nieobecnych pracownik\u00f3w *\/<\/em><\/p>\n<p><em>\u00a0 var absentees as Guid[];<\/em><\/p>\n<p><em>\u00a0 for (u as Guid : workers)<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 if (userAbsent(u))<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0 add(absentees, u);<\/em><\/p>\n<p><em>\u00a0 workers := minus(workers, absentees);<\/em><\/p>\n<p>Je\u015bli zestaw operator\u00f3w jest pusty, prze\u0142o\u017cony osoby, kt\u00f3ra wyzwoli\u0142a zdarzenie, powinien zatwierdzi\u0107 zam\u00f3wienie. Je\u015bli u\u017cytkownik korzysta z zada\u0144, mo\u017cna u\u017cy\u0107 funkcji prze\u0142o\u017conego, aby okre\u015bli\u0107 prze\u0142o\u017conego.<\/p>\n<p><em>\u00a0 \/* domy\u015blnie u\u017cyj prze\u0142o\u017conego u\u017cytkownika, kt\u00f3ry wywo\u0142a\u0142 zdarzenie *\/ <\/em><\/p>\n<p><em>\u00a0 if (isEmpty(workers))<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 workers := superior(parameters.userGuid);<\/em><\/p>\n<p>Gotowy przyk\u0142ad wygl\u0105da nast\u0119puj\u0105co:<\/p>\n<p><em>var workers as Guid[];<\/em><\/p>\n<p><em>\u00a0<\/em><\/p>\n<p><em>function create()<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 \/* zatwierdzaj\u0105cy zlecenia zakupu *\/<\/em><\/p>\n<p><em>\u00a0 workers := resolveRole(&#8222;PO_APPROVERS&#8221;);<\/em><\/p>\n<p><em>\u00a0 <\/em><\/p>\n<p><em>\u00a0 \/* dodatkowa osoba zatwierdzaj\u0105ca du\u017ce zam\u00f3wienia *\/<\/em><\/p>\n<p><em>\u00a0 if (parameters.object:totalValues.grossValueDomestic.amount1 &gt; 10000) {<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 var responsibleOfPartner := loadResponsibleOfPartner(parameters.object-&gt;InvoiceRecipientData:partner);<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 if (not isNull(responsibleOfPartner))<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0 workers := union(workers, resolvePartner(responsibleOfPartner:guid));<\/em><\/p>\n<p><em>\u00a0 }<\/em><\/p>\n<p><em>\u00a0 <\/em><\/p>\n<p><em>\u00a0 \/* usuni\u0119cie \u017c\u0105daj\u0105cego *\/<\/em><\/p>\n<p><em>\u00a0 workers := minus(workers, list(parameters.userGuid));<\/em><\/p>\n<p><em>\u00a0 if (not isNull(parameters.object:responsible))<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 workers := minus(workers, resolvePartner(parameters.object:responsible), list(parameters.userGuid));<\/em><\/p>\n<p><em>\u00a0 <\/em><\/p>\n<p><em>\u00a0 \/* usuwanie nieobecnych pracownik\u00f3w *\/<\/em><\/p>\n<p><em>\u00a0 var absentees as Guid[];<\/em><\/p>\n<p><em>\u00a0 for (u as Guid : workers)<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 if (userAbsent(u))<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0 add(absentees, u);<\/em><\/p>\n<p><em>\u00a0 workers := minus(workers, absentees);<\/em><\/p>\n<p><em>..<\/em><\/p>\n<p><em>\u00a0 \/* domy\u015blnie u\u017cyj prze\u0142o\u017conego u\u017cytkownika, kt\u00f3ry wywo\u0142a\u0142 zdarzenie *\/ <\/em><\/p>\n<p><em>\u00a0 if (isEmpty(workers))<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 workers := superior(parameters.userGuid);<\/em><\/p>\n<p><em>}<\/em><\/p>\n<p>Je\u015bli zestaw operator\u00f3w jest pusty i nie zdefiniowano relacji nadrz\u0119dnej dla wyzwalacza w aplikacji <em>Stanowiska<\/em> w\u0142a\u015bciciele roli workflow OLTP dla administrator\u00f3w zapisanej w funkcji konfiguracyjnej <em>Workflow Management<\/em> s\u0105 u\u017cywani jako operatorzy. Je\u015bli w funkcji konfiguracji nie zdefiniowano roli workflow lub nie ma ona prawid\u0142owego w\u0142a\u015bciciela, jako operator u\u017cywany jest administrator.<\/div><\/section>\n<h5 id=\"isempty\" ><span class=\"ez-toc-section\" id=\"isEmpty\"><\/span>isEmpty<span class=\"ez-toc-section-end\"><\/span><\/h5>\n<table style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\">\n<tbody>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Nazwa<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>isEmpty<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Opis<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>isEmpty<\/em> okre\u015bla, czy lista jest pusta.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Podpisy<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>Boolean isEmpty(unknown[] list)<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Parametry<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>list<\/em> to lista, kt\u00f3ra ma zosta\u0107 sprawdzona.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Wynik<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Funkcja zwraca warto\u015b\u0107 <em>true<\/em>, je\u015bli <em>list<\/em> jest pusta. Je\u015bli<em> list<\/em> zawiera co najmniej jeden element, zwracana jest warto\u015b\u0107 <em>false<\/em>.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>\u0179r\u00f3d\u0142a b\u0142\u0119d\u00f3w<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Brak<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Przyk\u0142ady<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>isEmpty(list())<\/em> zwraca warto\u015b\u0107 <em>true<\/em>.<\/p>\n<p><em>isEmpty(list(3))<\/em> zwraca warto\u015b\u0107 <em>false<\/em>.<\/p>\n<p><em>isEmpty(new(String[3]))<\/em> zwraca warto\u015b\u0107 <em>false<\/em>.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Kontekst<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>ALL<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Uwagi<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\u00a0<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>size<\/em><\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\">Poni\u017cszy przyk\u0142ad z definicji dzia\u0142ania <em>help.isEmpty<\/em> okre\u015bla, czy lista jest pusta:<\/p>\n<p><em>function create()<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 var p_element := parameters.ELEMENT;<\/em><\/p>\n<p><em>\u00a0 var r_isEmpty as Boolean;<\/em><\/p>\n<p><em>\u00a0 var elementList as String[];<\/em><\/p>\n<p><em>\u00a0 if (p_element &lt;&gt; &#8222;&#8221;)<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 add(elementList, p_element);<\/em><\/p>\n<p><em>\u00a0 result.VALUE := isEmpty(elementList);<\/em><\/p>\n<p><em>\u00a0 result.VALUE_LIST := elementList;<\/em><\/p>\n<p><em>}<\/em> <\/div><\/section>\n<h5 id=\"list\" ><span class=\"ez-toc-section\" id=\"list\"><\/span>list<span class=\"ez-toc-section-end\"><\/span><\/h5>\n<table style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\">\n<tbody>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Nazwa<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>list<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Opis<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>list<\/em> tworzy now\u0105 list\u0119 z okre\u015blonymi elementami.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Podpisy<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>List list(Unknown e1, Unknown e2,&#8230;,Unknown eN)<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Parametry<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>e1, e2,&#8230;, eN<\/em> to elementy listy, kt\u00f3ra ma zosta\u0107 wygenerowana. Wszystkie parametry s\u0105 opcjonalne.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Wynik<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Funkcja list tworzy now\u0105, wype\u0142nion\u0105 list\u0119 z elementami <em>e1, e2,&#8230;, eN<\/em>. Typ danych pierwszego elementu <em>e1<\/em> okre\u015bla typ danych listy. Je\u015bli nie podano \u017cadnego parametru, funkcja zwraca pust\u0105 list\u0119 typu danych <em>Unknown[].<\/em><\/p>\n<p>Je\u015bli u\u017cytkownik u\u017cyje <em>list <\/em>do przypisania warto\u015bci do istniej\u0105cej listy, typ danych listy jest ju\u017c ustalony i nie mo\u017cna go zmieni\u0107. W takim przypadku mo\u017cna przypisa\u0107 tylko elementy, kt\u00f3rych typy danych element\u00f3w mo\u017cna przekonwertowa\u0107 na typ danych listy. Elementy przyjmuj\u0105 w\u00f3wczas typ danych elementu listy.<\/p>\n<p>Je\u015bli u\u017cytkownik chce utworzy\u0107 list\u0119 z elementami o r\u00f3\u017cnych typach danych element\u00f3w (np. jako list\u0119 parametr\u00f3w dla aplikacji dzia\u0142aj\u0105cej w tle), musi wybra\u0107 pierwszy element, aby pozosta\u0142e elementy mog\u0142y zosta\u0107 przekonwertowane na jego typ danych elementu. Na przyk\u0142ad liczby mog\u0105 by\u0107 konwertowane na ci\u0105gi znak\u00f3w, ale nie odwrotnie. Je\u015bli nie jest to mo\u017cliwe, mo\u017cna zadeklarowa\u0107 list\u0119 jako <em>Unknown[]<\/em> i przypisa\u0107 do niej elementy za pomoc\u0105 funkcji <em>add<\/em>.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>\u0179r\u00f3d\u0142a b\u0142\u0119d\u00f3w<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Je\u015bli elementy <em>e2, e3,&#8230;, eN<\/em> nie maj\u0105 tego samego typu danych elementu co <em>e1 <\/em>i nie mog\u0105 zosta\u0107 przekonwertowane na typ danych elementu <em>e1<\/em>, w\u00f3wczas funkcja powoduje b\u0142\u0105d sk\u0142adni.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Przyk\u0142ady<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>list()<\/em> zwraca pust\u0105 list\u0119 danych typu <em>Unknown[].<\/em><\/p>\n<p><em>list(1, 2, 3)<\/em> zwraca list\u0119 typu danych <em>Number[]<\/em> z 3 elementami typu danych <em>Number<\/em>.<\/p>\n<p><em>list(&#8222;now&#8221;, now())<\/em> zwraca list\u0119 danych typu <em>String[]<\/em> z 2 elementami typu <em>String<\/em> lub <em>Timestamp<\/em>.<\/p>\n<p><em>list(1, 2, &#8222;three&#8221;)<\/em> i <em>list(1, 2, list(3))<\/em> powoduj\u0105 b\u0142\u0105d sk\u0142adni, poniewa\u017c typ danych <em>String<\/em> lub <em>Number[]<\/em> nie mo\u017ce zosta\u0107 przekonwertowany na typ danych <em>Number<\/em>.<\/p>\n<p><em>list(null, now(), 1, &#8222;two&#8221;, 3)<\/em> tworzy list\u0119 typu danych <em>Unknown[]<\/em> z 5 elementami o r\u00f3\u017cnych typach danych element\u00f3w. Typ danych elementu pierwszego elementu <em>null<\/em> to <em>Unknown<\/em><em>.<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Kontekst<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>ALL<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Uwagi<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Podczas korzystania z element\u00f3w listy, najpierw przyjmuj\u0105 one typ danych listy. Je\u015bli lista zawiera elementy o r\u00f3\u017cnych typach danych, mo\u017ce by\u0107 konieczne rzutowanie element\u00f3w za pomoc\u0105 funkcji <em>cast<\/em> przed ich u\u017cyciem.<\/p>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\"> <em>var list1 as Unknown[];<\/em><\/p>\n<p><em>\u00a0 list1 := list(null, now(), 1, &#8222;two&#8221;, 3);<\/em><\/p>\n<p><em>\u00a0 result.VALUE := cast(Number, list1[2]) + cast(Number, list1[4]); \/* -&gt; 4 *\/<\/em> <\/div><\/section>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>add<\/em><em>, <\/em><em>addAll<\/em><\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\">Poni\u017cszy przyk\u0142ad z definicji dzia\u0142ania <em>help.list<\/em> tworzy list\u0119 z dwoma elementami:<\/p>\n<p><em>function create()<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 var p_element1 := parameters.ELEMENT1;<\/em><\/p>\n<p><em>\u00a0 var p_element2 := parameters.ELEMENT2;<\/em><\/p>\n<p><em>\u00a0 var r_list as String[];<\/em><\/p>\n<p><em>\u00a0 r_list := list(p_element1, p_element2);<\/em><\/p>\n<p><em>\u00a0 result.VALUE := r_list;<\/em><\/p>\n<p><em>}<\/em> <\/div><\/section>\n<h5 id=\"minus\" ><span class=\"ez-toc-section\" id=\"minus\"><\/span>minus<span class=\"ez-toc-section-end\"><\/span><\/h5>\n<table style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\">\n<tbody>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Nazwa<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>minus<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Opis<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>minus<\/em> zwraca r\u00f3\u017cnic\u0119 mi\u0119dzy dwiema lub wi\u0119cej listami.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Podpisy<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>Unknown[] minus(Unknown[] list1, Unknown[] list2)<\/em><\/p>\n<p><em>Unknown[] minus(Unknown[] list1, Unknown[] list2,&#8230;,Unknown[] listN)<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Parametry<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>list1 <\/em>to pierwsza lista.<\/p>\n<p><em>list2<\/em> to druga lista.<\/p>\n<p><em>listN<\/em> jest ostatni\u0105 list\u0105.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Wynik<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Zbi\u00f3r r\u00f3\u017cnic przeniesionych list jako lista o tym samym typie danych co <em>list1<\/em>. Zbi\u00f3r r\u00f3\u017cnic sk\u0142ada si\u0119 ze wszystkich element\u00f3w listy <em>list1<\/em>, kt\u00f3re nie s\u0105 zawarte w \u017cadnej z list <em>list2, list3,&#8230;, listN <\/em>o tym samym typie danych elementu.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>\u0179r\u00f3d\u0142a b\u0142\u0119d\u00f3w<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Aby utworzy\u0107 zestaw r\u00f3\u017cnic, typy danych element\u00f3w list <em>list2, list3,&#8230;, listN<\/em> musz\u0105 by\u0107 w stanie zosta\u0107 przekonwertowane na typ danych elementu listy <em>list1<\/em>. Je\u015bli na przyk\u0142ad <em>list1<\/em> jest zadeklarowana jako <em>Number[]<\/em><em>,<\/em> a <em>list2<\/em> jako <em>String[]<\/em><em>,<\/em> to <em>minus(list1, list2)<\/em> spowoduje b\u0142\u0105d sk\u0142adni, ale <em>minus(list2, list1)<\/em> nie.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Przyk\u0142ady<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>minus(list(1, 2, 3), list(1), list(2))<\/em> zwraca list\u0119 typu danych <em>Number[]<\/em> z przeci\u0119ciem 3 i elementem typu danych <em>Number<\/em>.<\/p>\n<p><em>minus(list(1), list(2))<\/em> zwraca pust\u0105 list\u0119 danych typu <em>Number[].<\/em><\/p>\n<p><em>minus(list(&#8222;1&#8221;), list(1))<\/em> zwraca pust\u0105 list\u0119 danych typu <em>String[].<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Kontekst<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>ALL<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Uwagi<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\u00a0<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>intersection, union<\/em><\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\">Poni\u017cszy przyk\u0142ad z definicji dzia\u0142ania <em>help.minus<\/em> okre\u015bla wszystkie znaki, kt\u00f3re s\u0105 zawarte w pierwszych parametrach ci\u0105gu znak\u00f3w <em>parameters.TEXT1<\/em>, ale nie w drugich parametrach ci\u0105gu znak\u00f3w <em>parameters.TEXT2<\/em>:<\/p>\n<p><em>function create()<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 var p_text1 := parameters.TEXT1;<\/em><\/p>\n<p><em>\u00a0 var p_text2 := parameters.TEXT2;<\/em><\/p>\n<p><em>\u00a0 var p_list1 := new(String[], length(p_text1));<\/em><\/p>\n<p><em>\u00a0 var p_list2 := new(String[], length(p_text2));<\/em><\/p>\n<p><em>\u00a0 var i := 0;<\/em><\/p>\n<p><em>\u00a0 while (i &lt; size(p_list1)) {<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 p_list1[i] := substring(p_text1, i, i + 1);<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 i := i + 1;<\/em><\/p>\n<p><em>\u00a0 }<\/em><\/p>\n<p><em>\u00a0 i := 0;<\/em><\/p>\n<p><em>\u00a0 while (i &lt; size(p_list2)) {<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 p_list2[i] := substring(p_text2, i, i + 1);<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 i := i + 1;<\/em><\/p>\n<p><em>\u00a0 }<\/em><\/p>\n<p><em>\u00a0 result.VALUE_LIST1 := p_list1;<\/em><\/p>\n<p><em>\u00a0 result.VALUE_LIST2 := p_list2;<\/em><\/p>\n<p><em>\u00a0 result.VALUE := minus(p_list1, p_list2);<\/em><\/p>\n<p><em>} <\/em><\/div><\/section>\n<h5 id=\"size\" ><span class=\"ez-toc-section\" id=\"size\"><\/span>size<span class=\"ez-toc-section-end\"><\/span><\/h5>\n<table style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\">\n<tbody>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Nazwa<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>size<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Opis<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>size <\/em>okre\u015bla liczb\u0119 element\u00f3w na li\u015bcie lub w HashMap.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Podpisy<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>Number size(Unknown[] list)<\/em><\/p>\n<p><em>Number size(HashMap hashMap)<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Parametry<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>list<\/em> jest list\u0105.<\/p>\n<p><em>hashMap<\/em> to tablica skr\u00f3t\u00f3w (<em>HashMap<\/em>).<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Wynik<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Liczba element\u00f3w na li\u015bcie <em>list <\/em>lub w tablicy hash <em>hashMap<\/em>.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>\u0179r\u00f3d\u0142a b\u0142\u0119d\u00f3w<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Brak<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Przyk\u0142ady<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>size(list(1, 2, 3))<\/em> zwraca 3.<\/p>\n<p><em>size(new(String[10]))<\/em> zwraca 10.<\/p>\n<p><em>size(new(HashMap))<\/em> zwraca 0.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Kontekst<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>ALL<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Uwagi<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Dwa wyra\u017cenia <em>size(list1) = 0 <\/em>i <em>isEmpty(list1)<\/em> sprawdzaj\u0105, czy lista <em>list1<\/em> jest pusta.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>isEmpty<\/em><\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\">Poni\u017cszy przyk\u0142ad z definicji dzia\u0142ania <em>help.size<\/em> okre\u015bla liczb\u0119 s\u0142\u00f3w w tek\u015bcie, dodaj\u0105c ka\u017cde s\u0142owo do listy, a nast\u0119pnie u\u017cywaj\u0105c funkcji <em>size<\/em> do okre\u015blenia d\u0142ugo\u015bci listy:<\/p>\n<p><em>function create()<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 var p_text := trim(parameters.TEXT);<\/em><\/p>\n<p><em>\u00a0 var r_wordList as String[];<\/em><\/p>\n<p><em>\u00a0 var word as String;<\/em><\/p>\n<p><em>\u00a0 var startPos := 0;<\/em><\/p>\n<p><em>\u00a0 var i := 0;<\/em><\/p>\n<p><em>\u00a0 while (i &lt; length(p_text)) {<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 if (substring(p_text, i, i + 1) = &#8221; &#8222;) {<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0 word := trim(substring(p_text, startPos, i));<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0 startPos := i;<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0 if (word &lt;&gt; &#8222;&#8221;) <\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 add(r_wordList, word);<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 } <\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 i := i + 1;<\/em><\/p>\n<p><em>\u00a0 }<\/em><\/p>\n<p><em>\u00a0 word := trim(substring(p_text, startPos));<\/em><\/p>\n<p><em>\u00a0 if (word &lt;&gt; &#8222;&#8221;) <\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 add(r_wordList, word);<\/em><\/p>\n<p><em>\u00a0 result.VALUE_WORD_LIST := r_wordList;<\/em><\/p>\n<p><em>\u00a0 result.VALUE := size(r_wordList);<\/em><\/p>\n<p><em>}<\/em> <\/div><\/section>\n<h5 id=\"tocharlist\" ><span class=\"ez-toc-section\" id=\"toCharList\"><\/span>toCharList<span class=\"ez-toc-section-end\"><\/span><\/h5>\n<table style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\">\n<tbody>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Nazwa<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>toCharList<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Opis<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>toCharList<\/em> konwertuje ci\u0105g znak\u00f3w na list\u0119 znak\u00f3w.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Podpisy<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>String[] toCharList(String text)<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Parametry<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>text<\/em> to ci\u0105g znak\u00f3w.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Wynik<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Lista z jednym elementem dla ka\u017cdego znaku w \u0142a\u0144cuchu.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>\u0179r\u00f3d\u0142a b\u0142\u0119d\u00f3w<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Brak<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Przyk\u0142ady<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>toCharList(&#8222;ABC&#8221;)<\/em> zwraca list\u0119 zawieraj\u0105c\u0105 elementy <em>[&#8222;A&#8221;], [&#8222;B&#8221;] i [&#8222;C&#8221;].<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Kontekst<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>ALL<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Uwagi<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\u00a0<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\u00a0<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\">Poni\u017cszy przyk\u0142ad z definicji dzia\u0142ania <em>help.toCharList<\/em> konwertuje ci\u0105g znak\u00f3w na list\u0119 znak\u00f3w:<\/p>\n<p><em>function create()<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 var p_text := parameters.TEXT;<\/em><\/p>\n<p><em>\u00a0 var r_toCharList := &#8222;&#8221;;<\/em><\/p>\n<p><em>\u00a0 var charList := new(String[]);<\/em><\/p>\n<p><em>\u00a0 var lenText := length(p_text);<\/em><\/p>\n<p><em>\u00a0 var i := 0;<\/em><\/p>\n<p><em>\u00a0 while (i &lt; lenText) {<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 add(charList, substring(p_text, i, i + 1));<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 i := i + 1;<\/em><\/p>\n<p><em>\u00a0 }<\/em><\/p>\n<p><em>\u00a0 for (char : charList) <\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 r_toCharList := r_toCharList + &#8221; [&#8221; + char + &#8222;]&#8221;;<\/em><\/p>\n<p><em>\u00a0 result.IS_EMPTY := isEmpty(charList);<\/em><\/p>\n<p><em>\u00a0 result.VALUE := trim(r_toCharList);<\/em><\/p>\n<p><em>}<\/em> <\/div><\/section>\n<h5 id=\"union\" ><span class=\"ez-toc-section\" id=\"union\"><\/span>union<span class=\"ez-toc-section-end\"><\/span><\/h5>\n<table style=\"border-style: outset; border-color: #000000; background-color: #ffffff; width: 100%; height: 1191px;\">\n<tbody>\n<tr style=\"height: 68px;\">\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Nazwa<\/p>\n<\/td>\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>union<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 68px;\">\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Opis<\/p>\n<\/td>\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>union <\/em>zwraca po\u0142\u0105czenie dw\u00f3ch lub wi\u0119cej list.<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 118px;\">\n<td style=\"height: 118px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Podpisy<\/p>\n<\/td>\n<td style=\"height: 118px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>Unknown[] union(Unknown[] list1, Unknown[] list2)<\/em><\/p>\n<p><em>Unknown[] union(Unknown[] list1, Unknown[] list2,&#8230;,Unknown[] listN)<\/em><\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 169px;\">\n<td style=\"height: 169px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Parametry<\/p>\n<\/td>\n<td style=\"height: 169px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>list1<\/em> to pierwsza lista.<\/p>\n<p><em>list2 <\/em>to druga lista.<\/p>\n<p><em>listN <\/em>jest ostatni\u0105 list\u0105.<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 133px;\">\n<td style=\"height: 133px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Wynik<\/p>\n<\/td>\n<td style=\"height: 133px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Zwi\u0105zek przekazanych list jako lista o tym samym typie danych co <em>list1<\/em>. Zbi\u00f3r unii sk\u0142ada si\u0119 ze wszystkich element\u00f3w, kt\u00f3re s\u0105 zawarte w jednej z list <em>list1, list2,&#8230;, listN<\/em> i maj\u0105 ten sam typ danych elementu.<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 165px;\">\n<td style=\"height: 165px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>\u0179r\u00f3d\u0142a b\u0142\u0119d\u00f3w<\/p>\n<\/td>\n<td style=\"height: 165px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Aby utworzy\u0107 zbi\u00f3r unii, typy danych element\u00f3w list <em>list2, list3,&#8230;, listN<\/em> musz\u0105 by\u0107 w stanie zosta\u0107 przekonwertowane na typ danych elementu listy <em>list1<\/em>. Je\u015bli na przyk\u0142ad <em>list1<\/em> jest zadeklarowana jako <em>Number[]<\/em><em>,<\/em> a <em>list2<\/em> jako <em>String[]<\/em><em>,<\/em> to <em>union(list1, list2)<\/em> spowoduje b\u0142\u0105d sk\u0142adni, ale <em>union(list2, list1) <\/em>nie.<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 266px;\">\n<td style=\"height: 266px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Przyk\u0142ady<\/p>\n<\/td>\n<td style=\"height: 266px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>union(list(1, 2, 3), list(1), list(2))<\/em> zwraca list\u0119 typu danych <em>Number[]<\/em> z elementami 1, 2, 3 typu danych <em>Number<\/em>.<\/p>\n<p><em>union(list(1), list(2))<\/em> zwraca list\u0119 typu danych <em>Number[]<\/em> z elementami 1, 2 typu danych <em>Number<\/em>.<\/p>\n<p><em>union(list(&#8222;1&#8221;), list(1))<\/em> zwraca list\u0119 typu danych <em>String[]<\/em> z elementami 1 i 1 odpowiednio typu danych <em>String<\/em> i <em>Number<\/em>.<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 68px;\">\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Kontekst<\/p>\n<\/td>\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>ALL<\/em><\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 68px;\">\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Uwagi<\/p>\n<\/td>\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\u00a0<\/td>\n<\/tr>\n<tr style=\"height: 68px;\">\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>add, intersection, minus<\/em><\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\">Poni\u017cszy przyk\u0142ad z definicji dzia\u0142ania <em>help.minus<\/em> okre\u015bla wszystkie znaki, kt\u00f3re s\u0105 zawarte w pierwszym parametrze ci\u0105gu znak\u00f3w <em>parameters.TEXT1<\/em> lub drugim parametrze ci\u0105gu znak\u00f3w <em>parameters.TEXT2<\/em>:<\/p>\n<p><em>function create()<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 var p_text1 := parameters.TEXT1;<\/em><\/p>\n<p><em>\u00a0 var p_text2 := parameters.TEXT2;<\/em><\/p>\n<p><em>\u00a0 var p_list1 := new(String[], length(p_text1));<\/em><\/p>\n<p><em>\u00a0 var p_list2 := new(String[], length(p_text2));<\/em><\/p>\n<p><em>\u00a0 var i := 0;<\/em><\/p>\n<p><em>\u00a0 while (i &lt; size(p_list1)) {<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 p_list1[i] := substring(p_text1, i, i + 1);<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 i := i + 1;<\/em><\/p>\n<p><em>\u00a0 }<\/em><\/p>\n<p><em>\u00a0 i := 0;<\/em><\/p>\n<p><em>\u00a0 while (i &lt; size(p_list2)) {<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 p_list2[i] := substring(p_text2, i, i + 1);<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 i := i + 1;<\/em><\/p>\n<p><em>\u00a0 }<\/em><\/p>\n<p><em>\u00a0 result.VALUE_LIST1 := p_list1;<\/em><\/p>\n<p><em>\u00a0 result.VALUE_LIST2 := p_list2;<\/em><\/p>\n<p><em>\u00a0 result.VALUE := union(p_list1, p_list2);<\/em><\/p>\n<p><em>} <\/em><\/div><\/section>\n<h4 id=\"funkcje-guid-guid-functions\" ><span class=\"ez-toc-section\" id=\"Funkcje_GUID_GUID_functions\"><\/span>Funkcje GUID (GUID functions)<span class=\"ez-toc-section-end\"><\/span><\/h4>\n<p>Identyfikatory mo\u017cna tworzy\u0107 i edytowa\u0107 za pomoc\u0105 funkcji dla identyfikator\u00f3w. Funkcje dla identyfikator\u00f3w obejmuj\u0105<\/p>\n<ul>\n<li><strong>guidToString<\/strong><\/li>\n<li><strong>newGuid<\/strong><\/li>\n<\/ul>\n<h5 id=\"guidtostring\" ><span class=\"ez-toc-section\" id=\"guidToString\"><\/span>guidToString<span class=\"ez-toc-section-end\"><\/span><\/h5>\n<table style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\">\n<tbody>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Nazwa<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>guidToString<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Opis<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>guidToString<\/em> konwertuje identyfikator GUID na ci\u0105g znak\u00f3w w 37-znakowym formacie Microsoft. Format ten jest u\u017cywany na przyk\u0142ad przez BIS.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Podpisy<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>String (Guid guid)<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Parametry<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>guid <\/em>jest identyfikatorem GUID.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Wynik<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Ci\u0105g znak\u00f3w dla <em>guid<\/em> w 37-znakowym formacie Microsoft.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>\u0179r\u00f3d\u0142a b\u0142\u0119d\u00f3w<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Brak<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Przyk\u0142ady<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>guidToString(ZERO_GUID)<\/em> zwraca 00000000-0000-00-00-00-00-000000000000 jako ci\u0105g znak\u00f3w.<\/p>\n<p><em>guidToString(INVALID_GUID)<\/em> zwraca 00000000-0000-00-00-00-f000000000 jako ci\u0105g znak\u00f3w.<\/p>\n<p><em>guidToString(\u201e0040509F68492E10926FAE1BAABC0000\u201c<\/em> zwraca 9f504000-4968-102e-92-6f-0000bcaa1bae jako ci\u0105g znak\u00f3w.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Kontekst<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>ALL<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Uwagi<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>guidToString<\/em> nale\u017cy wykorzystywa\u0107 tylko wtedy, gdy u\u017cytkownik chce przekonwertowa\u0107 guid na 37-cyfrowy format Microsoft.<\/p>\n<p>Aby przekonwertowa\u0107 identyfikator Guid na ci\u0105g znak\u00f3w, nale\u017cy u\u017cy\u0107 funkcji <em>cast<\/em>. Dla por\u00f3wnania, <em>cast(String, ZERO_GUID)<\/em> zwraca ci\u0105g znak\u00f3w z 32 zerami (&#8222;00000000000000000000000000000000&#8221;).<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>cast<\/em><\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\">Poni\u017cszy przyk\u0142ad z definicji dzia\u0142ania <em>help.guidToString<\/em> tworzy nowy unikalny identyfikator Guid i konwertuje go na ci\u0105g znak\u00f3w w 37-znakowym formacie Microsoft:<\/p>\n<p><em>function create()<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 var p_guid := newGuid();<\/em><\/p>\n<p><em>\u00a0 var r_guidToString := guidToString(p_guid);<\/em><\/p>\n<p><em>\u00a0 result.VALUE_INTERNAL := p_guid;<\/em><\/p>\n<p><em>\u00a0 result.VALUE_MS := r_guidToString;<\/em><\/p>\n<p><em>}<\/em> <\/div><\/section>\n<h5 id=\"newguid\" ><span class=\"ez-toc-section\" id=\"newGuid\"><\/span>newGuid<span class=\"ez-toc-section-end\"><\/span><\/h5>\n<table style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\">\n<tbody>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Nazwa<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>newGuid<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Opis<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>newGuid<\/em> tworzy nowy unikalny identyfikator Guid.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Podpisy<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>Guid newGuid()<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Parametry<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Brak<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Wynik<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Nowy, przejrzysty identyfikator<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>\u0179r\u00f3d\u0142a b\u0142\u0119d\u00f3w<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Brak<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Przyk\u0142ady<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>newGuid()<\/em> zwraca nowy unikalny identyfikator Guid.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Kontekst<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>ALL<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Uwagi<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Funkcji <em>newGuid <\/em>mo\u017cna u\u017cy\u0107 na przyk\u0142ad do przypisania unikalnej nazwy do pliku, kt\u00f3ry ma zosta\u0107 utworzony za pomoc\u0105 funkcji <em>writeFile<\/em>.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\u00a0<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\">Poni\u017cszy przyk\u0142ad z definicji dzia\u0142ania <em>help.newGuid<\/em> tworzy nowy unikalny identyfikator Guid:<\/p>\n<p><em>function create()<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 result.VALUE := newGuid();<\/em><\/p>\n<p><em>}<\/em> <\/div><\/section>\n<h4 id=\"funkcje-dla-zestawow-wartosci-valueset-functions\" ><span class=\"ez-toc-section\" id=\"Funkcje_dla_zestawow_wartosci_ValueSet_functions\"><\/span>Funkcje dla zestaw\u00f3w warto\u015bci (ValueSet functions)<span class=\"ez-toc-section-end\"><\/span><\/h4>\n<p>Funkcje <em>ValueSets<\/em> u\u0142atwiaj\u0105 korzystanie z <em>ValueSets <\/em>w skryptach, np. w wynikach dzia\u0142ania pola typu <em>Pole wyboru<\/em>. Funkcje <em>ValueSets<\/em> obejmuj\u0105:<\/p>\n<ul>\n<li><strong>valueSet<\/strong><\/li>\n<li><strong>valueSetDescription<\/strong><\/li>\n<li><strong>valueSetName<\/strong><\/li>\n<\/ul>\n<h5 id=\"valueset\" ><span class=\"ez-toc-section\" id=\"valueSet\"><\/span>valueSet<span class=\"ez-toc-section-end\"><\/span><\/h5>\n<table style=\"border-style: outset; border-color: #000000; background-color: #ffffff; width: 100%; height: 1069px;\">\n<tbody>\n<tr style=\"height: 68px;\">\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"132\">\n<p>Nazwa<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"406\">\n<p>valueSet<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 68px;\">\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"132\">\n<p>Opis<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"406\">\n<p><em>valueSet<\/em> tworzy zmienn\u0105 typu <em>Class<\/em> z wpisami ze zbioru warto\u015bci.<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 68px;\">\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"132\">\n<p>Podpisy<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"406\">\n<p><em>&lt;variableName&gt; valueSet(valueSet)<\/em><\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 68px;\">\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"132\">\n<p>Parametry<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"406\">\n<p><em>valueSet<\/em> to w pe\u0142ni kwalifikowana nazwa <em>ValueSet<\/em> bez cudzys\u0142ow\u00f3w.<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 100px;\">\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 100px;\" width=\"132\">\n<p>Wynik<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 100px;\" width=\"406\">\n<p>Zmienna typu <em>Class<\/em> i sta\u0142a z nazw\u0105 techniczn\u0105 wpisu i jego numerycznym identyfikatorem dla ka\u017cdego wpisu zestawu warto\u015bci.<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 68px;\">\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"132\">\n<p>\u0179r\u00f3d\u0142a b\u0142\u0119d\u00f3w<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"406\">\n<p>Brak<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 448px;\">\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 448px;\" width=\"132\">\n<p>Przyk\u0142ady<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 448px;\" width=\"406\">\n<p><em>const State as valueSet(com.cisag.sys.workflow.ActivityState);<\/em><\/p>\n<p><em>\u00a0<\/em><\/p>\n<p><em>function close(state as Number)<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 if (state = State.DONE) {<\/em><\/p>\n<p><em>\u00a0 } else {<\/em><\/p>\n<p><em>\u00a0 }<\/em><\/p>\n<p><em>}<\/em><\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 68px;\">\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"132\">\n<p>Kontekst<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"406\">\n<p><em>ALL<\/em><\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 68px;\">\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"132\">\n<p>Uwagi<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"406\">\n<p><em>valueSet<\/em> mo\u017ce by\u0107 u\u017cywane tylko podczas deklarowania sta\u0142ych.<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 45px;\">\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 45px;\" width=\"132\">\n<p>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 45px;\" width=\"406\">\n<p><em>valueSetDescription<\/em><em>, <\/em><em>valueSetName<\/em><\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h5 id=\"valuesetdescription\" ><span class=\"ez-toc-section\" id=\"valueSetDescription\"><\/span>valueSetDescription<span class=\"ez-toc-section-end\"><\/span><\/h5>\n<table style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\">\n<tbody>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Nazwa<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>valueSetDescription<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Opis<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>valueSetDescription<\/em> zwraca opis wpisu <em>ValueSet<\/em>.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Podpisy<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>String valueSetDescription(Hashmap valueSet, Number id)<\/em><\/p>\n<p><em>String valueSetDescription(String valueSetName, Number id)<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Parametry<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>valueSet <\/em>to nazwa sta\u0142ej zadeklarowanej jako <em>ValueSet<\/em> lub <em>HashMap<\/em> z wpisami dla <em>ValuseSet<\/em>.<\/p>\n<p><em>id <\/em>to numeryczny identyfikator wpisu w <em>ValueSet<\/em>.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Wynik<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Przet\u0142umaczalny opis wpisu <em>ValueSet<\/em> jako ci\u0105g znak\u00f3w.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>\u0179r\u00f3d\u0142a b\u0142\u0119d\u00f3w<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Je\u015bli <em>ValueSet<\/em> nie zawiera wpisu o identyfikatorze <em>id<\/em>, zwracana jest warto\u015b\u0107 zero.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Przyk\u0142ady<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>ValueSet<\/em> mo\u017ce by\u0107 przekazany jako wyra\u017cenie po deklaracji z const:<\/p>\n<p><em>const State as valueSet(com.cisag.sys.workflow.ActivityState);<\/em><\/p>\n<p><em>&#8230;<\/em><\/p>\n<p><em>formatDescription(&#8222;state&#8221;, valueSetDescription(State, activity:state);<\/em><\/p>\n<p>Zestaw <em>ValueSet<\/em> mo\u017cna jednak r\u00f3wnie\u017c przes\u0142a\u0107 przy u\u017cyciu pe\u0142nej nazwy technicznej:<\/p>\n<p><em>formatDescription(&#8222;state&#8221;, valueSetDescription(&#8222;com.cisag.sys.workflow.ActivityState&#8221;, activity:state);<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Kontekst<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>ALL<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Uwagi<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Opisu mo\u017cna u\u017cy\u0107 na przyk\u0142ad do wy\u015bwietlenia u\u017cytkownikowi warto\u015bci atrybutu <em>ValueSet<\/em> w jego j\u0119zyku tre\u015bci.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>valueSet<\/em><em>, <\/em><em>valueSetName<\/em><\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\">Poni\u017cszy przyk\u0142ad z definicji dzia\u0142ania <em>help.valueSetDescription<\/em> pokazuje nazw\u0119 i opis wpisu <em>ValueSet com.cisag.sys.workflow.ActivityState<\/em>:<\/p>\n<p><em>const State as valueSet(com.cisag.sys.workflow.ActivityState);<\/em><\/p>\n<p><em>function create()<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 var p_id := parameters.ID;<\/em><\/p>\n<p><em>\u00a0 var r_name := &#8222;&#8221;;<\/em><\/p>\n<p><em>\u00a0 var r_description := &#8222;&#8221;;<\/em><\/p>\n<p><em>\u00a0 var name := valueSetName(State, p_id);<\/em><\/p>\n<p><em>\u00a0 var description := valueSetDescription(State, p_id);<\/em><\/p>\n<p><em>\u00a0 if (not isNull(name)) {<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 r_name := name;<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 r_description := description;<\/em><\/p>\n<p><em>\u00a0 }<\/em><\/p>\n<p><em>\u00a0 result.IS_NULL := isNull(name);<\/em><\/p>\n<p><em>\u00a0 result.NAME := r_name;<\/em><\/p>\n<p><em>\u00a0 result.DESCRIPTION := description;\u00a0 <\/em><\/p>\n<p><em>} <\/em><\/div><\/section>\n<h5 id=\"valuesetname\" ><span class=\"ez-toc-section\" id=\"valueSetName\"><\/span>valueSetName<span class=\"ez-toc-section-end\"><\/span><\/h5>\n<table style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\">\n<tbody>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Nazwa<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>valueSetName<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Opis<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>valueSetName<\/em> zwraca nazw\u0119 wpisu <em>ValueSet<\/em>.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Podpisy<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>String valueSetName(Hashmap valueSet, Number id)<\/em><\/p>\n<p><em>String valueSetName(String valueSetName, Number id)<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Parametry<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>valueSet<\/em> to nazwa sta\u0142ej zadeklarowanej jako <em>ValueSet<\/em> lub <em>HashMap<\/em> z wpisami dla <em>ValuseSet<\/em>.<\/p>\n<p><em>id<\/em> to numeryczny identyfikator wpisu w <em>ValueSet<\/em>.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Wynik<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Nazwa wpisu <em>ValueSet<\/em> jako ci\u0105g znak\u00f3w.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>\u0179r\u00f3d\u0142a b\u0142\u0119d\u00f3w<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Je\u015bli <em>ValueSet<\/em> nie zawiera wpisu o identyfikatorze <em>id<\/em>, zwracana jest warto\u015b\u0107 zero.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Przyk\u0142ady<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>ValueSet mo\u017ce by\u0107 przekazany jako wyra\u017cenie po deklaracji z const:<\/p>\n<p><em>const State as valueSet(com.cisag.sys.workflow.ActivityState);<\/em><\/p>\n<p><em>&#8230;<\/em><\/p>\n<p><em>formatDescription(&#8222;state&#8221;, valueSetName(State, activity:state);<\/em><\/p>\n<p>Zestaw <em>ValueSet<\/em> mo\u017cna jednak r\u00f3wnie\u017c przes\u0142a\u0107 przy u\u017cyciu pe\u0142nej nazwy technicznej:<\/p>\n<p><em>formatDescription(&#8222;state&#8221;, valueSetName(&#8222;com.cisag.sys.workflow.ActivityState&#8221;, activity:state);<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Kontekst<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>ALL<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Uwagi<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Nazwy tej mo\u017cna u\u017cy\u0107 na przyk\u0142ad do wyra\u017anego wy\u015bwietlenia u\u017cytkownikowi warto\u015bci atrybutu <em>ValueSet<\/em>.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>valueSet<\/em><em>, <\/em><em>valueSetDescription<\/em><\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\">Poni\u017cszy przyk\u0142ad z definicji dzia\u0142ania <em>help.valueSetDescription<\/em> pokazuje nazw\u0119 i opis wpisu <em>ValueSet com.cisag.sys.workflow.ActivityState<\/em>:<\/p>\n<p><em>const State as valueSet(com.cisag.sys.workflow.ActivityState);<\/em><\/p>\n<p><em>function create()<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 var p_id := parameters.ID;<\/em><\/p>\n<p><em>\u00a0 var r_name := &#8222;&#8221;;<\/em><\/p>\n<p><em>\u00a0 var r_description := &#8222;&#8221;;<\/em><\/p>\n<p><em>\u00a0 var name := valueSetName(State, p_id);<\/em><\/p>\n<p><em>\u00a0 var description := valueSetDescription(State, p_id);<\/em><\/p>\n<p><em>\u00a0 if (not isNull(name)) {<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 r_name := name;<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 r_description := description;<\/em><\/p>\n<p><em>\u00a0 }<\/em><\/p>\n<p><em>\u00a0 result.IS_NULL := isNull(name);<\/em><\/p>\n<p><em>\u00a0 result.NAME := r_name;<\/em><\/p>\n<p><em>\u00a0 result.DESCRIPTION := description;\u00a0 <\/em><\/p>\n<p><em>} <\/em><\/div><\/section>\n<h4 id=\"funkcje-dla-obiektow-biznesowych-business-object-functions\" ><span class=\"ez-toc-section\" id=\"Funkcje_dla_obiektow_biznesowych_Business_object_functions\"><\/span>Funkcje dla obiekt\u00f3w biznesowych (Business object functions)<span class=\"ez-toc-section-end\"><\/span><\/h4>\n<p>Funkcje dla obiekt\u00f3w biznesowych mog\u0105 by\u0107 u\u017cywane do otwierania i analizowania dowolnych obiekt\u00f3w biznesowych z bazy danych. Funkcje dla obiekt\u00f3w biznesowych obejmuj\u0105:<\/p>\n<ul>\n<li><strong>getAttribute<\/strong><\/li>\n<li><strong>getByBusinessKey<\/strong><\/li>\n<li><strong>getByPrimaryKey<\/strong><\/li>\n<li><strong>getCisObjectList<\/strong><\/li>\n<li><strong>getURL<\/strong><\/li>\n<\/ul>\n<h5 id=\"getattribute\" ><span class=\"ez-toc-section\" id=\"getAttribute\"><\/span>getAttribute<span class=\"ez-toc-section-end\"><\/span><\/h5>\n<table style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\">\n<tbody>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Nazwa<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>getAttribute<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Opis<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>getAttribute<\/em> zwraca warto\u015b\u0107 atrybutu obiektu biznesowego lub widoku obiektu.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Podpisy<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>Unknown getAttribute(CisObject object, String path)<\/em><\/p>\n<p><em>Unknown getAttribute(DataView view, String path)<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Parametry<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>obiect<\/em> jest obiektem biznesowym.<\/p>\n<p><em>view<\/em> jest widokiem obiektu.<\/p>\n<p><em>attribute <\/em>to nazwa atrybutu.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Wynik<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Funkcja zwraca warto\u015b\u0107 atrybutu obiektu biznesowego lub widoku obiektu z typem danych <em>Unknown<\/em>.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>\u0179r\u00f3d\u0142a b\u0142\u0119d\u00f3w<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Je\u015bli atrybut ze \u015bcie\u017ck\u0105 <em>path<\/em> nie istnieje, wyst\u0105pi b\u0142\u0105d wykonania.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Przyk\u0142ady<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>loadCurrency(getCorporateCurrency(cast(Guid, getAttribute(parameters<\/em><em>.object, &#8222;_organisation&#8221;)))):isoCode<\/em> zwraca kod ISO kluczowej waluty organizacji, w kt\u00f3rej kontek\u015bcie zarejestrowano obiekt biznesowy, do kt\u00f3rego odwo\u0142uje si\u0119 <em>parameters.object<\/em>.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Kontekst<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>ALL<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Uwagi<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Funkcja ta s\u0142u\u017cy do oceny atrybut\u00f3w zaczynaj\u0105cych si\u0119 od podkre\u015blenia.<\/p>\n<p>Przed u\u017cyciem atrybutu nale\u017cy przekonwertowa\u0107 go na typ danych zgodny z atrybutem.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\u00a0<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\">Poni\u017cszy przyk\u0142ad z definicji dzia\u0142ania <em>help.getAttribute<\/em> pokazuje warto\u015bci wewn\u0119trznych atrybut\u00f3w obiektu biznesowego dla warto\u015bci pozycji (<em>com.cisag.app.inventory.obj.ItemValuationData<\/em>):<\/p>\n<ul>\n<li><strong>Strefa czasowa<\/strong> \u2013 atrybut <em>_timeZoneGuid<\/em><\/li>\n<li><strong>Organizacja<\/strong> \u2013 atrybut <em>_organisation<\/em><\/li>\n<li><strong>Data kursu wymiany<\/strong> \u2013 atrybut <em>_conversionDate<\/em><\/li>\n<li><strong>Kombinacja walut wewn\u0119trznych<\/strong> \u2013 atrybut <em>_currencyCombo<\/em><\/li>\n<\/ul>\n<p><em>function create()<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 var p_organisation := parameters.ORGANIZATION;<\/em><\/p>\n<p><em>\u00a0 var p_item := parameters.ORGANIZATION;<\/em><\/p>\n<p><em>\u00a0 var r_timeZoneId := &#8222;&#8221;;<\/em><\/p>\n<p><em>\u00a0 var r_organisation := &#8222;&#8221;;<\/em><\/p>\n<p><em>\u00a0 var r_conversionDate := &#8222;&#8221;;<\/em><\/p>\n<p><em>\u00a0 var r_currencyCombination := &#8222;&#8221;;<\/em><\/p>\n<p><em>\u00a0 var itemValuationData := getByPrimaryKey(CisObject(com.cisag.app.inventory.obj.ItemValuationData), loadOrganisation(p_organization):guid, loadItem(p_item):guid, ZERO_GUID, ZERO_GUID, ZERO_GUID);<\/em><\/p>\n<p><em>\u00a0 if (not isNull(itemValuationData)) {<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 r_timeZoneId := getByPrimaryKey(&#8222;REPOSITORY&#8221;, CisObject(com.cisag.sys.kernel.obj.TimeZone), (cast(Guid, getAttribute(itemValuationData, &#8222;_timeZoneGuid&#8221;)))):id;<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 r_organisation := loadOrganisation(cast(Guid, getAttribute(itemValuationData, &#8222;_organisation&#8221;)):code;<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 r_conversionDate := cast(Timestamp, getAttribute(itemValuationData, &#8222;_conversionDate&#8221;));<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 var currencyCombination := getByPrimaryKey(CisObject(com.cisag.app.multiorg.obj.DomesticCurrencyCombination), cast(Number, getAttribute(itemValuationData, &#8222;_currencyCombo&#8221;)));<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 r_currencyCombination := loadCurrency(currencyCombination:currency1):isoCode;<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 if (not isNull(currencyCombination:currency2))<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0 r_currencyCombination := r_currencyCombination + &#8221; &#8221; + loadCurrency(currencyCombination:currency2):isoCode;<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 if (not isNull(currencyCombination:currency3))<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0 r_currencyCombination := r_currencyCombination + &#8221; &#8221; + loadCurrency(currencyCombination:currency3):isoCode;<\/em><\/p>\n<p><em>\u00a0 }<\/em><\/p>\n<p><em>\u00a0 result.VALUE1 := r_timeZoneId;<\/em><\/p>\n<p><em>\u00a0 result.VALUE2 := r_organisation;<\/em><\/p>\n<p><em>\u00a0 result.VALUE3 := r_conversionDate;<\/em><\/p>\n<p><em>\u00a0 result.VALUE4 := r_currencyCombination;<\/em><\/p>\n<p><em>} <\/em><\/div><\/section>\n<h5 id=\"getbybusinesskey\" ><span class=\"ez-toc-section\" id=\"getByBusinessKey\"><\/span>getByBusinessKey<span class=\"ez-toc-section-end\"><\/span><\/h5>\n<table style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\">\n<tbody>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Nazwa<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>getByBusinessKey<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Opis<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>getByBusinessKey<\/em> otwiera obiekt biznesowy poprzez jego klucz biznesowy.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Podpisy<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>CisObject(X) getByBusinessKey(CisObject(X), A1, A2, &#8230; , An)<\/em><\/p>\n<p><em>CisObject(X) getByBusinessKey(String database, CisObject(X), A1, A2, &#8230; , An)<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Parametry<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>X <\/em>to w pe\u0142ni kwalifikowana nazwa techniczna obiektu biznesowego.<\/p>\n<p><em>A1, A2, &#8230;, An<\/em> to warto\u015bci atrybut\u00f3w w kluczu biznesowym obiektu biznesowego.<\/p>\n<p><em>database<\/em> to nazwa bazy danych, w kt\u00f3rej znajduje si\u0119 obiekt biznesowy. Je\u015bli obiekt biznesowy nie znajduje si\u0119 w bazie danych, w kt\u00f3rej przechowywane jest dzia\u0142anie, nale\u017cy r\u00f3wnie\u017c okre\u015bli\u0107 baz\u0119 danych. Mo\u017cliwe warto\u015bci to: <em>OLTP<\/em><em>, OLAP, REPOSITORY, CONFIGURATION<\/em>. Alternatywnie mo\u017cna r\u00f3wnie\u017c poda\u0107 nazw\u0119 bazy danych w systemie, np. <em>QAS60010.<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Wynik<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Funkcja zwraca obiekt biznesowy jako typowany <em>CisObject<\/em>.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>\u0179r\u00f3d\u0142a b\u0142\u0119d\u00f3w<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Je\u015bli nie istnieje \u017caden obiekt biznesowy z okre\u015blonymi warto\u015bciami atrybut\u00f3w, zwracana jest warto\u015b\u0107 zero.<\/p>\n<p>Nale\u017cy upewni\u0107 si\u0119 r\u00f3wnie\u017c, \u017ce wprowadzane s\u0105 warto\u015bci atrybut\u00f3w we w\u0142a\u015bciwej kolejno\u015bci klucza biznesowego.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Przyk\u0142ady<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>getByBusinessKey(CisObject(com.cisag.app.general.obj.Partner), &#8222;10010&#8221;)<\/em> daje taki sam wynik jak <em>loadPartner(&#8222;10010&#8221;).<\/em><\/p>\n<p><em>getByBusinessKey(CisObject(com.cisag.app.sales.obj.SalesOrder), getByBusinessKey(CisObject(com.cisag.app.sales.obj.SalesOrderType), &#8222;100&#8221;):guid, &#8222;01234&#8221;)<\/em> zwraca zam\u00f3wienie sprzeda\u017cy 100-01234.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Kontekst<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>ALL<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Uwagi<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Poniewa\u017c obiekt biznesowy jest otwierany za po\u015brednictwem us\u0142ugi trwa\u0142o\u015bci, funkcja ta nie mo\u017ce powodowa\u0107 \u017cadnego dost\u0119pu do bazy danych. Dlatego funkcja <em>getByBusinessKey<\/em> jest lepsza od funkcji <em>getCisObjectList<\/em>, je\u015bli ma zosta\u0107 otwarta tylko jedna instancja obiektu biznesowego.<\/p>\n<p>W przypadku wersjonowanych obiekt\u00f3w biznesowych mo\u017cna otworzy\u0107 tylko aktualnie obowi\u0105zuj\u0105c\u0105 wersj\u0119 za pomoc\u0105 funkcji <em>getByBusinessKey<\/em>. Je\u015bli u\u017cytkownik chce otworzy\u0107 przesz\u0142\u0105 lub przysz\u0142\u0105 wersj\u0119, mo\u017ce u\u017cy\u0107 funkcji <em>getCisObjectList<\/em>, na przyk\u0142ad okre\u015blaj\u0105c atrybuty <em>validFrom<\/em> i <em>validUntil<\/em>.<\/p>\n<p>Atrybuty klucza biznesowego obiektu biznesowego s\u0105 wy\u015bwietlane w aplikacji <em>Obiekty deweloperskie<\/em>.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>getByPrimaryKey<\/em><\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\">Poni\u017cszy przyk\u0142ad z definicji dzia\u0142ania <em>help.getByBusinessKey<\/em> otwiera zam\u00f3wienie sprzeda\u017cy poprzez jego rodzaj i numer oraz okre\u015bla klienta:<\/p>\n<p><em>function create()<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 var p_type := parameters.TYPE;<\/em><\/p>\n<p><em>\u00a0 var p_number := parameters.NUMBER;<\/em><\/p>\n<p><em>\u00a0 var r_customer := &#8222;&#8221;;<\/em><\/p>\n<p><em>\u00a0 var salesOrder := getByBusinessKey(CisObject(com.cisag.app.sales.obj.SalesOrder), getByBusinessKey(CisObject(com.cisag.app.sales.obj.SalesOrderType), p_type):guid, p_number);<\/em><\/p>\n<p><em>\u00a0 if (not isNull(salesOrder)) {<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 r_customer := salesOrder-&gt;CustomerData-&gt;CustomerPartner:number + &#8221; &#8221; + salesOrder-&gt;CustomerData-&gt;CustomerPartner:searchString;<\/em><\/p>\n<p><em>\u00a0 }<\/em><\/p>\n<p><em>\u00a0 result.IS_NULL := isNull(salesOrder);<\/em><\/p>\n<p><em>\u00a0 result.CUSTOMER := r_customer;<\/em><\/p>\n<p><em>} <\/em><\/div><\/section>\n<h5 id=\"getbyprimarykey\" ><span class=\"ez-toc-section\" id=\"getByPrimaryKey\"><\/span>getByPrimaryKey<span class=\"ez-toc-section-end\"><\/span><\/h5>\n<table style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\">\n<tbody>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Nazwa<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>getByPrimaryKey<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Opis<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>getByPrimaryKey<\/em> otwiera obiekt biznesowy poprzez jego klucz podstawowy.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Podpisy<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>CisObject(X) getByPrimaryKey(CisObject(X), A1, A2, &#8230; , An)<\/em><\/p>\n<p><em>CisObject(X) getByPrimaryKey(String database, CisObject(X), A1, A2, &#8230; , An)<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Parametry<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>X<\/em> to w pe\u0142ni kwalifikowana nazwa techniczna obiektu biznesowego.<\/p>\n<p><em>A1, A2, &#8230;, An<\/em> to warto\u015bci atrybut\u00f3w w kluczu podstawowym obiektu biznesowego.<\/p>\n<p><em>database <\/em>to nazwa bazy danych, w kt\u00f3rej znajduje si\u0119 obiekt biznesowy. Je\u015bli obiekt biznesowy nie znajduje si\u0119 w bazie danych, w kt\u00f3rej przechowywane jest dzia\u0142anie, nale\u017cy r\u00f3wnie\u017c okre\u015bli\u0107 baz\u0119 danych. Mo\u017cliwe warto\u015bci to: <em>OLTP<\/em><em>, OLAP, REPOSITORY, CONFIGURATION<\/em>. Alternatywnie mo\u017cna r\u00f3wnie\u017c poda\u0107 nazw\u0119 bazy danych w systemie, np. <em>QAS60010<\/em>.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Wynik<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Funkcja zwraca obiekt biznesowy jako typowany <em>CisObject<\/em>.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>\u0179r\u00f3d\u0142a b\u0142\u0119d\u00f3w<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Je\u015bli nie istnieje \u017caden obiekt biznesowy z okre\u015blonymi warto\u015bciami atrybut\u00f3w, zwracana jest warto\u015b\u0107 zero.<\/p>\n<p>Nale\u017cy upewni\u0107 si\u0119 r\u00f3wnie\u017c, \u017ce wprowadzane s\u0105 warto\u015bci atrybut\u00f3w we w\u0142a\u015bciwej kolejno\u015bci klucza g\u0142\u00f3wnego.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Przyk\u0142ady<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>getByPrimaryKey(CisObject(com.cisag.app.general.obj.Employee), loadPartner(&#8222;70010&#8221;):guid<\/em><em>)<\/em> otwiera dane pracownika partnera 70010.<\/p>\n<p><em>getByPrimaryKey(&#8222;CONFIGURATION&#8221;, CisObject(com.cisag.sys.configuration.obj.User), parameters.userGuid):emailAddress<\/em> zwraca adres e-mail zapisany w danych systemowych u\u017cytkownika, kt\u00f3ry wywo\u0142a\u0142 zdarzenie typu <em>Jednostka biznesowa<\/em>.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Kontekst<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>ALL<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Uwagi<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Poniewa\u017c obiekt biznesowy jest otwierany za po\u015brednictwem us\u0142ugi trwa\u0142o\u015bci, funkcja ta nie mo\u017ce powodowa\u0107 \u017cadnego dost\u0119pu do bazy danych. Dlatego funkcja <em>getByPrimaryKey<\/em> jest lepsza od funkcji <em>getCisObjectList<\/em>, je\u015bli ma zosta\u0107 otwarta tylko jedna instancja obiektu biznesowego.<\/p>\n<p>W przypadku wersjonowanych obiekt\u00f3w biznesowych mo\u017cna otworzy\u0107 tylko aktualnie obowi\u0105zuj\u0105c\u0105 wersj\u0119 za pomoc\u0105 funkcji <em>getByPrimaryKey<\/em>. Je\u015bli u\u017cytkownik chce otworzy\u0107 przesz\u0142\u0105 lub przysz\u0142\u0105 wersj\u0119, mo\u017ce u\u017cy\u0107 funkcji <em>getCisObjectList<\/em>, na przyk\u0142ad okre\u015blaj\u0105c atrybuty <em>validFrom<\/em> i <em>validUntil<\/em>.<\/p>\n<p>Atrybuty klucza g\u0142\u00f3wnego obiektu biznesowego s\u0105 wy\u015bwietlane w aplikacji <em>Obiekty deweloperskie<\/em>.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>getByBusinessKey<\/em><\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\">Poni\u017cszy przyk\u0142ad z definicji dzia\u0142ania <em>help.getByPrimaryKey<\/em> otwiera dane pracownika partnera i zwraca numer personalny:<\/p>\n<p><em>function create()<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 var p_partner := parameters.PARTNER;<\/em><\/p>\n<p><em>\u00a0 var r_employeeNumber := &#8222;&#8221;;<\/em><\/p>\n<p><em>\u00a0 var employee := getByPrimaryKey(CisObject(com.cisag.app.general.obj.Employee), loadPartner(p_partner):guid);<\/em><\/p>\n<p><em>\u00a0 if (not isNull(employee)) {<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 r_employeeNumber := employee:employeeNumber;<\/em><\/p>\n<p><em>\u00a0 }<\/em><\/p>\n<p><em>\u00a0 result.IS_NULL := isNull(employee);<\/em><\/p>\n<p><em>\u00a0 result.EMPLOYEE_NUMBER := r_employeeNumber;<\/em><\/p>\n<p><em>} <\/em><\/div><\/section>\n<h5 id=\"getcisobjectlist\" ><span class=\"ez-toc-section\" id=\"getCisObjectList\"><\/span>getCisObjectList<span class=\"ez-toc-section-end\"><\/span><\/h5>\n<table style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\">\n<tbody>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Nazwa<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>getCisObjectList<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Opis<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>getCisObjectList<\/em> zwraca list\u0119 instancji obiekt\u00f3w biznesowych, kt\u00f3re zosta\u0142y okre\u015blone za pomoc\u0105 instrukcji OQL.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Podpisy<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>CisObject[] getCisObjectList(String oql, Unknown[] parameters)<\/em><\/p>\n<p><em>CisObject[] getCisObjectList(String database, String oql, Unknown[] parameters)<\/em><\/p>\n<p><em>CisObject[] getCisObjectList(String oql, Unknown[] parameters, Number count)<\/em><\/p>\n<p><em>CisObject[] getCisObjectList(String database, String oql, Unknown[] parameters, Number count)<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Parametry<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>oql <\/em>jest instrukcj\u0105 OQL. Musi by\u0107 ona wprowadzona zgodnie ze wzorcem <em>SELECT FROM&#8230;.<\/em> Wi\u0119cej informacji mo\u017cna znale\u017a\u0107 w artykule <em>Sk\u0142adnia OQL<\/em>.<\/p>\n<p><em>database<\/em> to nazwa bazy danych, w kt\u00f3rej znajduje si\u0119 obiekt biznesowy. Je\u015bli obiekt biznesowy nie znajduje si\u0119 w bazie danych, w kt\u00f3rej przechowywane jest dzia\u0142anie, nale\u017cy r\u00f3wnie\u017c okre\u015bli\u0107 baz\u0119 danych. Mo\u017cliwe warto\u015bci to: <em>OLTP<\/em><em>, OLAP, REPOSITORY, CONFIGURATION<\/em>. Alternatywnie mo\u017cna r\u00f3wnie\u017c poda\u0107 nazw\u0119 bazy danych w systemie, np. <em>QAS60010<\/em>.<\/p>\n<p><em>parameters<\/em> to lista warto\u015bci parametr\u00f3w dla instrukcji OQL. Obs\u0142ugiwane s\u0105 typy danych <em>Boolean<\/em><em>, String, Number, Guid, Timestamp, CisDate i Bytes<\/em>. Liczby i <em>CisDate<\/em> s\u0105 traktowane specjalnie. Je\u015bli liczba jest przekazywana bez miejsc dziesi\u0119tnych, parametr jest traktowany jako liczba ca\u0142kowita (<em>int<\/em>), w przeciwnym razie jako liczba dziesi\u0119tna (<em>CisDecimal<\/em>). Nale\u017cy upewni\u0107 si\u0119, \u017ce nie przekazywane s\u0105 \u017cadne liczby z miejscami dziesi\u0119tnymi jako parametry dla atrybut\u00f3w typ\u00f3w danych <em>Java byte, short, int<\/em> lub <em>long. CisDate<\/em> jest zazwyczaj konwertowana na znacznik czasu.<\/p>\n<p><em>count<\/em> to maksymalna liczba zwracanych instancji obiekt\u00f3w biznesowych. Je\u015bli warto\u015b\u0107 <em>count<\/em> nie zostanie okre\u015blona, zwracana jest maksymalnie jedna instancja <em>CisObject<\/em>. Nale\u017cy okre\u015bli\u0107 jak najmniejsz\u0105 warto\u015b\u0107, poniewa\u017c zbyt du\u017ca warto\u015b\u0107 mo\u017ce mie\u0107 negatywny wp\u0142yw na wydajno\u015b\u0107 systemu. Maksymalna warto\u015b\u0107 jest ograniczona. Wi\u0119cej informacji mo\u017cna znale\u017a\u0107 w rozdziale <em>Ograniczanie z\u0142o\u017cono\u015bci wyra\u017ce\u0144<\/em> w artykule <em>Wprowadzenie: J\u0119zyk skryptowy systemu<\/em>.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Wynik<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Funkcja zwraca list\u0119 <em>CisObjects<\/em>, je\u015bli zosta\u0142a wykonana bez b\u0142\u0119d\u00f3w. Je\u015bli nie znaleziono \u017cadnych rekord\u00f3w danych, zwracana jest pusta lista.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>\u0179r\u00f3d\u0142a b\u0142\u0119d\u00f3w<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Je\u015bli wyst\u0105pi b\u0142\u0105d, zwracana jest warto\u015b\u0107 zero.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Przyk\u0142ady<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>cast(CisObject(com.cisag.app.general.obj.Partner), getCisObjectList(&#8222;SELECT FROM com.cisag.app.general.obj.Partner p ORDER BY p:updateInfo.createTime ASC&#8221;, list(), 1)[0]):number<\/em> zwraca identyfikator pierwszego zarejestrowanego partnera.<\/p>\n<p><em>cast(CisObject(com.cisag.app.general.obj.UserAssignment), getCisObjectList(&#8222;SELECT FROM com.cisag.app.general.obj.UserAssignment o WHERE o:user<\/em> <em>= ?&#8221;, list(userGuid(parameters.userGuid)), 1)[0])<\/em> zwraca partnera powi\u0105zanego z u\u017cytkownikiem, kt\u00f3ry wywo\u0142a\u0142 zdarzenie typu <em>Jednostka biznesowa<\/em>.<\/p>\n<p><em>for (salesOrder as CisObject(com.cisag.app.sales.obj.SalesOrder) : getCisObjectList(&#8222;SELECT FROM com.cisag.app.sales.obj.SalesOrder so WHERE so:type IN (SELECT t:guid FROM com.cisag.app.sales.obj.SalesOrderType t WHERE (t:code = ? or t:code = ?) <\/em><em>AND so:status = ? ORDER BY so:date DESC&#8221;, list(&#8222;100&#8221;, &#8222;200&#8221;, OrderStatus.ORDER_HELD), 10))<\/em> iteruje po dziesi\u0119ciu zablokowanych zam\u00f3wieniach sprzeda\u017cy typu 100 lub 200 z najwi\u0119ksz\u0105 dat\u0105 dokumentu.<\/p>\n<p><em>isEmpty(getCisObjectList(&#8222;SELECT FROM com.cisag.sys.workflow.obj.Process o WHERE o:code like ? <\/em><em>AND o:processDefinition = ? AND (o:state = ? OR o:state = ?)&#8221;, list(&#8222;%&#8221;, definition-&gt;ProcessDefinition:guid, ProcessState.IN_PROCESS, ProcessState.OVERDUE), 1))<\/em> sprawdza w warunku przej\u015bcia w\u0119z\u0142a pocz\u0105tkowego, czy istnieje otwarta instancja procesu z tej samej definicji procesu. Ten warunek przej\u015bcia gwarantuje, \u017ce proces nie zostanie uruchomiony wi\u0119cej ni\u017c jeden raz. Nale\u017cy pami\u0119ta\u0107, \u017ce pierwszy element listy parametr\u00f3w nie ma znaczenia funkcjonalnego. Zosta\u0142 dodany tylko dlatego, \u017ce typy danych <em>Guid<\/em> i <em>Number <\/em>nie mog\u0105 by\u0107 konwertowane na siebie nawzajem. Alternatywnie, warto\u015bci <em>ValueSet<\/em> mo\u017cna zakodowa\u0107 bezpo\u015brednio w instrukcji OQL (cho\u0107 mo\u017ce to negatywnie wp\u0142yn\u0105\u0107 na wydajno\u015b\u0107) lub list\u0119 parametr\u00f3w mo\u017cna utworzy\u0107 za pomoc\u0105 funkcji <em>add<\/em> i sprawdzi\u0107 warunek w funkcji <em>create<\/em>. Je\u015bli istnieje ju\u017c otwarta instancja procesu, generowanie dzia\u0142ania mo\u017cna anulowa\u0107 za pomoc\u0105 polecenia <em>abort<\/em> lub <em>abortProcess<\/em>.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Kontekst<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>ALL<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Uwagi<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Parametry dla instrukcji OQL nie powinny by\u0107 predefiniowane w instrukcji OQL, ale powinny by\u0107 przekazywane do funkcji jako symbole zast\u0119pcze przy u\u017cyciu parametr\u00f3w z <em>?<\/em>. Je\u015bli parametry w instrukcji OQL s\u0105 zakodowane jako sta\u0142e zamiast symboli zast\u0119pczych, mo\u017ce to mie\u0107 negatywny wp\u0142yw na wydajno\u015b\u0107 systemu.<\/p>\n<p>Podczas tworzenia listy za pomoc\u0105 funkcji <em>list<\/em>, elementy listy przyjmuj\u0105 typ danych pierwszego elementu. Je\u015bli instrukcja OQL ma parametry typ\u00f3w danych, kt\u00f3re nie mog\u0105 by\u0107 konwertowane na siebie nawzajem, mo\u017cna zadeklarowa\u0107 pust\u0105 list\u0119 typu danych <em>Unknown[]<\/em> i doda\u0107 elementy r\u00f3\u017cnych typ\u00f3w danych za pomoc\u0105 funkcji <em>add<\/em>, przyk\u0142adowo<\/p>\n<p>\u00a0 <em>var parameterList := new(Unknown[]);<\/em><\/p>\n<p><em>\u00a0 add(parameterList, now());<\/em><\/p>\n<p><em>\u00a0 add(parameterList, 10);<\/em><\/p>\n<p><em>\u00a0 add(parameterList, &#8222;100&#8221;);<\/em><\/p>\n<p>Poniewa\u017c funkcja zwraca nieoznaczon\u0105 list\u0119 <em>CisObject<\/em>, nale\u017cy wpisa\u0107 elementy listy przed ich u\u017cyciem.<\/p>\n<p>Poniewa\u017c funkcja <em>getCisObjectList<\/em> powoduje dost\u0119p do bazy danych, funkcja <em>getByBusinessKey<\/em> jest preferowana, je\u015bli ma zosta\u0107 otwarta tylko jedna instancja obiektu biznesowego.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>getResultList<\/em><\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\">Poni\u017cszy przyk\u0142ad z definicji dzia\u0142anai <em>help.getCisObjectList<\/em> zwraca 10 ostatnio zarejestrowanych zam\u00f3wie\u0144 sprzeda\u017cy klienta:<\/p>\n<p><em>function create()<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 var p_customer := parameters.CUSTOMER;<\/em><\/p>\n<p><em>\u00a0 var r_salesOrders := &#8222;&#8221;;<\/em><\/p>\n<p><em>\u00a0 var customer := loadPartner(p_customer);<\/em><\/p>\n<p><em>\u00a0 if (not isNull(customer)) {<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 var oql := <\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0 &#8222;SELECT FROM com.cisag.app.sales.obj.SalesOrder so &#8221; +<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0 &#8222;WHERE so:customerData IN &#8221; + <\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0 &#8221; (SELECT ocdi:guid &#8221; + <\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0 &#8221; FROM com.cisag.app.sales.obj.OrderCustomerDataInfo ocdi &#8221; +<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0 &#8221; WHERE ocdi:customer = ?) &#8221; + <\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0 &#8222;ORDER BY so:date DESC&#8221;;<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 var soList := getCisObjectList(oql, list(customer:guid), 10);<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 for (so as CisObject(com.cisag.app.sales.obj.SalesOrder) : soList) {<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0 r_salesOrders := r_salesOrders + &#8221; &#8221; + so-&gt;Type:code + &#8222;-&#8221; + so:number;<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 }<\/em><\/p>\n<p><em>\u00a0 }<\/em><\/p>\n<p><em>\u00a0 result.SALES_ORDERS := trim(r_salesOrders);<\/em><\/p>\n<p><em>} <\/em><\/div><\/section>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\"> <strong>Zapytanie o osoby wewn\u0119trzne<\/strong><\/p>\n<p>Poni\u017cszy przyk\u0142ad okre\u015bla wszystkie wewn\u0119trzne osoby w bazie danych. Poniewa\u017c funkcja <em>getCisObjectList<\/em> nie mo\u017ce zwr\u00f3ci\u0107 dowolnej liczby instancji, osoby s\u0105 odpytywane blok po bloku zgodnie z indeksowanym atrybutem <em>number<\/em> i dodawane do listy <em>partnerList<\/em>. Dopiero gdy zapytanie zwr\u00f3ci mniej instancji ni\u017c rozmiar bloku, zako\u0144czone zostanie okre\u015blanie wszystkich os\u00f3b wewn\u0119trznych.<\/p>\n<p><em>const PartnerType as valueSet(com.cisag.app.general.PartnerType);<\/em><\/p>\n<p><em>const BlockSize := 100;<\/em><\/p>\n<p><em>function create()<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 var partnerList as CisObject(com.cisag.app.general.obj.Partner)[];<\/em><\/p>\n<p><em>\u00a0 var lastPartnerNumber := &#8222;&#8221;;<\/em><\/p>\n<p><em>\u00a0 var allPartnersSearched := false;<\/em><\/p>\n<p><em>\u00a0 var params as Unknown[];<\/em><\/p>\n<p><em>\u00a0 while (not allPartnersSearched) {<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 var OQL := <\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0 &#8222;SELECT FROM com.cisag.app.general.obj.Partner p &#8221; + <\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0 &#8221; WHERE p:type = ? AND p:human = ? AND p:number &gt; ? &#8221; + <\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0 &#8221; ORDER BY p:number&#8221;;<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 params := new(Unknown[]);<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 add(params, PartnerType.INTERNAL);<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 add(params, true);<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 add(params, lastPartnerNumber);<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 var cisObjectList := getCisObjectList(OQL, params, BlockSize);<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 for (p as CisObject(com.cisag.app.general.obj.Partner) : cisObjectList) <\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0 add(partnerList, p);<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 lastPartnerNumber := partnerList[size(partnerList)-1]:number;<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 allPartnersSearched := size(cisObjectList) &lt; BlockSize;<\/em><\/p>\n<p><em>\u00a0 }<\/em><\/p>\n<p><em>} <\/em><\/div><\/section>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\"> <strong>Dynamiczna instrukcja OQL<\/strong><\/p>\n<p>Poni\u017cszy przyk\u0142ad tworzy dynamiczn\u0105 instrukcj\u0119 OQL dla eksportu partner\u00f3w, kt\u00f3rzy zostali wprowadzeni lub zmienieni wczoraj. Poniewa\u017c definicja dzia\u0142ania wykonuje aplikacj\u0119 w tle <em>com.cisag.pgm.bi.Export<\/em>, zmienna <em>dynSQL<\/em> musi zosta\u0107 zadeklarowana poza funkcj\u0105 <em>create<\/em>, a warto\u015b\u0107 musi zosta\u0107 przekazana do aplikacji w tle za po\u015brednictwem parametru <em>SearchName<\/em>.<\/p>\n<p><em>var dynOQL as String;<\/em><\/p>\n<p><em>function create()<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 \/* Pobierz czas rozpocz\u0119cia i zako\u0144czenia dla dynamicznego OQL*\/<\/em><\/p>\n<p><em>\u00a0 var endTime := startOfDay(now());<\/em><\/p>\n<p><em>\u00a0 var beginTime := addDays(endTime, -1);<\/em><\/p>\n<p><em>\u00a0 \/* Tworzenie cz\u0105stek czasu dla dynamicznego OQL *\/<\/em><\/p>\n<p><em>\u00a0 var beginYear := format(year(beginTime), &#8222;0000&#8221;);<\/em><\/p>\n<p><em>\u00a0 var beginMonth := format(month(beginTime), &#8222;00&#8221;);<\/em><\/p>\n<p><em>\u00a0 var beginDay := format(day(beginTime), &#8222;00&#8221;);<\/em><\/p>\n<p><em>\u00a0 var endYear := format(year(endTime), &#8222;0000&#8221;);<\/em><\/p>\n<p><em>\u00a0 var endMonth := format(month(endTime), &#8222;00&#8221;);<\/em><\/p>\n<p><em>\u00a0 var endDay := format(day(endTime), &#8222;00&#8221;);<\/em><\/p>\n<p><em>\u00a0 \/* Uzyskaj domy\u015blny identyfikator strefy czasowej systemu *\/<\/em><\/p>\n<p><em>\u00a0 var timeZoneId := timeZoneId(today());<\/em><\/p>\n<p><em>\u00a0 \/* Tworzenie dynamicznego OQL *\/<\/em><\/p>\n<p><em>\u00a0 var dynOQL := <\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 &#8222;DynOQL:SELECT DISTINCT o:guid, o:number &#8221; + <\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 &#8222;FROM com.cisag.app.general.obj.Partner o &#8221; + <\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 &#8222;WHERE (o:updateInfo.updateTime &gt;= &#8221; +<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 &#8222;toTimestamp(&#8222;&#8221; + timeZoneId + &#8222;&#8221;, &#8221; + <\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 beginYear + &#8222;, &#8221; + beginMonth + &#8222;, &#8221; + beginDay + <\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 &#8222;, 00, 00, 00, 000) &#8221; + <\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 &#8222;AND o:updateInfo.updateTime &lt; &#8221; +<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 &#8222;toTimestamp(&#8222;&#8221; + timeZoneId + &#8222;&#8221;, &#8221; + <\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 endYear + &#8222;, &#8221; + endMonth + &#8222;, &#8221; + endDay + <\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 &#8222;, 00, 00, 00, 000)) &#8221; + <\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 &#8222;OR (o:updateInfo.createTime &gt;= &#8221; +<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 &#8222;toTimestamp(&#8222;&#8221; + timeZoneId + &#8222;&#8221;, &#8221; + <\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 beginYear + &#8222;, &#8221; + beginMonth + &#8222;, &#8221; + beginDay + <\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 &#8222;, 00, 00, 00, 000) &#8221; + <\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 &#8222;AND o:updateInfo.createTime &lt; &#8221; + <\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 &#8222;toTimestamp(&#8222;&#8221; + timeZoneId + &#8222;&#8221;, &#8221; + <\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 endYear + &#8222;, &#8221; + endMonth + &#8222;, &#8221; + endDay + <\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 &#8222;, 00, 00, 00, 000) &#8221; + <\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 &#8222;AND o:updateInfo.updateTime = UNDEFINED_TIME_STAMP) &#8221; + <\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 &#8222;ORDER BY o:number&#8221;;<\/em><\/p>\n<p><em>}<\/em> <\/div><\/section>\n<h5 id=\"geturl\" ><span class=\"ez-toc-section\" id=\"getURL\"><\/span>getURL<span class=\"ez-toc-section-end\"><\/span><\/h5>\n<table style=\"border-style: outset; border-color: #000000; background-color: #ffffff; width: 100%; height: 1176px;\">\n<tbody>\n<tr style=\"height: 68px;\">\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Nazwa<\/p>\n<\/td>\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>getURL<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 68px;\">\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Opis<\/p>\n<\/td>\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>getURL <\/em>generuje adres URL dla obiektu biznesowego.<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 219px;\">\n<td style=\"height: 219px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Podpisy<\/p>\n<\/td>\n<td style=\"height: 219px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>String getURL(CisObject object)<\/em><\/p>\n<p><em>String getURL(String serverName, CisObject object)<\/em><\/p>\n<p><em>String getURL(Guid databaseGuid, CisObject object)<\/em><\/p>\n<p><em>String getURL(String serverName, Guid databaseGuid, CisObject object)<\/em><\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 266px;\">\n<td style=\"height: 266px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Parametry<\/p>\n<\/td>\n<td style=\"height: 266px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>object<\/em> to obiekt biznesowy, dla kt\u00f3rego ma zosta\u0107 wygenerowany adres URL.<\/p>\n<p><em>serverName<\/em> to nazwa serwera aplikacji, na kt\u00f3ry powinien wskazywa\u0107 adres URL. Je\u015bli nazwa serwera nie zostanie okre\u015blona, u\u017cywany jest bie\u017c\u0105cy serwer aplikacji.<\/p>\n<p><em>databaseGuid<\/em> to baza danych, na kt\u00f3r\u0105 powinien wskazywa\u0107 adres URL. Je\u015bli nie okre\u015blono identyfikatora bazy danych, bie\u017c\u0105ca baza danych OLTP jest u\u017cywana dla adresu URL dla dzia\u0142a\u0144 OLTP i bazy danych repozytorium dla dzia\u0142a\u0144 repozytorium.<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 68px;\">\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Wynik<\/p>\n<\/td>\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Adres URL obiektu biznesowego jako ci\u0105g znak\u00f3w.<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 68px;\">\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>\u0179r\u00f3d\u0142a b\u0142\u0119d\u00f3w<\/p>\n<\/td>\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Brak.<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 215px;\">\n<td style=\"height: 215px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Przyk\u0142ady<\/p>\n<\/td>\n<td style=\"height: 215px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>getURL(loadPartner(&#8222;10010&#8221;))<\/em> zwraca adres URL dla partnera 10010.<\/p>\n<p><em>formatDescriptionHTML(&#8222;process&#8221;, &#8222;&lt;a href=\\&#8221;&#8221; + getURL(getByBusinessKey(CisObject(com.cisag.sys.workflow.obj.Process), process.Code)) + &#8222;\\&#8221;&gt;&#8221; +<\/em> <em>toHtml(process.Code) + &#8222;&lt;\/a&gt;&#8221;)<\/em> zast\u0119puje symbol zast\u0119pczy <em>{process}<\/em> w opisie dzia\u0142ania klikalnym linkiem do procesu.<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 68px;\">\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Kontekst<\/p>\n<\/td>\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>ALL<\/em><\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 68px;\">\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Uwagi<\/p>\n<\/td>\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Adresu URL mo\u017cna u\u017cy\u0107 na przyk\u0142ad w tagach HTML w opisie dzia\u0142ania.<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 68px;\">\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\u00a0<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\">Poni\u017cszy przyk\u0142ad z definicji dzia\u0142ania <em>help.getURL<\/em> generuje adres URL dla partnera:<\/p>\n<p><em>function create()<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 var p_partner := parameters.PARTNER;<\/em><\/p>\n<p><em>\u00a0 var p_server := parameters.SERVER;<\/em><\/p>\n<p><em>\u00a0 var p_database := parameters.DATABASE;<\/em><\/p>\n<p><em>\u00a0 var r_URL := &#8222;&#8221;;<\/em><\/p>\n<p><em>\u00a0 var partner := loadPartner(p_partner);<\/em><\/p>\n<p><em>\u00a0 if (not isNull(partner)) {<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 if (p_server = &#8222;&#8221; and p_database = &#8222;&#8221;)<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0 r_URL := getURL(partner);<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 else if (p_server = &#8222;&#8221; and p_database &lt;&gt; &#8222;&#8221;)<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0 r_URL := getURL(cast(Guid, p_database), partner);<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 else if (p_server &lt;&gt; &#8222;&#8221; and p_database = &#8222;&#8221;)<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0 r_URL := getURL(p_server, partner);<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 inny<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0 r_URL := getURL(p_server, cast(Guid, p_database), partner);<\/em><\/p>\n<p><em>\u00a0 }<\/em><\/p>\n<p><em>\u00a0 result.URL := r_URL;<\/em><\/p>\n<p><em>} <\/em><\/div><\/section>\n<h4 id=\"funkcje-dla-instrukcji-oql-result-list-functions\" ><span class=\"ez-toc-section\" id=\"Funkcje_dla_instrukcji_OQL_Result_list_functions\"><\/span>Funkcje dla instrukcji OQL (Result list functions)<span class=\"ez-toc-section-end\"><\/span><\/h4>\n<p>Z pomoc\u0105 funkcji <em>getResultList<\/em> mo\u017cna odpyta\u0107 baz\u0119 danych za pomoc\u0105 instrukcji OQL. Funkcja zwraca wynik w postaci dwuwymiarowej listy wierszy i kolumn.<\/p>\n<h5 id=\"getresultlist\" ><span class=\"ez-toc-section\" id=\"getResultList\"><\/span>getResultList<span class=\"ez-toc-section-end\"><\/span><\/h5>\n<table style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\">\n<tbody>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Nazwa<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>getResultList<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Opis<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>getResultList<\/em> otwiera dowolne dane z bazy danych za pomoc\u0105 instrukcji OQL.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Podpisy<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>Unknown[][] getResultList(String oql, Unknown[] parameters)<\/em><\/p>\n<p><em>Unknown[][] getResultList(String database, String oql, Unknown[] parameters)<\/em><\/p>\n<p><em>Unknown[][] getResultList(String oql, Unknown[] parameters, Number count)<\/em><\/p>\n<p><em>Unknown[][] getResultList(String database, String oql, Unknown[] parameters, Number count)<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Parametry<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>oql <\/em>jest instrukcj\u0105 OQL. Wi\u0119cej informacji mo\u017cna znale\u017a\u0107 w dokumencie <em>Sk\u0142adnia OQL<\/em>.<\/p>\n<p><em>database<\/em> to nazwa bazy danych, w kt\u00f3rej przechowywane s\u0105 dane. Je\u015bli dane nie znajduj\u0105 si\u0119 w bazie danych, w kt\u00f3rej przechowywane jest dzia\u0142anie, nale\u017cy r\u00f3wnie\u017c okre\u015bli\u0107 baz\u0119 danych. Mo\u017cliwe warto\u015bci to: <em>OLTP<\/em><em>, OLAP, REPOSITORY, CONFIGURATION. <\/em>Alternatywnie mo\u017cna r\u00f3wnie\u017c poda\u0107 nazw\u0119 bazy danych w systemie, np. <em>QAS60010<\/em>.<\/p>\n<p><em>parameters<\/em> to lista warto\u015bci parametr\u00f3w dla instrukcji OQL. Obs\u0142ugiwane s\u0105 typy danych <em>Boolean<\/em><em>, String, Number, Guid, Timestamp, CisDate i Bytes<\/em>. Liczby i <em>CisDate<\/em> s\u0105 traktowane specjalnie. Je\u015bli liczba jest przekazywana bez miejsc dziesi\u0119tnych, parametr jest traktowany jako liczba ca\u0142kowita (<em>int<\/em>), w przeciwnym razie jako liczba dziesi\u0119tna (<em>CisDecimal<\/em>). Nale\u017cy upewni\u0107 si\u0119, \u017ce nie przekazuje si\u0119 \u017cadnych liczb z miejscami dziesi\u0119tnymi jako parametr\u00f3w dla atrybut\u00f3w typ\u00f3w danych <em>Java byte, short, int<\/em> lub <em>long. CisDate<\/em> jest zazwyczaj konwertowana na znacznik czasu.<\/p>\n<p><em>count<\/em> to maksymalna liczba zwracanych rekord\u00f3w danych. Je\u015bli warto\u015b\u0107 <em>count<\/em> nie zostanie okre\u015blona, zwracany jest maksymalnie jeden rekord danych. Nale\u017cy okre\u015bli\u0107 jak najmniejsz\u0105 warto\u015b\u0107, poniewa\u017c zbyt du\u017ca warto\u015b\u0107 mo\u017ce mie\u0107 negatywny wp\u0142yw na wydajno\u015b\u0107 systemu. Maksymalna warto\u015b\u0107 jest ograniczona. Wi\u0119cej informacji mo\u017cna znale\u017a\u0107 w rozdziale <em>Ograniczanie z\u0142o\u017cono\u015bci wyra\u017ce\u0144<\/em> w artykule <em>Wprowadzenie: J\u0119zyk skryptowy systemu<\/em>.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Wynik<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Je\u015bli funkcja zostanie wykonana bez b\u0142\u0119d\u00f3w, zwraca list\u0119 wierszy wynik\u00f3w. Ka\u017cdy wiersz wynik\u00f3w jest z kolei reprezentowany przez list\u0119 poszczeg\u00f3lnych warto\u015bci. Je\u015bli nie znaleziono \u017cadnych rekord\u00f3w danych, zwracana jest pusta lista.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>\u0179r\u00f3d\u0142a b\u0142\u0119d\u00f3w<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Je\u015bli wyst\u0105pi b\u0142\u0105d, zwracana jest warto\u015b\u0107 zero.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Przyk\u0142ady<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>cast(String, getResultList(&#8222;SELECT p:number FROM com.cisag.app.general.obj.Partner p ORDER BY p:updateInfo.createTime ASC&#8221;, list(), 1)[0][0])<\/em> zwraca identyfikator pierwszego zarejestrowanego partnera jako ci\u0105g znak\u00f3w.<\/p>\n<p><em>cast(Number, getResultList(&#8222;SELECT COUNT(*) FROM com.cisag.app.general.obj.Partner p WHERE p:human = ?&#8221;, list(true), 1)[0][0])<\/em> zwraca liczb\u0119 os\u00f3b wprowadzonych jako partnerzy jako liczb\u0119.<\/p>\n<p><em>for (soGuid as Guid[] : getResultList(&#8222;SELECT so:guid FROM com.cisag.app.sales.obj.SalesOrder so JOIN com.cisag.app.sales.obj.SalesOrderType t ON so:type = t:guid WHERE (t:code = ? or t:code = ?) <\/em><em>AND so:status = ? ORDER BY so:date DESC&#8221;, list(&#8222;100&#8221;, &#8222;200&#8221;, OrderStatus.ORDER_HELD), 10)) <\/em>iteruje po li\u015bcie zawieraj\u0105cej guidy dziesi\u0119ciu zablokowanych zam\u00f3wie\u0144 sprzeda\u017cy rodzaju 100 lub 200 z najwi\u0119ksz\u0105 dat\u0105 dokumentu.<\/p>\n<p><em>cast(Number, (getResultList(&#8222;SELECT COUNT(*) FROM com.cisag.sys.workflow.obj.Activity o WHERE o:code like ? <\/em><em>AND o:definitionGuid = ? AND (o:state &lt;&gt; ? AND o:state &lt;&gt; ?)&#8221;, list(&#8222;%&#8221;, definition:guid, State.DONE, State.CANCELED), 1))) = 0<\/em> sprawdza w warunku przej\u015bcia definicji dzia\u0142ania, czy istnieje otwarta instancja dzia\u0142ania z tej samej definicji dzia\u0142ania. Ten warunek przej\u015bcia zapewnia, \u017ce istnieje co najwy\u017cej jedno otwarte dzia\u0142anie. Nale\u017cy pami\u0119ta\u0107, \u017ce pierwszy element listy parametr\u00f3w nie ma znaczenia funkcjonalnego. Zosta\u0142 dodany tylko dlatego, \u017ce typy danych <em>Guid<\/em> i <em>Number <\/em>nie mog\u0105 by\u0107 konwertowane na siebie nawzajem. Alternatywnie, warto\u015bci <em>ValueSet<\/em> mo\u017cna zakodowa\u0107 bezpo\u015brednio w instrukcji OQL (cho\u0107 mo\u017ce to mie\u0107 negatywny wp\u0142yw na wydajno\u015b\u0107) lub list\u0119 parametr\u00f3w mo\u017cna utworzy\u0107 za pomoc\u0105 funkcji <em>add<\/em> i sprawdzi\u0107 warunek w funkcji <em>create<\/em>. Je\u015bli istnieje ju\u017c otwarta instancja procesu, generowanie dzia\u0142ania mo\u017cna anulowa\u0107 za pomoc\u0105 polecenia <em>abort<\/em>.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Kontekst<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>ALL<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Uwagi<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Parametry dla instrukcji OQL nie powinny by\u0107 sta\u0142e w instrukcji OQL, ale powinny by\u0107 przekazywane do funkcji jako symbole zast\u0119pcze przy u\u017cyciu parametr\u00f3w z <em>?<\/em>. Je\u015bli parametry w instrukcji OQL s\u0105 zakodowane jako sta\u0142e zamiast symboli zast\u0119pczych, mo\u017ce to mie\u0107 negatywny wp\u0142yw na wydajno\u015b\u0107 systemu.<\/p>\n<p>Podczas tworzenia listy za pomoc\u0105 funkcji <em>list<\/em>, elementy listy przyjmuj\u0105 typ danych pierwszego elementu. Je\u015bli instrukcja OQL ma parametry typ\u00f3w danych, kt\u00f3re nie mog\u0105 by\u0107 konwertowane na siebie nawzajem, mo\u017cna zadeklarowa\u0107 pust\u0105 list\u0119 typu danych <em>Unknown[]<\/em> i doda\u0107 elementy r\u00f3\u017cnych typ\u00f3w danych za pomoc\u0105 funkcji <em>add<\/em>, przyk\u0142adowo:<\/p>\n<p>\u00a0 <em>var parameterList := new(Unknown[]);<\/em><\/p>\n<p><em>\u00a0 add(parameterList, now());<\/em><\/p>\n<p><em>\u00a0 add(parameterList, 10);<\/em><\/p>\n<p><em>\u00a0 add(parameterList, &#8222;100&#8221;);<\/em><\/p>\n<p>Poniewa\u017c okre\u015blone rekordy danych s\u0105 zwracane jako dwuwymiarowa lista danych typu <em>Unknown[][],<\/em> przed ich u\u017cyciem nale\u017cy rzutowa\u0107 elementy listy.<\/p>\n<p>Poniewa\u017c<em> getResultList<\/em> powoduje dost\u0119p do bazy danych, funkcja <em>getByBusinessKey<\/em> jest preferowana, je\u015bli ma zosta\u0107 otwarta tylko jedna instancja obiektu biznesowego.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>getCisObjectList<\/em><\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\">Poni\u017cszy przyk\u0142ad z definicji dzia\u0142ania <em>help.getResultList<\/em> zwraca 10 ostatnio zarejestrowanych zam\u00f3wie\u0144 sprzeda\u017cy klienta:<\/p>\n<p><em>function create()<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 var p_customer := parameters.CUSTOMER;<\/em><\/p>\n<p><em>\u00a0 var r_salesOrders := &#8222;&#8221;;<\/em><\/p>\n<p><em>\u00a0 var customer := loadPartner(p_customer);<\/em><\/p>\n<p><em>\u00a0 if (not isNull(customer)) {<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 var so as CisObject(com.cisag.app.sales.obj.SalesOrder);<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 var oql := <\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0 &#8222;SELECT o:guid FROM com.cisag.app.sales.obj.SalesOrder o &#8221; +<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0 &#8222;JOIN com.cisag.app.sales.obj.OrderCustomerDataInfo ocdi &#8221; +<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0 &#8222;ON o:customerData = ocdi:guid &#8221; + <\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0 &#8222;WHERE ocdi:customer = ? &#8221; + <\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0 &#8222;ORDER BY o:date DESC&#8221;;<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 var resultList := getResultList(oql, list(customer:guid), 10);<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 for (row as Guid[] : resultList) {<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0 so := getByPrimaryKey(CisObject(com.cisag.app.sales.obj.SalesOrder), row[0]);<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0 r_salesOrders := r_salesOrders + &#8221; &#8221; + so-&gt;Type:code + &#8222;-&#8221; + so:number;<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 }<\/em><\/p>\n<p><em>\u00a0 }<\/em><\/p>\n<p><em>\u00a0 result.SALES_ORDERS := trim(r_salesOrders);<\/em><\/p>\n<p><em>} <\/em><\/div><\/section>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\"> <strong>Zapytanie o dodatkowe pola<\/strong><\/p>\n<p>Poni\u017cszy przyk\u0142ad z definicji dzia\u0142ania typu <em>Wywo\u0142anie funkcji<\/em> zwraca warto\u015bci kilku innych p\u00f3l partnera. Nazwy innych p\u00f3l zaczynaj\u0105 si\u0119 od przedrostka <em>ft_,<\/em> po kt\u00f3rym nast\u0119puje nazwa u\u017cywanego typu pola.<\/p>\n<p><em>function create()<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 var partner := loadPartner(parameters.PARTNER);<\/em><\/p>\n<p><em>\u00a0 var ft_text as String;<\/em><\/p>\n<p><em>\u00a0 var ft_URL as String;<\/em><\/p>\n<p><em>\u00a0 var ft_eMail as String;\u00a0 <\/em><\/p>\n<p><em>\u00a0 var ft_decimal as Number;<\/em><\/p>\n<p><em>\u00a0 var ft_date as Timestamp;<\/em><\/p>\n<p><em>\u00a0 var ft_dateTimeZone as Guid;<\/em><\/p>\n<p><em>\u00a0 var ft_dateAndTime as Timestamp;<\/em><\/p>\n<p><em>\u00a0 var ft_domesticAmount as Number;<\/em><\/p>\n<p><em>\u00a0 var ft_foreignAmount as Number;<\/em><\/p>\n<p><em>\u00a0 var ft_foreignAmountCurrency as Guid;<\/em><\/p>\n<p><em>\u00a0 var ft_domesticPrice as Number;<\/em><\/p>\n<p><em>\u00a0 var ft_foreignPrice as Number;<\/em><\/p>\n<p><em>\u00a0 var ft_foreignPriceCurrency as Guid;<\/em><\/p>\n<p><em>\u00a0 var ft_quantity as Number;<\/em><\/p>\n<p><em>\u00a0 var ft_quantityUom as Guid;<\/em><\/p>\n<p><em>\u00a0 var ft_classification as Guid;<\/em><\/p>\n<p><em>\u00a0 var ft_valueSet as Number;<\/em><\/p>\n<p><em>\u00a0 var ft_longText as Guid;<\/em><\/p>\n<p><em>\u00a0 if (not isNull(partner))<\/em><\/p>\n<p><em>\u00a0 {<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 var oql := &#8222;SELECT dbo:FT_TEXT, dbo:FT_URL, dbo:FT_EMAIL, dbo:FT_DECIMAL, dbo:FT_DATE.date, dbo:FT_DATE.timeZoneGuid, dbo:FT_DATE_AND_TIME.date, dbo:FT_DOMESTIC_AMOUNT.amount1, dbo:FT_FOREIGN_AMOUNT.amount, dbo:FT_FOREIGN_AMOUNT.currency, dbo:FT_DOMESTIC_PRICE.amount1, dbo:FT_FOREIGN_PRICE.amount, dbo:FT_FOREIGN_PRICE.currency, dbo:FT_QUANTITY.amount, dbo:FT_QUANTITY.uom, eeh:path, dbo:FT_VALUESET, dbo:FT_LONG_TEXT FROM com.cisag.app.general.obj.Partner p DYNAMIC_OBJECT JOIN EXTPartner dbo ON dbo = p WHERE p:guid = ?&#8221;;<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 var rList := getResultList(oql, list(partner:guid));<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 if (size(rList) &gt; 0)<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 {<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0 ft_text := cast(String, rList[0][0]);<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0 ft_URL := cast(String, rList[0][1]);<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0 ft_eMail := cast(String, rList[0][2]);\u00a0 <\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0 ft_decimal := cast(Number, rList[0][3]);<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0 ft_date := cast(Timestamp, rList[0][4]);<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0 ft_dateTimeZone := cast(Guid, rList[0][5]);<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0 ft_dateAndTime := cast(Timestamp, rList[0][6]);<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0 ft_domesticAmount := cast(Number, rList[0][7]);<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0 ft_foreignAmount := cast(Number, rList[0][8]);<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0 ft_foreignAmountCurrency := cast(Guid, rList[0][9]);<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0 ft_domesticPrice := cast(Number, rList[0][10]);<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0 ft_foreignPrice := cast(Number, rList[0][11]);<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0 ft_foreignPriceCurrency := cast(Guid, rList[0][12]);<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0 ft_quantity := cast(Number, rList[0][13]);<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0 ft_quantityUom := cast(Guid, rList[0][14]);<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0 ft_classification := cast(Guid, rList[0][15]);<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0 ft_valueSet := cast(Number, rList[0][16]);<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0 ft_longText := cast(Guid, rList[0][17]);<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0 result.FT_TEXT := ft_text;<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0 result.FT_DECIMAL := ft_decimal;<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0 result.FT_EMAIL := ft_eMail;\u00a0 <\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0 result.FT_URL := ft_URL;<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0 if (ft_date &lt;&gt; UNDEFINED_DATE) {<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 result.FT_DATE := ft_date;<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 result.FT_DATE_TIME_ZONE := getByPrimaryKey(&#8222;REPOSITORY&#8221;, CisObject(com.cisag.sys.kernel.obj.TimeZone), ft_dateTimeZone):id;<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0 result.FT_DATE_AND_TIME := ft_dateAndTime;<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0 }<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0 result.FT_DOMESTIC_AMOUNT := ft_domesticAmount;<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0 if (not isNull (ft_foreignAmountCurrency)) {<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 result.FT_FOREIGN_AMOUNT := ft_foreignAmount;<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 result.FT_FOREIGN_AMOUNT_CURRENCY := loadCurrency(ft_foreignAmountCurrency):isoCode;<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0 }<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0 result.FT_DOMESTIC_PRICE := ft_domesticPrice;<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0 if (not isNull (ft_foreignPriceCurrency)) {<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 result.FT_FOREIGN_PRICE := ft_foreignPrice;<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 result.FT_FOREIGN_PRICE_CURRENCY := loadCurrency(ft_foreignPriceCurrency):isoCode;<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0 }<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0 if (ft_quantityUom &lt;&gt; ZERO_GUID) {<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 result.FT_QUANTITY := ft_quantity;<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 result.FT_QUANTITY_UOM := loadUom(ft_quantityUom):code;<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0 }<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0 if (not isNull(ft_classification))<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 result.FT_CLASSIFICATION_PATH := getByPrimaryKey(CisObject(com.cisag.app.general.extension.obj.EntityExtensionHierarchy), ft_classification):path;<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0 result.FT_VALUE_SET := ft_valueSet;<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0 if (not isNull(ft_longText))<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 result.FT_LONG_TEXT := unzipText(getByPrimaryKey(CisObject(com.cisag.app.general.obj.Text), ft_longText, getByBusinessKey(CisObject(com.cisag.app.general.obj.Language), getNLSContentLanguage()):guid):text);<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 }<\/em><\/p>\n<p><em>\u00a0 }<\/em><\/p>\n<p><em>}<\/em><\/p>\n<p>Inne pole mo\u017ce by\u0107 r\u00f3wnie\u017c odpytywane przy u\u017cyciu tak zwanej funkcji <em>dbo<\/em>. Poniewa\u017c ka\u017cda funkcja dbo powoduje dost\u0119p do bazy danych, mo\u017cna u\u017cy\u0107 zapytania OQL z <em>DYNAMIC_OBJECT JOIN<\/em>, aby zapyta\u0107 o wszystkie inne pola instancji obiektu biznesowego za pomoc\u0105 jednego dost\u0119pu do bazy danych. Je\u015bli obiekt biznesowy ma wiele innych p\u00f3l, mo\u017cna zmniejszy\u0107 liczb\u0119 dost\u0119p\u00f3w do bazy danych. Zapytanie OQL mo\u017ce by\u0107 r\u00f3wnie\u017c u\u017cywane w kontekstach, w kt\u00f3rych funkcje dbo nie s\u0105 dost\u0119pne, np. w indywidualnych kontrolach.<\/p>\n<p>Nale\u017cy pami\u0119ta\u0107, \u017ce mo\u017cna wyszukiwa\u0107 tylko pojedyncze warto\u015bci, a nie listy warto\u015bci. Inne pola typu <em>Jednostka biznesowa<\/em> r\u00f3wnie\u017c nie mog\u0105 by\u0107 odpytywane za pomoc\u0105 OQL.<\/div><\/section>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\"> <strong>Wska\u017anik liczby otwartych prowizji<\/strong><\/p>\n<p>Poni\u017cszy przyk\u0142ad definicji dzialania typu <em>Wywo\u0142anie funkcji<\/em> wykorzystuje funkcj\u0119 <em>getResultList<\/em> do okre\u015blenia liczby zlece\u0144 dostawy, kt\u00f3re zosta\u0142y odebrane, ale nie zosta\u0142y jeszcze dostarczone. Wynik jest przypisywany do zmiennej wynikowej <em>VALUE<\/em>, dzi\u0119ki czemu definicja dzia\u0142ania mo\u017ce by\u0107 u\u017cywana w dynamicznym wska\u017aniku w aplikacji <em>Dashboard<\/em>.<\/p>\n<p><em>const OrderStatus as valueSet(com.cisag.app.general.OrderStatus);<\/em><\/p>\n<p><em>function create()<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 var oql := <\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 &#8222;SELECT COUNT(*) FROM com.cisag.app.sales.obj.ShippingOrder o WHERE o:pickingStatus = ? AND o:status = ?&#8221;;<\/em><\/p>\n<p><em>\u00a0 var pickedShippingOrders := cast(Number, getResultList(oql, list(3, 10), 1)[0][0]);<\/em><\/p>\n<p><em>\u00a0 result.VALUE := pickedShippingOrders;<\/em><\/p>\n<p><em>}<\/em><\/p>\n<p>Wi\u0119cej informacji na temat wska\u017anik\u00f3w dynamicznych i ich wykorzystania na pulpicie nawigacyjnym mo\u017cna znale\u017a\u0107 w artykule <em>Wska\u017aniki dynamiczne<\/em>. <\/div><\/section>\n<h4 id=\"funkcje-nls-nls-functions\" ><span class=\"ez-toc-section\" id=\"Funkcje_NLS_NLS_functions\"><\/span>Funkcje NLS (NLS functions)<span class=\"ez-toc-section-end\"><\/span><\/h4>\n<p>Funkcje NLS mog\u0105 by\u0107 u\u017cywane do otwierania obiekt\u00f3w <em>Jednostka biznesowa<\/em> w innych j\u0119zykach tre\u015bci. Funkcje NLS obejmuj\u0105:<\/p>\n<ul>\n<li><strong>getNLSContentLanguage<\/strong><\/li>\n<li><strong>getNLSDisplayLanguage<\/strong><\/li>\n<li><strong>setNLSContentLanguage<\/strong><\/li>\n<li><strong>setNLSDisplayLanguage<\/strong><\/li>\n<li><strong>setNLSLanguages<\/strong><\/li>\n<\/ul>\n<h5 id=\"getnlscontentlanguage\" ><span class=\"ez-toc-section\" id=\"getNLSContentLanguage\"><\/span>getNLSContentLanguage<span class=\"ez-toc-section-end\"><\/span><\/h5>\n<table style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\">\n<tbody>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Nazwa<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>getNLSContentLanguage<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Opis<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>getNLSContentLanguage<\/em> zwraca kod ISO bie\u017c\u0105cego j\u0119zyka tre\u015bci.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Podpisy<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>String getNLSContentLanguage()<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Parametry<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Brak<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Wynik<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Kod ISO bie\u017c\u0105cego j\u0119zyka tre\u015bci jako ci\u0105g znak\u00f3w.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>\u0179r\u00f3d\u0142a b\u0142\u0119d\u00f3w<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Brak<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Przyk\u0142ady<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>getNLSContentLanguage()<\/em> zwraca bie\u017c\u0105cy j\u0119zyk tre\u015bci.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Kontekst<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>ALL<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Uwagi<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>J\u0119zyk tre\u015bci okre\u015bla mi\u0119dzy innymi j\u0119zyk, w kt\u00f3rym wieloj\u0119zyczne atrybuty obiekt\u00f3w s\u0105 otwierane w bazie danych OLTP.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>getNLSDisplayLanguage<\/em><\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\">Poni\u017cszy przyk\u0142ad z definicji dzia\u0142ania <em>help.getNLSContentLanguage<\/em> pokazuje kod ISO bie\u017c\u0105cego j\u0119zyka tre\u015bci:<\/p>\n<p><em>function create()<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 var r_contentLanguage := getNLSContentLanguage();<\/em><\/p>\n<p><em>\u00a0 result.CONTENT_LANGUAGE := r_contentLanguage;<\/em><\/p>\n<p><em>}<\/em> <\/div><\/section>\n<h5 id=\"getnlsdisplaylanguage\" ><span class=\"ez-toc-section\" id=\"getNLSDisplayLanguage\"><\/span>getNLSDisplayLanguage<span class=\"ez-toc-section-end\"><\/span><\/h5>\n<table style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\">\n<tbody>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Nazwa<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>getNLSDisplayLanguage<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Opis<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>getNLSDisplayLanguage<\/em> zwraca kod ISO bie\u017c\u0105cego j\u0119zyka wy\u015bwietlania.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Podpisy<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>String getNLSDisplayLanguage()<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Parametry<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Brak<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Wynik<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Kod ISO bie\u017c\u0105cego j\u0119zyka wy\u015bwietlania jako ci\u0105g znak\u00f3w.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>\u0179r\u00f3d\u0142a b\u0142\u0119d\u00f3w<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Brak<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Przyk\u0142ady<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>getNLSDisplayLanguage()<\/em> zwraca bie\u017c\u0105cy j\u0119zyk wy\u015bwietlania.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Kontekst<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>ALL<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Uwagi<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>J\u0119zyk wy\u015bwietlania okre\u015bla mi\u0119dzy innymi j\u0119zyk, w kt\u00f3rym otwierane s\u0105 wieloj\u0119zyczne atrybuty obiekt\u00f3w w bazie danych repozytorium.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>getNLSContentLanguage<\/em><\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\">Poni\u017cszy przyk\u0142ad z definicji dzia\u0142ania <em>help.getNLSDisplayLanguage<\/em> pokazuje kod ISO bie\u017c\u0105cego j\u0119zyka wy\u015bwietlania:<\/p>\n<p><em>function create()<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 var r_displayLanguage := getNLSDisplayLanguage();<\/em><\/p>\n<p><em>\u00a0 result.DISPLAY_LANGUAGE := r_displayLanguage;<\/em><\/p>\n<p><em>}<\/em> <\/div><\/section>\n<h5 id=\"setnlscontentlanguage\" ><span class=\"ez-toc-section\" id=\"setNLSContentLanguage\"><\/span>setNLSContentLanguage<span class=\"ez-toc-section-end\"><\/span><\/h5>\n<table style=\"border-style: outset; border-color: #000000; background-color: #ffffff; width: 100%; height: 809px;\">\n<tbody>\n<tr style=\"height: 68px;\">\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"132\">\n<p>Nazwa<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"406\">\n<p>setNLSContentLanguage<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 68px;\">\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"132\">\n<p>Opis<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"406\">\n<p><em>setNLSContentLanguage<\/em> ustawia bie\u017c\u0105cy j\u0119zyk tre\u015bci.<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 68px;\">\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"132\">\n<p>Podpisy<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"406\">\n<p><em>setNLSContentLanguage(String language)<\/em><\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 68px;\">\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"132\">\n<p>Parametry<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"406\">\n<p><em>language<\/em> to kod ISO nowego j\u0119zyka tre\u015bci.<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 165px;\">\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 165px;\" width=\"132\">\n<p>Wynik<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 165px;\" width=\"406\">\n<p>Po wywo\u0142aniu zmieniany jest j\u0119zyk tre\u015bci. Wieloj\u0119zyczne atrybuty wszystkich obiekt\u00f3w z bazy danych OLTP s\u0105 nast\u0119pnie otwierane w zmienionym j\u0119zyku tre\u015bci. Obiekty, kt\u00f3re zosta\u0142y otwarte przed wywo\u0142aniem funkcji, nie s\u0105 zmieniane.<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 68px;\">\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"132\">\n<p>\u0179r\u00f3d\u0142a b\u0142\u0119d\u00f3w<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"406\">\n<p>Brak<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 68px;\">\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"132\">\n<p>Przyk\u0142ady<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"406\">\n<p><em>setNLSContentLanguage(&#8222;en&#8221;)<\/em> ustawia bie\u017c\u0105cy j\u0119zyk tre\u015bci na angielski.<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 68px;\">\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"132\">\n<p>Kontekst<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"406\">\n<p><em>ALL<\/em><\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 100px;\">\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 100px;\" width=\"132\">\n<p>Uwagi<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 100px;\" width=\"406\">\n<p>Gdy u\u017cytkownik uruchamia proces, jest on wykonywany w kontek\u015bcie tre\u015bci i j\u0119zyk\u00f3w wy\u015bwietlania zapisanych w ustawieniach u\u017cytkownika.<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 68px;\">\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"132\">\n<p>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"406\">\n<p><em>setNLSDisplayLanguage<\/em><em>, <\/em><em>setNLSLanguages<\/em><\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\">Poni\u017cszy przyk\u0142ad z definicji dzia\u0142ania <em>help.setNLSContentLanguage<\/em> pokazuje opis artyku\u0142u we wszystkich aktywnych j\u0119zykach tre\u015bci:<\/p>\n<p><em>function create()<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 var p_item := parameters.ITEM;<\/em><\/p>\n<p><em>\u00a0 var r_descriptions := &#8222;&#8221;;<\/em><\/p>\n<p><em>\u00a0 var item := loadItem(p_item);<\/em><\/p>\n<p><em>\u00a0 if (not isNull(item)) {<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 \/* pobierz nazwy systemu i bazy danych *\/<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 var systemName := cast(String, call(&#8222;help.js.getSystemName&#8221;, hashMap()).NAME);<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 var databaseName := cast(String, call(&#8222;help.js.getDatabaseName&#8221;, hashMap()).NAME);<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 \/* pobierz Guid systemu i bazy danych *\/<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 var system := getByBusinessKey(&#8222;CONFIGURATION&#8221;, CisObject(com.cisag.sys.configuration.obj.System), systemName, 1);<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 var database := getByBusinessKey(&#8222;CONFIGURATION&#8221;, CisObject(com.cisag.sys.configuration.obj.Database), system:guid, databaseName, 1);<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 \/* zapytanie do bazy danych konfiguracji o aktywne j\u0119zyki tre\u015bci *\/ <\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 var params as Unknown[];<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 add(params, database:guid);<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 add(params, 1); \/* aktywna wersja *\/<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 var activeLanguages := getCisObjectList(&#8222;CONFIGURATION&#8221;, &#8222;SELECT FROM com.cisag.sys.configuration.obj.DatabaseLanguage o WHERE o:databaseGuid = ? AND o:version = ?&#8221;, params, 99);<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 \/* pobierz opis przedmiotu we wszystkich aktywnych j\u0119zykach tre\u015bci *\/<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 for (l as CisObject(com.cisag.sys.configuration.obj.DatabaseLanguage) : activeLanguages) {<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0 r_descriptions := r_descriptions + &#8221; [&#8221; + l:language + &#8222;] &#8222;;<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0 setNLSContentLanguage(l:language);<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0 item := loadItem(p_item);<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0 r_descriptions := r_descriptions + item:description;<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 }<\/em><\/p>\n<p><em>\u00a0 }<\/em><\/p>\n<p><em>\u00a0 result.DESCRIPTIONS := trim(r_descriptions);<\/em><\/p>\n<p><em>}<\/em> <\/div><\/section>\n<h5 id=\"setnlsdisplaylanguage\" ><span class=\"ez-toc-section\" id=\"setNLSDisplayLanguage\"><\/span>setNLSDisplayLanguage<span class=\"ez-toc-section-end\"><\/span><\/h5>\n<table style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\">\n<tbody>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Nazwa<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>setNLSDisplayLanguage<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Opis<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>setNLSDisplayLanguage<\/em> ustawia bie\u017c\u0105cy j\u0119zyk wy\u015bwietlania.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Podpisy<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>setNLSDisplayLanguage(String language)<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Parametry<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>language<\/em> to kod ISO nowego j\u0119zyka wy\u015bwietlania.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Wynik<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Po wywo\u0142aniu, j\u0119zyk wy\u015bwietlania zostanie zmieniony. Wieloj\u0119zyczne atrybuty wszystkich obiekt\u00f3w z bazy danych repozytorium s\u0105 nast\u0119pnie otwierane w zmienionym j\u0119zyku wy\u015bwietlania. Obiekty, kt\u00f3re zosta\u0142y otwarte przed wywo\u0142aniem funkcji, nie s\u0105 zmieniane.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>\u0179r\u00f3d\u0142a b\u0142\u0119d\u00f3w<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Brak<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Przyk\u0142ady<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>setNLSDisplayLanguage(&#8222;en&#8221;)<\/em> ustawia bie\u017c\u0105cy j\u0119zyk wy\u015bwietlania na angielski.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Kontekst<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>ALL<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Uwagi<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Gdy u\u017cytkownik uruchamia proces, jest on wykonywany w kontek\u015bcie tre\u015bci i j\u0119zyk\u00f3w wy\u015bwietlania zapisanych w ustawieniach u\u017cytkownika.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>setNLSContentLanguage<\/em><em>, <\/em><em>setNLSLanguages<\/em><\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\">Poni\u017cszy przyk\u0142ad z definicji dzia\u0142ania <em>help.setNLSDisplayLanguage<\/em> ustawia j\u0119zyk wy\u015bwietlania na j\u0119zyk korespondencyjny partnera i wy\u015bwietla nazw\u0119 <em>ValueSet<\/em>:<\/p>\n<p><em>const State as valueSet(com.cisag.sys.workflow.ActivityState);<\/em><\/p>\n<p><em>function create()<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 var p_partner := parameters.PARTNER;<\/em><\/p>\n<p><em>\u00a0 var r_description := &#8222;&#8221;;<\/em><\/p>\n<p><em>\u00a0 var partner := loadPartner(p_partner);<\/em><\/p>\n<p><em>\u00a0 if (not isNull(partner)) {<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 setNLSDisplayLanguage(cast(String, first(partner-&gt;Language:isoCode, getNLSDisplayLanguage())));<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 r_description := valueSetDescription(State, 10);<\/em><\/p>\n<p><em>\u00a0 }<\/em><\/p>\n<p><em>\u00a0 result.DESCRIPTION := r_description;<\/em><\/p>\n<p><em>} <\/em><\/div><\/section>\n<h5 id=\"setnlslanguage\" ><span class=\"ez-toc-section\" id=\"setNLSLanguage\"><\/span>setNLSLanguage<span class=\"ez-toc-section-end\"><\/span><\/h5>\n<table style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\">\n<tbody>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Nazwa<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>setNLSLanguages<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Opis<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>setNLSLanguages <\/em>ustawia zar\u00f3wno bie\u017c\u0105cy j\u0119zyk tre\u015bci, jak i bie\u017c\u0105cy j\u0119zyk wy\u015bwietlania.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Podpisy<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>setNLSLanguages(String language)<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Parametry<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>language<\/em> to kod ISO nowego j\u0119zyka tre\u015bci i wy\u015bwietlania.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Wynik<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Po wywo\u0142aniu zmieniane s\u0105 j\u0119zyki zawarto\u015bci i wy\u015bwietlania. Wieloj\u0119zyczne atrybuty wszystkich obiekt\u00f3w z repozytorium i bazy danych OLTP s\u0105 nast\u0119pnie otwierane w zmienionym j\u0119zyku. Obiekty, kt\u00f3re zosta\u0142y otwarte przed wywo\u0142aniem funkcji, nie s\u0105 zmieniane.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>\u0179r\u00f3d\u0142a b\u0142\u0119d\u00f3w<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Brak<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Przyk\u0142ady<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>setNLSLanguages(&#8222;en&#8221;)<\/em> ustawia bie\u017c\u0105c\u0105 zawarto\u015b\u0107 i j\u0119zyk wy\u015bwietlania na angielski.<\/p>\n<p><em>setNLSLanguages(getCustomizingValue(&#8222;com.cisag.app.General&#8221;)-&gt;InternationalLanguge:isoCode)<\/em> ustawia j\u0119zyk tre\u015bci i wy\u015bwietlania na j\u0119zyk mi\u0119dzynarodowy przechowywany w funkcji konfiguracji <em>Podstawowe<\/em> dla klienta.<\/p>\n<p><em>setNLSLanguages(getCustomizingValue(&#8222;com.cisag.app.General&#8221;)-&gt;Company-&gt;AddressData-&gt;Country-&gt; Language:isoCode)<\/em> ustawia j\u0119zyk tre\u015bci i wy\u015bwietlania na j\u0119zyk narodowy klienta.<\/p>\n<p><em>setNLSLanguages(parameters<\/em><em>.object-&gt; DeliveryCustomerData-&gt;CustomerPartner-&gt;<\/em> <em>Language:isoCode)<\/em> ustawia tre\u015b\u0107 i j\u0119zyk wy\u015bwietlania na j\u0119zyk korespondencyjny odbiorcy dostawy zam\u00f3wienia sprzeda\u017cy, do kt\u00f3rego odwo\u0142uje si\u0119 <em>parameters.object<\/em>.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Kontekst<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>ALL<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Uwagi<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Gdy u\u017cytkownik uruchamia proces, jest on wykonywany w kontek\u015bcie tre\u015bci i j\u0119zyk\u00f3w wy\u015bwietlania zapisanych w ustawieniach u\u017cytkownika.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>setNLSContentLanguage<\/em><em>, <\/em><em>setNLSDisplayLanguage<\/em><\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\">Poni\u017cszy przyk\u0142ad z definicji dzia\u0142ania <em>help.setNLSLanguages<\/em> ustawia j\u0119zyk tre\u015bci i wy\u015bwietlania na j\u0119zyk korespondencyjny pracodawcy u\u017cytkownika i wy\u015bwietla nazw\u0119 wpisu <em>ValueSet<\/em> w tym j\u0119zyku:<\/p>\n<p><em>function create()<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 var p_partner := parameters.PARTNER;<\/em><\/p>\n<p><em>\u00a0 var r_description := &#8222;&#8221;;<\/em><\/p>\n<p><em>\u00a0 var partner := loadPartner(p_partner);<\/em><\/p>\n<p><em>\u00a0 if (not isNull(partner)) {<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 var company := getCustomizingValue(&#8222;com.cisag.app.General&#8221;):company;<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 var employers := loadTargetsOfPartnerRelations(partner:guid, company, &#8222;Employee&#8221;);<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 setNLSDisplayLanguage(cast(String, first(employers[0]-&gt;Language:isoCode, getNLSDisplayLanguage())));<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 r_description := valueSetDescription(&#8222;com.cisag.sys.workflow.ActivityState&#8221;, 10);<\/em><\/p>\n<p><em>\u00a0 }<\/em><\/p>\n<p><em>\u00a0 result.DESCRIPTION := r_description;<\/em><\/p>\n<p><em>}<\/em> <\/div><\/section>\n<h4 id=\"funkcje-dla-plikow\" ><span class=\"ez-toc-section\" id=\"Funkcje_dla_plikow\"><\/span>Funkcje dla plik\u00f3w<span class=\"ez-toc-section-end\"><\/span><\/h4>\n<p>Polecenia i funkcje dla plik\u00f3w mog\u0105 by\u0107 u\u017cywane do odczytu i zapisu plik\u00f3w w Knowledge Store:<\/p>\n<ul>\n<li><strong>readFile<\/strong><\/li>\n<li><strong>readTextFile<\/strong><\/li>\n<li><strong>writeFile<\/strong><\/li>\n<\/ul>\n<h5 id=\"readfile\" ><span class=\"ez-toc-section\" id=\"readFile\"><\/span>readFile<span class=\"ez-toc-section-end\"><\/span><\/h5>\n<table style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\">\n<tbody>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p><strong>Nazwa<\/strong><\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><strong>readFile<\/strong><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p><strong>Opis<\/strong><\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>readFile <\/em>zwraca zawarto\u015b\u0107 pliku jako strumie\u0144 bajt\u00f3w.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p><strong>Podpisy<\/strong><\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>Bytes readFile(String path)<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p><strong>Parametry<\/strong><\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>path <\/em>jest bezwzgl\u0119dn\u0105 \u015bcie\u017ck\u0105 do pliku.<\/p>\n<p>Plik mo\u017cna otworzy\u0107 z r\u00f3\u017cnych \u017ar\u00f3de\u0142:<\/p>\n<ul>\n<li><strong>System plik\u00f3w<\/strong> \u2013 pliki mo\u017cna otwiera\u0107, okre\u015blaj\u0105c \u015bcie\u017ck\u0119 z systemu plik\u00f3w. W przypadku \u015bcie\u017cki odwrotne uko\u015bniki (<em>&#8222;\\&#8221;, backslash<\/em>) musz\u0105 by\u0107 oznaczone jako znaki steruj\u0105ce przy u\u017cyciu innego odwrotnego uko\u015bnika, np: <em>&#8222;C:\\\\Windows\\\\Test.txt&#8221;.<\/em> Nie jest to konieczne w przypadku uko\u015bnik\u00f3w (<em>&#8222;\/&#8221;<\/em>, uko\u015bnik do przodu), np: <em>&#8222;C:\/Windows\/Test.txt&#8221;.<\/em><\/li>\n<li><strong>Knowledge Store<\/strong> \u2013 je\u015bli plik znajduje si\u0119 w Knowledge Store, \u015bcie\u017cka musi zaczyna\u0107 si\u0119 od <em>kstore:\/\/,<\/em> np: <em>kstore:\/\/ADV62010\/Documents\/Workflow\/Test.txt<\/em>.<\/li>\n<li><strong>http<\/strong> \u2013 je\u015bli plik ma by\u0107 otwierany przez http z serwera WWW, \u015bcie\u017cka musi zaczyna\u0107 si\u0119 od http:\/\/.<\/li>\n<li><strong>https <\/strong>\u2013 je\u015bli plik ma by\u0107 otwierany przez <em>https (Hypertext Transfer Protocol Secure) <\/em>z serwera WWW, \u015bcie\u017cka musi zaczyna\u0107 si\u0119 od <em>https:\/\/.<\/em><\/li>\n<\/ul>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p><strong>Wynik<\/strong><\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Funkcja <em>readFile<\/em> zwraca zawarto\u015b\u0107 pliku jako strumie\u0144 bajt\u00f3w.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p><strong>\u0179r\u00f3d\u0142a b\u0142\u0119d\u00f3w<\/strong><\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Funkcja zwraca warto\u015b\u0107 zero, je\u015bli plik nie istnieje lub wyst\u0105pi\u0142 b\u0142\u0105d podczas odczytu.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p><strong>Przyk\u0142ady<\/strong><\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>readFile(&#8222;kstore:\/\/ + getDatabaseName() + &#8222;\/Documents\/Workflow\/Mailtemplate_en.html&#8221;)<\/em> zwraca zawarto\u015b\u0107 pliku <em>Test.txt<\/em> jako bytestream (bajty).<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p><strong>Kontekst<\/strong><\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>ALL<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p><strong>Uwagi<\/strong><\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Funkcj\u0119 <em>readFile<\/em> mo\u017cna po\u0142\u0105czy\u0107 z poleceniem <em>addMailAttachment<\/em>, dzi\u0119ki czemu funkcja <em>readFile<\/em> zwraca zawarto\u015b\u0107 za\u0142\u0105cznika:<\/p>\n<p><em>addMailAttachment(&#8222;Anhang.txt&#8221;, readFile(&#8222;kstore:\/\/&#8221; + getDatabaseName() + &#8222;\/Documents\/Workflow\/Mailtemplate_en.html &#8222;))<\/em><\/p>\n<p>Na przyk\u0142ad, w\u0119ze\u0142 e-mail mo\u017ce wys\u0142a\u0107 do odbiorcy dokument ju\u017c przechowywany w Knowledge Store.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p><strong>Zobacz tak\u017ce<\/strong><\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>readTextFile<\/em><em>, <\/em><em>writeFile<\/em><\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\">Poni\u017cszy przyk\u0142ad z definicji dzia\u0142ania <em>help.readFile<\/em> odczytuje obrazy artyku\u0142u z Knowledge Store i do\u0142\u0105cza je do wiadomo\u015bci e-mail:<\/p>\n<p><em>function create()<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 var p_item := parameters.ITEM;<\/em><\/p>\n<p><em>\u00a0 var r_imageFiles as String;<\/em><\/p>\n<p><em>\u00a0 var r_total_bytes as Number;<\/em><\/p>\n<p><em>\u00a0 var imageFileName as String;<\/em><\/p>\n<p><em>\u00a0 var imageFile as Bytes;<\/em><\/p>\n<p><em>\u00a0 var item := loadItem(p_item);<\/em><\/p>\n<p><em>\u00a0 if (not isNull(item)) { <\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 \/* pobierz obrazy przedmiot\u00f3w *\/<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 var params as Unknown[];<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 add(params, 4);<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 add(params, item:number);<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 add(params, 1);<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 var entityImages := getCisObjectList(&#8222;SELECT FROM com.cisag.app.general.docman.obj.Document doc WHERE doc:status = ? AND doc:guid IN (SELECT ref:document FROM com.cisag.app.general.docman.obj.DocumentReference ref JOIN com.cisag.app.general.docman.obj.DocumentReferenceType typ ON ref:type = typ:guid JOIN com.cisag.app.general.obj.Item i ON ref:instance = i:guid WHERE i:number = ? and typ:type = ? and typ:code = &#8222;ENTITY_IMAGE&#8221;)&#8221;, params, 100);<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 for (document as CisObject(com.cisag.app.general.docman.obj.Document) : entityImages) {<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0 imageFileName := document:folder + document:document;<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0 imageFile := readFile(&#8222;kstore:\/\/&#8221; + databaseName() + &#8222;\/Documents\/&#8221; + imageFileName);<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0 \/* u\u017cyj addMailAttachment, aby do\u0142\u0105czy\u0107 plik obrazu do wiadomo\u015bci e-mail *\/<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0 \/*<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0 addMailAttachment(document:document, imageFile);<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0 *\/<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0 r_imageFiles := r_imageFiles + imageFileName + &#8221; &#8222;;<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 }<\/em><\/p>\n<p><em>\u00a0 result.ENTITY_IMAGES := trim(r_imageFiles);<\/em><\/p>\n<p><em>\u00a0 }<\/em><\/p>\n<p><em>}<\/em> <\/div><\/section>\n<h5 id=\"readtextfile\" ><span class=\"ez-toc-section\" id=\"readTextFile\"><\/span>readTextFile<span class=\"ez-toc-section-end\"><\/span><\/h5>\n<table style=\"border-style: outset; border-color: #000000; background-color: #ffffff; width: 112.371%;\">\n<tbody>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; width: 10.0956%;\" width=\"132\">\n<p>Nazwa<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; width: 89.2667%;\" width=\"406\">\n<p>readTextFile<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; width: 10.0956%;\" width=\"132\">\n<p>Opis<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; width: 89.2667%;\" width=\"406\">\n<p><em>readTextFile<\/em> zwraca zawarto\u015b\u0107 pliku jako ci\u0105g znak\u00f3w.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; width: 10.0956%;\" width=\"132\">\n<p>Podpisy<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; width: 89.2667%;\" width=\"406\">\n<p><em>Bytes readTextFile(String path)<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; width: 10.0956%;\" width=\"132\">\n<p>Parametry<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; width: 89.2667%;\" width=\"406\">\n<p><em>path<\/em> jest bezwzgl\u0119dn\u0105 \u015bcie\u017ck\u0105 do pliku.<\/p>\n<p>Plik mo\u017cna otworzy\u0107 z r\u00f3\u017cnych \u017ar\u00f3de\u0142:<\/p>\n<ul>\n<li><strong>System plik\u00f3w<\/strong> \u2013 pliki mo\u017cna otwiera\u0107, okre\u015blaj\u0105c \u015bcie\u017ck\u0119 z systemu plik\u00f3w. W przypadku \u015bcie\u017cki odwrotne uko\u015bniki (<em>\\, backslash<\/em>) musz\u0105 by\u0107 oznaczone jako znaki steruj\u0105ce przy u\u017cyciu innego odwrotnego uko\u015bnika, np: <em>C:\\\\Windows\\\\Test.txt<\/em>. Nie jest to konieczne w przypadku uko\u015bnik\u00f3w (<em>\/, uko\u015bnik do przodu<\/em>), np: <em>C:\/Windows\/Test.txt<\/em>.<\/li>\n<li><strong>Kstore <\/strong>\u2013 je\u015bli plik znajduje si\u0119 w <em>Knowledge Store<\/em>, \u015bcie\u017cka musi zaczyna\u0107 si\u0119 od <em>kstore:\/\/,<\/em> np: <em>kstore:\/\/ADV62010\/Documents\/Workflow\/Test.txt<\/em>.<\/li>\n<li><strong>http<\/strong> \u2013 je\u015bli plik ma by\u0107 otwierany przez <em>http<\/em> z serwera <em>WWW<\/em>, \u015bcie\u017cka musi zaczyna\u0107 si\u0119 od <em>http:\/\/.<\/em><\/li>\n<li><strong>https<\/strong> \u2013 je\u015bli plik ma by\u0107 otwierany przez <em>https (Hypertext Transfer Protocol Secure)<\/em> z serwera <em>WWW<\/em>, \u015bcie\u017cka musi zaczyna\u0107 si\u0119 od <em>https:\/\/.<\/em><\/li>\n<\/ul>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; width: 10.0956%;\" width=\"132\">\n<p>Wynik<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; width: 89.2667%;\" width=\"406\">\n<p>Funkcja <em>readTextFile<\/em> zwraca zawarto\u015b\u0107 pliku jako ci\u0105g znak\u00f3w.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; width: 10.0956%;\" width=\"132\">\n<p>\u0179r\u00f3d\u0142a b\u0142\u0119d\u00f3w<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; width: 89.2667%;\" width=\"406\">\n<p>Funkcja zwraca warto\u015b\u0107 zero, je\u015bli plik nie istnieje lub wyst\u0105pi\u0142 b\u0142\u0105d podczas odczytu.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; width: 10.0956%;\" width=\"132\">\n<p>Przyk\u0142ady<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; width: 89.2667%;\" width=\"406\">\n<p><em>readFile(&#8222;kstore:\/\/ + getDatabaseName() + &#8222;\/Documents\/Workflow\/Mailtemplate_en.html&#8221;)<\/em> zwraca zawarto\u015b\u0107 pliku <em>Test.txt<\/em> jako ci\u0105g znak\u00f3w.<\/p>\n<p><em>readFile(&#8222;http:\/\/www.zoll.de\/SiteGlobals\/Functions\/Kurse\/KursExport.xml?view=xmlexportkursesearchresultZOLLWeb&amp;kursart=1&amp;iso2code2=AU&amp;startdatum_tag2=01&amp;<\/em><\/p>\n<p><em>startdatum_monat2=01&amp;startdatum_jahr2=<\/em><em>2018&amp;enddatum_tag2=31&amp;enddatum_monat2<\/em><\/p>\n<p><em>=12&amp;enddatum_jahr2=2018&amp;sort=asc&amp;spalte=gueltigkeit&#8221;)<\/em> zwraca kursy wymiany zgodnie z parametrami z <em>Generalnej Dyrekcji Celnej w Bonn<\/em>.<\/p>\n<p><em>readTextFile(&#8222;https:\/\/www.newyorkfed.org\/medialibrary\/media\/xml\/data\/fx\/EUR10.xml&#8221;)<\/em> zwraca historyczne kursy wymiany <em>Federalnej Rezerwy wymiany w Nowym Jorku<\/em><\/p>\n<section class=\"document-alert-box warning\"><div class=\"document-alert-title\">Uwaga<\/div><div class=\"document-alert-content\">Comarch nie ponosi odpowiedzialno\u015bci za linki zewn\u0119trzne.<\/div><\/section>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; width: 10.0956%;\" width=\"132\">\n<p>Kontekst<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; width: 89.2667%;\" width=\"406\">\n<p><em>ALL<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; width: 10.0956%;\" width=\"132\">\n<p>Uwagi<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; width: 89.2667%;\" width=\"406\">\u00a0<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; width: 10.0956%;\" width=\"132\">\n<p>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; width: 89.2667%;\" width=\"406\">\n<p><em>readFile<\/em><em>, <\/em><em>writeFile<\/em><\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\">Poni\u017cszy przyk\u0142ad z definicji dzia\u0142ania <em>help.readTextFile<\/em> odczytuje szablon wiadomo\u015bci e-mail <em>Mailtemplate_en.html<\/em> z Knowledge Store:<\/p>\n<p><em>function create()<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 var r_mailTemplate as String;<\/em><\/p>\n<p><em>\u00a0 r_mailTemplate := readTextFile(&#8222;kstore:\/\/&#8221; + databaseName() + &#8222;\/Documents\/Workflow\/&#8221; + &#8222;Mailtemplate_en.html&#8221;);<\/em><\/p>\n<p><em>\u00a0 result.MAIL_TEMPLATE := r_mailTemplate;<\/em><\/p>\n<p><em>} <\/em><\/div><\/section>\n<h5 id=\"writefile\" ><span class=\"ez-toc-section\" id=\"writeFile\"><\/span>writeFile<span class=\"ez-toc-section-end\"><\/span><\/h5>\n<table style=\"border-style: outset; border-color: #000000; background-color: #ffffff; width: 100%; height: 1583px;\">\n<tbody>\n<tr style=\"height: 68px;\">\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"132\">\n<p>Nazwa<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"406\">\n<p>writeFile<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 68px;\">\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"132\">\n<p>Opis<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"406\">\n<p><em>writeFile <\/em>tworzy nowy plik z okre\u015blon\u0105 zawarto\u015bci\u0105 w Knowledge Store.<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 169px;\">\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 169px;\" width=\"132\">\n<p>Podpisy<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 169px;\" width=\"406\">\n<p><em>writeFile(String path, Bytes content)<\/em><\/p>\n<p><em>writeFile(String path, String text)<\/em><\/p>\n<p><em>writeFile(String path, String text, String encoding)<\/em><\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 579px;\">\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 579px;\" width=\"132\">\n<p>Parametry<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 579px;\" width=\"406\">\n<p><em>path<\/em> jest bezwzgl\u0119dn\u0105 \u015bcie\u017ck\u0105 w Knowledge Store pliku, kt\u00f3ry ma zosta\u0107 utworzony. \u015acie\u017cka musi zaczyna\u0107 si\u0119 od <em>kstore:\/\/<\/em>, np: <em>kstore:\/\/ADV62010\/Documents\/Workflow\/Test.txt<\/em>.<\/p>\n<p><em>content<\/em> to zawarto\u015b\u0107 pliku, kt\u00f3ry ma zosta\u0107 wygenerowany jako strumie\u0144 bajt\u00f3w,<\/p>\n<p><em>text<\/em> to zawarto\u015b\u0107 pliku, kt\u00f3ry ma zosta\u0107 utworzony jako ci\u0105g znak\u00f3w.<\/p>\n<p>Kodowanie to kodowanie znak\u00f3w <em>text<\/em>. Przyk\u0142adami kodowania znak\u00f3w s\u0105<\/p>\n<ul>\n<li><strong>US-ASCII<\/strong><\/li>\n<li><strong>ISO-8859-1 <\/strong><\/li>\n<li><strong>UTF-8 <\/strong><\/li>\n<li><strong>UTF-16BE <\/strong><\/li>\n<li><strong>UTF-16<\/strong><\/li>\n<\/ul>\n<p>Pe\u0142n\u0105 dokumentacj\u0119 mo\u017cliwych kodowa\u0144 mo\u017cna znale\u017a\u0107 w dokumencie <em>Java dla java.nio.charset.Charset<\/em>.<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 262px;\">\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 262px;\" width=\"132\">\n<p>Wynik<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 262px;\" width=\"406\">\n<p>Polecenie <em>writeFile<\/em> tworzy nowy plik z okre\u015blon\u0105 zawarto\u015bci\u0105 w Knowledge Store. \u015acie\u017cka do pliku jest okre\u015blana w taki sam spos\u00f3b, jak w przypadku funkcji <em>readFile<\/em>. Zawarto\u015b\u0107 pliku mo\u017ce by\u0107 binarna z typem danych <em>Bytes<\/em> lub ci\u0105g znak\u00f3w z typem danych <em>String<\/em>. Je\u015bli do pliku ma zosta\u0107 zapisany ci\u0105g znak\u00f3w, opcjonalnie mo\u017cna okre\u015bli\u0107 kodowanie znak\u00f3w. Je\u015bli kodowanie znak\u00f3w nie jest okre\u015blone, kodowanie znak\u00f3w zale\u017cy od komputera, na kt\u00f3rym dzia\u0142a serwer aplikacji.<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 68px;\">\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"132\">\n<p>\u0179r\u00f3d\u0142a b\u0142\u0119d\u00f3w<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"406\">\n<p>Funkcja zwraca warto\u015b\u0107 zero, je\u015bli podczas zapisu wyst\u0105pi b\u0142\u0105d.<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 100px;\">\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 100px;\" width=\"132\">\n<p>Przyk\u0142ady<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 100px;\" width=\"406\">\n<p><em>writeFile(&#8222;kstore:\/\/ + getDatabaseName() + &#8222;\/Documents\/Workflow\/Test.txt&#8221;, &#8222;Hello world!&#8221;, &#8222;UTF-8&#8221;)<\/em> tworzy plik tekstowy w Knowledge Store.<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 68px;\">\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"132\">\n<p>Kontekst<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"406\">\n<p><em>ALL<\/em><\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 133px;\">\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 133px;\" width=\"132\">\n<p>Uwagi<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 133px;\" width=\"406\">\n<p>Polecenie <em>writeFile<\/em> mo\u017ce by\u0107 u\u017cywane razem z funkcjami <em>readTextFile<\/em> i <em>format<\/em>, aby odczyta\u0107 plik szablonu z symbolami zast\u0119pczymi, wype\u0142ni\u0107 je i zapisa\u0107 gotowy plik w Knowledge Store.<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 68px;\">\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"132\">\n<p>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"406\">\n<p><em>readFile<\/em><em>, <\/em><em>readTextFile<\/em><\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\">Poni\u017cszy przyk\u0142ad z definicji dzia\u0142ania <em>help.writeFile<\/em> zapisuje plik tekstowy do katalogu<em> tmp<\/em> w Knowledge Store. Nast\u0119pnie definicja dzia\u0142ania odpytuje wygenerowany obiekt biznesowy typu <em>com.cisag.sys.kstore.obj.KnowledgeDocument<\/em> i zwraca \u015bcie\u017ck\u0119 i nazw\u0119 wygenerowanego pliku, a tak\u017ce czas utworzenia i u\u017cytkownika, kt\u00f3ry utworzy\u0142 obiekt biznesowy.<\/p>\n<p><em>function create()<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 var p_content := parameters.CONTENT;<\/em><\/p>\n<p><em>\u00a0 var r_file as String;<\/em><\/p>\n<p><em>\u00a0 var r_creator as String;<\/em><\/p>\n<p><em>\u00a0 var r_creationDate as Timestamp;<\/em><\/p>\n<p><em>\u00a0 var folder := &#8222;tmp\/&#8221;;<\/em><\/p>\n<p><em>\u00a0 var fileName := cast(String, newGuid()) + &#8222;.txt&#8221;;<\/em><\/p>\n<p><em>\u00a0 writeFile(&#8222;kstore:\/\/&#8221; + databaseName() + &#8222;\/&#8221; + folder + fileName, p_content, &#8222;UTF-8&#8221;);<\/em><\/p>\n<p><em>\u00a0 var docs := getCisObjectList(&#8222;SELECT FROM com.cisag.sys.kstore.obj.KnowledgeDocument o WHERE o:pathName = ? ORDER BY o:creationDate DESC&#8221;, list(folder + fileName), 1);<\/em><\/p>\n<p><em>\u00a0 for (doc as CisObject(com.cisag.sys.kstore.obj.KnowledgeDocument) : docs) {<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 r_creator := userName(doc:creator);<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 r_creationDate := doc:creationDate;<\/em><\/p>\n<p><em>\u00a0 }<\/em><\/p>\n<p><em>\u00a0 result.FILE_NAME := folder + fileName;<\/em><\/p>\n<p><em>\u00a0 result.CREATOR := r_creator;<\/em><\/p>\n<p><em>\u00a0 result.CREATION_DATE := r_creationDate;<\/em><\/p>\n<p><em>} <\/em><\/div><\/section>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\"> <strong>Importowanie potwierdzenia inwentaryzacji dla pustego miejsca magazynowego<\/strong><\/p>\n<p>Poni\u017cszy przyk\u0142ad pochodzi z definicji procesu dla tak zwanej inwentaryzacji zerowej, kt\u00f3ra importuje potwierdzenie inwentaryzacji dla pustego pojemnika magazynowego podczas kompletacji po tym, jak osoba kompletuj\u0105ca potwierdzi\u0142a za pomoc\u0105 zadania workflow, \u017ce pojemnik magazynowy by\u0142 pusty po kompletacji.<\/p>\n<p>Najpierw w\u0119ze\u0142 us\u0142ugi odczytuje plik szablonu z Knowledge Store i dodaje do niego informacje specyficzne dla procesu. Plik jest nast\u0119pnie przechowywany w Knowledge Store pod inn\u0105 nazw\u0105, aby s\u0142u\u017cy\u0107 jako plik importu dla potwierdzenia inwentaryzacji. Informacje wymagane do potwierdzenia spisu inwentarza z natury, takie jak identyfikacja spisu inwentarza z natury i lista zliczania zapas\u00f3w, s\u0105 przechowywane w zmiennych procesu.<\/p>\n<p><em>var importFile as String;<\/em><\/p>\n<p><em>function create()<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 \/* pobierz partnera inicjatora procesu *\/<\/em><\/p>\n<p><em>\u00a0 var userPartner := getByPrimaryKey(CisObject(com.cisag.app.general.obj.UserAssignment), userGuid(process.Initiator))-&gt;Partner:number;<\/em><\/p>\n<p>\u00a0 \/* odczyt pliku szablonu i zamiana parametr\u00f3w *\/<\/p>\n<p><em>\u00a0 var templateFile := &#8222;kstore:\/\/&#8221; + getDatabaseName() + &#8222;\/&#8221; + &#8222;Documents\/Workflow\/EmptyStorageLocationsTemplate_Create.xml&#8221;;<\/em><\/p>\n<p><em>\u00a0 var importFileContent := readTextFile(templateFile);<\/em><\/p>\n<p><em>\u00a0 importFileContent := <\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 format(importFileContent, <\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 list(userPartner, process.inventoryCountList:number, process.inventoryCount:number, process.inventoryCount-&gt;Type:code, process.warehouse:code, process.zone:code, process.location));<\/em><\/p>\n<p><em>\u00a0 \/* zapis pliku importu do folderu importu *\/<\/em><\/p>\n<p>\u00a0 <em>importFile := &#8222;kstore:\/\/&#8221; + getDatabaseName() + &#8222;\/Documents\/Workflow\/EmptyStorageLocations\/EmptyStorageLocation_&#8221; + + format(now(), &#8222;yyyyMMddHHmmssSSS&#8221;) + &#8222;_&#8221; + process.warehouse:code + &#8222;-&#8221; + process.zone:code + &#8222;-&#8221; + process.location + &#8222;.xml&#8221;;<\/em><\/p>\n<p><em>\u00a0 writeFile(importFile, importFileContent, &#8222;UTF-8&#8221;);<\/em><\/p>\n<p><em>}<\/em><\/p>\n<p>W definicji dzia\u0142ania w\u0119z\u0142a us\u0142ugi aplikacja dzia\u0142aj\u0105ca w tle <em>com.cisag.pgm.bi.Import<\/em> jest przechowywana z nast\u0119puj\u0105cymi warto\u015bciami parametr\u00f3w aplikacji:<\/p>\n<ul>\n<li><strong>ContentType<\/strong> \u2013 text\/xml; charset=utf-8<\/li>\n<li><strong>CorrectionMode<\/strong> \u2013 1<\/li>\n<li><strong>Baza danych<\/strong> \u2013 getDatabaseName()<\/li>\n<li><strong>ErrorFileMode<\/strong> \u2013 1<\/li>\n<li><strong>FilterName<\/strong> \u2013 EMPTY_STORAGE_LOCATIONS<\/li>\n<li><strong>ImportFile<\/strong> \u2013 importFile<\/li>\n<li><strong>ImportFileMode<\/strong> \u2013 1<\/li>\n<li><strong>ObjectType<\/strong> \u2013 cisag.app.inventory.physical.obj.PhysicalInventoryCountList<\/li>\n<li><strong>WarningsMode <\/strong>\u2013 2<\/li>\n<\/ul>\n<p>Opis parametr\u00f3w aplikacji mo\u017cna znale\u017a\u0107 w rozdziale <em>Import aplikacji<\/em> dokumentu pomocy <em>Interfejsy programowania wymiany danych<\/em>.<\/p>\n<p>W tym przyk\u0142adzie u\u017cyto nast\u0119puj\u0105cego pliku szablonu:<\/p>\n<p><em>&lt;?xml version=&#8221;1.0&#8243; encoding=&#8221;UTF-8&#8243;?&gt;&lt;semiramis xmlns=&#8221;com.cisag.app.inventory.physical.obj.PhysicalInventoryCountList&#8221; locale=&#8221;en-US-XMLSchemaCompliant&#8221; xmlns:xsi=&#8221;http:\/\/www.w3.org\/2001\/XMLSchema-instance&#8221;&gt;.<\/em><\/p>\n<p><em>\u00a0 &lt;PhysicalInventoryCountList xmlns=&#8221;com.cisag.app.inventory.physical.obj.PhysicalInventoryCountList&#8221;&gt;.<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 &lt;ResponsibleEmployee&gt;.<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0 &lt;numer&gt;{0}&lt;\/numer&gt; &lt;!&#8211; Numer partnera &#8211;&gt;<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 &lt;\/ResponsibleEmployee&gt;.<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 &lt;liczba&gt;{1}&lt;\/liczba&gt; &lt;!&#8211; Numer listy zliczania &#8211;&gt;<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 &lt;PhysicalInventory&gt;<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0 &lt;liczba&gt;{2}&lt;\/liczba&gt; &lt;!&#8211; Liczba zapas\u00f3w &#8211;&gt;<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0 &lt;Typ&gt;<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 &lt;code&gt;{3}&lt;\/code&gt; &lt;!&#8211; Kod typu zliczania zapas\u00f3w &#8211;&gt;<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0 &lt;\/Type&gt;<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 &lt;\/PhysicalInventory&gt;<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 &lt;CountListReporting mode=&#8221;create&#8221;&gt; &lt;!&#8211; Tryb: create &#8211;&gt;<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0 &lt;Przechowywanie&gt;<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 &lt;magazyn&gt;{4}&lt;\/magazyn&gt; &lt;!&#8211; <\/em><em>Magazyn &#8211;&gt;.<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 &lt;strefa&gt;{5}&lt;\/strefa&gt; &lt;!&#8211; Strefa &#8211;&gt;<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 &lt;lokalizacja&gt;{6}&lt;\/lokalizacja&gt; &lt;!&#8211; <\/em><em>Miejsce przechowywania &#8211;&gt; <\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0 &lt;\/storage&gt;<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 &lt;\/CountListReporting&gt;.<\/em><\/p>\n<p><em>\u00a0 &lt;\/PhysicalInventoryCountList&gt;.<\/em><\/p>\n<p><em>&lt;\/semiramis&gt; <\/em><\/div><\/section>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\"><strong>Tworzenie nowych pracownik\u00f3w za pomoc\u0105 importu<\/strong><\/p>\n<p>W poni\u017cszym przyk\u0142adzie nale\u017cy utworzy\u0107 definicj\u0119 procesu, za pomoc\u0105 kt\u00f3rej tworzone s\u0105 podstawowe dane nowych pracownik\u00f3w wewn\u0119trznych. Identyfikacja partnera ma by\u0107 okre\u015blona na podstawie schematu numeracji dla partner\u00f3w przechowywanych w konfiguracji.<\/p>\n<p>Najpierw tworzona jest definicja procesu z w\u0119z\u0142em skryptu do przechowywania pliku importu w Knowledge Store i w\u0119z\u0142em us\u0142ugi do importowania przechowywanego pliku przy u\u017cyciu aplikacji dzia\u0142aj\u0105cej w tle <em>com.cisag.pgm.bi.Import<\/em>.<\/p>\n<p>W definicji dzia\u0142ania dla w\u0119z\u0142a startowego nale\u017cy wprowadzi\u0107 pola wynik\u00f3w dla danych, kt\u00f3re u\u017cytkownik musi lub mo\u017ce wprowadzi\u0107 podczas uruchamiania procesu, np:<\/p>\n<ul>\n<li><strong>Nazwisko i imi\u0119<\/strong><\/li>\n<li><strong>Adres wraz z kodem pocztowym i krajem<\/strong><\/li>\n<li><strong>Pracodawca i dzia\u0142alno\u015b\u0107<\/strong><\/li>\n<li><strong>Odpowiedzialny pracownik lub prze\u0142o\u017cony (poprzez relacje partnerskie)<\/strong><\/li>\n<\/ul>\n<p>Pola identyfikacyjne i obowi\u0105zkowe partnera mo\u017cna znale\u017a\u0107 w artykule <em>Import partner\u00f3w<\/em>.<\/p>\n<p>W w\u0119\u017ale pocz\u0105tkowym generowany jest nowy numer na podstawie schematu numeracji partner\u00f3w zapisanych dla klienta w ustawieniach.<\/p>\n<p><em>var company := getCustomizingValue(&#8222;com.cisag.app.General&#8221;):company;<\/em><\/p>\n<p><em>var numberRange := getCustomizingValue(&#8222;com.cisag.app.general.Partners&#8221;, company):customerNumberRange;<\/em><\/p>\n<p><em>var newNumber := nextNumberRangeNumber(numberRange);<\/em><\/p>\n<p>Je\u015bli w konfiguracji nie zdefiniowano schematu numeracji, nowa liczba ma warto\u015b\u0107 zero. W takim przypadku nale\u017cy wys\u0142a\u0107 komunikat o b\u0142\u0119dzie w funkcji walidacji za pomoc\u0105 funkcji <em>sendMessage<\/em>, aby zapobiec rozpocz\u0119ciu procesu. Je\u015bli wprowadzono r\u00f3wnie\u017c pole wyniku dla numeru partnera, mo\u017cna wy\u015bwietli\u0107 komunikat o b\u0142\u0119dzie w zale\u017cno\u015bci od jego warto\u015bci.<\/p>\n<p><em>if (isNull(newNumber) and not validatePartner(results.partnerNumber))<\/em><\/p>\n<p><em>\u00a0 sendMessage(results.partnerNumber_id, &#8222;EDU-00001&#8221;, list());<\/em><\/p>\n<p>U\u017cytkownik definiuje warunki dla numeru partnera wprowadzonego w funkcji <em>validatePartner<\/em>.<\/p>\n<p>Funkcja zamykania umo\u017cliwia zapisanie wprowadzonych wynik\u00f3w w zmiennych procesu, kt\u00f3re zosta\u0142y wcze\u015bniej wprowadzone w definicji procesu. Na przyk\u0142ad, je\u015bli zar\u00f3wno wynik, jak i zmienna procesu maj\u0105 nazw\u0119 <em>employeeFirstName<\/em>, nale\u017cy przenie\u015b\u0107 warto\u015b\u0107 w nast\u0119puj\u0105cy spos\u00f3b:<\/p>\n<p><em>process.employeeFirstName := result.employeeFirstName;<\/em><\/p>\n<p>Nast\u0119pnie utworzy\u0107 plik importu dla nowego pracownika w w\u0119\u017ale skryptu. Najpierw u\u017cy\u0107 funkcji <em>readTextFile<\/em>, aby odczyta\u0107 plik szablonu importu z Knowledge Store. Nast\u0119pnie u\u017cy\u0107 funkcji <em>format<\/em>, aby zast\u0105pi\u0107 symbole zast\u0119pcze w pliku szablonu warto\u015bciami do zaimportowania. Na koniec zapisa\u0107 uko\u0144czony plik pod inn\u0105 nazw\u0105 w Knowledge Store. Szczeg\u00f3\u0142owy opis tych krok\u00f3w mo\u017cna znale\u017a\u0107 w poprzednim przyk\u0142adzie. Nast\u0119pnie zapisa\u0107 pe\u0142n\u0105 \u015bcie\u017ck\u0119 i nazw\u0119 pliku importu w zmiennej procesu.<\/p>\n<p>W kolejnym w\u0119\u017ale us\u0142ugi zaimportowa\u0107 plik importu za pomoc\u0105 aplikacji dzia\u0142aj\u0105cej w tle <em>com.cisag.pgm.bi.Import<\/em>.<\/p>\n<p>Pomi\u0119dzy w\u0119z\u0142em pocz\u0105tkowym a w\u0119z\u0142ami skryptu i us\u0142ugi dla importu mo\u017cna doda\u0107 kolejne w\u0119z\u0142y u\u017cytkownika w celu skompilowania informacji o nowym pracowniku. Do procesu mo\u017cna r\u00f3wnie\u017c doda\u0107 kolejne w\u0119z\u0142y dzia\u0142ania w celu sprawdzenia i zatwierdzenia informacji przed ich zaimportowaniem.<\/div><\/section>\n<h4 id=\"funkcje-dla-uzytkownikow-user-functions\" ><span class=\"ez-toc-section\" id=\"Funkcje_dla_uzytkownikow_User_functions\"><\/span>Funkcje dla u\u017cytkownik\u00f3w (User functions)<span class=\"ez-toc-section-end\"><\/span><\/h4>\n<p>Dane opisowe podstawowych obiekt\u00f3w, takich jak u\u017cytkownicy, bazy danych i serwery, s\u0105 przechowywane w konfiguracyjnej bazie danych. Obiekty te s\u0105 u\u017cywane w ca\u0142ym systemie. Poni\u017csze funkcje s\u0142u\u017c\u0105 do rozwi\u0105zywania tych zastosowa\u0144:<\/p>\n<ul>\n<li><strong>resolveRole<\/strong><\/li>\n<li><strong>userAbsent<\/strong><\/li>\n<li><strong>userFullName<\/strong><\/li>\n<li><strong>userGuid<\/strong><\/li>\n<li><strong>userMailAddress<\/strong><\/li>\n<li><strong>userName<\/strong><\/li>\n<\/ul>\n<h5 id=\"resolverole\" ><span class=\"ez-toc-section\" id=\"resolveRole\"><\/span>resolveRole<span class=\"ez-toc-section-end\"><\/span><\/h5>\n<table style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\">\n<tbody>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Nazwa<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>resolveRole<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Opis<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>resolveRole <\/em>zwraca identyfikatory u\u017cytkownik\u00f3w w\u0142a\u015bcicieli roli workflow.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Podpisy<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>Guid[] resolveRole(Guid roleName)<\/em><\/p>\n<p><em>Guid[] resolveRole(String roleName)<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Parametry<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>roleName<\/em> to identyfikator roli workflow.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Wynik<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Funkcja zwraca list\u0119 z identyfikatorami u\u017cytkownik\u00f3w w\u0142a\u015bcicieli roli workflow <em>roleName<\/em> w bazie danych, w kt\u00f3rej funkcja jest wykonywana.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>\u0179r\u00f3d\u0142a b\u0142\u0119d\u00f3w<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>W\u0142a\u015bciciel roli workflow w bazie danych repozytorium nie mo\u017ce by\u0107 okre\u015blony w bazie danych OLTP i odwrotnie. Je\u015bli <em>roleName<\/em> nie jest prawid\u0142ow\u0105 rol\u0105 workflow, zwracana jest warto\u015b\u0107 zero.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Przyk\u0142ady<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>resolveRole(&#8222;SALES&#8221;)<\/em> zwraca w\u0142a\u015bcicieli roli workflow jako list\u0119 identyfikator\u00f3w.<\/p>\n<p><em>contains(resolveRole(&#8222;APPROVERS&#8221;), list(environment.userGuid))<\/em> zwraca warto\u015b\u0107 <em>true<\/em> w indywidualnym sprawdzeniu, czy u\u017cytkownik jest w\u0142a\u015bcicielem roli workflow <em>APPROVERS<\/em>. Wyra\u017cenia tego mo\u017cna u\u017cy\u0107 na przyk\u0142ad w celu zezwolenia na zmiany w dokumencie tylko dla okre\u015blonych grup u\u017cytkownik\u00f3w lub posiadaczy zada\u0144.<\/p>\n<p>Wyra\u017cenie dla operator\u00f3w w definicji dzia\u0142ania <em>minus(resolveRole(&#8222;<\/em><em>SALES&#8221;, list(parameters.userGuid))<\/em> tworzy zadanie dla w\u0142a\u015bciciela roli workflow <em>SALES<\/em>. Funkcja <em>minus<\/em> oznacza, \u017ce \u017cadne zadanie nie zostanie utworzone dla wyzwalacza przechowywanego w <em>parameters.userGuid<\/em>.<\/p>\n<p>Wyra\u017cenie dla operator\u00f3w w definicji dzia\u0142ania <em>union(resolveRole(&#8222;SALES&#8221;, resolveRole(&#8222;SALESREPS&#8221;))<\/em> tworzy zadanie dla w\u0142a\u015bcicieli obu r\u00f3l workflow. Funkcja <em>union<\/em> oznacza, \u017ce tylko jedno zadanie jest tworzone dla u\u017cytkownika, kt\u00f3ry jest w\u0142a\u015bcicielem obu r\u00f3l workflow.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Kontekst<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>ALL<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Uwagi<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\u00a0<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\u00a0<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\">Poni\u017cszy przyk\u0142ad z definicji dzia\u0142ania <em>help.resolveRole<\/em> zwraca nazwy wszystkich u\u017cytkownik\u00f3w, kt\u00f3rzy s\u0105 przypisani jako w\u0142a\u015bciciele roli workflow:<\/p>\n<p><em>function create()<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 var p_role := parameters.ROLE;<\/em><\/p>\n<p><em>\u00a0 var r_users := &#8222;&#8221;;<\/em><\/p>\n<p><em>\u00a0 var users := resolveRole(p_role);<\/em><\/p>\n<p><em>\u00a0 if (not isNull(users)) {<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 for (u : users) <\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0 r_users := r_users + &#8221; &#8221; + userName(u);<\/em><\/p>\n<p><em>\u00a0 }<\/em><\/p>\n<p><em>\u00a0 result.IS_NULL := isNull(users);<\/em><\/p>\n<p><em>\u00a0 result.USERS := substring(r_users, 1);<\/em><\/p>\n<p><em>}<\/em> <\/div><\/section>\n<h5 id=\"userabsent\" ><span class=\"ez-toc-section\" id=\"userAbsent\"><\/span>userAbsent<span class=\"ez-toc-section-end\"><\/span><\/h5>\n<table style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\">\n<tbody>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Nazwa<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>userAbsent<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Opis<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>userAbsent <\/em>sprawdza, czy u\u017cytkownik jest nieobecny.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Podpisy<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>Boolean userAbsent(Guid user)<\/em><\/p>\n<p><em>Boolean userAbsent(Guid user, Timestamp time)<\/em><\/p>\n<p><em>Boolean userAbsent(Guid user, Timestamp from, Timestamp until)<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Parametry<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>user<\/em> to Guid lub nazwa u\u017cytkownika.<\/p>\n<p><em>time<\/em> to punkt w czasie obserwacji.<\/p>\n<p><em>from<\/em> oznacza pocz\u0105tek analizowanego okresu.<\/p>\n<p><em>to <\/em>oznacza koniec okresu obserwacji.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Wynik<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Je\u015bli u\u017cytkownik jest nieobecny, funkcja zwraca warto\u015b\u0107 prawdy <em>true<\/em>, w przeciwnym razie <em>false<\/em>. Je\u015bli za pomoc\u0105 parametru <em>time<\/em> zostanie przekazany czas obserwacji, ocena zostanie przeprowadzona dla tego czasu. Je\u015bli okres obserwacji jest przekazywany za pomoc\u0105 parametr\u00f3w <em>from<\/em> i <em>until<\/em>, u\u017cytkownik jest uwa\u017cany za nieobecnego, je\u015bli jest nieobecny w dowolnym momencie w okresie obserwacji.<\/p>\n<p>Je\u015bli <em>user<\/em> nie jest prawid\u0142owym u\u017cytkownikiem, zwracana jest warto\u015b\u0107 <em>false<\/em>.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>\u0179r\u00f3d\u0142a b\u0142\u0119d\u00f3w<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Brak.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Przyk\u0142ady<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>userAbsent(userGuid(&#8222;JOB&#8221;))<\/em> zwraca warto\u015b\u0107 prawdy <em>true<\/em>, je\u015bli u\u017cytkownik <em>JOB<\/em> jest nieobecny w bie\u017c\u0105cym czasie.<\/p>\n<p><em>userAbsent(userGuid(&#8222;JOB&#8221;), addDays(now(), 7))<\/em> zwraca warto\u015b\u0107 t<em>rue<\/em>, je\u015bli u\u017cytkownik jest nieobecny dok\u0142adnie za siedem dni.<\/p>\n<p><em>userAbsent(userGuid(&#8222;JOB&#8221;), now(), addDays(endOfDay(now()), 13))<\/em> zwraca warto\u015b\u0107 <em>true<\/em>, je\u015bli u\u017cytkownik jest nieobecny w dowolnym momencie w ci\u0105gu nast\u0119pnych 14 dni kalendarzowych.<\/p>\n<p>Wyra\u017cenie dla operator\u00f3w <em>cast(Guid, if(not(userAbsent(parameters.userGuid)), list(parameters.userGuid), substitute(parameters.userGuid))) <\/em>przypisuje dzia\u0142aniu dla zdarzenia typu <em>Jednostka biznesowa<\/em> do wyzwalacza. Je\u015bli wyzwalacz jest nieobecny, dzia\u0142anie jest przypisywane do zamiennika.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Kontekst<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>ALL<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Uwagi<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\u00a0<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\u00a0<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\">Poni\u017cszy przyk\u0142ad z definicji dzia\u0142ania <em>help.userAbsent<\/em> usuwa wszystkich nieobecnych u\u017cytkownik\u00f3w z listy w\u0142a\u015bcicieli r\u00f3l workflow:<\/p>\n<p><em>function create()<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 var p_workflowRole := parameters.WORKFLOW_ROLE;<\/em><\/p>\n<p><em>\u00a0 var p_time := parameters.TIME;<\/em><\/p>\n<p><em>\u00a0 var p_from := parameters.FROM;<\/em><\/p>\n<p><em>\u00a0 var p_until := parameters.UNTIL;<\/em><\/p>\n<p><em>\u00a0 var r_nonAbsentUsers := &#8222;&#8221;;<\/em><\/p>\n<p><em>\u00a0 var holders := resolveRole(p_workflowRole);<\/em><\/p>\n<p><em>\u00a0 if (not isNull(holders)) {<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 holders := removeAbsentUsers(holders, p_time, p_from, p_until);<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 for (user : holders) {<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0 r_nonAbsentUsers := r_nonAbsentUsers + &#8221; &#8221; + userName(user);<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 }<\/em><\/p>\n<p><em>\u00a0 }<\/em><\/p>\n<p><em>\u00a0 result.NON_ABSENT_USERS := trim(r_nonAbsentUsers);<\/em><\/p>\n<p><em>}<\/em><\/p>\n<p><em>function removeAbsentUsers(p_users as Guid[], p_time as Timestamp, p_from as Timestamp, p_until as Timestamp) as Guid[]<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 var nonAbsentUsers as Guid[];<\/em><\/p>\n<p><em>\u00a0 for (user : p_users) {<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 if (p_time &lt;&gt; UNDEFINED_DATE) {<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0 if (not userAbsent(user, p_time))<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 add(nonAbsentUsers, user);<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 } else if (p_from &lt;&gt; UNDEFINED_DATE and p_until &lt;&gt; UNDEFINED_DATE) {<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0 if (not userAbsent(user, p_from, p_until))<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 add(nonAbsentUsers, user);<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 } else {<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0 if (not userAbsent(user))<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 add(nonAbsentUsers, user);<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 }<\/em><\/p>\n<p><em>\u00a0 }<\/em><\/p>\n<p><em>\u00a0 return nonAbsentUsers;<\/em><\/p>\n<p><em>}<\/em> <\/div><\/section>\n<h5 id=\"userfullname\" ><span class=\"ez-toc-section\" id=\"userFullName\"><\/span>userFullName<span class=\"ez-toc-section-end\"><\/span><\/h5>\n<table style=\"border-style: outset; border-color: #000000; background-color: #ffffff; width: 100%; height: 827px;\">\n<tbody>\n<tr style=\"height: 68px;\">\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Nazwa<\/p>\n<\/td>\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>userFullName<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 68px;\">\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Opis<\/p>\n<\/td>\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>userFullName<\/em> zwraca pe\u0142n\u0105 nazw\u0119 u\u017cytkownika.<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 68px;\">\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Podpisy<\/p>\n<\/td>\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>String userFullName(Guid user)<\/em><\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 68px;\">\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Parametry<\/p>\n<\/td>\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>user<\/em> to identyfikator u\u017cytkownika.<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 100px;\">\n<td style=\"height: 100px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Wynik<\/p>\n<\/td>\n<td style=\"height: 100px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Pe\u0142na nazwa u\u017cytkownika przechowywana w aplikacji <em>Panel System<\/em>. Je\u015bli <em>user<\/em> nie jest prawid\u0142owym u\u017cytkownikiem, zwracany jest pusty ci\u0105g znak\u00f3w.<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 68px;\">\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>\u0179r\u00f3d\u0142a b\u0142\u0119d\u00f3w<\/p>\n<\/td>\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Brak.<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 183px;\">\n<td style=\"height: 183px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Przyk\u0142ady<\/p>\n<\/td>\n<td style=\"height: 183px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>userFullName(userGuid(&#8222;JOB&#8221;))<\/em> zwraca pe\u0142n\u0105 nazw\u0119 u\u017cytkownika.<\/p>\n<p><em>userFullName(parameters.userGuid)<\/em> zwraca pe\u0142n\u0105 nazw\u0119 u\u017cytkownika, kt\u00f3ry wywo\u0142a\u0142 zdarzenie typu <em>Jednostka biznesowa <\/em>lub <em>Dzia\u0142anie u\u017cytkownika<\/em> lub rozpocz\u0105\u0142 proces bez definicji zdarzenia.<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 68px;\">\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Kontekst<\/p>\n<\/td>\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>ALL<\/em><\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 68px;\">\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Uwagi<\/p>\n<\/td>\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\u00a0<\/td>\n<\/tr>\n<tr style=\"height: 68px;\">\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>userName<\/em><\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\">Poni\u017cszy przyk\u0142ad z definicji dzia\u0142ania <em>help.userFullName<\/em> zwraca pe\u0142n\u0105 nazw\u0119 u\u017cytkownika:<\/p>\n<p><em>function create()<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 var p_userName := parameters.USER_NAME;<\/em><\/p>\n<p><em>\u00a0 var r_userFullName := &#8222;&#8221;;<\/em><\/p>\n<p><em>\u00a0 var userGuid := userGuid(p_userName);<\/em><\/p>\n<p><em>\u00a0 if (userGuid &lt;&gt; INVALID_GUID)<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 r_userFullName := userFullName(userGuid);<\/em><\/p>\n<p><em>\u00a0 result.USER_FULL_NAME := r_userFullName;<\/em><\/p>\n<p><em>} <\/em><\/div><\/section>\n<h5 id=\"userguid\" ><span class=\"ez-toc-section\" id=\"userGuid\"><\/span>userGuid<span class=\"ez-toc-section-end\"><\/span><\/h5>\n<table style=\"border-style: outset; border-color: #000000; background-color: #ffffff; width: 100%; height: 712px;\">\n<tbody>\n<tr style=\"height: 68px;\">\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"132\">\n<p>Nazwa<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"406\">\n<p>userGuid<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 68px;\">\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"132\">\n<p>Opis<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"406\">\n<p><em>userGuid <\/em>zwraca identyfikator Guid u\u017cytkownika.<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 68px;\">\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"132\">\n<p>Podpisy<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"406\">\n<p><em>String userGuid(String user)<\/em><\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 68px;\">\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"132\">\n<p>Parametry<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"406\">\n<p><em>user<\/em> to nazwa u\u017cytkownika.<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 100px;\">\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 100px;\" width=\"132\">\n<p>Wynik<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 100px;\" width=\"406\">\n<p>Identyfikator Guid u\u017cytkownika. Je\u015bli <em>user<\/em> nie jest prawid\u0142owym u\u017cytkownikiem, zwracana jest warto\u015b\u0107 <em>INVALID_GUID<\/em>.<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 68px;\">\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"132\">\n<p>\u0179r\u00f3d\u0142a b\u0142\u0119d\u00f3w<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"406\">\n<p>Brak.<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 68px;\">\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"132\">\n<p>Przyk\u0142ady<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"406\">\n<p><em>userGuid(&#8222;JOB&#8221;)<\/em> zwraca identyfikator Guid u\u017cytkownika.<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 68px;\">\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"132\">\n<p>Kontekst<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"406\">\n<p><em>ALL<\/em><\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 68px;\">\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"132\">\n<p>Uwagi<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"406\">\u00a0<\/td>\n<\/tr>\n<tr style=\"height: 68px;\">\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"132\">\n<p>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"406\">\n<p><em>userName<\/em><\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\">Poni\u017cszy przyk\u0142ad z definicji dzia\u0142ania <em>help.userGuid<\/em> zwraca identyfikator Guid u\u017cytkownika:<\/p>\n<p><em>function create()<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 var p_userName := parameters.USER_NAME;<\/em><\/p>\n<p><em>\u00a0 var r_userGuid := &#8222;&#8221;;<\/em><\/p>\n<p><em>\u00a0 var userGuid := userGuid(p_userName);<\/em><\/p>\n<p><em>\u00a0 if (userGuid &lt;&gt; INVALID_GUID)<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 r_userGuid := cast(String, userGuid);<\/em><\/p>\n<p><em>\u00a0 result.USER_GUID := r_userGuid;<\/em><\/p>\n<p><em>}<\/em> <\/div><\/section>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\"> <strong>Usuwanie nieaktywnych u\u017cytkownik\u00f3w<\/strong><\/p>\n<p>Poni\u017cszy przyk\u0142ad z definicji dzia\u0142ania <em>help.userDeactivated<\/em> usuwa wszystkich nieaktywnych u\u017cytkownik\u00f3w z listy w\u0142a\u015bcicieli r\u00f3l workflow:<\/p>\n<p><em>function create()<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 var p_workflowRole := parameters.WORKFLOW_ROLE;<\/em><\/p>\n<p><em>\u00a0 var r_deactivatedUsers := &#8222;&#8221;;<\/em><\/p>\n<p><em>\u00a0 var holders := resolveRole(p_workflowRole);<\/em><\/p>\n<p><em>\u00a0 if (not isNull(holders)) {<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 holders := removeDeactivatedUsers(holders);<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 for (user : holders) {<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0 r_deactivatedUsers := r_deactivatedUsers + &#8221; &#8221; + userName(user);<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 }<\/em><\/p>\n<p><em>\u00a0 }<\/em><\/p>\n<p><em>\u00a0 result.DEACTIVATED_USERS := trim(r_deactivatedUsers);<\/em><\/p>\n<p><em>}<\/em><\/p>\n<p><em>function userDeactivated(p_user as Guid) as Boolean<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 var r_userDeactivated := false;<\/em><\/p>\n<p><em>\u00a0 var user := getByPrimaryKey(&#8222;CONFIGURATION&#8221;, CisObject(com.cisag.sys.configuration.obj.User), p_user);<\/em><\/p>\n<p><em>\u00a0 if (not isNull(user)) {<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 r_userDeactivated := user:deactivated;<\/em><\/p>\n<p><em>\u00a0 }<\/em><\/p>\n<p><em>\u00a0 return r_userDeactivated;<\/em><\/p>\n<p><em>}<\/em><\/p>\n<p><em>\u00a0<\/em><\/p>\n<p><em>function removeDeactivatedUsers(p_users as Guid[]) as Guid[]<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 var activatedUsers as Guid[];<\/em><\/p>\n<p><em>\u00a0 for (user : p_users) {<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 if (not userDeactivated(user))<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0 add(activatedUsers, user);<\/em><\/p>\n<p><em>\u00a0 }<\/em><\/p>\n<p><em>\u00a0 return activatedUsers;<\/em><\/p>\n<p><em>} <\/em><\/div><\/section>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\"> <strong>Usuwanie nieinteraktywnych u\u017cytkownik\u00f3w<\/strong><\/p>\n<p>Poni\u017cszy przyk\u0142ad z definicji dzia\u0142ania <em>help.userInteractive <\/em>usuwa wszystkich nieinteraktywnych u\u017cytkownik\u00f3w z listy w\u0142a\u015bcicieli r\u00f3l workflow:<\/p>\n<p><em>const UserType as valueSet(com.cisag.sys.configuration.UserType);<\/em><\/p>\n<p><em>function create()<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 var p_workflowRole := parameters.WORKFLOW_ROLE;<\/em><\/p>\n<p><em>\u00a0 var r_nonInteractiveUsers := &#8222;&#8221;;<\/em><\/p>\n<p><em>\u00a0 var holders := resolveRole(p_workflowRole);<\/em><\/p>\n<p><em>\u00a0 if (not isNull(holders)) {<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 holders := removeNonInteractiveUsers(holders);<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 for (user : holders) {<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0 r_nonInteractiveUsers := r_nonInteractiveUsers + &#8221; &#8221; + userName(user);<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 }<\/em><\/p>\n<p><em>\u00a0 }<\/em><\/p>\n<p><em>\u00a0 result.NON_INTERACTIVE_USERS := trim(r_nonInteractiveUsers);<\/em><\/p>\n<p><em>}<\/em><\/p>\n<p><em>function userInteractive(p_user as Guid) as Boolean<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 var r_userInteractive := false;<\/em><\/p>\n<p><em>\u00a0 var user := getByPrimaryKey(&#8222;CONFIGURATION&#8221;, CisObject(com.cisag.sys.configuration.obj.User), p_user);<\/em><\/p>\n<p><em>\u00a0 if (not isNull(user)) {<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 r_userInteractive := user:type = UserType.INTERACTIVE;<\/em><\/p>\n<p><em>\u00a0 }<\/em><\/p>\n<p><em>\u00a0 return r_userInteractive;<\/em><\/p>\n<p><em>}<\/em><\/p>\n<p><em>function removeNonInteractiveUsers(p_users as Guid[]) as Guid[]<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 var interactiveUsers as Guid[];<\/em><\/p>\n<p><em>\u00a0 for (user : p_users) {<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 if (userInteractive(user))<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0 add(interactiveUsers, user);<\/em><\/p>\n<p><em>\u00a0 }<\/em><\/p>\n<p><em>\u00a0 return interactiveUsers;<\/em><\/p>\n<p><em>} <\/em><\/div><\/section>\n<h5 id=\"usermailaddress\" ><span class=\"ez-toc-section\" id=\"userMailAddress\"><\/span>userMailAddress<span class=\"ez-toc-section-end\"><\/span><\/h5>\n<table style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\">\n<tbody>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Nazwa<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>userMailAddress<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Opis<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>userMailAddress <\/em>zwraca adres e-mail u\u017cytkownika.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Podpisy<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>String userMailAddress(Guid user)<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Parametry<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>user<\/em> to identyfikator u\u017cytkownika.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Wynik<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Adres e-mail u\u017cytkownika wprowadzony w aplikacji <em>Panel System<\/em>. Je\u015bli dla u\u017cytkownika wprowadzono wi\u0119cej ni\u017c jeden adres e-mail, wszystkie adresy e-mail s\u0105 zwracane z takim samym separatorem (\u015brednikiem) jak w dialogu systemowym. Separator ten jest r\u00f3wnie\u017c akceptowany przez funkcje wysy\u0142ania wiadomo\u015bci e-mail, takie jak <em>setMailRecipientsTo<\/em> i <em>setMailReplyTo<\/em>. Je\u015bli w dialogu systemu nie zapisano adresu e-mail u\u017cytkownika, zwracany jest pusty ci\u0105g znak\u00f3w.<\/p>\n<p>Je\u015bli <em>user<\/em> nie jest prawid\u0142owym u\u017cytkownikiem, zwracany jest pusty ci\u0105g znak\u00f3w.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>\u0179r\u00f3d\u0142a b\u0142\u0119d\u00f3w<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Brak.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Przyk\u0142ady<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>userMailAddress(userGuid(&#8222;JOB&#8221;))<\/em> zwraca adres e-mail u\u017cytkownika.<\/p>\n<p><em>userMailAddress(parameters.userGuid)<\/em> zwraca adres e-mail u\u017cytkownika, kt\u00f3ry wywo\u0142a\u0142 zdarzenie typu <em>Jednostka biznesowa<\/em> lub <em>Dzia\u0142anie u\u017cytkownika<\/em> lub rozpocz\u0105\u0142 proces bez definicji zdarzenia.<\/p>\n<p><em>setMailRecipientsTo(userMailAddress(parameters.userGuid))<\/em> w definicji dzia\u0142ania typu <em>Wiadomo\u015b\u0107 e-mail<\/em>, wysy\u0142a wiadomo\u015b\u0107 e-mail na adres e-mail u\u017cytkownika, kt\u00f3ry wywo\u0142a\u0142 zdarzenie lub rozpocz\u0105\u0142 proces.<\/p>\n<p><em>setMailRecipientsCC(userMailAddress(superior(parameters.userGuid)[0]))<\/em> wysy\u0142a kopi\u0119 wiadomo\u015bci e-mail do prze\u0142o\u017conego u\u017cytkownika, kt\u00f3ry wywo\u0142a\u0142 zdarzenie lub rozpocz\u0105\u0142 proces.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Kontekst<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>ALL<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Uwagi<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Workflow u\u017cywa adresu e-mail przechowywanego w aplikacji <em>Panel System<\/em> do wysy\u0142ania powiadomie\u0144 do operator\u00f3w i w\u0142a\u015bcicieli proces\u00f3w. Wiadomo\u015b\u0107 e-mail mo\u017ce zosta\u0107 wys\u0142ana na adres e-mail zapisany w danych podstawowych partnera tylko wtedy, gdy u\u017cywana jest definicja dzia\u0142ania typu <em>Wiadomo\u015b\u0107 e-mail, W\u0119ze\u0142 e-mail<\/em> lub <em>Interaktywny w\u0119ze\u0142 e-mail<\/em>, a adres e-mail jest jawnie okre\u015blony za pomoc\u0105 funkcji <em>setMailRecipientsTo<\/em>.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\u00a0<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\">Poni\u017cszy przyk\u0142ad z definicji dzia\u0142ania <em>help.userMailAddress<\/em> zwraca adres e-mail u\u017cytkownika:<\/p>\n<p><em>function create()<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 var p_userName := parameters.USER_NAME;<\/em><\/p>\n<p><em>\u00a0 var r_userMailAddress := &#8222;&#8221;;<\/em><\/p>\n<p><em>\u00a0 var userGuid := userGuid(p_userName);<\/em><\/p>\n<p><em>\u00a0 if (userGuid &lt;&gt; INVALID_GUID)<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 r_userMailAddress := userMailAddress(userGuid);<\/em><\/p>\n<p><em>\u00a0 result.USER_MAIL_ADDRESS := r_userMailAddress;<\/em><\/p>\n<p><em>}<\/em> <\/div><\/section>\n<h5 id=\"username\" ><span class=\"ez-toc-section\" id=\"userName\"><\/span>userName<span class=\"ez-toc-section-end\"><\/span><\/h5>\n<table style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\">\n<tbody>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Nazwa<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>userName<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Opis<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>userName<\/em> zwraca nazw\u0119 u\u017cytkownika.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Podpisy<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>String userName(Guid user)<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Parametry<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>user <\/em>to identyfikator u\u017cytkownika.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Wynik<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Nazwa u\u017cytkownika z aplikacji <em>Panel System<\/em>. Je\u015bli <em>user<\/em> nie jest prawid\u0142owym u\u017cytkownikiem, zwracany jest pusty ci\u0105g znak\u00f3w.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>\u0179r\u00f3d\u0142a b\u0142\u0119d\u00f3w<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Brak.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Przyk\u0142ady<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>userName(userGuid(&#8222;JOB&#8221;))<\/em> zwraca <em>JOB<\/em>.<\/p>\n<p><em>userName(parameters.userGuid)<\/em> zwraca nazw\u0119 u\u017cytkownika, kt\u00f3ry wywo\u0142a\u0142 zdarzenie lub rozpocz\u0105\u0142 proces.<\/p>\n<p><em>userName(environment.userGuid)<\/em> zwraca nazw\u0119 u\u017cytkownika, dla kt\u00f3rego przeprowadzana jest kontrola indywidualna.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Kontekst<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>ALL<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Uwagi<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\u00a0<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>userFullName<\/em><em>, <\/em><em>userGuid<\/em><\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\">Poni\u017cszy przyk\u0142ad z definicji dzia\u0142ania <em>help.userName<\/em> okre\u015bla nazw\u0119 u\u017cytkownika, kt\u00f3ry wszed\u0142 do partnera klienta:<\/p>\n<p><em>function create()<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 var r_userName := &#8222;&#8221;;<\/em><\/p>\n<p><em>\u00a0 var company := loadOrganisation(getCustomizingValue(&#8222;com.cisag.app.General&#8221;):company);<\/em><\/p>\n<p><em>\u00a0 r_userName := userName(company:updateInfo.createUser);<\/em><\/p>\n<p><em>\u00a0 result.USER_NAME := r_userName;<\/em><\/p>\n<p><em>} <\/em><\/div><\/section>\n<h4 id=\"polecenia-wyzwalania-zdarzen-workflow-events-functions\" ><span class=\"ez-toc-section\" id=\"Polecenia_wyzwalania_zdarzen_Workflow_events_functions\"><\/span>Polecenia wyzwalania zdarze\u0144 (Workflow events functions)<span class=\"ez-toc-section-end\"><\/span><\/h4>\n<p>Zdarzenia workflow mog\u0105 by\u0107 wyzwalane w aktywnej bazie danych lub w bazie danych repozytorium przy u\u017cyciu funkcji wyzwalania zdarze\u0144. Funkcje wyzwalania zdarze\u0144 obejmuj\u0105<\/p>\n<ul>\n<li><strong>fireEvent<\/strong><\/li>\n<li><strong>fireRepositoryEvent<\/strong><\/li>\n<\/ul>\n<h5 id=\"fireevent\" ><span class=\"ez-toc-section\" id=\"fireEvent\"><\/span>fireEvent<span class=\"ez-toc-section-end\"><\/span><\/h5>\n<table style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\">\n<tbody>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Nazwa<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>fireEvent<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Opis<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>fireEvent<\/em> wywo\u0142uje og\u00f3lne zdarzenie w bie\u017c\u0105cej bazie danych.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Podpisy<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>boolean fireEvent(String name, HashMap parameters)<\/em><\/p>\n<p><em>boolean fireEvent(String database, String name, HashMap parameters)<\/em><\/p>\n<p><em>boolean fireEvent(Number subtype, String name, HashMap parameters)<\/em><\/p>\n<p><em>boolean fireEvent(String database, Number subtype, String name, HashMap parameters)<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Parametry<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>database<\/em> to nazwa bazy danych pod\u0142\u0105czonej do systemu, w kt\u00f3rym ma zosta\u0107 wyzwolone zdarzenie og\u00f3lne. Je\u015bli <em>database<\/em> nie zostanie okre\u015blone, zdarzenie generyczne zostanie wywo\u0142ane w bie\u017c\u0105cej bazie danych.<\/p>\n<p><em>subtype<\/em> to podtyp zdarzenia og\u00f3lnego. Je\u015bli<em> subtype <\/em>nie jest dozwolonym podtypem, u\u017cywany jest podtyp 0. Podtyp 0 jest r\u00f3wnie\u017c u\u017cywany w przypadku wywo\u0142ania funkcji bez parametru <em>subtype<\/em>.<\/p>\n<p><em>name<\/em> to dowolnie wybierana identyfikacja zdarzenia, kt\u00f3rej mo\u017cna u\u017cy\u0107 do rozr\u00f3\u017cnienia r\u00f3\u017cnych zdarze\u0144. Je\u015bli u\u017cytkownik tworzy definicj\u0119 dzia\u0142ania, kt\u00f3ra reaguje na zdarzenie og\u00f3lne, mo\u017ce zapyta\u0107 o nazw\u0119 w warunku przej\u015bcia, aby sprawdzi\u0107 znaczenie zdarzenia. Aby zsynchronizowa\u0107 ze sob\u0105 dwa procesy, nale\u017cy wybra\u0107 unikaln\u0105 nazw\u0119, tak\u0105 jak Guid dzia\u0142ania, kt\u00f3ra wyzwala zdarzenie lub Guid utworzony za pomoc\u0105 funkcji <em>newGuid<\/em>. Kolejny krok procesu typu zdarzenie po\u015brednie czeka, a\u017c wywo\u0142ane dzia\u0142anie lub proces wyzwoli zdarzenie og\u00f3lne, tym razem z przekazanym identyfikatorem Guid (<em>Promise<\/em>) jako now\u0105 nazw\u0105.<\/p>\n<p><em>parameters<\/em> to tablica mieszaj\u0105ca, kt\u00f3ra mo\u017ce zawiera\u0107 dowolne warto\u015bci parametr\u00f3w dla wywo\u0142ywanego dzia\u0142ania lub procesu.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Wynik<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Funkcja <em>fireEvent<\/em> wywo\u0142uje zdarzenie <em>com.cisag.pgm.workflow.GenericOLTPEvent<\/em> dla dzia\u0142ania w bazie danych OLTP oraz zdarzenie <em>com.cisag.pgm.workflow.GenericRepositoryEvent <\/em>dla dzia\u0142ania w bazie danych repozytorium.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>\u0179r\u00f3d\u0142a b\u0142\u0119d\u00f3w<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>database <\/em>musi by\u0107 prawid\u0142ow\u0105 baz\u0105 danych OLTP pod\u0142\u0105czon\u0105 do systemu. Aby wywo\u0142a\u0107 zdarzenie w bazie danych repozytorium, nale\u017cy u\u017cy\u0107 funkcji <em>fireRepositoryEvent.<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Przyk\u0142ady<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>fireEvent(activity:code, hashMap(user:=userName(parameters.userGuid), order:=parameters.object:guid))<\/em> wyzwala zdarzenie generyczne w definicji dzia\u0142ania z definicj\u0105 zdarzenia typu <em>Jednostka biznesowa<\/em> i przekazuje identyfikacj\u0119 dzia\u0142ania jako nazw\u0119 oraz nazw\u0119 wyzwalaj\u0105cego u\u017cytkownika, a tak\u017ce klucz g\u0142\u00f3wny zmienionego obiektu biznesowego jako parametry.<\/p>\n<p><em>fireEvent(7, &#8222;&#8221;, hashMap())<\/em> wywo\u0142uje zdarzenie og\u00f3lne z podtypem 7 i bez identyfikacji i parametr\u00f3w.<\/p>\n<p><em>fireEvent(db, 7, &#8222;&#8221;, hashMap())<\/em> wywo\u0142uje zdarzenie generyczne o podtypie 7 w bazie danych o nazwie przechowywanej w zmiennej <em>db<\/em>.<\/p>\n<p><em>fireEvent(&#8222;NotifyByMail&#8221;, hashMap(recipient:=process.Initiator, textModule:=&#8221;PROCDONE&#8221;, process:=process.Code)<\/em> wyzwala zdarzenie og\u00f3lne w celu wys\u0142ania wiadomo\u015bci e-mail do wyzwalacza procesu. Identyfikacja definicji dzia\u0142ania jest przekazywana jako nazwa. Wywo\u0142ana definicja dzia\u0142ania wykorzystuje parametry warunku przej\u015bcia <em>transition.name = definition:code.<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Kontekst<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>ALL<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Uwagi<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Mo\u017cna tak\u017ce u\u017cy\u0107<em> fireEvent<\/em> w poszczeg\u00f3lnych kontrolach, np. aby wys\u0142a\u0107 powiadomienie w przypadku okre\u015blonych konstelacji danych lub rozpocz\u0105\u0107 proces zatwierdzania w przypadku pr\u00f3by zwolnienia bez autoryzacji.<\/p>\n<p>Je\u015bli okre\u015blono podtyp, warunek przej\u015bcia jest oceniany tylko wtedy, gdy ten sam podtyp zosta\u0142 wybrany w definicji dzia\u0142ania. Nale\u017cy u\u017cy\u0107 podtyp\u00f3w, aby zmniejszy\u0107 liczb\u0119 warunk\u00f3w przej\u015bcia, kt\u00f3re maj\u0105 zosta\u0107 ocenione. Je\u015bli na przyk\u0142ad dziesi\u0119\u0107 definicji dzia\u0142ania jest zarejestrowanych dla zdarzenia og\u00f3lnego, ale tylko jedna z nich ma wygenerowa\u0107 dzia\u0142anie, gdy zdarzenie zostanie rozwi\u0105zane, w\u00f3wczas u\u017cycie podtyp\u00f3w mo\u017ce zmniejszy\u0107 liczb\u0119 ocenianych warunk\u00f3w przej\u015bcia o 90%.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>fireRepositoryEvent<\/em><\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\">Poni\u017cszy przyk\u0142ad z definicji dzia\u0142ania <em>help.fireEvent<\/em> wywo\u0142uje zdarzenie generyczne <em>com.cisag.pgm.workflow.GenericOLTPEvent<\/em> w bie\u017c\u0105cej bazie danych.<\/p>\n<p><em>function create()<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 var p_message := parameters.MESSAGE;<\/em><\/p>\n<p><em>\u00a0 if (p_message = &#8222;&#8221;)<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 p_message := &#8222;Czy kto\u015b tam jest?&#8221;;<\/em><\/p>\n<p><em>\u00a0 var params := new(HashMap);<\/em><\/p>\n<p><em>\u00a0 params.sender := &#8222;SETI&#8221;; \/* Wyszukiwanie przechwytywaczy wyzwalaczy zdarze\u0144 *\/<\/em><\/p>\n<p><em>\u00a0 params.message := p_message;<\/em><\/p>\n<p><em>\u00a0 fireEvent(definition:code, params);<\/em><\/p>\n<p><em>}<\/em> <\/div><\/section>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\"> <strong>Ocena zdarzenia og\u00f3lnego<\/strong><\/p>\n<p>Poni\u017cszy przyk\u0142ad z definicji dzia\u0142ania <em>help.fireEvent.catch<\/em> opisuje, w jaki spos\u00f3b definicja dzia\u0142ania mo\u017ce przechwyci\u0107 i oceni\u0107 og\u00f3lne zdarzenie z poprzedniego przyk\u0142adu. Nazwa zdarzenia jest sprawdzana w warunku przej\u015bcia. Tylko je\u015bli identyfikacja definicji dzia\u0142ania (tutaj: <em>help.fireEvent.catch<\/em>) zaczyna si\u0119 od nazwy zdarzenia (tutaj: <em>help.fireEvent<\/em>), generowane jest dzia\u0142anie.<\/p>\n<p><em>startsWith(definition:code, parameters.name)<\/em><\/p>\n<p>Pozosta\u0142e parametry zdarzenia s\u0105 oceniane w deklaracjach, a temat dzia\u0142ania jest formatowany:<\/p>\n<p><em>function create()<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 var p_params := parameters.parameters;<\/em><\/p>\n<p><em>\u00a0 formatSubject(&#8222;sender&#8221;, cast(String, p_params.sender));<\/em><\/p>\n<p><em>\u00a0 formatSubject(&#8222;message&#8221;, cast(String, p_params.message));<\/em><\/p>\n<p><em>}<\/em> <\/div><\/section>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\"> <strong>Rozpocz\u0119cie podprocesu<\/strong><\/p>\n<p>Poni\u017cszy przyk\u0142ad z definicji procesu wyzwala zdarzenie generyczne <em>com.cisag.pgm.workflow.GenericOLTPEvent<\/em> w bie\u017c\u0105cej bazie danych w celu uruchomienia podprocesu <em>ApproveGenericRequest<\/em>. Identyfikacja definicji dzia\u0142ania, dla kt\u00f3rej zdarzenie jest wyzwalane, jest u\u017cywana jako nazwa zdarzenia. Identyfikacja dzia\u0142ania jest r\u00f3wnie\u017c przekazywana jako parametr zdarzenia, dzi\u0119ki czemu wywo\u0142any podproces mo\u017ce u\u017cy\u0107 identyfikacji jako nazwy zdarzenia podczas zwracania wynik\u00f3w. Poniewa\u017c identyfikacja dzia\u0142ania nie jest dost\u0119pna w funkcji <em>create()<\/em><em>,<\/em> proces wy\u017cszego poziomu wyzwala zdarzenie tylko w funkcji <em>close()<\/em><em>.<\/em><\/p>\n<p><em>function close(state as Number)<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 \/* Zapisanie kodu dzia\u0142ania do przetworzenia (niedost\u0119pne podczas tworzenia) *\/<\/em><\/p>\n<p><em>\u00a0 process.activityCode := activity:code;<\/em><\/p>\n<p><em>\u00a0 \/* Zbuduj parametr HashMap *\/<\/em><\/p>\n<p><em>\u00a0 var params := new(HashMap);<\/em><\/p>\n<p><em>\u00a0 params.caller := activity:code;<\/em><\/p>\n<p><em>\u00a0 params.requester := process.Initiator;<\/em><\/p>\n<p><em>\u00a0 params.beneficiary := process.employee-&gt;Partner:number;<\/em><\/p>\n<p><em>\u00a0 params.superior := process.superior-&gt;Partner:number;<\/em><\/p>\n<p><em>\u00a0 params.resourceType := process.resourceType;<\/em><\/p>\n<p><em>\u00a0 params.requestedResources := process.requestedResources;<\/em><\/p>\n<p><em>\u00a0 params.comment := process.comment;<\/em><\/p>\n<p><em>\u00a0 params.notificationRecipients := list(process.Initiator);<\/em><\/p>\n<p><em>\u00a0 params.activityWorkDuration := 3600 * 24 * 7;<\/em><\/p>\n<p><em>\u00a0 params.activityPriority := 5;<\/em><\/p>\n<p><em>\u00a0 \/* Rozpocz\u0119cie podprocesu *\/<\/em><\/p>\n<p><em>\u00a0 fireEvent(&#8222;ApproveGenericRequest&#8221;, params);<\/em><\/p>\n<p><em>}<\/em><\/p>\n<p>Po wywo\u0142aniu zdarzenie po\u015brednie w procesie nadrz\u0119dnym oczekuje na zwr\u00f3cenie wynik\u00f3w z procesu podrz\u0119dnego przy u\u017cyciu zdarzenia generycznego <em>com.cisag.pgm.workflow.GenericOLTPEvent<\/em>. Warunek przej\u015bcia w w\u0119\u017ale po\u015brednim sprawdza, czy zdarzenie u\u017cywa wcze\u015bniej przekazanego parametru <em>caller<\/em> jako nazwy:<\/p>\n<p><em>parameters.name = process.activityCode<\/em><\/p>\n<p>Podprocesy maj\u0105 nie tylko t\u0119 zalet\u0119, \u017ce og\u00f3lne kroki procesu, kt\u00f3re wyst\u0119puj\u0105 w kilku procesach, mo\u017cna podsumowa\u0107 w celu uproszczenia wdra\u017cania i konserwacji. Podproces mo\u017ce r\u00f3wnie\u017c mie\u0107 ustawienia autoryzacji, kt\u00f3re r\u00f3\u017cni\u0105 si\u0119 od definicji procesu wy\u017cszego poziomu. Oznacza to, \u017ce na przyk\u0142ad proces onboardingu dla nowych pracownik\u00f3w mo\u017ce by\u0107 lepiej chroniony przed nieautoryzowanym dost\u0119pem. Dzia\u0142ania w dzia\u0142ach HR i IT, kt\u00f3re cz\u0119sto obejmuj\u0105 dane osobowe i poufne, mog\u0105 by\u0107 mapowane jako podprocesy, aby zachowa\u0107 je w tajemnicy przed innymi pracownikami w procesie wdra\u017cania. Aby zwi\u0119kszy\u0107 bezpiecze\u0144stwo, oba procesy mog\u0105 szyfrowa\u0107 wymieniane dane za pomoc\u0105 funkcji szyfrowania i odszyfrowywania.<\/div><\/section>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\"> <strong>Ocena zmiennych procesowych innego procesu<\/strong><\/p>\n<p>U\u017cywaj\u0105c nast\u0119puj\u0105cej definicji dzia\u0142ania JavaScript <em>help.js.getProcessParameter<\/em> typu <em>Wywo\u0142anie funkcji<\/em>, wywo\u0142uj\u0105cy proces wy\u017cszego poziomu mo\u017ce oceni\u0107 dowolne zmienne procesowe wywo\u0142anego procesu podrz\u0119dnego.<\/p>\n<p><em>\/* Zwraca warto\u015b\u0107 zmiennej procesu<\/em><\/p>\n<p><em>\u00a0* Parametry:<\/em><\/p>\n<p><em>\u00a0* PROCESS: Guid lub kod instancji procesu<\/em><\/p>\n<p><em>\u00a0* PARAMETER: nazwa zmiennej procesu<\/em><\/p>\n<p><em>* Wyniki:<\/em><\/p>\n<p><em>\u00a0* DATATYPE: typ danych wyniku: <\/em><\/p>\n<p><em>\u00a0* 1 = String (u\u017cyj result.STRING)<\/em><\/p>\n<p><em>\u00a0* 2 = Liczba (u\u017cyj result.NUMBER)<\/em><\/p>\n<p><em>\u00a0* 3 = Boolean (u\u017cyj result.STRING lub result.NUMBER)<\/em><\/p>\n<p><em>\u00a0* 4 = Guid, Bajty (u\u017cyj result.STRING)<\/em><\/p>\n<p><em>\u00a0* 5 = CisObject, CisObjectReference (u\u017cyj instancji <\/em><\/p>\n<p><em>\u00a0 * string in result.STRING)<\/em><\/p>\n<p><em>\u00a0* 7 = Lista, (u\u017cyj result.STRING)<\/em><\/p>\n<p><em>\u00a0* 8 = Znacznik czasu (u\u017cyj result.TIMESTAMP)<\/em><\/p>\n<p><em>\u00a0* 9 = HashMap (u\u017cyj result.STRING)<\/em><\/p>\n<p><em>\u00a0* 10 = CisObjectReference (nieu\u017cywane)<\/em><\/p>\n<p><em>\u00a0* 11 = CisDate (u\u017cyj result.TIMESTAMP)<\/em><\/p>\n<p><em>\u00a0* 103 = Nieznany<\/em><\/p>\n<p><em>\u00a0* STRING: wynik dla typ\u00f3w danych: <\/em><\/p>\n<p><em>\u00a0* String, Guid, Bytes, CisObject, CisObjectReference, <\/em><\/p>\n<p><em>\u00a0* Lista, HashMap<\/em><\/p>\n<p><em>\u00a0* NUMBER: wynik dla typ\u00f3w danych: Number, Boolean<\/em><\/p>\n<p><em>\u00a0* TIMESTAMP: wynik dla typ\u00f3w danych: Timestamp, CisDate<\/em><\/p>\n<p><em>\u00a0*\/<\/em><\/p>\n<p><em>\u00a0<\/em><\/p>\n<p><em>function create() {<\/em><\/p>\n<p><em>\u00a0 var p_process = parameters.PROCESS; \/* Guid procesu lub kod *\/<\/em><\/p>\n<p><em>\u00a0 var p_parameter = parameters.PARAMETER; \/* nazwa parametru *\/<\/em><\/p>\n<p><em>\u00a0 var env = Java.type(&#8222;com.cisag.pgm.appserver.CisEnvironment&#8221;).getInstance();<\/em><\/p>\n<p><em>\u00a0 var om = env.getObjectManager();<\/em><\/p>\n<p><em>\u00a0 var processGuid = p_process.length() == 32 ? Java.type(&#8222;com.cisag.pgm.datatype.Guid&#8221;).fromHexString(p_process) : null;<\/em><\/p>\n<p><em>\u00a0 var Process = Java.type(&#8222;com.cisag.sys.workflow.obj.Process&#8221;);<\/em><\/p>\n<p><em>\u00a0 if (processGuid == null) {<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 var oProcess = om.getObject(Process.buildByCodeKey(p_process));<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 if (oProcess != null)<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0 processGuid = oProcess.getGuid();<\/em><\/p>\n<p><em>\u00a0 }<\/em><\/p>\n<p><em>\u00a0 if (processGuid == null)<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 powr\u00f3t;<\/em><\/p>\n<p><em>\u00a0 var proc = om.getObject(Process.buildPrimaryKey(processGuid));<\/em><\/p>\n<p><em>\u00a0 var parserLogic = Java.type(&#8222;com.cisag.pgm.util.ParserLogic&#8221;).getInstance(10, 1);<\/em><\/p>\n<p><em>\u00a0 var parserEnvironment = parserLogic.deserialzeEnvironment(proc.getParameters().getBinaryStream());<\/em><\/p>\n<p><em>\u00a0 var data = parserEnvironment.get(&#8222;process&#8221;).getHashMap();<\/em><\/p>\n<p><em>\u00a0 var obj = data.get(p_parameter);<\/em><\/p>\n<p><em>\u00a0 if (obj != null) {<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 result.DATATYPE = obj.getDatatype();<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 result.STRING = obj.getString();<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 result.TIMESTAMP = obj.getTimestamp();<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 result.NUMBER = obj.getNumber();<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 if (obj.getDatatype() == 5 || obj.getDatatype() == 10) \/* BO lub BO-REFERENCE *\/<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0 result.STRING = obj.getCisObject().get_instanceString();<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 if (obj.getDatatype() == 3) \/* Boolean *\/<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0 result.NUMBER = obj.getString() == &#8222;true&#8221; ? <\/em><em>1 : 0;<\/em><\/p>\n<p><em>\u00a0 }<\/em><\/p>\n<p><em>}<\/em> <\/div><\/section>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\"> <strong>Asynchroniczne podprocesy<\/strong><\/p>\n<p>Mo\u017cliwe s\u0105 r\u00f3wnie\u017c asynchroniczne podprocesy. W funkcji <em>close()<\/em> w\u0119z\u0142a startowego, podproces zwraca guid lub identyfikator (tzw. <em>Promise<\/em>) do procesu nadrz\u0119dnego synchronicznie. Oba procesy mog\u0105 nast\u0119pnie kontynuowa\u0107 dzia\u0142anie asynchronicznie. Proces nadrz\u0119dny sprawdza status procesu podrz\u0119dnego. Je\u015bli proces podrz\u0119dny jest uko\u0144czony, proces nadrz\u0119dny wysy\u0142a zapytanie o jego wyniki.<\/p>\n<p>Poni\u017csza definicja dzia\u0142ania <em>help.js.getProcessParameter.call<\/em> zapisana w j\u0119zyku skryptowym systemu stanowi przyk\u0142ad tego, jak mo\u017cna wywo\u0142a\u0107 definicj\u0119 dzia\u0142ania <em>help.js.getProcessParameter<\/em> zapisan\u0105 w JavaScript:<\/p>\n<p><em>function create()<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 var p_process := parameters.PROCESS;<\/em><\/p>\n<p><em>\u00a0 var p_parameter := parameters.PARAMETER;<\/em><\/p>\n<p><em>\u00a0 var r_datatype := 0;<\/em><\/p>\n<p><em>\u00a0 var r_string := &#8222;&#8221;;<\/em><\/p>\n<p><em>\u00a0 var r_number := 0;<\/em><\/p>\n<p><em>\u00a0 var r_timestamp := UNDEFINED_DATE;<\/em><\/p>\n<p><em>\u00a0 var params := new(HashMap);<\/em><\/p>\n<p><em>\u00a0 params.PROCESS := p_process;<\/em><\/p>\n<p><em>\u00a0 params.PARAMETER := p_parameter;<\/em><\/p>\n<p><em>\u00a0 var parameterValue := call(&#8222;help.js.getProcessParameter&#8221;, params);<\/em><\/p>\n<p><em>\u00a0 result.DATATYPE := cast(Number, parameterValue.DATATYPE);<\/em><\/p>\n<p><em>\u00a0 result.STRING := cast(String, parameterValue.STRING);<\/em><\/p>\n<p><em>\u00a0 result.NUMBER := cast(Number, parameterValue.NUMBER);<\/em><\/p>\n<p><em>\u00a0 result.TIMESTAMP := cast(Timestamp, parameterValue.TIMESTAMP);<\/em><\/p>\n<p><em>} <\/em><\/div><\/section>\n<h5 id=\"firerepositoryevent\" ><span class=\"ez-toc-section\" id=\"fireRepositoryEvent\"><\/span>fireRepositoryEvent<span class=\"ez-toc-section-end\"><\/span><\/h5>\n<table style=\"border-style: outset; border-color: #000000; background-color: #ffffff; width: 100%; height: 1561px;\">\n<tbody>\n<tr style=\"height: 68px;\">\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Nazwa<\/p>\n<\/td>\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>fireRepositoryEvent<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 68px;\">\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Opis<\/p>\n<\/td>\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>fireRepositoryEvent <\/em>wywo\u0142uje og\u00f3lne zdarzenie w bazie danych repozytorium.<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 151px;\">\n<td style=\"height: 151px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Podpisy<\/p>\n<\/td>\n<td style=\"height: 151px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>boolean fireRepositoryEvent(String name, HashMap parameters)<\/em><\/p>\n<p><em>boolean fireRepositoryEvent(Number subtype, String name, HashMap parameters)<\/em><\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 363px;\">\n<td style=\"height: 363px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Parametry<\/p>\n<\/td>\n<td style=\"height: 363px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>subtype <\/em>to podtyp zdarzenia og\u00f3lnego. Je\u015bli <em>subtype<\/em> nie jest dozwolonym podtypem, u\u017cywany jest podtyp 0. Podtyp 0 jest r\u00f3wnie\u017c u\u017cywany w przypadku wywo\u0142ania funkcji bez parametru <em>subtype<\/em>.<\/p>\n<p><em>name<\/em> to dowolnie wybierana identyfikacja zdarzenia, kt\u00f3rej mo\u017cna u\u017cy\u0107 do rozr\u00f3\u017cnienia r\u00f3\u017cnych zdarze\u0144. Je\u015bli u\u017cytkownik tworzy definicj\u0119 dzia\u0142ania, kt\u00f3ra reaguje na zdarzenie og\u00f3lne, mo\u017ce zapyta\u0107 o nazw\u0119 w warunku przej\u015bcia, aby sprawdzi\u0107 znaczenie zdarzenia.<\/p>\n<p><em>parameters<\/em> to tablica hash, kt\u00f3ra mo\u017ce zawiera\u0107 dowolne warto\u015bci parametr\u00f3w.<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 165px;\">\n<td style=\"height: 165px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Wynik<\/p>\n<\/td>\n<td style=\"height: 165px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Funkcja <em>fireRepositoryEvent<\/em> wyzwala zdarzenie <em>com.cisag.pgm.workflow.GenericRepositoryEvent<\/em> w bazie danych repozytorium, gdy dzia\u0142anie wyst\u0119puje zar\u00f3wno w bazie danych repozytorium, jak i w bazie danych OLTP.<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 68px;\">\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>\u0179r\u00f3d\u0142a b\u0142\u0119d\u00f3w<\/p>\n<\/td>\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Brak.<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 280px;\">\n<td style=\"height: 280px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Przyk\u0142ady<\/p>\n<\/td>\n<td style=\"height: 280px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>fireRepositoryEvent(&#8222;NotifyTrainer&#8221;, hashMap(student:=userName(parameters.userGuid), exercise:=results.EXERCISE, status:=&#8221;DONE&#8221;, comment:=results.COMMENT)<\/em> uruchamia og\u00f3lne zdarzenie informuj\u0105ce trenera w CEE Academy, \u017ce uczestnik szkolenia uko\u0144czy\u0142 \u0107wiczenie.<\/p>\n<p><em>fireRepositoryEvent(7, &#8222;&#8221;, hashMap())<\/em> wywo\u0142uje zdarzenie generyczne z podtypem 7 i bez identyfikacji i parametr\u00f3w.<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 68px;\">\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Kontekst<\/p>\n<\/td>\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>ALL<\/em><\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 262px;\">\n<td style=\"height: 262px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Uwagi<\/p>\n<\/td>\n<td style=\"height: 262px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Je\u015bli okre\u015blono podtyp, warunek przej\u015bcia jest oceniany tylko wtedy, gdy ten sam podtyp zosta\u0142 wybrany w definicji dzia\u0142ania. Nalezy u\u017cy\u0107 podtyp\u00f3w, aby zmniejszy\u0107 liczb\u0119 warunk\u00f3w przej\u015bcia, kt\u00f3re maj\u0105 zosta\u0107 ocenione. Je\u015bli na przyk\u0142ad dziesi\u0119\u0107 definicji dzia\u0142ania jest zarejestrowanych dla zdarzenia og\u00f3lnego, ale tylko jedna z nich ma wygenerowa\u0107 dzia\u0142anie, gdy zdarzenie zostanie rozwi\u0105zane, w\u00f3wczas u\u017cycie podtyp\u00f3w mo\u017ce zmniejszy\u0107 liczb\u0119 ocenianych warunk\u00f3w przej\u015bcia o 90%.<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 68px;\">\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>fireEvent<\/em><\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\">Poni\u017cszy przyk\u0142ad z definicji dzia\u0142ania <em>help.fireRepositoryEvent<\/em> wywo\u0142uje zdarzenie generyczne com.cisag.pgm.workflow.GenericRepositoryEvent w bazie danych repozytorium:<\/p>\n<p><em>function create()<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 var p_message := parameters.MESSAGE;<\/em><\/p>\n<p><em>\u00a0 if (p_message = &#8222;&#8221;)<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 p_message := &#8222;Czy kto\u015b tam jest?&#8221;;<\/em><\/p>\n<p><em>\u00a0 var params := new(HashMap);<\/em><\/p>\n<p><em>\u00a0 params.sender := &#8222;SETI&#8221;; \/* Wyszukiwanie przechwytywaczy wyzwalaczy zdarze\u0144 *\/<\/em><\/p>\n<p><em>\u00a0 params.message := p_message;<\/em><\/p>\n<p><em>\u00a0 fireRepositoryEvent(definition:code, params);<\/em><\/p>\n<p><em>}<\/em> <\/div><\/section>\n<h4 id=\"funkcje-systemowe-i-konfiguracyjne-system-and-configuration-functions\" ><span class=\"ez-toc-section\" id=\"Funkcje_systemowe_i_konfiguracyjne_System_and_Configuration_functions\"><\/span>Funkcje systemowe i konfiguracyjne (System and Configuration functions)<span class=\"ez-toc-section-end\"><\/span><\/h4>\n<p>Funkcje systemowe i konfiguracyjne zwracaj\u0105 status systemu i w\u0142a\u015bciwo\u015bci bazy danych konfiguracji. Funkcje systemowe i konfiguracyjne obejmuj\u0105:<\/p>\n<ul>\n<li><strong>databaseName<\/strong><\/li>\n<li><strong>memoryLevel<\/strong><\/li>\n<li><strong>objectName<\/strong><\/li>\n<li><strong>serverLinkTarget<\/strong><\/li>\n<li><strong>serverName<\/strong><\/li>\n<li><strong>systemName<\/strong><\/li>\n<li><strong>versionString<\/strong><\/li>\n<\/ul>\n<h5 id=\"databasename\" ><span class=\"ez-toc-section\" id=\"databaseName\"><\/span>databaseName<span class=\"ez-toc-section-end\"><\/span><\/h5>\n<table style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\">\n<tbody>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Nazwa<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>databaseName<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Opis<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>databaseName<\/em> zwraca nazw\u0119 bazy danych.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Podpisy<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>String <\/em><em>databaseName(Guid database)<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Parametry<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>database <\/em>to identyfikator bazy danych.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Wynik<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Nazwa bazy danych w czytelnej formie jako ci\u0105g znak\u00f3w.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>\u0179r\u00f3d\u0142a b\u0142\u0119d\u00f3w<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Brak.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Przyk\u0142ady<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>databaseName(event.database)<\/em> zwraca nazw\u0119 bazy danych, w kt\u00f3rej zdarzenie zosta\u0142o wywo\u0142ane.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Kontekst<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>ALL<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Uwagi<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Na przyk\u0142ad, identyfikator bazy danych jest przekazywany w parametrze zdarzenia <em>event.database<\/em> dla zdarze\u0144 typu <em>Jednostka biznesowa<\/em> i <em>Zaprogramowane zdarzenie<\/em>.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\u00a0<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\">Poni\u017cszy przyk\u0142ad z definicji dzia\u0142ania <em>help.databaseName<\/em> zwraca nazw\u0119 bazy danych:<\/p>\n<p><em>function create()<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 var p_guid := parameters.GUID;<\/em><\/p>\n<p><em>\u00a0 var r_databaseName := &#8222;&#8221;;<\/em><\/p>\n<p><em>\u00a0 var databaseGuid := cast(Guid, p_guid);<\/em><\/p>\n<p><em>\u00a0 if (not isNull(databaseGuid))<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 r_databaseName := databaseName(databaseGuid);<\/em><\/p>\n<p><em>\u00a0 result.DATABASE_NAME := r_databaseName;<\/em><\/p>\n<p><em>}<\/em> <\/div><\/section>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\"> <strong>Zapytanie o nazw\u0119 bazy danych w JavaScript<\/strong><\/p>\n<p>Poni\u017cszy przyk\u0142ad z definicji dzia\u0142ania JavaScript <em>help.js.getDatabaseGuid<\/em> okre\u015bla identyfikator bazy danych i zwraca jej nazw\u0119:<\/p>\n<p><em>function create()<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 var cisEnvironment = Java.type(&#8222;com.cisag.pgm.appserver.CisEnvironment&#8221;).getInstance();<\/em><\/p>\n<p><em>\u00a0 result.NAME = functions.databaseName(cisEnvironment.getDatabaseGuid());<\/em><\/p>\n<p><em>}<\/em> <\/div><\/section>\n<h5 id=\"memorylevel\" ><span class=\"ez-toc-section\" id=\"memoryLevel\"><\/span>memoryLevel<span class=\"ez-toc-section-end\"><\/span><\/h5>\n<table style=\"border-style: outset; border-color: #000000; background-color: #ffffff; width: 100%; height: 1028px;\">\n<tbody>\n<tr style=\"height: 68px;\">\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Nazwa<\/p>\n<\/td>\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>memoryLevel<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 68px;\">\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Opis<\/p>\n<\/td>\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>memoryLevel<\/em> zwraca bie\u017c\u0105cy poziom ostrzegawczy pami\u0119ci serwera aplikacji.<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 118px;\">\n<td style=\"height: 118px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Podpisy<\/p>\n<\/td>\n<td style=\"height: 118px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>Number memoryLevel()<\/em><\/p>\n<p><em>Number memoryLevel(Guid svmGuid)<\/em><\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 68px;\">\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Parametry<\/p>\n<\/td>\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>svmGuid<\/em> to identyfikator serwera aplikacji.<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 302px;\">\n<td style=\"height: 302px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Wynik<\/p>\n<\/td>\n<td style=\"height: 302px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Bie\u017c\u0105cy poziom ostrze\u017cenia pami\u0119ci jako liczba ca\u0142kowita. Mo\u017cliwe poziomy ostrze\u017ce\u0144 pami\u0119ci s\u0105 zdefiniowane w <em>ValueSet com.cisag.sys.kernel.MemoryLevel<\/em>:<\/p>\n<p>1.\u00a0\u00a0\u00a0\u00a0 W porz\u0105dku<\/p>\n<p>2.\u00a0\u00a0\u00a0\u00a0 Ostrze\u017cenie<\/p>\n<p>3.\u00a0\u00a0\u00a0\u00a0 Niski<\/p>\n<p>4.\u00a0\u00a0\u00a0\u00a0 Krytyczny<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 68px;\">\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>\u0179r\u00f3d\u0142a b\u0142\u0119d\u00f3w<\/p>\n<\/td>\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Brak<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 100px;\">\n<td style=\"height: 100px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Przyk\u0142ady<\/p>\n<\/td>\n<td style=\"height: 100px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>valueSetDescription(&#8222;com.cisag.sys.kernel.MemoryLevel&#8221;, memoryLevel())<\/em> zwraca poziom ostrze\u017cenia o pami\u0119ci bie\u017c\u0105cego serwera aplikacji.<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 68px;\">\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Kontekst<\/p>\n<\/td>\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>ALL<\/em><\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 100px;\">\n<td style=\"height: 100px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Uwagi<\/p>\n<\/td>\n<td style=\"height: 100px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Poziom ostrze\u017cenia o przechowywaniu jest r\u00f3wnie\u017c wy\u015bwietlany w aplikacji <em>Panel System<\/em>.<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 68px;\">\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\u00a0<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\">Poni\u017cszy przyk\u0142ad z definicji dzia\u0142ania <em>help.memoryLevel<\/em> zwraca poziom ostrzegawczy pami\u0119ci serwera aplikacji.<\/p>\n<p><em>function create()<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 var p_svmGuid := parameters.SVM_GUID;<\/em><\/p>\n<p><em>\u00a0 var r_memoryLevel := &#8222;&#8221;;<\/em><\/p>\n<p><em>\u00a0 if (p_svmGuid = &#8222;&#8221;) <\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 r_memoryLevel := valueSetDescription(&#8222;com.cisag.sys.kernel.MemoryLevel&#8221;, memoryLevel());<\/em><\/p>\n<p><em>\u00a0 else<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 r_memoryLevel := valueSetDescription(&#8222;com.cisag.sys.kernel.MemoryLevel&#8221;, memoryLevel(cast(Guid, p_svmGuid)));<\/em><\/p>\n<p><em>\u00a0 result.MEMORY_LEVEL := r_memoryLevel;<\/em><\/p>\n<p><em>} <\/em><\/div><\/section>\n<h5 id=\"objectname\" ><span class=\"ez-toc-section\" id=\"objectName\"><\/span>objectName<span class=\"ez-toc-section-end\"><\/span><\/h5>\n<table style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\">\n<tbody>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Nazwa<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>objectName<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Opis<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>objectName<\/em> zwraca pe\u0142n\u0105 nazw\u0119 techniczn\u0105 obiektu deweloperskiego.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Podpisy<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>String objectName(Guid objectGuid)<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Parametry<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>objectGuid<\/em> to identyfikator obiektu deweloperskiego.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Wynik<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Pe\u0142na nazwa techniczna obiektu deweloperskiego, w tym jego \u015bcie\u017cka nazwy w postaci ci\u0105gu znak\u00f3w.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>\u0179r\u00f3d\u0142a b\u0142\u0119d\u00f3w<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Brak<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Przyk\u0142ady<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>objectName(event.Guid)<\/em> zwraca pe\u0142n\u0105 nazw\u0119 techniczn\u0105 zaprogramowanego zdarzenia lub jednostki biznesowej.<\/p>\n<p><em>substring(objectName(event.guid), lastIndexOf(objectName(event.guid), &#8222;.&#8221;) <\/em><em>+ 1)<\/em> zwraca nazw\u0119 techniczn\u0105 zaprogramowanego zdarzenia lub jednostki biznesowej bez jej obszaru nazw.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Kontekst<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>ALL<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Uwagi<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Dane opisowe wszystkich obiekt\u00f3w deweloperskich s\u0105 przechowywane w bazie danych repozytorium.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\u00a0<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\">Poni\u017cszy przyk\u0142ad z definicji dzia\u0142ania <em>help.objectName<\/em> zwraca pe\u0142n\u0105 nazw\u0119 techniczn\u0105 obiektu deweloperskiego:<\/p>\n<p><em>function create()<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 var p_guid := parameters.GUID;<\/em><\/p>\n<p><em>\u00a0 var r_objectName := &#8222;&#8221;;<\/em><\/p>\n<p><em>\u00a0 var objectGuid := cast(Guid, p_guid);<\/em><\/p>\n<p><em>\u00a0 if (not isNull(objectGuid))<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 r_objectName := objectName(objectGuid);<\/em><\/p>\n<p><em>\u00a0 result.OBJECT_NAME := r_objectName;<\/em><\/p>\n<p><em>} <\/em><\/div><\/section>\n<h5 id=\"serverlinktarget\" ><span class=\"ez-toc-section\" id=\"serverLinkTarget\"><\/span>serverLinkTarget<span class=\"ez-toc-section-end\"><\/span><\/h5>\n<table style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\">\n<tbody>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Nazwa<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>serverLinkTarget<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Opis<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Zwraca nazw\u0119 serwera docelowego dla atrybut\u00f3w link\u00f3w.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Podpisy<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>serverLinkTarget()<\/em><\/p>\n<p><em>serverLinkTarget(Guid user)<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Parametry<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>user<\/em> to identyfikator u\u017cytkownika, dla kt\u00f3rego ma zosta\u0107 okre\u015blony serwer docelowy. Serwer docelowy mo\u017ce zale\u017ce\u0107 od u\u017cytkownika.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Wynik<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Funkcja zwraca nazw\u0119 serwera docelowego dla atrybut\u00f3w link\u00f3w (<em>links<\/em>) jako ci\u0105g znak\u00f3w. Serwer docelowy zale\u017cy od serwera aplikacji, na kt\u00f3rym wykonywana jest funkcja.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>\u0179r\u00f3d\u0142a b\u0142\u0119d\u00f3w<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Brak.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Przyk\u0142ady<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>serverLinkTarget()<\/em> zwraca nazw\u0119 serwera aplikacji, na kt\u00f3rym wykonywana jest funkcja.<\/p>\n<p><em>serverLinkTarget(parameters.userGuid)<\/em> zwraca nazw\u0119 serwera aplikacji, kt\u00f3ry jest u\u017cywany dla atrybut\u00f3w link\u00f3w dla u\u017cytkownika, kt\u00f3ry wywo\u0142a\u0142 zdarzenie dla definicji dzia\u0142ania z definicj\u0105 zdarzenia typu <em>Jednostka biznesowa<\/em> lub <em>Dzia\u0142anie u\u017cytkownika<\/em>.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Kontekst<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>ALL<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Uwagi<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>W systemach z tylko jednym serwerem aplikacji dalsza konfiguracja nie jest konieczna. Serwerem docelowym jest serwer aplikacji, na kt\u00f3rym uruchomiony jest silnik workflow.<\/p>\n<p>Je\u015bli system sk\u0142ada si\u0119 z kilku serwer\u00f3w aplikacji, nale\u017cy wprowadzi\u0107 serwer aplikacji dialogu w polu <em>Docelowy serwer dla atrybut\u00f3w linka <\/em>dla wszystkich serwer\u00f3w aplikacji w aplikacji <em>Panel System<\/em>. Serwer ten jest u\u017cywany dla wszystkich \u0142\u0105czy w wiadomo\u015bciach e-mail workflow wysy\u0142anych przez serwer wiadomo\u015bci.<\/p>\n<p>Je\u015bli serwer docelowy jest zale\u017cny od u\u017cytkownika, mo\u017cna r\u00f3wnie\u017c przypisa\u0107 serwery docelowe specyficzne dla roli workflow w aplikacji <em>Role workflow<\/em>.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\u00a0<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\">Poni\u017cszy przyk\u0142ad z definicji dzia\u0142ania <em>help.serverLinkTarget<\/em> zwraca nazw\u0119 serwera docelowego dla atrybut\u00f3w link\u00f3w. Opcjonalnie jako parametr mo\u017cna okre\u015bli\u0107 identyfikator u\u017cytkownika.<\/p>\n<p><em>function create()<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 var p_user := parameters.USER;<\/em><\/p>\n<p><em>\u00a0 var r_serverLinkTarget := &#8222;&#8221;;<\/em><\/p>\n<p><em>\u00a0 var u := userGuid(p_user);<\/em><\/p>\n<p><em>\u00a0 if (not isNull(u))<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 r_serverLinkTarget := serverLinkTarget(u);<\/em><\/p>\n<p><em>\u00a0 else<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 r_serverLinkTarget := serverLinkTarget();<\/em><\/p>\n<p><em>\u00a0 result.SERVER_LINK_TARGET := r_serverLinkTarget;<\/em><\/p>\n<p><em>}<\/em> <\/div><\/section>\n<h5 id=\"servername\" ><span class=\"ez-toc-section\" id=\"serverName\"><\/span>serverName<span class=\"ez-toc-section-end\"><\/span><\/h5>\n<table style=\"border-style: outset; border-color: #000000; background-color: #ffffff; width: 100%; height: 795px;\">\n<tbody>\n<tr style=\"height: 68px;\">\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Nazwa<\/p>\n<\/td>\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>serverName<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 68px;\">\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Opis<\/p>\n<\/td>\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>serverName<\/em> zwraca nazw\u0119 serwera aplikacji.<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 68px;\">\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Podpisy<\/p>\n<\/td>\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>String <\/em><em>serverName(Guid server)<\/em><\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 68px;\">\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Parametry<\/p>\n<\/td>\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>server<\/em> to identyfikator Guid serwera.<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 68px;\">\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Wynik<\/p>\n<\/td>\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Nazwa serwera w czytelnej formie jako ci\u0105g znak\u00f3w.<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 68px;\">\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>\u0179r\u00f3d\u0142a b\u0142\u0119d\u00f3w<\/p>\n<\/td>\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Brak.<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 100px;\">\n<td style=\"height: 100px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Przyk\u0142ady<\/p>\n<\/td>\n<td style=\"height: 100px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>serverName(cast(Guid, &#8222;01200477BA652A10B51EAD1BAA7C0000&#8221;)<\/em> zwraca <em>ADV600<\/em>.<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 68px;\">\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Kontekst<\/p>\n<\/td>\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>ALL<\/em><\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 151px;\">\n<td style=\"height: 151px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Uwagi<\/p>\n<\/td>\n<td style=\"height: 151px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Guid serwera jest wy\u015bwietlany w aplikacji <em>Panel System<\/em>.<\/p>\n<p>Mo\u017cna r\u00f3wnie\u017c u\u017cy\u0107 funkcji <em>serverLinkTarget<\/em>, aby okre\u015bli\u0107 nazw\u0119 serwera aplikacji, na kt\u00f3rym dzia\u0142a silnik workflow.<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 68px;\">\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><strong>\u00a0<\/strong><\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\">Poni\u017cszy przyk\u0142ad z definicji dzia\u0142ania <em>help.serverName<\/em> zwraca nazw\u0119 serwera aplikacji:<\/p>\n<p><em>function create()<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 var p_guid := parameters.GUID;<\/em><\/p>\n<p><em>\u00a0 var r_serverName := &#8222;&#8221;;<\/em><\/p>\n<p><em>\u00a0 var serverGuid := cast(Guid, p_guid);<\/em><\/p>\n<p><em>\u00a0 if (not isNull(serverGuid))<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 r_serverName := serverName(serverGuid);<\/em><\/p>\n<p><em>\u00a0 result.SERVER_NAME := r_serverName;<\/em><\/p>\n<p><em>} <\/em><\/div><\/section>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\"> <strong>Zapytanie o nazw\u0119 serwera w JavaScript<\/strong><\/p>\n<p>Poni\u017cszy przyk\u0142ad z definicji dzia\u0142ania <em>help.js.getServerName<\/em> zapisanej w JavaScript okre\u015bla nazw\u0119 serwera aplikacji:<\/p>\n<p><em>function create()<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 var serverInfo = Java.type(&#8222;com.cisag.pgm.util.ServerInfo&#8221;); <\/em><\/p>\n<p><em>\u00a0 result.NAME = serverInfo.getSVMName();<\/em><\/p>\n<p><em>}<\/em> <\/div><\/section>\n<h5 id=\"systemname\" ><span class=\"ez-toc-section\" id=\"systemName\"><\/span>systemName<span class=\"ez-toc-section-end\"><\/span><\/h5>\n<table style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\">\n<tbody>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Nazwa<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>systemName<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Opis<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>systemName<\/em> zwraca nazw\u0119 systemu.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Podpisy<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>String systemName(Guid system)<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Parametry<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>system <\/em>to identyfikator systemu.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Wynik<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Nazwa systemu w czytelnej formie jako ci\u0105g znak\u00f3w.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>\u0179r\u00f3d\u0142a b\u0142\u0119d\u00f3w<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Brak.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Przyk\u0142ady<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>systemName(cast(Guid, &#8222;4200C7558F652A1096A3AD1BA8550000&#8221;))<\/em> zwraca <em>ADV600<\/em>.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Kontekst<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>ALL<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Uwagi<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Identyfikator Guid systemu jest wy\u015bwietlany w aplikacji <em>Panel System<\/em>.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\u00a0<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\">Poni\u017cszy przyk\u0142ad z definicji dzia\u0142ania <em>help.systemName<\/em> zwraca nazw\u0119 systemu:<\/p>\n<p><em>function create()<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 var p_guid := parameters.GUID;<\/em><\/p>\n<p><em>\u00a0 var r_systemName := &#8222;&#8221;;<\/em><\/p>\n<p><em>\u00a0 var systemGuid := cast(Guid, p_guid);<\/em><\/p>\n<p><em>\u00a0 if (not isNull(systemGuid)) <\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 r_systemName := systemName(systemGuid);<\/em><\/p>\n<p><em>\u00a0 result.SYSTEM_NAME := r_systemName;<\/em><\/p>\n<p><em>}<\/em> <\/div><\/section>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\"> <strong>Zapytanie o nazw\u0119 systemu w JavaScript<\/strong><\/p>\n<p>Poni\u017cszy przyk\u0142ad z definicji dzia\u0142ania <em>help.js.getSystemName<\/em> utworzonej w JavaScript okre\u015bla nazw\u0119 bie\u017c\u0105cego systemu:<\/p>\n<p><em>function create()<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 var serverInfo = Java.type(&#8222;com.cisag.pgm.util.ServerInfo&#8221;); <\/em><\/p>\n<p><em>\u00a0 result.NAME = serverInfo.getSystemName();<\/em><\/p>\n<p><em>}<\/em> <\/div><\/section>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\"> <strong>Prefiks tworzenia zapyta\u0144 w JavaScript<\/strong><\/p>\n<p>Poni\u017cszy przyk\u0142ad z definicji dzia\u0142ania <em>help.js.getSystemDevelopmentPrefix<\/em> zapisanej w JavaScript okre\u015bla prefiks rozwoju bie\u017c\u0105cego systemu:<\/p>\n<p><em>function create()<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 var serverInfo = Java.type(&#8222;com.cisag.pgm.util.ServerInfo&#8221;);<\/em><\/p>\n<p><em>\u00a0 result.PREFIX = serverInfo.getSystemDevelopmentPrefix();<\/em><\/p>\n<p><em>}<\/em> <\/div><\/section>\n<h5 id=\"versionstring\" ><span class=\"ez-toc-section\" id=\"versionString\"><\/span>versionString<span class=\"ez-toc-section-end\"><\/span><\/h5>\n<table style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\">\n<tbody>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Nazwa<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>versionString<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Opis<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>versionString<\/em> zwraca wersj\u0119 obiektu deweloperskiego.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Podpisy<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>String versionString(Guid versionGuid)<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Parametry<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>versionGuid<\/em> to identyfikator wersji obiektu deweloperskiego.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Wynik<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Wersja obiektu deweloperskiego w czytelnej formie jako ci\u0105g znak\u00f3w.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>\u0179r\u00f3d\u0142a b\u0142\u0119d\u00f3w<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Brak<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Przyk\u0142ady<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>versionString(versionGuid)<\/em> zwraca wersj\u0119 obiektu deweloperskiego z identyfikatorem wersji <em>versionGuid<\/em>.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Kontekst<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>ALL<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Uwagi<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Dane opisowe wszystkich obiekt\u00f3w deweloperskich s\u0105 przechowywane w bazie danych repozytorium.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\u00a0<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\">Poni\u017cszy przyk\u0142ad z definicji dzia\u0142ania <em>help.versionString<\/em> zwraca wersj\u0119 obiektu deweloperskiego:<\/p>\n<p><em>function create()<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 var p_guid := parameters.GUID;<\/em><\/p>\n<p><em>\u00a0 var r_versionString := &#8222;&#8221;;<\/em><\/p>\n<p><em>\u00a0 var versionGuid := cast(Guid, p_guid);<\/em><\/p>\n<p><em>\u00a0 if (not isNull(versionGuid)) <\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 r_versionString := versionString(versionGuid);<\/em><\/p>\n<p><em>\u00a0 result.VERSION_STRING := r_versionString;<\/em><\/p>\n<p><em>}<\/em> <\/div><\/section>\n<h4 id=\"funkcje-wiadomosci-message-functions\" ><span class=\"ez-toc-section\" id=\"Funkcje_wiadomosci_Message_functions\"><\/span>Funkcje wiadomo\u015bci (Message functions)<span class=\"ez-toc-section-end\"><\/span><\/h4>\n<p>Funkcje komunikat\u00f3w mog\u0105 by\u0107 u\u017cywane do informowania u\u017cytkownika o okre\u015blonych zdarzeniach lub statusach w aplikacji dialogowej. Dost\u0119pne s\u0105 nast\u0119puj\u0105ce funkcje komunikat\u00f3w:<\/p>\n<ul>\n<li><strong>popProgramMessagePath<\/strong><\/li>\n<li><strong>pushProgramMessagePath<\/strong><\/li>\n<li><strong>sendMessage<\/strong><\/li>\n<li><strong>setProgramMessageGroup<\/strong><\/li>\n<li><strong>setProgramMessageId<\/strong><\/li>\n<\/ul>\n<p>Komunikaty s\u0105 wy\u015bwietlane na pasku stanu i w zak\u0142adce <em>Informacje<\/em>. Mo\u017cliwe jest wskazanie odniesienia komunikatu do elementu GUI (np. pola wej\u015bciowego) poprzez oznaczenie elementu GUI odpowiednim rogiem komunikatu. Kolejka komunikat\u00f3w, kt\u00f3ra jest dostarczana przez mened\u017cera komunikat\u00f3w, s\u0142u\u017cy do zarz\u0105dzania komunikatami wysy\u0142anymi przez aplikacj\u0119.<\/p>\n<p>Wiadomo\u015b\u0107 mo\u017ce zawiera\u0107 identyfikatory, za pomoc\u0105 kt\u00f3rych mo\u017cna j\u0105 powi\u0105za\u0107 z okre\u015blonym polem lub okre\u015blonym obiektem. Te identyfikatory to:<\/p>\n<ul>\n<li><strong>Grupa wiadomo\u015bci<\/strong> \u2013 zazwyczaj jest to obiekt i cz\u0119sto odpowiada wierszowi w listach, tabelach lub edytorach pozycji.<\/li>\n<li><strong>\u015acie\u017cka komunikatu<\/strong> \u2013 zazwyczaj jest to kategoria lub widok.<\/li>\n<li><strong>Identyfikator wiadomo\u015bci<\/strong> \u2013 zazwyczaj jest to pole.<\/li>\n<\/ul>\n<p>Komunikat jest dodawany do kolejki komunikat\u00f3w tylko wtedy, gdy nie zawiera ju\u017c komunikatu o tej samej klasie komunikat\u00f3w, numerze komunikatu itp. Umo\u017cliwia to na przyk\u0142ad potwierdzanie komunikat\u00f3w typu ostrze\u017cenie. S\u0142u\u017cy to na przyk\u0142ad do potwierdzania komunikat\u00f3w typu sstrze\u017cenie. Mog\u0105 one zosta\u0107 potwierdzone przez u\u017cytkownika za pomoc\u0105 pola wyboru i pozosta\u0107 w kolejce wiadomo\u015bci. Je\u015bli ostrze\u017cenie o tym samym identyfikatorze zostanie wys\u0142ane ponownie (tj. niepotwierdzone), nie b\u0119dzie ju\u017c uwzgl\u0119dniane w kolejce wiadomo\u015bci.<\/p>\n<p>Znaki zast\u0119pcze mog\u0105 by\u0107 u\u017cywane do dostosowywania wiadomo\u015bci lub d\u0142ugiego tekstu. Symbol zast\u0119pczy jest reprezentowany przez liczb\u0119 w nawiasach klamrowych. Wiadomo\u015b\u0107 mo\u017ce zawiera\u0107 maksymalnie dziesi\u0119\u0107 r\u00f3\u017cnych symboli zast\u0119pczych.<\/p>\n<p>Podczas korzystania z symboli zast\u0119pczych nale\u017cy upewni\u0107 si\u0119, \u017ce s\u0105 one przeznaczone wy\u0142\u0105cznie do danych takich jak identyfikacja partnera. Rzeczywisty tekst wiadomo\u015bci jest zapisywany w bazie danych. Gwarantuje to, \u017ce teksty komunikat\u00f3w pozostan\u0105 przet\u0142umaczone i b\u0119d\u0105 wy\u015bwietlane w j\u0119zyku wybranym przez u\u017cytkownika. W zwi\u0105zku z tym nale\u017cy zarejestrowa\u0107 kilka komunikat\u00f3w, nawet je\u015bli wyst\u0119puj\u0105 niewielkie odchylenia w tek\u015bcie komunikatu. Poniewa\u017c dost\u0119pna przestrze\u0144 jest ograniczona, tekst komunikatu nie powinien by\u0107 zbyt d\u0142ugi. D\u0142ugi tekst jest dost\u0119pny do dalszych wyja\u015bnie\u0144 lub notatek.<\/p>\n<h5 id=\"popprogrammessagepath\" ><span class=\"ez-toc-section\" id=\"popProgramMessagePath\"><\/span>popProgramMessagePath<span class=\"ez-toc-section-end\"><\/span><\/h5>\n<table style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\">\n<tbody>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Nazwa<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>popProgramMessagePath<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Opis<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>popProgramMessagePath<\/em> usuwa najnowsz\u0105 \u015bcie\u017ck\u0119 ze \u015bcie\u017cki wiadomo\u015bci programu.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Podpisy<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>popProgramMessagePath()<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Parametry<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Brak.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Wynik<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Usuwa najnowsz\u0105 \u015bcie\u017ck\u0119 ze \u015bcie\u017cki wiadomo\u015bci programu.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>\u0179r\u00f3d\u0142a b\u0142\u0119d\u00f3w<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Brak.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Przyk\u0142ady<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>popProgramMessagePath()<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Kontekst<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>ALL<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Uwagi<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>\u015acie\u017cka komunikat\u00f3w programu jest u\u017cywana podczas ponownego u\u017cycia komponent\u00f3w GUI w aplikacji interaktywnej w celu jednoznacznej identyfikacji element\u00f3w GUI komponent\u00f3w w r\u00f3\u017cnych zastosowaniach. \u015acie\u017cka komunikat\u00f3w programu sk\u0142ada si\u0119 z kilku element\u00f3w analogicznych do stosu.<\/p>\n<p>Wi\u0119cej informacji na temat komunikat\u00f3w mo\u017cna znale\u017a\u0107 w <em>Podr\u0119czniku programowania<\/em>.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>pushProgramMessagePath<\/em><\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h5 id=\"pushprogrammessagepath\" ><span class=\"ez-toc-section\" id=\"pushProgramMessagePath\"><\/span>pushProgramMessagePath<span class=\"ez-toc-section-end\"><\/span><\/h5>\n<table style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\">\n<tbody>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Nazwa<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>pushProgramMessagePath<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Opis<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>pushProgramMessagePath<\/em> dodaje now\u0105 \u015bcie\u017ck\u0119 do \u015bcie\u017cki wiadomo\u015bci programu.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Podpisy<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>pushProgramMessagePath(String path)<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Parametry<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>path<\/em> to \u015bcie\u017cka, kt\u00f3ra ma zosta\u0107 dodana do \u015bcie\u017cki komunikatu programu.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Wynik<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Dodaje \u015bcie\u017ck\u0119 <em>path<\/em> do \u015bcie\u017cki wiadomo\u015bci programu.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>\u0179r\u00f3d\u0142a b\u0142\u0119d\u00f3w<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Brak.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Przyk\u0142ady<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>pushProgramMessagePath(&#8222;PATH&#8221;)<\/em> dodaje \u015bcie\u017ck\u0119 <em>PATH<\/em> do \u015bcie\u017cki komunikatu programu.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Kontekst<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>ALL<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Uwagi<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>\u015acie\u017cka komunikat\u00f3w programu jest u\u017cywana podczas ponownego u\u017cycia komponent\u00f3w GUI w aplikacji interaktywnej w celu jednoznacznej identyfikacji element\u00f3w GUI komponent\u00f3w w r\u00f3\u017cnych zastosowaniach. \u015acie\u017cka komunikat\u00f3w programu sk\u0142ada si\u0119 z kilku element\u00f3w analogicznych do zestawu.<\/p>\n<p>Wi\u0119cej informacji na temat komunikat\u00f3w mo\u017cna znale\u017a\u0107 w artykule <em>Podr\u0119cznik programowania<\/em>.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>popProgramMessagePath<\/em><\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h5 id=\"sendmessage\" ><span class=\"ez-toc-section\" id=\"sendMessage\"><\/span>sendMessage<span class=\"ez-toc-section-end\"><\/span><\/h5>\n<table style=\"border-style: outset; border-color: #000000; background-color: #ffffff; width: 100%; height: 2656px;\">\n<tbody>\n<tr style=\"height: 68px;\">\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"132\">\n<p>Nazwa<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"406\">\n<p>sendMessage<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 68px;\">\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"132\">\n<p>Opis<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"406\">\n<p><em>sendMessage<\/em> wysy\u0142a wiadomo\u015b\u0107 do kolejki wiadomo\u015bci.<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 269px;\">\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 269px;\" width=\"132\">\n<p>Podpisy<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 269px;\" width=\"406\">\n<p><em>sendMessage(Unknown path, String message)<\/em><\/p>\n<p><em>sendMessage(Unknown path, String message, String p1)<\/em><\/p>\n<p><em>sendMessage(Unknown path, String message, String p1, String p2)<\/em><\/p>\n<p><em>sendMessage(Unknown path, String message, String p1, String p2, String p3)<\/em><\/p>\n<p><em>sendMessage(Unknown path, String message, String[] parameterList)<\/em><\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 349px;\">\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 349px;\" width=\"132\">\n<p>Parametry<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 349px;\" width=\"406\">\n<p><em>path <\/em>to \u015bcie\u017cka dost\u0119pu do atrybutu widoku obiektu.<\/p>\n<p><em>message<\/em> jest identyfikatorem pojedynczego komunikatu. Je\u015bli nie ma indywidualnego komunikatu z identyfikatorem <em>message<\/em>, komunikat jest wysy\u0142any z klas\u0105 komunikatu i numerem komunikatu zgodnie z <em>message<\/em>.<\/p>\n<p><em>p1, p2 <\/em>i <em>p3<\/em> to maksymalnie trzy parametry, kt\u00f3re zast\u0119puj\u0105 wszelkie symbole zast\u0119pcze w wiadomo\u015bci konkretnymi warto\u015bciami.<\/p>\n<p><em>parameterList <\/em>to lista z dowoln\u0105 liczb\u0105 parametr\u00f3w dla symboli zast\u0119pczych wiadomo\u015bci.<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 529px;\">\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 529px;\" width=\"132\">\n<p>Wynik<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 529px;\" width=\"406\">\n<p>Wy\u015bwietla komunikat <em>message<\/em>.<\/p>\n<p>Je\u015bli komunikat jest wysy\u0142any w indywidualnej kontroli w funkcjach <em>validate<\/em> i <em>validatePostcondition<\/em> lub gdy proces jest uruchamiany r\u0119cznie, komunikat mo\u017ce by\u0107 wy\u015bwietlany na okre\u015blonym elemencie GUI. Element GUI jest identyfikowany za pomoc\u0105 nast\u0119puj\u0105cych w\u0142a\u015bciwo\u015bci:<\/p>\n<ul>\n<li>\u015acie\u017cka widoku obiektu (parametr <em>path<\/em>)<\/li>\n<li>Identyfikator komunikatu programu (parametr <em>path<\/em> lub funkcja <em>setProgrammMessageId<\/em>)<\/li>\n<li>Grupa komunikat\u00f3w programu (przy u\u017cyciu funkcji <em>setProgrammMessageGroup<\/em>)<\/li>\n<li>\u015acie\u017cka komunikatu programu (przy u\u017cyciu funkcji push<em>ProgrammMessagePath<\/em>)<\/li>\n<\/ul>\n<p>Je\u015bli <em>path<\/em> ma warto\u015b\u0107 zero, komunikat jest wysy\u0142any bez odniesienia do elementu GUI.<\/p>\n<p>Je\u015bli wiadomo\u015b\u0107 zostanie wys\u0142ana w ramach dzia\u0142ania workflow, zostanie ona zapisana w dzienniku wiadomo\u015bci odpowiedniej bazy danych.<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 133px;\">\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 133px;\" width=\"132\">\n<p>\u0179r\u00f3d\u0142a b\u0142\u0119d\u00f3w<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 133px;\" width=\"406\">\n<p>Nieprawid\u0142owy komunikat w indywidualnej kontroli lub definicji dzia\u0142ania mo\u017ce oznacza\u0107, \u017ce obiekt biznesowy nie mo\u017ce zosta\u0107 zmieniony lub dzia\u0142anie nie mo\u017ce zosta\u0107 zako\u0144czone.<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 953px;\">\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 953px;\" width=\"132\">\n<p>Przyk\u0142ady<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 953px;\" width=\"406\">\n<p><em>sendMessage(null, &#8222;ERROR&#8221;, &#8222;Permission denied.&#8221;)<\/em> wysy\u0142a indywidualny komunikat <em>WARNING<\/em> z nieprzet\u0142umaczalnym tekstem jako parametrem i bez wy\u015bwietlania komunikatu na atrybucie.<\/p>\n<p><em>sendMessage(null, &#8222;WFL-00024&#8221;, list())<\/em> wysy\u0142a indywidualny komunikat <em>WFL-00024<\/em> bez parametr\u00f3w i bez wy\u015bwietlania komunikatu dla atrybutu. Je\u015bli indywidualny komunikat nie istnieje, wysy\u0142any jest komunikat systemowy <em>com.cisag.sys.workflow.00024<\/em>.<\/p>\n<p><em>sendMessage(persistent:number, &#8222;SAL-X0001&#8221;, list(valueSetDescription(&#8222;com.cisag.app.general.OrderStatus&#8221;, current:status))<\/em> wy\u015bwietla indywidualn\u0105 wiadomo\u015b\u0107 dla atrybutu status&#8221; widoku obiektu <em>current <\/em>pojedynczej kontroli. Opis przysz\u0142ego statusu sprawdzanego obiektu biznesowego w bie\u017c\u0105cym j\u0119zyku wy\u015bwietlania jest przekazywany jako parametr.<\/p>\n<p><em>sendMessage(results.RESULT_id, &#8222;WFL-0001&#8221;, list(results.RESULT))<\/em> wy\u015bwietla indywidualn\u0105 wiadomo\u015b\u0107 w polu dla wyniku dzia\u0142ania o nazwie <em>RESULT<\/em> w dzia\u0142aniu. Warto\u015b\u0107 pola jest przekazywana jako parametr.<\/p>\n<p><em>sendMessage(extension.RESULT_id, &#8222;GEN-0001&#8221;, extension.RESULT_val)<\/em> wy\u015bwietla indywidualn\u0105 wiadomo\u015b\u0107 w indywidualnym sprawdzeniu dla dodatkowego pola <em>RESULT<\/em> jednostki biznesowej.<\/p>\n<p><em>sendMessage(new(DataView(com.cisag.app.<\/em><em>general.partner.model.Partner)):searchString, &#8222;GEN-X00001&#8221;, list())<\/em> wy\u015bwietla indywidualn\u0105 wiadomo\u015b\u0107 dotycz\u0105c\u0105 wyszukiwanego terminu partnera w dzia\u0142aniu, kt\u00f3re jest powi\u0105zane z aplikacj\u0105 <em>com.cisag.app.general.partner.ui.PartnerMaintenance<\/em>.<\/p>\n<p><em>sendMessage(new(DataView(com.cisag.app.<\/em><em>general.partner.model.Partner))-&gt;AddressData:country, &#8222;GEN-X00001&#8221;, list())<\/em> wy\u015bwietla indywidualn\u0105 wiadomo\u015b\u0107 w kraju danych adresowych partnera w dzia\u0142aniu powi\u0105zanym z aplikacj\u0105 <em>com.cisag.app.general.partner.ui.PartnerMaintenance<\/em>.<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 68px;\">\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"132\">\n<p>Kontekst<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"406\">\n<p><em>ALL<\/em><\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 151px;\">\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 151px;\" width=\"132\">\n<p>Uwagi<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 151px;\" width=\"406\">\n<p>Poszczeg\u00f3lne wiadomo\u015bci mo\u017cna wprowadza\u0107 w aplikacji <em>Indywidualne komunikaty<\/em>.<\/p>\n<p>Wi\u0119cej informacji na temat komunikat\u00f3w mo\u017cna znale\u017a\u0107 w artykule <em>Podr\u0119cznik programowania<\/em>.<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 68px;\">\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"132\">\n<p>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff; height: 68px;\" width=\"406\">\u00a0<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h5 id=\"setprogrammessagegroup\" ><span class=\"ez-toc-section\" id=\"setProgramMessageGroup\"><\/span>setProgramMessageGroup<span class=\"ez-toc-section-end\"><\/span><\/h5>\n<table style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\">\n<tbody>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Nazwa<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>setProgramMessageGroup<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Opis<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>setProgramMessageGroup<\/em> ustawia grup\u0119 komunikat\u00f3w programu.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Podpisy<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>setProgramMessageGroup(String group)<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Parametry<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>group<\/em> to grupa wiadomo\u015bci programu.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Wynik<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Ustawia grup\u0119 komunikat\u00f3w programu na <em>group<\/em>.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>\u0179r\u00f3d\u0142a b\u0142\u0119d\u00f3w<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Brak.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Przyk\u0142ady<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>setProgramMessageGroup(objectGuid)<\/em> ustawia grup\u0119 komunikat\u00f3w programu w indywidualnej kontroli aplikacji tabeli na Guid obiektu biznesowego przechowywanego w zmiennej <em>objectGuid<\/em>.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Kontekst<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>ALL<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Uwagi<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>W przypadku tabel ustawienie odpowiednich naro\u017cnik\u00f3w dla komunikat\u00f3w w polach tabeli jest nieco bardziej z\u0142o\u017cone. Je\u015bli komunikat ma zosta\u0107 wys\u0142any dla okre\u015blonego pola w tabeli, mened\u017cer komunikat\u00f3w musi zosta\u0107 poinformowany o polu, dla kt\u00f3rego ma zosta\u0107 wy\u015bwietlony naro\u017cnik komunikatu. W tym celu u\u017cywana jest funkcja <em>setProgramMessageGroup(),<\/em> kt\u00f3ra przekazuje do mened\u017cera komunikat\u00f3w ci\u0105g znak\u00f3w identyfikuj\u0105cy wiersz tabeli. Odpowiedni identyfikator komunikatu jest nast\u0119pnie ustawiany w mened\u017cerze komunikat\u00f3w za pomoc\u0105 funkcji <em>setProgramMessageId().<\/em> Guid obiektu biznesowego wy\u015bwietlanego na przyk\u0142ad w wierszu tabeli, kt\u00f3ry jest konwertowany na ci\u0105g znak\u00f3w, jest odpowiedni do utworzenia unikalnego ci\u0105gu znak\u00f3w dla funkcji <em>setProgramMessageGroup().<\/em><\/p>\n<p>Wi\u0119cej informacji na temat komunikat\u00f3w mo\u017cna znale\u017a\u0107 w artykule <em>Podr\u0119cznik programowania<\/em>.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>setProgramMessageId<\/em><\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h5 id=\"setprogrammessageid\" ><span class=\"ez-toc-section\" id=\"setProgramMessageId\"><\/span>setProgramMessageId<span class=\"ez-toc-section-end\"><\/span><\/h5>\n<table style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\">\n<tbody>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Nazwa<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>setProgramMessageId<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Opis<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>setProgramMessageId<\/em> ustawia identyfikator komunikatu programu.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Podpisy<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>setProgramMessageId(String id)<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Parametry<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>id<\/em> to identyfikator komunikatu programu.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Wynik<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Ustawia identyfikator komunikatu programu na <em>id<\/em>.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>\u0179r\u00f3d\u0142a b\u0142\u0119d\u00f3w<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Brak.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Przyk\u0142ady<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>setProgramMessageId(&#8222;<\/em><em>CODE&#8221;)<\/em> ustawia identyfikator komunikatu programu na <em>CODE<\/em>.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Kontekst<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>ALL<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Uwagi<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>W przypadku tabel ustawienie odpowiednich naro\u017cnik\u00f3w dla komunikat\u00f3w w polach tabeli jest nieco bardziej z\u0142o\u017cone. Je\u015bli komunikat ma zosta\u0107 wys\u0142any dla okre\u015blonego pola w tabeli, mened\u017cer komunikat\u00f3w musi zosta\u0107 poinformowany o polu, dla kt\u00f3rego ma zosta\u0107 wy\u015bwietlony naro\u017cnik komunikatu. Aby to zrobi\u0107, funkcja <em>setProgramMessageGroup()<\/em> jest u\u017cywana do przekazania \u0142a\u0144cucha znak\u00f3w identyfikuj\u0105cego wiersz do mened\u017cera komunikat\u00f3w. Odpowiedni identyfikator komunikatu jest nast\u0119pnie ustawiany w mened\u017cerze komunikat\u00f3w za pomoc\u0105 funkcji <em>setProgramMessageId().<\/em><\/p>\n<p>Identyfikatory komunikat\u00f3w s\u0105 rejestrowane w przyk\u0142adowych polach GUI tabeli. Pola w kolumnie s\u0105 kopiami pola szablonu GUI przypisanego do kolumny. Oznacza to, \u017ce odpowiedni identyfikator komunikatu jest r\u00f3wnie\u017c przypisany do tych p\u00f3l GUI.<\/p>\n<p>Wi\u0119cej informacji na temat komunikat\u00f3w mo\u017cna znale\u017a\u0107 w artykule <em>Podr\u0119cznik programowania<\/em>.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>setProgramMessageGroup<\/em><\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h4 id=\"funkcje-dla-wartosci-zerowych-null-functions\" ><span class=\"ez-toc-section\" id=\"Funkcje_dla_wartosci_zerowych_Null_functions\"><\/span>Funkcje dla warto\u015bci zerowych (Null functions)<span class=\"ez-toc-section-end\"><\/span><\/h4>\n<p>Funkcje dla warto\u015bci <em>null<\/em> mog\u0105 by\u0107 u\u017cywane do sprawdzania, czy wyra\u017cenie lub zmienna ma warto\u015b\u0107 <em>null<\/em>. Funkcje dla warto\u015bci <em>null <\/em>obejmuj\u0105:<\/p>\n<ul>\n<li><strong>first<\/strong><\/li>\n<li><strong>isNull<\/strong><\/li>\n<\/ul>\n<h5 id=\"first\" ><span class=\"ez-toc-section\" id=\"first\"><\/span>first<span class=\"ez-toc-section-end\"><\/span><\/h5>\n<table style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\">\n<tbody>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Nazwa<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>first<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Opis<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>first <\/em>zwraca warto\u015b\u0107 pierwszego parametru, kt\u00f3ry nie jest zerem.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Podpisy<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>Unknown first(Unknown p1, Unknown p2,&#8230;,Unknown pN)<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Parametry<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>p1, p2,&#8230;, p3<\/em> to wyra\u017cenia, kt\u00f3re maj\u0105 by\u0107 sprawdzane pod k\u0105tem warto\u015bci zero.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Wynik<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Funkcja zwraca wynik pierwszego wyra\u017cenia, kt\u00f3re nie jest <em>null<\/em>.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>\u0179r\u00f3d\u0142a b\u0142\u0119d\u00f3w<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Je\u015bli wszystkie parametry maj\u0105 warto\u015b\u0107 <em>null<\/em>, zwracana jest warto\u015b\u0107 <em>null<\/em>.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Przyk\u0142ady<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>first(null, 1)<\/em> zwraca 1 z typem danych <em>Unknown<\/em>.<\/p>\n<p><em>cast(Number, first(null, 1))<\/em> zwraca liczb\u0119 1.<\/p>\n<p><em>first(parameters.object:updateInfo.updateUser, parameters.object:updateInfo.createUser)<\/em> zwraca u\u017cytkownika, kt\u00f3ry ostatnio zmieni\u0142 odwo\u0142any obiekt biznesowy. Je\u015bli obiekt biznesowy nigdy nie zosta\u0142 zmieniony, zwracany jest jego tw\u00f3rca.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Kontekst<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>ALL<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Uwagi<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Warto\u015b\u0107 zero odpowiada warto\u015bci niezdefiniowanej. Warto\u015b\u0107 mo\u017ce by\u0107 niezdefiniowana, na przyk\u0142ad, je\u015bli w funkcji wyst\u0105pi\u0142 b\u0142\u0105d. Prawie wszystkie funkcje zwracaj\u0105 <em>null<\/em> jako wynik, je\u015bli jednym z parametr\u00f3w wej\u015bciowych jest <em>null<\/em>. Cz\u0119sto jednak konieczna jest oddzielna obs\u0142uga stan\u00f3w b\u0142\u0119d\u00f3w. Z tego powodu funkcje specjalne <em>first<\/em> i <em>isNul<\/em>l mog\u0105 by\u0107 r\u00f3wnie\u017c u\u017cywane do oceny warto\u015bci <em>null<\/em>.<\/p>\n<p>Poniewa\u017c wynik funkcji <em>first<\/em> jest typu danych <em>Unknown<\/em>, zwykle trzeba przekonwertowa\u0107 go na inny typ danych za pomoc\u0105 funkcji <em>cast,<\/em> zanim b\u0119dzie mo\u017cna go u\u017cy\u0107.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>isNull<\/em><\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\">Poni\u017cszy przyk\u0142ad z definicji dzia\u0142ania<em> help.isNull <\/em>okre\u015bla pracownika odpowiedzialnego za partnera. Je\u015bli \u017caden odpowiedzialny pracownik nie zosta\u0142 zdefiniowany dla partnera, u\u017cytkownik, kt\u00f3ry ostatnio zmieni\u0142 partnera, jest uwa\u017cany za odpowiedzialnego. Je\u015bli partner nigdy nie zosta\u0142 zmieniony, osoba, kt\u00f3ra utworzy\u0142a partnera, jest uwa\u017cana za odpowiedzialn\u0105.<\/p>\n<p><em>function create()<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 var p_partner := loadPartner(parameters.PARTNER);<\/em><\/p>\n<p><em>\u00a0 var r_responsible as Unknown;<\/em><\/p>\n<p><em>\u00a0 if (not isNull(p_partner)) <\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 r_responsible := <\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0 first(loadResponsibleOfPartner(p_partner:guid):number, <\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 userName(p_partner:updateInfo.updateUser),<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 userName(p_partner:updateInfo.createUser));<\/em><\/p>\n<p><em>\u00a0 result.IS_NULL := isNull(r_responsible);<\/em><\/p>\n<p><em>\u00a0 result.VALUE := cast(String, r_responsible);<\/em><\/p>\n<p><em>} <\/em><\/div><\/section>\n<p>Funkcji <em>first<\/em> nale\u017cy u\u017cywa\u0107 na przyk\u0142ad w nast\u0119puj\u0105cych przypadkach:<\/p>\n<ul>\n<li>Je\u015bli funkcja j\u0119zyka skryptowego systemu mo\u017ce zwraca\u0107 warto\u015b\u0107 zero, tak jak w przypadku funkcji <em>loadResponsibleOfPartner<\/em>.<\/li>\n<li>Je\u015bli istnieje warto\u015b\u0107 zast\u0119pcza dla wyra\u017cenia, kt\u00f3re mo\u017ce przyj\u0105\u0107 warto\u015b\u0107 zero, np. dla atrybut\u00f3w <em>updateUser<\/em> i <em>updateInfo.createUser<\/em> obiektu biznesowego.<\/li>\n<\/ul>\n<section class=\"document-alert-box warning\"><div class=\"document-alert-title\">Uwaga<\/div><div class=\"document-alert-content\">Aby okre\u015bli\u0107 czas ostatniej zmiany obiektu biznesowego, mo\u017cna u\u017cy\u0107 <em>max(p:updateInfo.updateTime, p:updateInfo.createTime)<\/em><em>,<\/em> poniewa\u017c <em>UNDEFINED_DATE<\/em> jest mniejsza ni\u017c wszystkie inne czasy.<\/div><\/section>\n<ul>\n<li>Aby ustawi\u0107 warto\u015bci domy\u015blne dla opcjonalnych danych wprowadzanych przez u\u017cytkownika w wynikach dzia\u0142ania.<\/li>\n<\/ul>\n<h5 id=\"isnull\" ><span class=\"ez-toc-section\" id=\"isNull\"><\/span>isNull<span class=\"ez-toc-section-end\"><\/span><\/h5>\n<table style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\">\n<tbody>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Nazwa<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>isNull<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Opis<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>isNull <\/em>sprawdza, czy warto\u015b\u0107 jest<em> null<\/em>.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Podpisy<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>Boolean isNull(Unknown p)<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Parametry<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>p<\/em> to wyra\u017cenie, kt\u00f3re mo\u017ce mie\u0107 warto\u015b\u0107 zero.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Wynik<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>true<\/em>, je\u015bli <em>p<\/em> ma warto\u015b\u0107 <em>zero<\/em>, w przeciwnym razie <em>false<\/em>.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>\u0179r\u00f3d\u0142a b\u0142\u0119d\u00f3w<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Brak<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Przyk\u0142ady<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>isNull(null)<\/em> zwraca warto\u015b\u0107 <em>true<\/em>.<\/p>\n<p><em>isNull(3)<\/em> zwraca warto\u015b\u0107 <em>false<\/em>.<\/p>\n<p><em>isNull(loadResponsibleOfPartner(parameters.object:guid))<\/em> zwraca <em>true<\/em>, je\u015bli odpowiedzialny pracownik jest przechowywany dla partnera, do kt\u00f3rego si\u0119 odwo\u0142uje, w przeciwnym razie <em>false<\/em>.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Kontekst<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>ALL<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Uwagi<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Funkcji <em>isNull<\/em> nale\u017cy u\u017cywa\u0107 na przyk\u0142ad w nast\u0119puj\u0105cych przypadkach:<\/p>\n<p>\u00b7\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 Je\u015bli funkcja j\u0119zyka skryptowego systemu mo\u017ce zwraca\u0107 warto\u015b\u0107 zero, tak jak w przypadku funkcji <em>loadPartner<\/em>.<\/p>\n<p>\u00b7\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 Je\u015bli atrybut obiektu biznesowego mo\u017ce mie\u0107 warto\u015b\u0107 zero, np. poniewa\u017c specyfikacja jest opcjonalna, np. atrybut osoby odpowiedzialnej zam\u00f3wienia sprzeda\u017cy lub zam\u00f3wienia.<\/p>\n<section class=\"document-alert-box warning\"><div class=\"document-alert-title\">Uwaga<\/div><div class=\"document-alert-content\">Je\u015bli Guid nie mo\u017ce mie\u0107 warto\u015bci zero, ale nadal jest niezdefiniowany, u\u017cywana jest warto\u015b\u0107 ZERO_GUID. Dzieje si\u0119 tak na przyk\u0142ad, gdy Guid jest cz\u0119\u015bci\u0105 klucza g\u0142\u00f3wnego.<\/div><\/section>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>first<\/em><\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\">Poni\u017cszy przyk\u0142ad z definicji dzia\u0142ania <em>help.isNull<\/em> sprawdza, czy partner o parametrach <em>parameters.PARTNER<\/em> istnieje.<\/p>\n<p><em>function create()<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 var p_partner := loadPartner(parameters.PARTNER);<\/em><\/p>\n<p><em>\u00a0 var r_value := isNull(p_partner);<\/em><\/p>\n<p><em>\u00a0 result.VALUE := r_value;<\/em><\/p>\n<p><em>}<\/em> <\/div><\/section>\n<h4 id=\"inne-funkcje-miscellaneous-functions\" ><span class=\"ez-toc-section\" id=\"Inne_funkcje_Miscellaneous_functions\"><\/span>Inne funkcje (Miscellaneous functions)<span class=\"ez-toc-section-end\"><\/span><\/h4>\n<p>Pozosta\u0142e funkcje dotycz\u0105 przede wszystkim element\u00f3w j\u0119zyka skryptowego systemu i wykonywania skrypt\u00f3w. Pozosta\u0142e funkcje obejmuj\u0105<\/p>\n<ul>\n<li><strong>call<\/strong><\/li>\n<li><strong>cast<\/strong><\/li>\n<li><strong>echo<\/strong><\/li>\n<li><strong>hashMap<\/strong><\/li>\n<li><strong>import<\/strong><\/li>\n<li><strong>if<\/strong><\/li>\n<li><strong>load<\/strong><\/li>\n<li><strong>sendMail<\/strong><\/li>\n<li><strong>new<\/strong><\/li>\n<\/ul>\n<h5 id=\"call\" ><span class=\"ez-toc-section\" id=\"call\"><\/span>call<span class=\"ez-toc-section-end\"><\/span><\/h5>\n<table style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\">\n<tbody>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Nazwa<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>call<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Opis<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>call<\/em> wywo\u0142uje definicj\u0119 dzia\u0142ania typu <em>Wywo\u0142anie funkcji<\/em>.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Podpisy<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>HashMap call(String activityDefinition, HashMap parameters)<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Parametry<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>activityDefinition<\/em> to nazwa definicji dzia\u0142ania typu <em>Wywo\u0142anie funkcji<\/em><\/p>\n<p><em>parameters<\/em> to tablica skr\u00f3t\u00f3w z wpisem dla ka\u017cdego parametru definicji dzia\u0142ania. Parametry s\u0105 posortowane alfabetycznie.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Wynik<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>HashMap<\/em> z wpisem dla ka\u017cdego parametru zwrotnego wywo\u0142anej definicji dzia\u0142ania.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>\u0179r\u00f3d\u0142a b\u0142\u0119d\u00f3w<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Podczas wywo\u0142ania, warto\u015b\u0107 musi by\u0107 przypisana do ka\u017cdego parametru wywo\u0142ywanej definicji dzia\u0142ania.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Przyk\u0142ady<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>cast(String, call(&#8222;help.encrypt&#8221;, hashMap(PLAIN_TEXT:=&#8221;Hello world&#8221;, KEY:=&#8221;&#8221;)).VALUE)<\/em> szyfruje tekst <em>Hello world<\/em> przy u\u017cyciu standardowego klucza.<\/p>\n<p><em>cast(Number, call(&#8222;convertToFahrenheit&#8221;, hashMap(CELSIUS:=100)).FAHRENHEIT)<\/em> wywo\u0142uje definicj\u0119 dzia\u0142ania z parametrem o warto\u015bci 100 i konwertuje wynik typu danych <em>Unknown <\/em>na liczb\u0119.<\/p>\n<p><em>@convertToFahrenheit(CELSIUS:=100).FAHRENHEIT<\/em> jest alternatywn\u0105 sk\u0142adni\u0105 dla wywo\u0142ania w poprzednim przyk\u0142adzie.<\/p>\n<p><em>call(&#8222;getTopTenItems&#8221;, hashMap(CUSTOMER:=loadPartner(&#8222;10010&#8221;):number))<\/em> zwraca <em>HashMap<\/em> z numerami artyku\u0142\u00f3w dziesi\u0119ciu najcz\u0119\u015bciej kupowanych artyku\u0142\u00f3w od klienta 10010.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Kontekst<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>ALL<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Uwagi<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Maksymalna g\u0142\u0119boko\u015b\u0107 rekurencji jest ograniczona. Wi\u0119cej informacji mo\u017cna znale\u017a\u0107 w rozdziale <em>Ograniczanie z\u0142o\u017cono\u015bci wyra\u017ce\u0144 <\/em>dokumentu <em>J\u0119zyk skryptowy systemu<\/em>.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Wi\u0119cej informacji na temat alternatywnej sk\u0142adni z <em>@<\/em> mo\u017cna znale\u017a\u0107 w rozdziale <em>Wywo\u0142ywanie definicji dzia\u0142a\u0144<\/em> dokumentu pomocy <em>J\u0119zyk skryptowy systemu<\/em>.<\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\">Poni\u017cszy przyk\u0142ad z definicji dzia\u0142ania <em>help.call<\/em> wywo\u0142uje definicj\u0119 dzia\u0142ania <em>help.encrypt<\/em> w celu zaszyfrowania tekstu. Definicja dzia\u0142ania <em>help.decrypt<\/em> jest nast\u0119pnie wywo\u0142ywana w celu ponownego odszyfrowania zaszyfrowanego tekstu.<\/p>\n<p><em>function create()<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 var p_plainText := parameters.PLAIN_TEXT;<\/em><\/p>\n<p><em>\u00a0 var key := cast(String, newGuid());<\/em><\/p>\n<p><em>\u00a0 var params as HashMap;<\/em><\/p>\n<p><em>\u00a0 params[&#8222;PLAIN_TEXT&#8221;] := p_plainText;<\/em><\/p>\n<p><em>\u00a0 params[&#8222;KEY&#8221;] := key;<\/em><\/p>\n<p><em>\u00a0 var encryptedText := cast(String, call(&#8222;help.encrypt&#8221;, params).VALUE);<\/em><\/p>\n<p><em>\u00a0 params := new(HashMap);<\/em><\/p>\n<p><em>\u00a0 params[&#8222;ENCRYPTED_TEXT&#8221;] := cast(String, encryptedText);<\/em><\/p>\n<p><em>\u00a0 params[&#8222;KEY&#8221;] := key;<\/em><\/p>\n<p><em>\u00a0 var decryptedText := cast(String, call(&#8222;help.decrypt&#8221;, params).VALUE);<\/em><\/p>\n<p><em>\u00a0 result.DECRYPTED_TEXT := decryptedText;<\/em><\/p>\n<p><em>} <\/em><\/div><\/section>\n<h5 id=\"cast\" ><span class=\"ez-toc-section\" id=\"cast\"><\/span>cast<span class=\"ez-toc-section-end\"><\/span><\/h5>\n<table style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\">\n<tbody>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Nazwa<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>cast<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Opis<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>cast<\/em> konwertuje wyra\u017cenie na inny typ danych.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Podpisy<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>String cast(&lt;datatype&gt;, Unknown p)<\/em><\/p>\n<p><em>String[] cast(&lt;datatype&gt;, Unknown p)<\/em><\/p>\n<p><em>Number cast(&lt;datatype&gt;, Unknown p)<\/em><\/p>\n<p>itp.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Parametry<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>p<\/em> to wyra\u017cenie, kt\u00f3re ma zosta\u0107 przekonwertowane na inny typ danych.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Wynik<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Wyra\u017cenie jest konwertowane na typ danych <em>&lt;datatype&gt;.<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>\u0179r\u00f3d\u0142a b\u0142\u0119d\u00f3w<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Nie wszystkie typy danych mog\u0105 by\u0107 konwertowane na siebie nawzajem. W takim przypadku wyst\u0105pi b\u0142\u0105d sk\u0142adniowy.<\/p>\n<p>Zasadniczo wszystkie typy danych mo\u017cna przekonwertowa\u0107 na typ danych <em>Unknown<\/em>. Odwrotna \u015bcie\u017cka od <em>Unknown<\/em> do dowolnego typu danych jest r\u00f3wnie\u017c mo\u017cliwa.<\/p>\n<p>Nast\u0119puj\u0105ce typy danych mog\u0105 by\u0107 konwertowane na ci\u0105g znak\u00f3w: <em>Boolean, Bytes, CisDate, Guid, Number, Timestamp.<\/em><\/p>\n<p>Ponadto ci\u0105g znak\u00f3w mo\u017cna przekonwertowa\u0107 na identyfikator Guid. Obiekt <em>CisObject<\/em> mo\u017cna r\u00f3wnie\u017c przekonwertowa\u0107 na <em>CisObjectReference<\/em> i odwrotnie.<\/p>\n<p>Nast\u0119puj\u0105ce konwersje nie s\u0105 mo\u017cliwe: <em>Timestamp to Number, Boolean to and from Number, CisDate to Timestamp.<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Przyk\u0142ady<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>cast(String, ZERO_GUID)<\/em> zwraca ci\u0105g znak\u00f3w z 32 zerami.<\/p>\n<p><em>cast(Guid, cast(String, ZERO_GUID))<\/em> ponownie daje wynik <em>ZERO_GUID<\/em>.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Kontekst<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>ALL<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Uwagi<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Funkcji <em>cast<\/em> mo\u017cna u\u017cy\u0107 na przyk\u0142ad w nast\u0119puj\u0105cych przypadkach:<\/p>\n<ul>\n<li>Je\u015bli wyra\u017cenie lub funkcja zwraca typ danych <em>Unknown<\/em> jak w przypadku funkcji <em>first <\/em>lub<em> if<\/em>.<\/li>\n<li>Do oceny parametr\u00f3w przekazywanych przez zaprogramowane zdarzenie <em>com.cisag.pgm.workflow.GenericOLTPEvent<\/em>.<\/li>\n<li>Podczas wywo\u0142ywania definicji dzia\u0142ania typu <em>Wywo\u0142anie funkcji<\/em>, kt\u00f3ra zwraca warto\u015b\u0107 typu danych innego ni\u017c <em>String, Number<\/em> lub <em>Timestamp<\/em>.<\/li>\n<li>Ocena wynik\u00f3w zlecenia przetwarzania w w\u0119\u017ale us\u0142ugi.<\/li>\n<\/ul>\n<p>Funkcja <em>toTimestamp<\/em> jest dost\u0119pna do konwersji <em>CisDate<\/em> na <em>Timestamp<\/em>.<\/p>\n<p>Konwersja list nie jest sprawdzana sk\u0142adniowo.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>guidToString, toChartList, toTimestamp<\/em><\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\">Poni\u017cszy przyk\u0142ad z definicji dzia\u0142ania <em>help.cast<\/em> konwertuje <em>CisDate<\/em> i czas na ci\u0105gi znak\u00f3w:<\/p>\n<p><em>function create()<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 var p_today := today();<\/em><\/p>\n<p><em>\u00a0 var p_timestamp := now();<\/em><\/p>\n<p><em>\u00a0 var r_cisDateToString := cast(String, p_today);<\/em><\/p>\n<p><em>\u00a0 var r_timestampToString := cast(String, p_timestamp);<\/em><\/p>\n<p><em>\u00a0 result.VALUE_CISDATE := r_cisDateToString;<\/em><\/p>\n<p><em>\u00a0 result.VALUE_TIMESTAMP := r_timestampToString;<\/em><\/p>\n<p><em>}<\/em> <\/div><\/section>\n<h5 id=\"echo\" ><span class=\"ez-toc-section\" id=\"echo\"><\/span>echo<span class=\"ez-toc-section-end\"><\/span><\/h5>\n<table style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\">\n<tbody>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Nazwa<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>echo<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Opis<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>echo<\/em> wy\u015bwietla sw\u00f3j parametr na konsoli pow\u0142oki narz\u0119dziowej i zwraca warto\u015b\u0107 <em>true<\/em>.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Podpisy<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>Boolean echo(Unknown expression)<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Parametry<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>expression<\/em> to termin lub wyra\u017cenie.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Wynik<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Funkcja <em>echo<\/em> wy\u015bwietla warto\u015b\u0107 <em>expression<\/em> na konsoli pow\u0142oki narz\u0119dzi. Funkcja ta mo\u017ce by\u0107 u\u017cywana na przyk\u0142ad do monitorowania warunk\u00f3w w definicjach dzia\u0142ania. Zwracana warto\u015b\u0107 jest zawsze prawdziwa, nawet je\u015bli parametr ma warto\u015b\u0107 <em>null<\/em>.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>\u0179r\u00f3d\u0142a b\u0142\u0119d\u00f3w<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\u00a0<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Przyk\u0142ady<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>echo(&#8222;A&#8221;)<\/em> wy\u015bwietla <em>ECHO: A<\/em> na konsoli.<\/p>\n<p><em>echo(list(&#8222;A&#8221;, &#8222;B&#8221;, &#8222;C&#8221;, 1, 2, 3))<\/em> wy\u015bwietla <em>ECHO: [[S=A], [S=B], [S=C], [N=1], [N=2], [N=3]] <\/em>na konsoli.<\/p>\n<p><em>echo(hashMap(A:=1, B:=null, C:=day(today()), D:=new(Unknown[3]))))<\/em> wypisuje <em>ECHO: {A=[N=1], B=[103=null], C=[N=13], D=[L=[[103=null], [103=null], [103=null]]} <\/em>na konsoli. Warto\u015b\u0107 klucza 103 oznacza typ danych <em>Unknown<\/em>.<\/p>\n<p><em>echo(loadPartner(&#8222;10010&#8221;))<\/em> wy\u015bwietla <em>ECHO: Partner[10010] <\/em>na konsoli.<\/p>\n<p><em>echo(definition:name)<\/em> wy\u015bwietla nazw\u0119 definicji dzia\u0142ania na konsoli.<\/p>\n<p><em>echo(<\/em><em>activity:code)<\/em> wy\u015bwietla identyfikator (numer) dzia\u0142ania na konsoli.<\/p>\n<p><em>echo(activity-&gt;Process:code)<\/em> i <em>echo(process.Code)<\/em> wy\u015bwietlaj\u0105 identyfikator (numer) procesu na konsoli.<\/p>\n<p><em>echo(&#8222;parameters.object:status=&#8221; + parameters.object:status)<\/em> wy\u015bwietla na konsoli warto\u015b\u0107 atrybutu <em>status<\/em> obiektu biznesowego, do kt\u00f3rego odwo\u0142uje si\u0119 wyra\u017cenie <em>parameters.object<\/em>. W warunku wyra\u017cenie to ma warto\u015b\u0107 <em>true<\/em>.<\/p>\n<p><em>echo(&#8222;Activity definition &#8221; + definition:code + &#8221; evaluated event &#8221; + valueSetName(EventType, event.type) + &#8221; with subtype &#8221; + valueSetName(ObjectChangeType, event.subtype) + &#8221; for &#8221; + objectName(event.guid) + &#8221; &#8221; + parameters.object:number + &#8221; triggered by user &#8221; + userName (parameters.userGuid) + &#8221; in database &#8221; + databaseName(event.database)) + &#8222;.&#8221;<\/em> w warunku przej\u015bcia definicji dzia\u0142ania z definicj\u0105 zdarzenia typu <em>Jednostka biznesowa <\/em>powoduje wy\u015bwietlenie komunikatu <em>ECHO: Activity definition exampleEcho|Start evaluated event TRANSACTION with subtype UPDATE for com.cisag.app.general.obj.Partner 10010 triggered by user JOB in database ADV60010.&#8221; <\/em>w konsoli.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Kontekst<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>ALL<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Uwagi<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Dane wyj\u015bciowe s\u0105 r\u00f3wnie\u017c zapisywane w dzienniku serwera aplikacji, na kt\u00f3rym wykonywana jest funkcja <em>echo<\/em>. Dane wyj\u015bciowe w warunku przej\u015bcia s\u0105 zapisywane w dzienniku serwera aplikacji, kt\u00f3ry przetwarza zdarzenie. Dane wyj\u015bciowe w warunku wst\u0119pnym s\u0105 zapisywane w dzienniku serwera aplikacji, na kt\u00f3rym dzia\u0142a silnik workflow lub harmonogram. Zazwyczaj jest to serwer komunikat\u00f3w.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\u00a0<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\">Poni\u017cszy przyk\u0142ad z definicji dzia\u0142ania <em>help.echo<\/em> wy\u015bwietla tekst na konsoli pow\u0142oki narz\u0119dziowej:<\/p>\n<p><em>function create()<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 echo(parameters.TEXT);<\/em><\/p>\n<p><em>}<\/em> <\/div><\/section>\n<h5 id=\"hashmap\" ><span class=\"ez-toc-section\" id=\"hashMap\"><\/span>hashMap<span class=\"ez-toc-section-end\"><\/span><\/h5>\n<table style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\">\n<tbody>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Nazwa<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>hashMap<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Opis<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>hashMap<\/em> tworzy tablic\u0119 i zwraca j\u0105.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Podpisy<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>hashMap(key1:=value1, key2:=value2,&#8230;,keyN:=valueN)<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Parametry<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>value1, value2,&#8230;, valueN<\/em> to terminy okre\u015blaj\u0105ce warto\u015bci kluczy <em>key1, key2,&#8230;, keyN<\/em> generowanej tablicy. Wszystkie parametry s\u0105 opcjonalne.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Wynik<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Tablica hash z okre\u015blonymi parami klucz-warto\u015b\u0107.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>\u0179r\u00f3d\u0142a b\u0142\u0119d\u00f3w<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Brak.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Przyk\u0142ady<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>hashMap()<\/em> zwraca pust\u0105 tablic\u0119.<\/p>\n<p><em>hashMap(one:=1, two:=2, three:=3)<\/em> zwraca tablic\u0119 hash <em>{one=[N=1], two=[N=2], three=[N=3]}.<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Kontekst<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>ALL<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Uwagi<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\u00a0<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>new<\/em><\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\">Poni\u017cszy przyk\u0142ad z definicji dzia\u0142ania <em>help.hashMap<\/em> wy\u015bwietla tablic\u0119 hash <em>{one=[N=1], two=[N=2], three=[N=3]}<\/em> na konsoli pow\u0142oki narz\u0119dziowej:<\/p>\n<p><em>function create()<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 var r_hashMap := hashMap(one:=1, two:=2, three:=3);<\/em><\/p>\n<p><em>\u00a0 echo(r_hashMap);<\/em><\/p>\n<p><em>}<\/em> <\/div><\/section>\n<h5 id=\"import\" ><span class=\"ez-toc-section\" id=\"import\"><\/span>import<span class=\"ez-toc-section-end\"><\/span><\/h5>\n<table style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\">\n<tbody>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Nazwa<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>import<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Opis<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>import<\/em> importuje obiekt skryptu lub bibliotek\u0119 do deklaracji wprowadzonej w j\u0119zyku skryptowym systemu.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Podpisy<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>import systemScript<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Parametry<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>systemScript<\/em> to techniczna nazwa obiektu deweloperskiego typu <em>Script<\/em> lub nazwa biblioteki zarejestrowanej w bazie danych OLTP.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Wynik<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Je\u015bli okre\u015blony obiekt skryptu lub biblioteka istniej\u0105, s\u0105 one zawarte w deklaracji. Zmienne, sta\u0142e, klasy i funkcje zawarte w obiekcie skryptu lub bibliotece s\u0105 dost\u0119pne w deklaracjach.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>\u0179r\u00f3d\u0142a b\u0142\u0119d\u00f3w<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Polecenie<em> import<\/em> musi znajdowa\u0107 si\u0119 na pierwszym miejscu w deklaracjach.<\/p>\n<p>Zar\u00f3wno zintegrowany obiekt skryptu lub biblioteka, jak i deklaracje musz\u0105 by\u0107 wprowadzone w tym samym j\u0119zyku skryptowym. Poniewa\u017c obiekt skryptu lub biblioteka s\u0105 zintegrowane z deklaracj\u0105 tekstowo, obiekt skryptu lub biblioteka nie mog\u0105 by\u0107 sprzeczne z deklaracj\u0105. Mo\u017ce to mie\u0107 miejsce na przyk\u0142ad wtedy, gdy zar\u00f3wno obiekt skryptu, jak i deklaracja zawieraj\u0105 funkcj\u0119 o tej samej nazwie.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Przyk\u0142ady<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>import com.pt.app.HelloWorld<\/em> importuje obiekt skryptu o tej samej nazwie utworzony w produkcyjnym systemie testowym w j\u0119zyku skryptowym systemu.<\/p>\n<p><em>import help.stringUtilityFunctions<\/em> importuje bibliotek\u0119 o tej samej nazwie.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Kontekst<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>ALL<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Uwagi<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Funkcja <em>import<\/em> jest dost\u0119pna tylko w j\u0119zyku skryptowym systemu. Obiekty skrypt\u00f3w wprowadza si\u0119 w aplikacji <em>Obiekty deweloperskie<\/em>. Biblioteki s\u0105 wprowadzane w aplikacji o tej samej nazwie. Je\u015bli istnieje zar\u00f3wno obiekt skryptu, jak i biblioteka o okre\u015blonej nazwie, biblioteka jest importowana jako pierwsza.<\/p>\n<p>Zar\u00f3wno obiekt skryptu, jak i biblioteka s\u0105 dost\u0119pne we wszystkich bazach danych systemu. Jako tzw. obiekt rozwojowy systemu produkcyjnego, obiekt skryptu mo\u017ce by\u0107 transportowany z produkcyjnego systemu testowego do systemu produkcyjnego za pomoc\u0105 aplikacji <em>Lista: Obiekty deweloperskie systemu produkcyjnego<\/em>. Jest to jeden z powod\u00f3w, dla kt\u00f3rych zaleca si\u0119 korzystanie z obiekt\u00f3w skrypt\u00f3w.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>load<\/em><\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\">Poni\u017cszy przyk\u0142ad z definicji dzia\u0142ania <em>help.import<\/em> importuje deklaracje z biblioteki <em>help.stringUtilityFunctions<\/em>.<\/p>\n<p><em>import help.stringUtilityFunctions;<\/em><\/p>\n<p><em>function create()<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 var p_text := parameters.TEXT;<\/em><\/p>\n<p><em>\u00a0 var p_separator := parameters.SEPARATOR;<\/em><\/p>\n<p><em>\u00a0 var r_wordList := splitString(p_text, p_separator);<\/em><\/p>\n<p><em>\u00a0 result.SPLIT_TEXT := r_wordList;<\/em><\/p>\n<p><em>\u00a0 result.JOINED_TEXT := joinString(r_wordList, p_separator);<\/em><\/p>\n<p><em>} <\/em><\/p>\n<p>Dwie funkcje <em>split<\/em> i <em>join<\/em> musz\u0105 by\u0107 zadeklarowane w bibliotece <em>help.stringUtilityFunctions<\/em> w j\u0119zyku skryptowym systemu, na przyk\u0142ad w nast\u0119puj\u0105cy spos\u00f3b:<\/p>\n<p><em>function split(p_text as String, p_separator as String) as String[]<\/em><\/p>\n<p><em>{ <\/em><\/p>\n<p><em>\u00a0 if (p_separator = &#8222;&#8221;)<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 p_separator := &#8221; &#8222;;<\/em><\/p>\n<p><em>\u00a0 var increment := length(p_separator);<\/em><\/p>\n<p><em>\u00a0 var sep as String;<\/em><\/p>\n<p><em>\u00a0 var word as String;<\/em><\/p>\n<p><em>\u00a0 var r_wordList as String[];<\/em><\/p>\n<p><em>\u00a0 var i := 0;<\/em><\/p>\n<p><em>\u00a0 var startPos := 0;<\/em><\/p>\n<p><em>\u00a0 while (i + increment &#8211; 1 &lt; length(p_text)) {<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 sep := substring(p_text, i, i + increment);<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 if (sep = p_separator) {<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0 word := trim(substring(p_text, startPos, i));<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0 i := i + przyrost;<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0 startPos := i;<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0 if (word &lt;&gt; &#8222;&#8221; and word &lt;&gt; p_separator) <\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 add(r_wordList, word);<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 } else {<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0 i := i + 1;<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 }<\/em><\/p>\n<p><em>\u00a0 }<\/em><\/p>\n<p>\u00a0 <em>word := substring(p_text, startPos);<\/em><\/p>\n<p><em>\u00a0 if (word &lt;&gt; &#8222;&#8221; and word &lt;&gt; p_separator) <\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 add(r_wordList, word);<\/em><\/p>\n<p><em>\u00a0 return r_wordList;<\/em><\/p>\n<p><em>}<\/em><\/p>\n<p><em>function join(p_textList as String[], p_separator as String) as String<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 var r_text as String;<\/em><\/p>\n<p><em>\u00a0 for (word as String : p_textList)<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 r_text := r_text + p_separator + word;<\/em><\/p>\n<p><em>\u00a0 if (r_text &lt;&gt; &#8222;&#8221;)<\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 r_text := substring(r_text, length(p_separator));<\/em><\/p>\n<p><em>\u00a0 return r_text;<\/em><\/p>\n<p><em>} <\/em><\/div><\/section>\n<h5 id=\"if\" ><span class=\"ez-toc-section\" id=\"if\"><\/span>if<span class=\"ez-toc-section-end\"><\/span><\/h5>\n<table style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\">\n<tbody>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Nazwa<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>if<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Opis<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>if <\/em>warunkowo ocenia jeden z dw\u00f3ch wydruk\u00f3w.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Podpisy<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>Unknown if(Boolean condition, Unknown a, Unknown b)<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Parametry<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>condition<\/em> jest warunkiem typu danych <em>Boolean<\/em>.<\/p>\n<p><em>a<\/em> to wyra\u017cenie, kt\u00f3rego warto\u015b\u0107 jest zwracana, je\u015bli warunek <em>condition<\/em> jest prawdziwy.<\/p>\n<p><em>b<\/em> to wyra\u017cenie, kt\u00f3rego warto\u015b\u0107 jest zwracana, je\u015bli warunek <em>condition<\/em> jest fa\u0142szywy.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Wynik<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Je\u015bli <em>condition<\/em> ma warto\u015b\u0107 <em>true<\/em>, obliczane jest wyra\u017cenie <em>a<\/em> i zwracana jest jego warto\u015b\u0107. Je\u015bli <em>condition<\/em> ma warto\u015b\u0107 <em>false<\/em>, obliczane jest wyra\u017cenie <em>b<\/em> i zwracana jest jego warto\u015b\u0107.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>\u0179r\u00f3d\u0142a b\u0142\u0119d\u00f3w<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Brak<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Przyk\u0142ady<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>if(a &gt; b, a, b))<\/em> zwraca wi\u0119ksz\u0105 z liczb <em>a <\/em>i <em>b<\/em> jako <em>Unknown<\/em>.<\/p>\n<p><em>cast(Number, if(a &gt; b, a, b))<\/em> zwraca wi\u0119ksz\u0105 z liczb <em>a<\/em> i <em>b<\/em> jako liczb\u0119.<\/p>\n<p><em>if(null, 1, 2)<\/em> zwraca warto\u015b\u0107 <em>null<\/em>.<\/p>\n<p><em>if(true, i, i \/ 0)<\/em> zawsze zwraca <em>i<\/em> jako <em>Unknown<\/em>. Poniewa\u017c <em>true<\/em> jest zawsze prawdziwe, <em>i \/ 0<\/em> nigdy nie jest obliczane, a wyra\u017cenie nie powoduje b\u0142\u0119du wykonania.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Kontekst<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>ALL<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Uwagi<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Funkcji <em>if<\/em> mo\u017cna u\u017cy\u0107 do mapowania warunku w polu wyra\u017cenia (np. w warunku przej\u015bcia lub w wyra\u017ceniu dla operatorow definicji dzia\u0142a\u0144).<\/p>\n<p>Poniewa\u017c wynik funkcji <em>if<\/em> jest typu danych <em>Unknown<\/em>, zwykle trzeba przekonwertowa\u0107 go na inny typ danych za pomoc\u0105 funkcji <em>cast<\/em>, zanim b\u0119dzie mo\u017cna go u\u017cy\u0107.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Wi\u0119cej informacji na temat polece\u0144 warunkowych mo\u017cna znale\u017a\u0107 w artykule <em>J\u0119zyk skryptowy systemu<\/em>.<\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\">Poni\u017cszy przyk\u0142ad pochodzi z definicji dzia\u0142ania <em>help.if<\/em>.<\/p>\n<p><em>function create()<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 var p_number1 := parameters.NUMBER1;<\/em><\/p>\n<p><em>\u00a0 var p_number2 := parameters.NUMBER2;<\/em><\/p>\n<p><em>\u00a0 var r_comparator := cast(String, <\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 if(p_liczba1 &gt; p_liczba2,&#8221;&gt;&#8221;, <\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0\u00a0\u00a0 if(p_liczba1 &lt; p_liczba2, &#8222;&lt;&#8222;, &#8222;=&#8221;));<\/em><\/p>\n<p><em>\u00a0 result.VALUE := <\/em><\/p>\n<p><em>\u00a0\u00a0\u00a0 cast(String, p_liczba1) + r_comparator + cast(String, p_liczba2);<\/em><\/p>\n<p><em>}<\/em> <\/div><\/section>\n<h5 id=\"load\" ><span class=\"ez-toc-section\" id=\"load\"><\/span>load<span class=\"ez-toc-section-end\"><\/span><\/h5>\n<table style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\">\n<tbody>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Nazwa<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>load<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Opis<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>load<\/em> integruje obiekt skryptu z deklaracj\u0105 wprowadzon\u0105 w JavaScript.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Podpisy<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>load (scriptObject)<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Parametry<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>scriptObject <\/em>to techniczna nazwa obiektu deweloperskiego typu <em>Script<\/em>.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Wynik<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Je\u015bli okre\u015blony obiekt skryptu istnieje, jest on uwzgl\u0119dniany w deklaracji. Zmienne, sta\u0142e, klasy i funkcje zawarte w obiekcie skryptu s\u0105 dost\u0119pne w deklaracjach.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>\u0179r\u00f3d\u0142a b\u0142\u0119d\u00f3w<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Zar\u00f3wno zintegrowany obiekt skryptu, jak i deklaracje musz\u0105 by\u0107 wprowadzone w tym samym j\u0119zyku skryptowym. Poniewa\u017c obiekt skryptu jest zintegrowany z deklaracj\u0105 tekstowo, obiekt skryptu nie mo\u017ce by\u0107 sprzeczny z deklaracj\u0105. Mo\u017ce to mie\u0107 miejsce na przyk\u0142ad wtedy, gdy zar\u00f3wno obiekt skryptu, jak i deklaracja zawieraj\u0105 funkcj\u0119 o tej samej nazwie.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Przyk\u0142ady<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>load (com.pt.app.HelloWorld)<\/em> importuje obiekt skryptu o tej samej nazwie utworzony w produkcyjnym systemie testowym w JavaScript.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Kontekst<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>ALL<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Uwagi<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Funkcja <em>load<\/em> jest dost\u0119pna tylko w JavaScript, wi\u0119c obiekt skryptu zintegrowany z funkcj\u0105 <em>load <\/em>musi by\u0107 r\u00f3wnie\u017c wprowadzony w JavaScript. Obiekty skrypt\u00f3w tworzy si\u0119 w aplikacji <em>Obiekty deweloperskie<\/em>.<\/p>\n<p>Obiekt skryptu jest dost\u0119pny we wszystkich bazach danych systemu. Jako tak zwany obiekt rozwojowy systemu produkcyjnego, obiekt skryptu mo\u017ce by\u0107 transportowany z produkcyjnego systemu testowego do systemu produkcyjnego za pomoc\u0105 aplikacji <em>Lista: Obiekty deweloperskie systemu produkcyjnego<\/em>. Jest to jeden z powod\u00f3w, dla kt\u00f3rych zaleca si\u0119 korzystanie z obiekt\u00f3w skrypt\u00f3w.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>import<\/em><\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\">Poni\u017cszy przyk\u0142ad z definicji dzia\u0142ania <em>help.load<\/em> zapisanej w JavaScript otwiera obiekt skryptu <em>com.pt.app.HelloWorld <\/em>zapisany w JavaScript.<\/p>\n<p><em>load(com.pt.app.HelloWorld);<\/em><\/p>\n<p><em>function create()<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 var r_hello = hello();<\/em><\/p>\n<p><em>\u00a0 result.VALUE = r_hello;<\/em><\/p>\n<p><em>}<\/em><\/p>\n<p><em>Funkcja &#8222;hello&#8221; musi by\u0107 zadeklarowana w obiekcie skryptu o nazwie &#8222;com.pt.app.HelloWorld&#8221; w JavaScript, na przyk\u0142ad w nast\u0119puj\u0105cy spos\u00f3b:<\/em><\/p>\n<p><em>function hello() <\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 return &#8222;Hello world!&#8221;;<\/em><\/p>\n<p><em>}<\/em> <\/div><\/section>\n<h5 id=\"sendmail\" ><span class=\"ez-toc-section\" id=\"sendMail\"><\/span>sendMail<span class=\"ez-toc-section-end\"><\/span><\/h5>\n<table style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\">\n<tbody>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Nazwa<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>sendMail<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Opis<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>sendMail<\/em> wysy\u0142a wiadomo\u015b\u0107 e-mail do jednego lub wi\u0119cej odbiorc\u00f3w.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Podpisy<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>Boolean sendMail(String recipientTo, String subject, String descriptionHtml)<\/em><\/p>\n<p><em>Boolean sendMail(Guid recipientToUserGuid, String subject, String descriptionHtml)<\/em><\/p>\n<p><em>Boolean sendMail(Guid[] recipientToUserGuids, String subject, String descriptionHtml)<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Parametry<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>recipientTo<\/em> to adres e-mail odbiorcy. Je\u015bli wiadomo\u015b\u0107 e-mail ma wielu odbiorc\u00f3w, nale\u017cy oddzieli\u0107 ka\u017cdy adres e-mail przecinkiem.<\/p>\n<p><em>subject<\/em> to temat wiadomo\u015bci e-mail.<\/p>\n<p><em>descriptionHtml <\/em>to opis wiadomo\u015bci e-mail zakodowany jako ci\u0105g znak\u00f3w HTML.<\/p>\n<p><em>recipientToUserGuid <\/em>to identyfikator u\u017cytkownika odbiorcy.<\/p>\n<p><em>recipientToUserGuids<\/em> to lista identyfikator\u00f3w u\u017cytkownik\u00f3w odbiorcy.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Wynik<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Wysy\u0142a wiadomo\u015b\u0107 e-mail do odbiorcy (odbiorc\u00f3w). Nadawc\u0105 jest nadawca zdefiniowany w funkcji konfiguracji <em>Ustawienia u\u017cytkownika dla systemu<\/em>.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>\u0179r\u00f3d\u0142a b\u0142\u0119d\u00f3w<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>B\u0142\u0119dy mog\u0105 by\u0107 spowodowane mi\u0119dzy innymi nieautoryzowanymi adresami e-mail lub niepe\u0142n\u0105 lub nieprawid\u0142ow\u0105 konfiguracj\u0105 funkcji e-mail.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Przyk\u0142ady<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>sendMail(parameters.userGuid, &#8222;Test&#8221;, &#8222;&lt;em&gt;Hello World!&lt;\/em&gt;&#8221;)<\/em> wysy\u0142a wiadomo\u015b\u0107 e-mail do u\u017cytkownika, kt\u00f3ry wywo\u0142a\u0142 zdarzenie.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Kontekst<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>ALL<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Uwagi<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Dla lepszej dokumentacji i identyfikowalno\u015bci zaleca si\u0119 wysy\u0142anie wiadomo\u015bci e-mail za pomoc\u0105 w\u0119z\u0142\u00f3w e-mail.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Wi\u0119cej informacji na temat funkcji dla w\u0119z\u0142\u00f3w e-mail mo\u017cna znale\u017a\u0107 w artykule <em>J\u0119zyk skryptowy systemu: Funkcje workflow<\/em>.<\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\">Poni\u017cszy przyk\u0142ad z definicji dzialania <em>help.sendMail<\/em> wysy\u0142a wiadomo\u015b\u0107 e-mail do u\u017cytkownika w systemie.<\/p>\n<p><em>function create()<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 var p_user := parameters.USER;<\/em><\/p>\n<p><em>\u00a0 var p_subject := parameters.SUBJECT;<\/em><\/p>\n<p><em>\u00a0 var p_description := parameters.DESCRIPTION;<\/em><\/p>\n<p><em>\u00a0 var r_sendMail := sendMail(userMailAddress(userGuid(p_user)), p_subject, toHtml(p_description));<\/em><\/p>\n<p><em>\u00a0 result.SEND_MAIL := r_sendMail;<\/em><\/p>\n<p><em>}<\/em> <\/div><\/section>\n<h5 id=\"new\" ><span class=\"ez-toc-section\" id=\"new\"><\/span>new<span class=\"ez-toc-section-end\"><\/span><\/h5>\n<table style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\">\n<tbody>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Nazwa<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>new<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Opis<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>new<\/em> tworzy now\u0105 instancj\u0119 typu danych.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Podpisy<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>new(Unknown type)<\/em><\/p>\n<p><em>new(Unknown listType, Number size)<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Parametry<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>type<\/em> to typ danych nowej instancji.<\/p>\n<p><em>size<\/em> to rozmiar listy.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Wynik<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Tworzona jest nowa instancja z okre\u015blonym typem danych.<\/p>\n<p>Je\u015bli typem danych jest lista, funkcja <em>new<\/em> ma rozszerzon\u0105 funkcjonalno\u015b\u0107. W przypadku list o nieokre\u015blonej d\u0142ugo\u015bci mo\u017cna okre\u015bli\u0107 d\u0142ugo\u015b\u0107 <em>n<\/em> dla <em>new<\/em>. Je\u015bli typ listy ma d\u0142ugo\u015b\u0107 <em>n<\/em> lub d\u0142ugo\u015b\u0107 n jest okre\u015blona, tworzona jest lista z n pustymi elementami. Je\u015bli typ danych jest klas\u0105, tworzona jest nowa instancja tej klasy.<\/p>\n<p>Wszystkie atrybuty nowej instancji s\u0105 wype\u0142niane warto\u015bciami domy\u015blnymi.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>\u0179r\u00f3d\u0142a b\u0142\u0119d\u00f3w<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Brak<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Przyk\u0142ady<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>new(HashMap)<\/em> zwraca now\u0105 instancj\u0119 typu danych <em>HashMap.<\/em><\/p>\n<p><em>new(Number[])<\/em> zwraca now\u0105 pust\u0105 list\u0119 typu danych <em>Number[].<\/em><\/p>\n<p><em>new(Number[10])<\/em> zwraca now\u0105 list\u0119 typu danych <em>Number[]<\/em> z 10 elementami typu danych elementu <em>Number<\/em> z warto\u015bci\u0105 domy\u015bln\u0105 0.<\/p>\n<p><em>new(Number[], index)<\/em> zwraca now\u0105 list\u0119 typu danych <em>Number[]<\/em> z elementami typu danych elementu <em>Number<\/em> okre\u015blonymi w <em>index<\/em>.<\/p>\n<p><em>new(Number[index])<\/em> powoduje b\u0142\u0105d sk\u0142adni.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Kontekst<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>ALL<\/em><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Uwagi<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\u00a0<\/td>\n<\/tr>\n<tr>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>hashMap<\/em><em>, newGuid<\/em><\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\">Poni\u017cszy przyk\u0142ad pochodzi z definicji dzia\u0142ania <em>help.new<\/em>.<\/p>\n<p><em>function create()<\/em><\/p>\n<p><em>{<\/em><\/p>\n<p><em>\u00a0 var p_size := parameters.SIZE;<\/em><\/p>\n<p><em>\u00a0 var r_stringArray := new(String[], max(min(p_size, 10), 0));<\/em><\/p>\n<p><em>\u00a0 \/* alternatywny zapis: new(String[10]) *\/<\/em><\/p>\n<p><em>\u00a0 result.VALUE := r_stringArray;<\/em><\/p>\n<p><em>\u00a0 result.VALUE := new(Number[]);<\/em><\/p>\n<p><em>}<\/em> <\/div><\/section>\n\n\n<p><\/p>\n","protected":false},"author":28,"comment_status":"closed","ping_status":"closed","template":"","format":"standard","meta":{"footnotes":""},"class_list":["post-29969","ht_kb","type-ht_kb","status-publish","format-standard","hentry","ht_kb_category-definicje-workflow"],"_links":{"self":[{"href":"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/wp-json\/wp\/v2\/ht_kb\/29969","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/wp-json\/wp\/v2\/ht_kb"}],"about":[{"href":"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/wp-json\/wp\/v2\/types\/ht_kb"}],"author":[{"embeddable":true,"href":"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/wp-json\/wp\/v2\/users\/28"}],"replies":[{"embeddable":true,"href":"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/wp-json\/wp\/v2\/comments?post=29969"}],"version-history":[{"count":57,"href":"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/wp-json\/wp\/v2\/ht_kb\/29969\/revisions"}],"predecessor-version":[{"id":32104,"href":"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/wp-json\/wp\/v2\/ht_kb\/29969\/revisions\/32104"}],"wp:attachment":[{"href":"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/wp-json\/wp\/v2\/media?parent=29969"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}