{"id":10706,"date":"2025-04-30T09:24:14","date_gmt":"2025-04-30T07:24:14","guid":{"rendered":"https:\/\/pomoc.comarch.pl\/cee\/640\/?post_type=ht_kb&#038;p=10706"},"modified":"2025-05-30T11:04:39","modified_gmt":"2025-05-30T09:04:39","slug":"jezyk-skryptowy-systemu-funkcje-oltp","status":"publish","type":"ht_kb","link":"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-oltp\/","title":{"rendered":"J\u0119zyk skryptowy systemu: Funkcje OLTP"},"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-oltp\/#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-oltp\/#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-oltp\/#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-oltp\/#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-oltp\/#Funkcje_OLTP\" >Funkcje OLTP<\/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-oltp\/#Funkcje_dla_organizacji\" >Funkcje dla organizacji<\/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-oltp\/#getCustomisingValue\" >getCustomisingValue<\/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-oltp\/#isCustomisingAvailable\" >isCustomisingAvailable<\/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-oltp\/#loadOrganisation\" >loadOrganisation<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-10\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-oltp\/#Funkcje_dla_partnerow\" >Funkcje dla partner\u00f3w<\/a><ul class='ez-toc-list-level-5' ><li class='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-oltp\/#getGreeting\" >getGreeting<\/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-oltp\/#getPreferredCommunicationData\" >getPreferredCommunicationData<\/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-oltp\/#getValediction\" >getValediction<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-14\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-oltp\/#loadCommunicationData\" >loadCommunicationData<\/a><\/li><li class='ez-toc-page-1 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-oltp\/#loadContacts\" >loadContacts<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-16\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-oltp\/#loadCustomer\" >loadCustomer<\/a><\/li><li class='ez-toc-page-1 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-oltp\/#loadPartner\" >loadPartner<\/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-oltp\/#loadPartnerAccountingData\" >loadPartnerAccountingData<\/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-oltp\/#loadPartnerMarketingInfo\" >loadPartnerMarketingInfo<\/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-oltp\/#loadResponsibleOfPartner\" >loadResponsibleOfPartner<\/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-oltp\/#loadSupplier\" >loadSupplier<\/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-oltp\/#loadTargetsOfPartnerRelations\" >loadTargetsOfPartnerRelations<\/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-oltp\/#resolvePartner\" >resolvePartner<\/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-oltp\/#Dalsze_deklaracje_funkcji_dla_partnerow\" >Dalsze deklaracje funkcji dla partner\u00f3w<\/a><ul class='ez-toc-list-level-6' ><li class='ez-toc-heading-level-6'><a class=\"ez-toc-link ez-toc-heading-25\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-oltp\/#loadPartnerOfUser\" >loadPartnerOfUser<\/a><\/li><\/ul><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-26\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-oltp\/#Funkcje_dla_artykulow_Funkcje_artykulow\" >Funkcje dla artyku\u0142\u00f3w (Funkcje artyku\u0142\u00f3w)<\/a><ul class='ez-toc-list-level-5' ><li class='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-oltp\/#loadInventoryItem\" >loadInventoryItem<\/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-oltp\/#loadItem\" >loadItem<\/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-oltp\/#loadItemAccountingData\" >loadItemAccountingData<\/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-oltp\/#loadItemPlanningData\" >loadItemPlanningData<\/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-oltp\/#loadProductionItem\" >loadProductionItem<\/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-oltp\/#loadPurchaseItem\" >loadPurchaseItem<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-33\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-oltp\/#loadSalesItem\" >loadSalesItem<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-34\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-oltp\/#Funkcje_dla_kwot_i_walut_Funkcje_walutowe\" >Funkcje dla kwot i walut (Funkcje walutowe)<\/a><ul class='ez-toc-list-level-5' ><li class='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-oltp\/#loadCurrency\" >loadCurrency<\/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-oltp\/#Dalsze_deklaracje_funkcji_dla_kwot_i_walut\" >Dalsze deklaracje funkcji dla kwot i walut<\/a><ul class='ez-toc-list-level-6' ><li class='ez-toc-heading-level-6'><a class=\"ez-toc-link ez-toc-heading-37\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-oltp\/#amountCorporate\" >amountCorporate<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-6'><a class=\"ez-toc-link ez-toc-heading-38\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-oltp\/#convertCurrency\" >convertCurrency\u00a0<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-6'><a class=\"ez-toc-link ez-toc-heading-39\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-oltp\/#getCorporateCurrency\" >getCorporateCurrency<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-6'><a class=\"ez-toc-link ez-toc-heading-40\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-oltp\/#getCurrency1\" >getCurrency1<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-6'><a class=\"ez-toc-link ez-toc-heading-41\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-oltp\/#getCurrency2\" >getCurrency2<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-6'><a class=\"ez-toc-link ez-toc-heading-42\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-oltp\/#getCurrency3\" >getCurrency3<\/a><\/li><\/ul><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-43\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-oltp\/#Funkcje_dla_ilosci_i_jednostek_miar_Funkcje_jednostek_miar\" >Funkcje dla ilo\u015bci i jednostek miar (Funkcje jednostek miar)<\/a><ul class='ez-toc-list-level-5' ><li class='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-oltp\/#loadUom\" >loadUom<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-45\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-oltp\/#Funkcje_kalendarzy_firmowych_Funkcje_kalendarza\" >Funkcje kalendarzy firmowych (Funkcje kalendarza)<\/a><ul class='ez-toc-list-level-5' ><li class='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-oltp\/#addWorkingDays\" >addWorkingDays<\/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-oltp\/#getDayType\" >getDayType<\/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-oltp\/#workingDays\" >workingDays<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-49\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-oltp\/#Funkcje_dla_stanowisk_Funkcje_nazwy_stanowiska\" >Funkcje dla stanowisk (Funkcje nazwy stanowiska)<\/a><ul class='ez-toc-list-level-5' ><li class='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-oltp\/#resolveJobTitle\" >resolveJobTitle<\/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-oltp\/#Substitute\" >Substitute<\/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-oltp\/#superior\" >superior<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-53\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-oltp\/#Funkcje_zgloszen_serwisowych_Funkcje_zgloszen_serwisowych\" >Funkcje zg\u0142osze\u0144 serwisowych (Funkcje zg\u0142osze\u0144 serwisowych)<\/a><ul class='ez-toc-list-level-5' ><li class='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-oltp\/#supportRequestReferences\" >supportRequestReferences<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-55\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-oltp\/#Rozne_funkcje_dla_obiektow_biznesowych_Rozne_funkcje_dla_obiektow_biznesowych\" >R\u00f3\u017cne funkcje dla obiekt\u00f3w biznesowych (R\u00f3\u017cne funkcje dla obiekt\u00f3w biznesowych)<\/a><ul class='ez-toc-list-level-5' ><li class='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-oltp\/#createOrderKey\" >createOrderKey<\/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-oltp\/#nextNumberRangeNumber\" >nextNumberRangeNumber<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-58\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-oltp\/#Funkcje_dla_dynamicznych_obiektow_biznesowych_Funkcje_dynamicznych_obiektow_biznesowych\" >Funkcje dla dynamicznych obiekt\u00f3w biznesowych (Funkcje dynamicznych obiekt\u00f3w biznesowych)<\/a><ul class='ez-toc-list-level-5' ><li class='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-oltp\/#Funkcje_pobierajace\" >Funkcje pobieraj\u0105ce<\/a><ul class='ez-toc-list-level-6' ><li class='ez-toc-heading-level-6'><a class=\"ez-toc-link ez-toc-heading-60\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-oltp\/#dboCisDate\" >dboCisDate<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-6'><a class=\"ez-toc-link ez-toc-heading-61\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-oltp\/#dboCisObject\" >dboCisObject<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-6'><a class=\"ez-toc-link ez-toc-heading-62\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-oltp\/#dboDomesticAmount\" >dboDomesticAmount<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-6'><a class=\"ez-toc-link ez-toc-heading-63\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-oltp\/#dboForeignAmount\" >dboForeignAmount\u00a0<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-6'><a class=\"ez-toc-link ez-toc-heading-64\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-oltp\/#dboGuid\" >dboGuid\u00a0<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-6'><a class=\"ez-toc-link ez-toc-heading-65\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-oltp\/#dboNumber\" >dboNumber<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-6'><a class=\"ez-toc-link ez-toc-heading-66\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-oltp\/#dboQuantity\" >dboQuantity<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-6'><a class=\"ez-toc-link ez-toc-heading-67\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-oltp\/#dboString\" >dboString<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-6'><a class=\"ez-toc-link ez-toc-heading-68\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-oltp\/#dboText\" >dboText<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-6'><a class=\"ez-toc-link ez-toc-heading-69\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-oltp\/#dboTextContentType\" >dboTextContentType<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-6'><a class=\"ez-toc-link ez-toc-heading-70\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-oltp\/#dboTimestamp\" >dboTimestamp<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-6'><a class=\"ez-toc-link ez-toc-heading-71\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-oltp\/#dboValueSet\" >dboValueSet<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-6'><a class=\"ez-toc-link ez-toc-heading-72\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-oltp\/#dboValueSetDescription\" >dboValueSetDescription<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-6'><a class=\"ez-toc-link ez-toc-heading-73\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-oltp\/#dboValueSetName\" >dboValueSetName\u00a0<\/a><\/li><\/ul><\/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-oltp\/#Funkcje_pobierajace_dla_list_wartosci\" >Funkcje pobieraj\u0105ce dla list warto\u015bci<\/a><ul class='ez-toc-list-level-6' ><li class='ez-toc-heading-level-6'><a class=\"ez-toc-link ez-toc-heading-75\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-oltp\/#dboListCisDate\" >dboListCisDate<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-6'><a class=\"ez-toc-link ez-toc-heading-76\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-oltp\/#dboListCisObject\" >dboListCisObject<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-6'><a class=\"ez-toc-link ez-toc-heading-77\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-oltp\/#dboListDomesticAmount\" >dboListDomesticAmount<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-6'><a class=\"ez-toc-link ez-toc-heading-78\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-oltp\/#dboListForeignAmount\" >dboListForeignAmount<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-6'><a class=\"ez-toc-link ez-toc-heading-79\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-oltp\/#dboListGuid\" >dboListGuid<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-6'><a class=\"ez-toc-link ez-toc-heading-80\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-oltp\/#dboListNumber\" >dboListNumber<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-6'><a class=\"ez-toc-link ez-toc-heading-81\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-oltp\/#dboListQuantity\" >dboListQuantity<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-6'><a class=\"ez-toc-link ez-toc-heading-82\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-oltp\/#dboListString\" >dboListString<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-6'><a class=\"ez-toc-link ez-toc-heading-83\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-oltp\/#dboListTimestamp\" >dboListTimestamp<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-6'><a class=\"ez-toc-link ez-toc-heading-84\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-oltp\/#dboListValueSet\" >dboListValueSet\u00a0<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-6'><a class=\"ez-toc-link ez-toc-heading-85\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-oltp\/#dboListValueSetDescription\" >dboListValueSetDescription<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-6'><a class=\"ez-toc-link ez-toc-heading-86\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-oltp\/#dboListValueSetName\" >dboListValueSetName<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 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-oltp\/#Funkcja_resetowania\" >Funkcja resetowania<\/a><ul class='ez-toc-list-level-6' ><li class='ez-toc-heading-level-6'><a class=\"ez-toc-link ez-toc-heading-88\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-oltp\/#resetDbo\" >resetDbo<\/a><\/li><\/ul><\/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-oltp\/#Funkcje_ustawiajace\" >Funkcje ustawiaj\u0105ce<\/a><ul class='ez-toc-list-level-6' ><li class='ez-toc-heading-level-6'><a class=\"ez-toc-link ez-toc-heading-90\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-oltp\/#setDboCisDate\" >setDboCisDate<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-6'><a class=\"ez-toc-link ez-toc-heading-91\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-oltp\/#setDboCisObject\" >setDboCisObject\u00a0<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-6'><a class=\"ez-toc-link ez-toc-heading-92\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-oltp\/#setDboDomesticAmount\" >setDboDomesticAmount<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-6'><a class=\"ez-toc-link ez-toc-heading-93\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-oltp\/#setDboForeignAmount\" >setDboForeignAmount<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-6'><a class=\"ez-toc-link ez-toc-heading-94\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-oltp\/#setDboGuid\" >setDboGuid\u00a0<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-6'><a class=\"ez-toc-link ez-toc-heading-95\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-oltp\/#setDboNumber\" >setDboNumber<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-6'><a class=\"ez-toc-link ez-toc-heading-96\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-oltp\/#setDboQuantity\" >setDboQuantity<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-6'><a class=\"ez-toc-link ez-toc-heading-97\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-oltp\/#setDboString\" >setDboString<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-6'><a class=\"ez-toc-link ez-toc-heading-98\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-oltp\/#setDboText\" >setDboText\u00a0<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-6'><a class=\"ez-toc-link ez-toc-heading-99\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-oltp\/#setDboTimestamp\" >setDboTimestamp<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-6'><a class=\"ez-toc-link ez-toc-heading-100\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-oltp\/#setDboValueSet\" >setDboValueSet<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-6'><a class=\"ez-toc-link ez-toc-heading-101\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-oltp\/#setDboValueSetName\" >setDboValueSetName<\/a><\/li><\/ul><\/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-oltp\/#Funkcje_ustawiajace_dla_list_wartosci\" >Funkcje ustawiaj\u0105ce dla list warto\u015bci<\/a><ul class='ez-toc-list-level-6' ><li class='ez-toc-heading-level-6'><a class=\"ez-toc-link ez-toc-heading-103\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-oltp\/#setDboListCisDate\" >setDboListCisDate<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-6'><a class=\"ez-toc-link ez-toc-heading-104\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-oltp\/#setDboListCisObject\" >setDboListCisObject\u00a0<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-6'><a class=\"ez-toc-link ez-toc-heading-105\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-oltp\/#setDboListDomesticAmount\" >setDboListDomesticAmount<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-6'><a class=\"ez-toc-link ez-toc-heading-106\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-oltp\/#setDboListForeignAmount\" >setDboListForeignAmount<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-6'><a class=\"ez-toc-link ez-toc-heading-107\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-oltp\/#setDboListGuid\" >setDboListGuid<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-6'><a class=\"ez-toc-link ez-toc-heading-108\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-oltp\/#setDboListNumber\" >setDboListNumber<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-6'><a class=\"ez-toc-link ez-toc-heading-109\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-oltp\/#setDboListQuantity\" >setDboListQuantity<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-6'><a class=\"ez-toc-link ez-toc-heading-110\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-oltp\/#setDboListString\" >setDboListString<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-6'><a class=\"ez-toc-link ez-toc-heading-111\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-oltp\/#setDboListTimestamp\" >setDboListTimestamp<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-6'><a class=\"ez-toc-link ez-toc-heading-112\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-oltp\/#setDboListValueSet\" >setDboListValueSet<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-6'><a class=\"ez-toc-link ez-toc-heading-113\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-oltp\/#setDboListValueSetName\" >setDboListValueSetName<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-114\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-oltp\/#Funkcje_sprawdzania_poprawnosci\" >Funkcje sprawdzania poprawno\u015bci<\/a><ul class='ez-toc-list-level-6' ><li class='ez-toc-heading-level-6'><a class=\"ez-toc-link ez-toc-heading-115\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-oltp\/#validateDboCisDate\" >validateDboCisDate<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-6'><a class=\"ez-toc-link ez-toc-heading-116\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-oltp\/#validateDboCisObject\" >validateDboCisObject<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-6'><a class=\"ez-toc-link ez-toc-heading-117\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-oltp\/#validateDboDomesticAmount\" >validateDboDomesticAmount<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-6'><a class=\"ez-toc-link ez-toc-heading-118\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-oltp\/#validateDboForeignAmount\" >validateDboForeignAmount<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-6'><a class=\"ez-toc-link ez-toc-heading-119\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-oltp\/#validateDboGuid\" >validateDboGuid<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-6'><a class=\"ez-toc-link ez-toc-heading-120\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-oltp\/#validateDboNumber\" >validateDboNumber<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-6'><a class=\"ez-toc-link ez-toc-heading-121\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-oltp\/#validateDboQuantity\" >validateDboQuantity<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-6'><a class=\"ez-toc-link ez-toc-heading-122\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-oltp\/#validateDboString\" >validateDboString<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-6'><a class=\"ez-toc-link ez-toc-heading-123\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-oltp\/#validateDboTimestamp\" >validateDboTimestamp<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-6'><a class=\"ez-toc-link ez-toc-heading-124\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-oltp\/#validateDboValueSet\" >validateDboValueSet<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-6'><a class=\"ez-toc-link ez-toc-heading-125\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-oltp\/#validateDboValueSetName\" >validateDboValueSetName<\/a><\/li><\/ul><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-126\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-oltp\/#Funkcje_dla_atrybutow_workflow_Funkcje_atrybutow_workflow\" >Funkcje dla atrybut\u00f3w workflow (Funkcje atrybut\u00f3w workflow)\u00a0<\/a><ul class='ez-toc-list-level-5' ><li class='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-oltp\/#getOrCreateSupplement\" >getOrCreateSupplement<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-128\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/jezyk-skryptowy-systemu-funkcje-oltp\/#getSupplement\" >getSupplement<\/a><\/li><li class='ez-toc-page-1 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-oltp\/#putSupplement\" >putSupplement<\/a><\/li><\/ul><\/li><\/ul><\/li><\/ul><\/nav><\/div>\n<p>J\u0119zyk skryptowy systemu jest u\u017cywany w <em>Workflow Management<\/em>, 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<p>Silnik workflow obs\u0142uguje zar\u00f3wno w\u0142asny j\u0119zyk skryptowy systemu, jak i JavaScript w celu wyra\u017cania z\u0142o\u017conych relacji. Niniejsza dokumentacja zawiera szczeg\u00f3\u0142owe informacje na temat poszczeg\u00f3lnych funkcji OLTP j\u0119zyka skryptowego systemu. Funkcje OLTP to funkcje, kt\u00f3rych kontekst u\u017cycia wymaga bazy danych OLTP. Przyk\u0142adami funkcji OLTP s\u0105 <em>loadPartner<\/em> i <em>loadItem<\/em>, kt\u00f3re otwieraj\u0105 partnera lub artyku\u0142 w bie\u017c\u0105cej bazie danych OLTP.<\/p>\n<p>Przyk\u0142ady przedstawione w niniejszym 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.<\/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>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.<\/p>\n<p>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.<\/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 <em>Globally Unique Identifier<\/em> i 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 ramach jednostek biznesowych.<\/p>\n<h4 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 <em>Workflow Management,<\/em> 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-oltp\" ><span class=\"ez-toc-section\" id=\"Funkcje_OLTP\"><\/span>Funkcje OLTP<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Funkcje OLTP to funkcje, kt\u00f3rych kontekst u\u017cycia wymaga bazy danych OLTP. Funkcje OLTP obejmuj\u0105:<\/p>\n<ul>\n<li>Funkcje dla organizacji<\/li>\n<li>Funkcje dla partner\u00f3w<\/li>\n<li>Funkcje dla pozycji (Funkcje pozycji)<\/li>\n<li>Funkcje dla kwot i walut (Funkcje walutowe)<\/li>\n<li>Funkcje dla ilo\u015bci i jednostek miar (Funkcje jednostek miar)<\/li>\n<li>Funkcje kalendarzy fabrycznych (Funkcje kalendarza)<\/li>\n<li>Funkcje dla stanowisk (Funkcje nazwy stanowiska)<\/li>\n<li>Funkcje zg\u0142osze\u0144 serwisowych (Funkcje zg\u0142osze\u0144 serwisowych)<\/li>\n<li>R\u00f3\u017cne funkcje dla obiekt\u00f3w biznesowych (R\u00f3\u017cne funkcje dla obiekt\u00f3w biznesowych)<\/li>\n<li>Funkcje dla dynamicznych obiekt\u00f3w biznesowych (Funkcje dynamicznych obiekt\u00f3w biznesowych)<\/li>\n<li>Funkcje atrybut\u00f3w workflow (Funkcje atrybut\u00f3w workflow)<\/li>\n<\/ul>\n<h4 id=\"funkcje-dla-organizacji\" ><span class=\"ez-toc-section\" id=\"Funkcje_dla_organizacji\"><\/span>Funkcje dla organizacji<span class=\"ez-toc-section-end\"><\/span><\/h4>\n<p>Funkcje dla organizacji obejmuj\u0105 funkcj\u0119 otwierania organizacji i funkcje wyszukiwania ustawie\u0144 niestandardowych:<\/p>\n<ul>\n<li>getCustomisingValue<\/li>\n<li>isCustomisingAvailable<\/li>\n<li>loadOrganisation<\/li>\n<\/ul>\n<h5 id=\"getcustomisingvalue\" ><span class=\"ez-toc-section\" id=\"getCustomisingValue\"><\/span>getCustomisingValue<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>getCustomisingValue<\/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>getCustomizingValue<\/em> zwraca skonfigurowane warto\u015bci funkcji konfiguracji OLTP.<\/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>CisObject getCustomizingValue(String function)<\/p>\n<p>CisObject getCustomizingValue(String function, Guid organisation)<\/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>function<\/em> to w pe\u0142ni kwalifikowana nazwa techniczna funkcji konfiguracji OLTP.<\/p>\n<p><em>organisation<\/em> to identyfikator guid organizacji, dla kt\u00f3rej ma zosta\u0107 wys\u0142ane zapytanie o skonfigurowane warto\u015bci funkcji konfiguracji OLTP. Je\u015bli funkcja konfiguracji OLTP ma co najmniej jedno odniesienie organizacyjne, nale\u017cy okre\u015bli\u0107 organizacj\u0119.<\/p>\n<p>W aplikacji <em>Obiekty deweloperskie<\/em> mo\u017cna wyszukiwa\u0107 dost\u0119pne funkcje konfiguracji OLTP i ich odniesienia organizacyjne, wywo\u0142uj\u0105c obiekty deweloperskie typu <em>Funkcja<\/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 cz\u0119\u015b\u0107 powi\u0105zan\u0105 z funkcj\u0105 konfiguracji OLTP jako obiekt <em>CisObject<\/em>. Aby oceni\u0107 skonfigurowane warto\u015bci, nale\u017cy przekonwertowa\u0107 cz\u0119\u015b\u0107 na typowany obiekt <em>CisObject<\/em> za pomoc\u0105 funkcji <em>cast<\/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 funkcja konfiguracyjna nie istnieje, dla typu danych <em>CisObject<\/em> zwracana jest warto\u015b\u0107 domy\u015blna <em>null<\/em>. Je\u015bli okre\u015blona organizacja nie istnieje lub funkcja konfiguracji OLTP nie jest aktywna dla okre\u015blonej organizacji, 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>cast(CisObject(com.cisag.app.general.Localization), getCustomizingValue(&#8222;com.cisag.app.general.Localization&#8221;, loadOrganization(&#8222;93000&#8221;):guid)<\/em> zwraca skonfigurowane warto\u015bci funkcji konfiguracji OLTP <em>Specyficzne funkcje krajowe<\/em> dla organizacji <em>93000<\/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>OLTP<\/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 wysy\u0142a\u0107 zapytania tylko do funkcji konfiguracyjnej na poziomie funkcji OLTP. Przed wykonaniem tej czynno\u015bci nale\u017cy u\u017cy\u0107 funkcji <em>isCustomizingAvailable<\/em>, aby upewni\u0107 si\u0119, \u017ce funkcja konfiguracji OLTP jest aktywna.<\/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>isCustomisingAvailable<\/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\u00a0 <em>help.getCustomizingValue<\/em> okre\u015bla, kt\u00f3re funkcje specyficzne dla kraju s\u0105 aktywowane dla organizacji.<\/p>\n<p>const LocalisationCountry as valueSet(com.cisag.app.customizing.general.LocalisationCountry);<\/p>\n<p>function create()<\/p>\n<p>{<\/p>\n<p>\u00a0 var p_organisation := loadOrganisation(parameters.ORGANIZATION);<\/p>\n<p>\u00a0 var p_function := &#8222;com.cisag.app.general.Localisation&#8221;;<\/p>\n<p>\u00a0 var r_isActivated := isCustomizingAvailable(p_function, p_organisation:guid);<\/p>\n<p>\u00a0 var r_country := &#8222;&#8221;;<\/p>\n<p>\u00a0 if (r_isActivated) {<\/p>\n<p>\u00a0\u00a0\u00a0 var customisingPart :=<\/p>\n<p>\u00a0\u00a0\u00a0\u00a0\u00a0 cast(CisObject(com.cisag.app.customizing.general.obj.Localisation),<\/p>\n<p>\u00a0\u00a0\u00a0\u00a0\u00a0 getCustomizingValue(p_function, p_organisation:guid));<\/p>\n<p>\u00a0\u00a0\u00a0 r_country := valueSetDescription(LocalisationCountry, customizingPart:country);<\/p>\n<p>\u00a0 }<\/p>\n<p>\u00a0 result.FUNCTION := p_function;<\/p>\n<p>\u00a0 result.IS_ACTIVATED := r_isActivated;<\/p>\n<p>\u00a0 result.COUNTRY := r_country;<\/p>\n<p>}<\/p>\n<p><\/div><\/section>\n<h5 id=\"iscustomisingavailable\" ><span class=\"ez-toc-section\" id=\"isCustomisingAvailable\"><\/span>isCustomisingAvailable<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>isCustomisingAvailable<\/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>isCustomizingAvailable<\/em> sprawdza, czy funkcja konfiguracji OLTP jest aktywna.<\/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>Boolean isCustomisingAvailable(String function)<\/p>\n<p>Boolean isCustomisingAvailable(String function, Guid organisation)<\/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>function <\/em>to w pe\u0142ni kwalifikowana nazwa techniczna funkcji konfiguracji OLTP.<\/p>\n<p><em>organisation <\/em>to identyfikator guid organizacji, dla kt\u00f3rej ma zosta\u0107 wys\u0142ane zapytanie o to, czy funkcja konfiguracji OLTP jest aktywna. Je\u015bli funkcja konfiguracyjna ma co najmniej jedno odniesienie organizacyjne, nale\u017cy okre\u015bli\u0107 organizacj\u0119.<\/p>\n<p>Dost\u0119pne funkcje konfiguracyjne i ich odniesienia organizacyjne mo\u017cna sprawdzi\u0107 w aplikacji <em>Obiekty deweloperskie<\/em>, wywo\u0142uj\u0105c obiekty deweloperskie typu <em>Funkcja<\/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 konfiguracji OLTP jest aktywna, funkcja zwraca <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>Je\u015bli okre\u015blona organizacja 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>isCustomizingAvailable(&#8222;com.cisag.app.general.Localization&#8221;, loadOrganisation(&#8222;93000&#8221;):guid)<\/em> sprawdza, czy funkcja dostosowywania <em>Specyficzne funkcje krajowe<\/em> jest aktywna dla organizacji <em>93000<\/em>. Funkcji <em>getCustomizingValue<\/em> nale\u017cy u\u017cy\u0107, aby okre\u015bli\u0107, dla kt\u00f3rego kraju aktywowane s\u0105 funkcje specyficzne dla kraju.<\/p>\n<p><em>isCustomizingAvailable(&#8222;com.cisag.app.inventory.Identifiers&#8221;, getCustomizingValue(&#8222;com.cisag.app.General&#8221;):company)<\/em> sprawdza, czy funkcja konfiguracji<em> Specyfikacje <\/em>jest aktywna dla klienta.<\/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>OLTP<\/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>Zapytania mo\u017cna wysy\u0142a\u0107 tylko do funkcji konfiguracji na poziomie funkcji 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>getCustomisingValue<\/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.isCustomizingAvailable<\/em> okre\u015bla, czy funkcja konfiguracji <em>Rezerwacje<\/em> jest aktywna dla klienta.<\/p>\n<p>function create()<\/p>\n<p>{<\/p>\n<p>\u00a0 var p_function := &#8222;com.cisag.app.inventory.FixedReservation&#8221;;<\/p>\n<p>\u00a0 var r_isAvailable := isCustomizingAvailable(p_function, getCustomizingValue(&#8222;com.cisag.app.General&#8221;):company);<\/p>\n<p>\u00a0 result.FUNCTION := p_function;<\/p>\n<p>\u00a0 result.VALUE := r_isAvailable;<\/p>\n<p>}<\/p>\n<p><\/div><\/section>\n<h5 id=\"loadorganisation\" ><span class=\"ez-toc-section\" id=\"loadOrganisation\"><\/span>loadOrganisation<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>loadOrganisation<\/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>loadOrganisation<\/em> otwiera organizacj\u0119 poprzez jej guid lub identyfikacj\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>CisObject(com.cisag.app.multiorg.obj.Organisation) loadOrganisation(String code)<\/p>\n<p>CisObject(com.cisag.app.multiorg.obj.Organisation) loadOrganisation(Guid guid)<\/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>code<\/em> jest identyfikatorem organizacji.<\/p>\n<p><em>guid<\/em> to giud organizacji.<\/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>Okre\u015blona organizacja typu danych <em>CisObject(com.cisag.app.multiorg.obj.Organisation).<\/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 organizacja o okre\u015blonym identyfikatorze lub identyfikatorze guid, dla obiektu <em>CisObject<\/em> zwracana jest warto\u015b\u0107 domy\u015blna <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>loadOrganisation(&#8222;90000&#8221;)<\/em> zwraca organizacj\u0119 o identyfikatorze<em> 90000<\/em>.<\/p>\n<p><em>loadOrganisation(getCustomizingValue(&#8222;com.cisag.app.General&#8221;):company)<\/em> zwraca klienta.<\/p>\n<p><em>loadOrganisation(cast(Guid, getResultList(&#8222;SELECT o:guid FROM com.cisag.app.multiorg.obj.Organization o ORDER BY o:updateInfo.createTime ASC&#8221;, list(), 1)[0][0]))<\/em> okre\u015bla klienta przy za\u0142o\u017ceniu, \u017ce klient jest zawsze wprowadzany jako pierwsza organizacja.<\/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>OLTP<\/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>Organizacja ma ten sam identyfikator guid, co powi\u0105zany z ni\u0105 partner. Aby okre\u015bli\u0107 pe\u0142ne w\u0142a\u015bciwo\u015bci organizacji, nale\u017cy prze\u015bledzi\u0107 relacj\u0119 <em>Partner<\/em>. Na przyk\u0142ad wyra\u017cenie <em>toLower(getCustomisingValue(&#8222;com.cisag.app.General&#8221;)-&gt;Company-&gt;AddressData-&gt;Country:isoCode)<\/em> zwraca kraj klienta jako 2-cyfrowy kod ISO pisany ma\u0142ymi literami.<\/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>loadPartner<\/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.loadOrganisation<\/em> otwiera organizacj\u0119 i okre\u015bla jej typy organizacji.<\/p>\n<p>const OrganizationHierarchyType as valueSet(com.cisag.app.multiorg.OrganizationHierarchyType);<\/p>\n<p>const Separator := &#8222;, &#8222;;<\/p>\n<p>function create()<\/p>\n<p>{<\/p>\n<p>\u00a0 var p_id := parameters.CODE;<\/p>\n<p>\u00a0 var r_types := &#8222;&#8221;;<\/p>\n<p>\u00a0 var r_object as CisObject(com.cisag.app.multiorg.obj.Organisation);<\/p>\n<p>\u00a0 r_object := loadOrganisation(parameters.CODE);<\/p>\n<p>\u00a0 if (not isNull(r_object)) {<\/p>\n<p>\u00a0\u00a0\u00a0 var OQL :=<\/p>\n<p>\u00a0\u00a0\u00a0\u00a0\u00a0 &#8222;SELECT FROM com.cisag.app.multiorg.obj.OrganisationHierarchy oh &#8221; +<\/p>\n<p>\u00a0\u00a0\u00a0\u00a0\u00a0 &#8222;WHERE oh:organisation = ?&#8221;;<\/p>\n<p>\u00a0\u00a0\u00a0 var oList := getCisObjectList(OQL, list(r_object:guid), 10);<\/p>\n<p>\u00a0\u00a0\u00a0 for (oh as CisObject(com.cisag.app.multiorg.obj.OrganisationHierarchy) : oList)<\/p>\n<p>\u00a0\u00a0\u00a0\u00a0\u00a0 r_types := r_types + Separator +<\/p>\n<p>\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 valueSetDescription(OrganisationHierarchyType, oh:type);<\/p>\n<p>\u00a0\u00a0\u00a0 r_types := substring(r_types, length(Separator));<\/p>\n<p>\u00a0 }<\/p>\n<p>\u00a0 result.IS_NULL := isNull(r_object);<\/p>\n<p>\u00a0 result.TYPES := r_types;<\/p>\n<p>}<\/p>\n<p><\/div><\/section>\n<h4 id=\"funkcje-dla-partnerow\" ><span class=\"ez-toc-section\" id=\"Funkcje_dla_partnerow\"><\/span>Funkcje dla partner\u00f3w<span class=\"ez-toc-section-end\"><\/span><\/h4>\n<p>Funkcje dla partner\u00f3w obejmuj\u0105 funkcje otwierania partner\u00f3w i ich r\u00f3l, a tak\u017ce inne dane zwi\u0105zane z partnerami:<\/p>\n<ul>\n<li>getGreeting<\/li>\n<li>getPreferredCommunicationData<\/li>\n<li>getValediction<\/li>\n<li>loadCommunicationData<\/li>\n<li>loadContacts<\/li>\n<li>loadCustomer<\/li>\n<li>loadPartner<\/li>\n<li>loadPartnerAccountingData<\/li>\n<li>loadPartnerMarketingInfo<\/li>\n<li>loadResponsibleOfPartner<\/li>\n<li>loadSupplier<\/li>\n<li>loadTargetsOfPartnerRelations<\/li>\n<li>resolvePartner<\/li>\n<li>Dalsze deklaracje funkcji dla partner\u00f3w<\/li>\n<\/ul>\n<h5 id=\"getgreeting\" ><span class=\"ez-toc-section\" id=\"getGreeting\"><\/span>getGreeting<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>getGreeting<\/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>getGreeting<\/em> zwraca spersonalizowane powitanie dla partnera.<\/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>String getGreeting(Guid person)<\/p>\n<p>String getGreeting(Guid person, String context)<\/p>\n<p>String getGreeting(Guid person, String context, String language)<\/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> to identyfikator partnera.<\/p>\n<p><em>context<\/em> to kontekst dla formu\u0142y powitania. Je\u015bli nie okre\u015blono kontekstu, powitanie jest okre\u015blane bez kontekstu.<\/p>\n<p><em>language<\/em> to kod ISO j\u0119zyka. Je\u015bli j\u0119zyk nie jest okre\u015blony, u\u017cywany jest bie\u017c\u0105cy j\u0119zyk tre\u015bci. Mo\u017cna to okre\u015bli\u0107 za pomoc\u0105 funkcji <em>setContentLangauge<\/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>Powitanie osobiste jest okre\u015blane przy u\u017cyciu formu\u0142y powitania w aplikacji <em>Formy grzeczno\u015bciowe<\/em>. Je\u015bli dla okre\u015blonego kontekstu nie istnieje formu\u0142a powitania pasuj\u0105ca do zwrotu grzeczno\u015bciowego i tytu\u0142u partnera, formu\u0142a powitania jest okre\u015blana zgodnie ze zwrotem grzeczno\u015bciowym i kontekstem.<\/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 formu\u0142y powitania nie s\u0105 dost\u0119pne, np. poniewa\u017c kontekst<em> runtime<\/em> nie ma bazy danych OLTP, u\u017cywana jest standardowa formu\u0142a powitania z funkcji konfiguracji <em>Workflow Management<\/em>. Standardowa formu\u0142a powitania jest r\u00f3wnie\u017c u\u017cywana, je\u015bli u partnera nie wprowadzono \u017cadnego powitania lub je\u015bli nie ma formu\u0142y powitania pasuj\u0105cej do powitania i kontekstu.<\/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>getGreeting(&#8222;70010&#8221;)<\/em> zwraca form\u0119 grzeczno\u015bciow\u0105 dla partnera <em>70010<\/em>.<\/p>\n<p><em>getGreeting(&#8222;70010&#8221;, &#8222;FORMAL&#8221;)<\/em> zwraca osobiste powitanie z kontekstem <em>FORMAL<\/em> dla partnera <em>70010<\/em>.<\/p>\n<p><em>getGreeting(&#8222;70010&#8221;, &#8222;&#8221;, &#8222;en&#8221;)<\/em> zwraca osobiste powitanie bez specjalnego kontekstu dla partnera <em>70010<\/em> w j\u0119zyku angielskim.<\/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>OLTP<\/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 odbiorca wiadomo\u015bci e-mail nie jest wpisany jako u\u017cytkownik w systemie lub nie jest przypisany do partnera, funkcja <em>getGreeting<\/em> nie mo\u017ce by\u0107 u\u017cyta do okre\u015blenia osobistego powitania.<\/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>getValediction<\/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.getGreeting<\/em> zwraca spersonalizowane powitanie dla partnera.<\/p>\n<p>function create()<\/p>\n<p>{<\/p>\n<p>\u00a0 var p_context := parameters.CONTEXT;<\/p>\n<p>\u00a0 var p_language := parameters.CONTEXT;<\/p>\n<p>\u00a0 var p_partner := loadPartner(parameters.PARTNER);<\/p>\n<p>\u00a0 var r_greeting := &#8222;&#8221;;<\/p>\n<p>\u00a0 if (not isNull(p_partner)) {<\/p>\n<p>\u00a0\u00a0\u00a0 if (p_context &lt;&gt; &#8222;&#8221; and p_language &lt;&gt; &#8222;&#8221;)<\/p>\n<p>\u00a0\u00a0\u00a0\u00a0\u00a0 r_greeting := getGreeting(p_partner:guid, p_context, p_language);<\/p>\n<p>\u00a0\u00a0\u00a0 else if (p_context &lt;&gt; &#8222;&#8221; and p_language = &#8222;&#8221;)<\/p>\n<p>\u00a0\u00a0\u00a0\u00a0\u00a0 r_greeting := getGreeting(p_partner:guid, p_context);<\/p>\n<p>\u00a0\u00a0\u00a0 else if (p_context = &#8222;&#8221; and p_language &lt;&gt; &#8222;&#8221;)<\/p>\n<p>\u00a0\u00a0\u00a0\u00a0\u00a0 r_greeting := getGreeting(p_partner:guid, &#8222;&#8221;, p_language);<\/p>\n<p>\u00a0\u00a0\u00a0 inny<\/p>\n<p>\u00a0\u00a0\u00a0\u00a0\u00a0 r_greeting := getGreeting(p_partner:guid, p_context, p_language);<\/p>\n<p>\u00a0 }<\/p>\n<p>\u00a0 result.GREETING := r_greeting;<\/p>\n<p>}<\/p>\n<p><\/div><\/section>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\">Przyk\u0142ad: spersonalizowane powitanie w powiadomieniach e-mail<\/p>\n<p>W poni\u017cszym przyk\u0142adzie powiadomienie e-mail o nowych zadaniach workflow ma zosta\u0107 rozszerzone o osobiste powitanie dla operatora.<\/p>\n<p><em>Wprowadzenie formu\u0142y grzeczno\u015bciowej<\/em><\/p>\n<p>Po pierwsze, nale\u017cy upewni\u0107 si\u0119, \u017ce pozdrowienie jest przechowywane w partnerze dla os\u00f3b, kt\u00f3re mog\u0105 otrzymywa\u0107 powiadomienia e-mail w <em>Workflow Management<\/em>. Aby u\u017cy\u0107 osobistego powitania neutralnego pod wzgl\u0119dem p\u0142ci (np. dla trzeciej p\u0142ci), mo\u017cna wprowadzi\u0107 odpowiednie powitanie i zapisa\u0107 je w partnerze.<\/p>\n<p>Nast\u0119pnie wprowadzi\u0107 formu\u0142\u0119 powitania w aplikacji <em>Formy grzeczno\u015bciowe<\/em>. Dost\u0119pne s\u0105 tam nast\u0119puj\u0105ce symbole zast\u0119pcze (parametry) dla cz\u0105stek nazwy:<\/p>\n<ul>\n<li>{name}<\/li>\n<li>{givenName}<\/li>\n<li>{middleNames}<\/li>\n<li>{surname}<\/li>\n<li>{fullName}<\/li>\n<\/ul>\n<p>Mo\u017cna u\u017cy\u0107 symbolu zast\u0119pczego {void}, aby pomin\u0105\u0107 osobiste powitanie lub zamkni\u0119cie w jednym j\u0119zyku, podczas gdy jest ono wy\u015bwietlane w innych j\u0119zykach. W funkcji konfiguracji <em>Workflow Management symbol <\/em>zast\u0119pczy odbiorcy jest r\u00f3wnie\u017c dost\u0119pny dla nazwy u\u017cytkownika odbiorcy. Je\u015bli u\u017cytkownik chce u\u017cywa\u0107 r\u00f3\u017cnych powita\u0144 dla odbiorc\u00f3w wewn\u0119trznych i zewn\u0119trznych, nale\u017cy zapisa\u0107 konteksty w funkcji konfiguracji i wprowadzi\u0107 odpowiedni\u0105 formu\u0142\u0119 powitania.<\/p>\n<p><em>Dostosowywanie szablonu wiadomo\u015bci e-mail<\/em><\/p>\n<p>Po wprowadzeniu danych podstawowych wymaganych dla osobistego powitania, nale\u017cy wprowadzi\u0107 szablon powiadomienia e-mail dla nowych zada\u0144 workflow. Standardowe szablony mo\u017cna wyszukiwa\u0107 w tabeli \u0142a\u0144cuch\u00f3w <em>com.cisag.sys.workflow.template.MailTemplates<\/em>. (wi\u0119cej informacji znajduje si\u0119 w opisie funkcji <em>setMailTemplate<\/em> w dokumentacji <em>J\u0119zyk skryptowy systemu: Funkcje workflow<\/em>.)<\/p>\n<p>Standardowy szablon dla nowych zada\u0144 workflow jest zdefiniowany we wpisie tabeli ci\u0105g\u00f3w znak\u00f3w ze sta\u0142\u0105 <em>DEFAULT<\/em>:<\/p>\n<p>&lt;html&gt;<\/p>\n<p>\u00a0\u00a0\u00a0 &lt;title&gt;New task: {$code} {$subject}&lt;\/title&gt;<\/p>\n<p>\u00a0\u00a0\u00a0 &lt;body&gt;<\/p>\n<p>\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 &lt;p&gt;Witam {$odbiorca},&lt;\/p&gt;<\/p>\n<p>\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 &lt;p&gt;Jeste\u015b nowym edytorem zadania &lt;a href=&#8221;{$workitemUrl}&#8221;&gt;{$subject}&lt;\/a&gt; w statusie &amp;quot;{$state}&amp;quot;.&lt;\/p&gt;<\/p>\n<p>\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 &lt;p&gt;Zadanie powinno mie\u0107 priorytet &amp;quot;{$priority}&amp;quot; i zosta\u0107 uko\u0144czone do {$endTime}. Aby uzyska\u0107 wi\u0119cej informacji, zapoznaj si\u0119 z dzia\u0142aniem&lt;a href=&#8221;{$activityUrl}&#8221;&gt;{$code}&lt;\/a&gt; i nast\u0119puj\u0105cym opisem zadania:&lt;\/p&gt;<\/p>\n<p>\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 &lt;p&gt;&lt;dir&gt;{$description}&lt;\/dir&gt;&lt;\/p&gt;<\/p>\n<p>\u00a0\u00a0\u00a0 &lt;\/body&gt;<\/p>\n<p>&lt;\/html&gt;<\/p>\n<p>Poniewa\u017c tabela ci\u0105g\u00f3w znak\u00f3w jest obiektem deweloperskim, standardowy szablon mo\u017cna dostosowa\u0107 tylko w systemie deweloperskim. W systemie produkcyjnym nale\u017cy skopiowa\u0107 zawarto\u015b\u0107 do pliku o nazwie <em>Mailtemplate_en.html<\/em>, kt\u00f3ry nale\u017cy zapisa\u0107 w Knowledge Store odpowiedniej bazy danych w katalogu <em>Documents\/Workflow\/.<\/em> Aby zdefiniowa\u0107 szablony w innych j\u0119zykach, nale\u017cy zast\u0105pi\u0107 skr\u00f3t <em>de<\/em> kodem ISO \u017c\u0105danego j\u0119zyka. Mo\u017cna tworzy\u0107 szablony w dowolnym j\u0119zyku i u\u017cywa\u0107 ich w definicjach dzia\u0142a\u0144, tzn. U\u017cytkownik nie jest ograniczony do j\u0119zyk\u00f3w tre\u015bci zainstalowanych w systemie.<\/p>\n<p>Na koniec zamieni\u0107 pierwsz\u0105 lini\u0119 po znaczniku <em>&lt;body&gt;<\/em> na<\/p>\n<p>\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 &lt;p&gt;{$greeting},&lt;\/p&gt;<\/p>\n<p>Opcjonalnie mo\u017cna r\u00f3wnie\u017c doda\u0107 zamkni\u0119cie w linii przed znacznikiem ko\u0144cowym <em>&lt;\/body&gt;<\/em>:<\/p>\n<p>\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 &lt;p&gt;{$valediction},&lt;\/p&gt;<\/p>\n<p>Informacje na temat tego, jakie inne symbole zast\u0119pcze (parametry) s\u0105 dost\u0119pne w szablonach wiadomo\u015bci e-mail mo\u017cna znale\u017a\u0107 w dokumencie <em>Silnik workflow<\/em>.<\/div><\/section>\n<h5 id=\"getpreferredcommunicationdata\" ><span class=\"ez-toc-section\" id=\"getPreferredCommunicationData\"><\/span>getPreferredCommunicationData<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>getPreferredCommunicationData<\/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>getPreferredCommunicationData<\/em> zwraca preferowane po\u0142\u0105czenie komunikacyjne medium dla partnera.<\/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>String getPreferredCommunicationData(Guid partner, Number media)<\/p>\n<p>String getPreferredCommunicationData(String partner, Number media)<\/p>\n<p>String getPreferredCommunicationData(Guid partner, String medium)<\/p>\n<p>String getPreferredCommunicationData(String partner, String medium)<\/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>partner<\/em> to guid lub identyfikator partnera.<\/p>\n<p><em>media<\/em> to numer medium komunikacyjnego przechowywanego w atrybucie <em>media<\/em> o tej samej nazwie w obiekcie biznesowym <em>com.cisag.app.general.obj.CommunicationMethod<\/em>. U\u017cycie tego atrybutu nie jest ju\u017c obs\u0142ugiwane od wersji 5.1.<\/p>\n<p><em>medium<\/em> to pe\u0142na nazwa techniczna medium komunikacyjnego zgodnie z atrybutem<em> medium<\/em> o tej samej nazwie. Aby okre\u015bli\u0107 media komunikacyjne dost\u0119pne w systemie, mo\u017cna na przyk\u0142ad wyeksportowa\u0107 wszystkie typy komunikacji za po\u015brednictwem BIS i sprawdzi\u0107 atrybut <em>medium<\/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 preferowane po\u0142\u0105czenie komunikacyjne dla partnera. Uwzgl\u0119dniane s\u0105 tylko po\u0142\u0105czenia okre\u015blonego medium komunikacyjnego.<\/p>\n<p>Je\u015bli \u017cadne po\u0142\u0105czenie komunikacyjne nie jest oznaczone jako preferowane dla no\u015bnika, zwracane jest dowolne po\u0142\u0105czenie komunikacyjne dla tego no\u015bnika. Je\u015bli nie istnieje \u017cadne po\u0142\u0105czenie komunikacyjne dla kombinacji partnera i medium, 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>getPreferredCommunicationData(&#8222;10010&#8221;, &#8222;com.cisag.app.general.CommunicationMediumEMail&#8221;)<\/em> zwraca preferowany adres e-mail partnera <em>10010<\/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>OLTP<\/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>loadCommunicationData<\/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.getPreferredCommunicationData<\/em> zwraca preferowane po\u0142\u0105czenie komunikacyjne medium dla partnera.<\/p>\n<p>function create()<\/p>\n<p>{<\/p>\n<p>\u00a0 var p_partner := parameters.PARTNER;<\/p>\n<p>\u00a0 var p_methodString := parameters.METHOD_STRING;<\/p>\n<p>\u00a0 var p_methodNumber := parameters.METHOD_NUMBER;<\/p>\n<p>\u00a0 var r_communicationData as String;<\/p>\n<p>\u00a0 if (parameters.METHOD_NUMBER &lt;&gt; 0)<\/p>\n<p>\u00a0\u00a0\u00a0 r_communicationData := getPreferredCommunicationData(p_partner, p_methodNumber);<\/p>\n<p>\u00a0 if (parameters.METHOD_STRING &lt;&gt; &#8222;&#8221;)<\/p>\n<p>\u00a0\u00a0\u00a0 r_communicationData := getPreferredCommunicationData(p_partner, p_methodString);<\/p>\n<p>\u00a0 result.DATA := r_communicationData;<\/p>\n<p>}<\/div><\/section>\n<h5 id=\"getvalediction\" ><span class=\"ez-toc-section\" id=\"getValediction\"><\/span>getValediction<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>getValediction<\/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>getValediction<\/em> zwraca spersonalizowan\u0105 konkluzj\u0119 dla partnera.<\/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>String getValediction(Guid person)<\/p>\n<p>String getValediction(Guid person, String context)<\/p>\n<p>String getValediction(Guid person, String context, String language)<\/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> to identyfikator partnera.<\/p>\n<p><em>context<\/em> to kontekst dla wniosku. Je\u015bli nie okre\u015blono kontekstu, wniosek jest okre\u015blany bez kontekstu.<\/p>\n<p><em>language<\/em> to kod ISO j\u0119zyka. Je\u015bli j\u0119zyk nie jest okre\u015blony, u\u017cywany jest bie\u017c\u0105cy j\u0119zyk tre\u015bci. Mo\u017cna to okre\u015bli\u0107 za pomoc\u0105 funkcji <em>setContentLangauge<\/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>Osobiste zamkni\u0119cie jest okre\u015blane przy u\u017cyciu formu\u0142y zamkni\u0119cia w aplikacji <em>Formy grzeczno\u015bciowe<\/em>. Je\u015bli nie ma formy grzeczno\u015bciowej dla okre\u015blonego kontekstu, kt\u00f3ra pasowa\u0142aby do zwrotu grzeczno\u015bciowego i tytu\u0142u partnera, formu\u0142a powitania jest okre\u015blana zgodnie ze zwrotem grzeczno\u015bciowym i kontekstem.<\/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 formu\u0142y powitania nie s\u0105 dost\u0119pne, np. poniewa\u017c kontekst<em> runtime <\/em>nie ma bazy danych OLTP, u\u017cywana jest standardowa formu\u0142a zamkni\u0119cia z funkcji konfiguracji <em>Workflow Management<\/em>. Standardowa formu\u0142a zamkni\u0119cia jest r\u00f3wnie\u017c u\u017cywana, je\u015bli w partnerze nie wprowadzono powitania lub je\u015bli nie ma formu\u0142y powitania pasuj\u0105cej do powitania i kontekstu.<\/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>getValediction(&#8222;70010&#8221;)<\/em> zwraca osobist\u0105 konkluzj\u0119 dla partnera <em>70010<\/em>.<\/p>\n<p><em>getValediction(&#8222;70010&#8221;, &#8222;FORMAL&#8221;)<\/em> zwraca spersonalizowany wniosek z kontekstem <em>FORMAL<\/em> dla partnera <em>70010<\/em>.<\/p>\n<p><em>getValediction(&#8222;70010&#8221;, &#8222;&#8221;, &#8222;en&#8221;)<\/em> zwraca osobisty wniosek bez \u017cadnego specjalnego kontekstu dla partnera <em>70010<\/em> w j\u0119zyku angielskim.<\/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>OLTP<\/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 odbiorca wiadomo\u015bci e-mail nie jest zdefiniowany jako u\u017cytkownik w systemie lub nie jest przypisany do partnera, funkcja <em>getValediction<\/em> nie mo\u017ce by\u0107 u\u017cyta do okre\u015blenia osobistej konkluzji.<\/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>getGreeting<\/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.getValediction<\/em> zwraca osobist\u0105 konkluzj\u0119 dla partnera.<\/p>\n<p>function create()<\/p>\n<p>{<\/p>\n<p>\u00a0 var p_context := parameters.CONTEXT;<\/p>\n<p>\u00a0 var p_language := parameters.CONTEXT;<\/p>\n<p>\u00a0 var p_partner := loadPartner(parameters.PARTNER);<\/p>\n<p>\u00a0 var r_valediction := &#8222;&#8221;;<\/p>\n<p>\u00a0 if (not isNull(p_partner)) {<\/p>\n<p>\u00a0\u00a0\u00a0 if (p_context &lt;&gt; &#8222;&#8221; and p_language &lt;&gt; &#8222;&#8221;)<\/p>\n<p>\u00a0\u00a0\u00a0\u00a0\u00a0 r_valediction := getValediction(p_partner:guid, p_context, p_language);<\/p>\n<p>\u00a0\u00a0\u00a0 else if (p_context &lt;&gt; &#8222;&#8221; and p_language = &#8222;&#8221;)<\/p>\n<p>\u00a0\u00a0\u00a0\u00a0\u00a0 r_valediction := getValediction(p_partner:guid, p_context);<\/p>\n<p>\u00a0\u00a0\u00a0 else if (p_context = &#8222;&#8221; and p_language &lt;&gt; &#8222;&#8221;)<\/p>\n<p>\u00a0\u00a0\u00a0\u00a0\u00a0 r_valediction := getValediction(p_partner:guid, &#8222;&#8221;, p_language);<\/p>\n<p>\u00a0\u00a0\u00a0 inny<\/p>\n<p>\u00a0\u00a0\u00a0\u00a0\u00a0 r_valediction := getValediction(p_partner:guid, p_context, p_language);<\/p>\n<p>\u00a0 }<\/p>\n<p>\u00a0 result.VALEDICTION := r_valediction;<\/p>\n<p>}<\/div><\/section>\n<h5 id=\"loadcommunicationdata\" ><span class=\"ez-toc-section\" id=\"loadCommunicationData\"><\/span>loadCommunicationData<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>loadCommunicationData<\/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>loadCommunicationData<\/em> zwraca po\u0142\u0105czenia komunikacyjne typu komunikacyjnego dla partnera jako list\u0119 wpisanych obiekt\u00f3w <em>CisObjects<\/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>CisObject(com.cisag.app.general.obj.CommunicationData)[] loadCommunicationData(String partner, String method)<\/p>\n<p>CisObject(com.cisag.app.general.obj.CommunicationData)[] loadCommunicationData(String partner, Guid method)<\/p>\n<p>CisObject(com.cisag.app.general.obj.CommunicationData)[] loadCommunicationData(Guid partner, String method)<\/p>\n<p>CisObject(com.cisag.app.general.obj.CommunicationData)[] loadCommunicationData(Guid partner, Guid method)<\/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>partner<\/em> to guid lub identyfikator partnera.<\/p>\n<p><em>method<\/em> jest identyfikatorem typu komunikacji. Dost\u0119pne typy komunikacji mo\u017cna sprawdzi\u0107 w aplikacji <em>Sposoby komunikacji<\/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 okre\u015bla po\u0142\u0105czenia komunikacyjne partnera <em>partner<\/em> poprzez jego identyfikator guid lub identyfikator i zwraca je jako list\u0119 wpisanych obiekt\u00f3w <em>CisObjects<\/em>. Uwzgl\u0119dniane s\u0105 tylko po\u0142\u0105czenia okre\u015blonego typu komunikacji <em>method<\/em>.<\/p>\n<p>Je\u015bli po\u0142\u0105czenie komunikacyjne jest oznaczone jako preferowane, jest ono przesy\u0142ane jako pierwszy element na li\u015bcie.<\/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 ma danych komunikacyjnych dla typu komunikacji dla partnera, 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>loadCommunicationData(&#8222;70010&#8221;, &#8222;300&#8221;) zwraca dane komunikacyjne partnera <em>70010<\/em> dla sposobu komunikacji <em>300<\/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>OLTP<\/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 \u017cadne po\u0142\u0105czenie komunikacyjne nie jest oznaczone jako preferowane, w\u00f3wczas jedno z niepreferowanych po\u0142\u0105cze\u0144 komunikacyjnych jest przekazywane jako pierwszy element listy.<\/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>getPreferredCommunicationData<\/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.loadCommunicationData<\/em> zwraca po\u0142\u0105czenia komunikacyjne typu komunikacji dla partnera.<\/p>\n<p>function create()<\/p>\n<p>{<\/p>\n<p>\u00a0 var p_partner := parameters.PARTNER;<\/p>\n<p>\u00a0 var p_method := parameters.METHOD;<\/p>\n<p>\u00a0 var r_communicationData as String[];<\/p>\n<p>\u00a0 var r_preferred := &#8222;&#8221;;<\/p>\n<p>\u00a0 var r_description := &#8222;&#8221;;<\/p>\n<p>\u00a0 var communicationData := loadCommunicationData(p_partner, p_method);<\/p>\n<p>\u00a0 if (not isNull(communicationData)) {<\/p>\n<p>\u00a0\u00a0\u00a0 for (cd as CisObject(com.cisag.app.general.obj.CommunicationData) : communicationData) {<\/p>\n<p>\u00a0\u00a0\u00a0\u00a0\u00a0 add(r_communicationData, cd:commData);<\/p>\n<p>\u00a0\u00a0\u00a0\u00a0\u00a0 if (cd:preferred) {<\/p>\n<p>\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 r_preferred := cd:commData;<\/p>\n<p>\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 r_description := cd-&gt;Method:description;<\/p>\n<p>\u00a0\u00a0\u00a0\u00a0\u00a0 }<\/p>\n<p>\u00a0\u00a0\u00a0 }<\/p>\n<p>\u00a0 }<\/p>\n<p>\u00a0 result.IS_NULL := isNull(communicationData);<\/p>\n<p>\u00a0 result.DATA := r_communicationData;<\/p>\n<p>\u00a0 result.PREFERRED := r_preferred;<\/p>\n<p>\u00a0 result.DESCRIPTION := r_description;<\/p>\n<p>}<\/div><\/section>\n<h5 id=\"loadcontacts\" ><span class=\"ez-toc-section\" id=\"loadContacts\"><\/span>loadContacts<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>loadContacts<\/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>loadContact<\/em> zwraca og\u00f3lne osoby kontaktowe partnera jako list\u0119 wpisanych obiekt\u00f3w <em>CisObjects<\/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>CisObject(com.cisag.app.general.obj.Partner)[] loadContacts(String partner)<\/p>\n<p>CisObject(com.cisag.app.general.obj.Partner)[] loadContacts(Guid partner)<\/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>partner<\/em> to guid lub identyfikator partnera.<\/p>\n<p>Og\u00f3lne osoby kontaktowe mo\u017cna sprawdzi\u0107 w podstawowych danych partnera.<\/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 okre\u015bla og\u00f3lne osoby kontaktowe partnera <em>partner<\/em> za pomoc\u0105 ich identyfikatora guid lub identyfikacji i zwraca je jako list\u0119 wpisanych obiekt\u00f3w <em>CisObjects<\/em>. Je\u015bli jedna z os\u00f3b kontaktowych jest oznaczona jako preferowana, jest ona przekazywana jako pierwszy element listy.<\/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 ma og\u00f3lnych os\u00f3b kontaktowych dla partnera, 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>loadContacts(&#8222;10010&#8221;)<\/em> zwraca og\u00f3lne osoby kontaktowe partnera <em>10010<\/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>OLTP<\/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 \u017cadna osoba kontaktowa nie jest oznaczona jako preferowana, w\u00f3wczas jedna z niepreferowanych os\u00f3b kontaktowych jest przenoszona jako pierwszy element listy.<\/p>\n<p>Aby okre\u015bli\u0107 osoby kontaktowe w dziale sprzeda\u017cy i zaopatrzenia, nale\u017cy u\u017cy\u0107 funkcji <em>loadTargetsOfPartnerRelations<\/em> dla typ\u00f3w relacji partnerskich <em>Kontakt Sprzeda\u017c<\/em> i <em>Kontakt Zakup<\/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>loadTargetsOfPartnerRelations<\/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> zwraca og\u00f3lne osoby kontaktowe partnera.<\/p>\n<p>function create()<\/p>\n<p>{<\/p>\n<p>\u00a0 var p_partner := parameters.PARTNER;<\/p>\n<p>\u00a0 var r_contacts as String[];<\/p>\n<p>\u00a0 var r_preferred := &#8222;&#8221;;<\/p>\n<p>\u00a0 var contacts := loadContacts(p_partner);<\/p>\n<p>\u00a0 if (not isNull(contacts)) {<\/p>\n<p>\u00a0\u00a0\u00a0 for (p as CisObject(com.cisag.app.general.obj.Partner) : contacts) {<\/p>\n<p>\u00a0\u00a0\u00a0\u00a0\u00a0 add(r_contacts, p:number);<\/p>\n<p>\u00a0\u00a0\u00a0\u00a0\u00a0 if (r_preferred = &#8222;&#8221;)<\/p>\n<p>\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 r_preferred := p:number;<\/p>\n<p>\u00a0\u00a0\u00a0 }<\/p>\n<p>\u00a0 }<\/p>\n<p>\u00a0 result.IS_NULL := isNull(contacts);<\/p>\n<p>\u00a0 result.CONTACTS := r_contacts;<\/p>\n<p>\u00a0 result.PREFERRED := r_preferred;<\/p>\n<p>}<\/div><\/section>\n<h5 id=\"loadcustomer\" ><span class=\"ez-toc-section\" id=\"loadCustomer\"><\/span>loadCustomer<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>loadCustomer<\/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>loadCustomer<\/em> zwraca dane klienta partnera.<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 349px;\">\n<td style=\"height: 349px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Podpisy<\/p>\n<\/td>\n<td style=\"height: 349px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>CisObject(com.cisag.app.sales.obj.Customer) loadCustomer(String partner, String organisation)<\/p>\n<p>CisObject(com.cisag.app.sales.obj.Customer) loadCustomer(String partner, Guid organisation)<\/p>\n<p>CisObjectCustomer(com.cisag.app.sales.obj.Customer) load(Guid partner, String organisation)<\/p>\n<p>CisObject(com.cisag.app.sales.obj.Customer) loadCustomer(Guid partner, Guid organisation)<\/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>Parametry<\/p>\n<\/td>\n<td style=\"height: 151px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>partner<\/em> to identyfikator lub identyfikator guid partnera, kt\u00f3rego dane klienta maj\u0105 zosta\u0107 otwarte.<\/p>\n<p><em>organisation<\/em> to identyfikator guid lub identyfikator organizacji sprzeda\u017cy.<\/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 aktualnie obowi\u0105zuj\u0105ce dane klienta okre\u015blonego partnera jako wpisany obiekt <em>CisObject<\/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>\u0179r\u00f3d\u0142a b\u0142\u0119d\u00f3w<\/p>\n<\/td>\n<td style=\"height: 151px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Je\u015bli organizacja nie posiada danych klienta dla partnera, dla obiektu <em>CisObject<\/em> zwracana jest warto\u015b\u0107 domy\u015blna <em>null<\/em>.<\/p>\n<p>Je\u015bli <em>organisation<\/em> nie jest organizacj\u0105 sprzeda\u017cy, wyst\u0105pi b\u0142\u0105d uruchomienia.<\/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>loadCustomer(&#8222;10010&#8221;, &#8222;90000&#8221;)<\/em> zwraca dane klienta partnera <em>10010<\/em> dla organizacji sprzeda\u017cy <em>90000<\/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>OLTP<\/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>Status blokowania danych klienta zwi\u0105zany z organizacj\u0105 mo\u017cna znale\u017a\u0107 w obiekcie biznesowym <em>com.cisag.app.general.obj.OrganizationalUnitPartner<\/em>. Okre\u015bla on r\u00f3wnie\u017c, kt\u00f3ra organizacja jest odpowiedzialna za przetwarzanie danych klienta. Informacje o tym, czy organizacja przetwarza w\u0142asne dane klient\u00f3w, czy je dziedziczy, mo\u017cna znale\u017a\u0107 w dokowanym oknie <em>Struktura organizacyjna<\/em> aplikacji <em>Partnerzy<\/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\">\n<p><em>loadPartner<\/em><em>, <\/em><em>loadPartnerAccountingData<\/em><em>, <\/em><em>loadPartnerMarketingInfo<\/em><em>, <\/em><em>loadSupplier<\/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.loadCustomer<\/em> zwraca dane klienta partnera.<\/p>\n<p>function create()<\/p>\n<p>{<\/p>\n<p>\u00a0 var p_partner := parameters.PARTNER;<\/p>\n<p>\u00a0 var p_organisation := parameters.ORGANIZATION;<\/p>\n<p>\u00a0 var r_customer := &#8222;&#8221;;<\/p>\n<p>\u00a0 var customer := loadCustomer(p_partner, p_organisation);<\/p>\n<p>\u00a0 if (not isNull(customer))<\/p>\n<p>\u00a0\u00a0\u00a0 r_customer := customer-&gt;Partner:number;<\/p>\n<p>\u00a0 result.IS_NULL := isNull(customer);<\/p>\n<p>\u00a0 result.CUSTOMER := r_customer;<\/p>\n<p>}<\/div><\/section>\n<h5 id=\"loadpartner\" ><span class=\"ez-toc-section\" id=\"loadPartner\"><\/span>loadPartner<span class=\"ez-toc-section-end\"><\/span><\/h5>\n<table style=\"border-style: outset; border-color: #000000; background-color: #ffffff; width: 100%; height: 908px;\">\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>loadPartner<\/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>loadPartner<\/em> zwraca partnera jako typowany <em>CisObject<\/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>Podpisy<\/p>\n<\/td>\n<td style=\"height: 118px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>CisObject(com.cisag.app.general.obj.Partner) loadPartner(String number)<\/p>\n<p>CisObject(com.cisag.app.general.obj.Partner) loadPartner(Guid guid)<\/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>number<\/em> jest identyfikatorem partnera.<\/p>\n<p><em>guid<\/em> to identyfikator guid partnera.<\/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 aktualnie obowi\u0105zuj\u0105cego partnera jako wpisany obiekt <em>CisObject<\/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>\u0179r\u00f3d\u0142a b\u0142\u0119d\u00f3w<\/p>\n<\/td>\n<td style=\"height: 100px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Je\u015bli nie ma partnera o identyfikatorze <em>number<\/em> lub identyfikatorze <em>guid<\/em>, dla obiektu<em> CisObject <\/em>zwracana jest warto\u015b\u0107 domy\u015blna <em>null<\/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>Przyk\u0142ady<\/p>\n<\/td>\n<td style=\"height: 68px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>loadPartner(&#8222;10010&#8221;)<\/em> zwraca partnera <em>10010<\/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>OLTP<\/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>Niezaktualizowane wersje partnera mo\u017cna otworzy\u0107 za pomoc\u0105 funkcji <em>getCisObjectList<\/em>, na przyk\u0142ad okre\u015blaj\u0105c czas wa\u017cno\u015bci.<\/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>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"height: 100px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>loadCustomer<\/em><em>, <\/em><em>loadOrganisation<\/em><em>, <\/em><em>loadPartnerAccountingData<\/em><em>, <\/em><em>loadPartnerMarketingInfo<\/em><em>, <\/em><em>loadSupplier<\/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.loadPartner<\/em> otwiera partnera i zwraca wyszukiwane has\u0142o.<\/p>\n<p>function create()<\/p>\n<p>{<\/p>\n<p>\u00a0 var p_partner := parameters.PARTNER;<\/p>\n<p>\u00a0 var r_searchString := &#8222;&#8221;;<\/p>\n<p>\u00a0 var partner := loadPartner(p_partner);<\/p>\n<p>\u00a0 if (not isNull(partner))<\/p>\n<p>\u00a0\u00a0\u00a0 r_searchString := partner:searchString;<\/p>\n<p>\u00a0 result.IS_NULL := isNull(partner);<\/p>\n<p>\u00a0 result.SEARCH_STRING := r_searchString;<\/p>\n<p>}<\/div><\/section>\n<h5 id=\"loadpartneraccountingdata\" ><span class=\"ez-toc-section\" id=\"loadPartnerAccountingData\"><\/span>loadPartnerAccountingData<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>loadPartnerAccountingData<\/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>loadPartnerAccountingData<\/em> zwraca dane ksi\u0119gowe partnera.<\/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>CisObject(com.cisag.app.financials.obj.PartnerAccountingData) loadPartnerAccountingData(String partner, String organisation)<\/p>\n<p>CisObject(com.cisag.app.financials.obj.PartnerAccountingData) loadPartnerAccountingData(String partner, Guid organisation)<\/p>\n<p>CisObjectCustomer(com.cisag.app.financials.obj.PartnerAccountingData) loadPartnerAccountingData(Guid partner, String organisation)<\/p>\n<p>CisObject(com.cisag.app.financials.obj.PartnerAccountingData) loadPartnerAccountingData(Guid partner, Guid organisation)<\/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>partner<\/em> to identyfikator lub guid partnera, kt\u00f3rego dane faktury maj\u0105 zosta\u0107 otwarte.<\/p>\n<p><em>organisation<\/em> to identyfikator lub identyfikator guid organizacji.<\/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 aktualnie obowi\u0105zuj\u0105ce dane faktury okre\u015blonego partnera jako wpisany obiekt <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 organizacja nie posiada \u017cadnych danych faktury dla partnera, zwracana jest domy\u015blna warto\u015b\u0107 <em>null<\/em> dla obiektu <em>CisObject<\/em>.<\/p>\n<p>Je\u015bli <em>organisation<\/em> nie jest firm\u0105, 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>loadPartnerAccountingData(&#8222;10010&#8221;, &#8222;90000&#8221;)<\/em> zwraca dane ksi\u0119gowe partnera <em>10010<\/em> dla firmy <em>90000<\/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>OLTP<\/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>Status blokady danych partnera rozliczeniowego zwi\u0105zany z organizacj\u0105 znajduje si\u0119 w obiekcie biznesowym <em>com.cisag.app.general.obj.OrganizationalUnitPartner<\/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>loadCustomer<\/em><em>, <\/em><em>loadPartner<\/em><em>, <\/em><em>loadPartnerMarketingInfo<\/em><em>, <\/em><em>loadSupplier<\/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.loadPartnerAccountingData<\/em> otwiera dane ksi\u0119gowe partnera.<\/p>\n<p>function create()<\/p>\n<p>{<\/p>\n<p>\u00a0 var p_partner := parameters.PARTNER;<\/p>\n<p>\u00a0 var p_organisation := parameters.ORGANIZATION;<\/p>\n<p>\u00a0 var r_accountingData := &#8222;&#8221;;<\/p>\n<p>\u00a0 var accountingData := loadPartnerAccountingData(p_partner, p_organisation);<\/p>\n<p>\u00a0 if (not isNull(accountingData))<\/p>\n<p>\u00a0\u00a0\u00a0 r_accountingData := accountingData-&gt;Partner:number;<\/p>\n<p>\u00a0 result.IS_NULL := isNull(accountingData);<\/p>\n<p>\u00a0 result.ACCOUNTING_DATA := r_accountingData;<\/p>\n<p>}<\/div><\/section>\n<h5 id=\"loadpartnermarketinginfo\" ><span class=\"ez-toc-section\" id=\"loadPartnerMarketingInfo\"><\/span>loadPartnerMarketingInfo<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>loadPartnerMarketingInfo<\/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>loadPartnerMarketingInfo<\/em> zwraca dane marketingowe partnera.<\/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>CisObject(com.cisag.app.sales.obj.Customer) loadPartnerMarketingInfo(String partner, String organisation)<\/p>\n<p>CisObject(com.cisag.app.sales.obj.Customer) loadPartnerMarketingInfo(String partner, Guid organisation)<\/p>\n<p>CisObjectCustomer(com.cisag.app.sales.obj.Customer) load(Guid partner, String organisation)<\/p>\n<p>CisObject(com.cisag.app.sales.obj.Customer) loadPartnerMarketingInfo(Guid partner, Guid organisation)<\/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>partner<\/em> to identyfikator lub identyfikator guid partnera, kt\u00f3rego dane marketingowe maj\u0105 zosta\u0107 otwarte.<\/p>\n<p><em>organisation<\/em> to identyfikator lub identyfikator guid organizacji.<\/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 aktualnie obowi\u0105zuj\u0105ce dane marketingowe okre\u015blonego partnera jako wpisany obiekt <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 organizacja nie posiada danych marketingowych dla partnera, dla obiektu <em>CisObject<\/em> zwracana jest warto\u015b\u0107 domy\u015blna <em>null<\/em>.<\/p>\n<p>Je\u015bli <em>organisation<\/em> nie jest organizacj\u0105, wyst\u0105pi b\u0142\u0105d uruchomienia.<\/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>loadPartnerMarketingInfo(&#8222;10010&#8221;, &#8222;90000&#8221;)<\/em> zwraca dane marketingowe partnera <em>10010<\/em> dla organizacji <em>90000<\/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>OLTP<\/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>Status blokady danych marketingowych zwi\u0105zany z organizacj\u0105 mo\u017cna znale\u017a\u0107 w obiekcie biznesowym <em>com.cisag.app.general.obj.OrganizationalUnitPartner<\/em>. Okre\u015bla on r\u00f3wnie\u017c, kt\u00f3ra organizacja jest odpowiedzialna za przetwarzanie danych marketingowych. Mo\u017cna dowiedzie\u0107 si\u0119, czy organizacja przetwarza w\u0142asne dane marketingowe, czy je dziedziczy w dokowanym oknie <em>Struktura organizacyjna<\/em> aplikacji <em>Partnerzy<\/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>loadPartner<\/em><em>, <\/em><em>loadPartnerAccountingData<\/em><em>, <\/em><em>loadCustomer<\/em><em>, <\/em><em>loadSupplier<\/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> otwiera dane marketingowe partnera.<\/p>\n<p>function create()<\/p>\n<p>{<\/p>\n<p>\u00a0 var p_partner := parameters.PARTNER;<\/p>\n<p>\u00a0 var p_organisation := parameters.ORGANIZATION;<\/p>\n<p>\u00a0 var r_marketingInfo := &#8222;&#8221;;<\/p>\n<p>\u00a0 var marketingInfo := loadPartnerMarketingInfo(p_partner, p_organisation);<\/p>\n<p>\u00a0 if (not isNull(marketingInfo))<\/p>\n<p>\u00a0\u00a0\u00a0 r_marketingInfo := marketingInfo&gt;Partner:number;<\/p>\n<p>\u00a0 result.IS_NULL := isNull(marketingInfo);<\/p>\n<p>\u00a0 result.MARKETING_INFO := r_marketingInfo;<\/p>\n<p>}<\/div><\/section>\n<h5 id=\"loadresponsibleofpartner\" ><span class=\"ez-toc-section\" id=\"loadResponsibleOfPartner\"><\/span>loadResponsibleOfPartner<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>loadResponsibleOfPartner<\/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>loadResponsibleOfPartner<\/em> zwraca odpowiedzialnego pracownika partnera.<\/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>CisObject(com.cisag.app.general.obj.Partner) loadResponsibleOfPartner(String partner)<\/p>\n<p>CisObject(com.cisag.app.general.obj.Partner) loadResponsibleOfPartner(Guid partner)<\/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>partner<\/em> to identyfikator lub identyfikator guid partnera, kt\u00f3rego odpowiedzialny pracownik ma zosta\u0107 otwarty.<\/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 partnera jako wpisany <em>obiekt CisObject<\/em>, kt\u00f3ry jest przypisany do partnera partner jako odpowiedzialnego pracownika.<\/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 partner nie istnieje lub \u017caden odpowiedzialny pracownik nie jest przypisany do partnera, zwracana jest domy\u015blna warto\u015b\u0107 <em>null<\/em> dla obiektu <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>Przyk\u0142ady<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>loadResponsibleOfPartner(&#8222;10010&#8221;)<\/em> zwraca partnera, kt\u00f3ry jest przypisany do partnera <em>10010<\/em> jako odpowiedzialny pracownik.<\/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>OLTP<\/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>loadTargetsOfPartnerRelations<\/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.loadResponsibleOfPartner<\/em> zwraca odpowiedzialnego pracownika partnera.<\/p>\n<p>function create()<\/p>\n<p>{<\/p>\n<p>\u00a0 var p_partner := parameters.PARTNER;<\/p>\n<p>\u00a0 var r_responsible := &#8222;&#8221;;<\/p>\n<p>\u00a0 var responsible := loadResponsibleOfPartner(p_partner);<\/p>\n<p>\u00a0 if (not isNull(responsible))<\/p>\n<p>\u00a0\u00a0\u00a0 r_responsible := responsible:number;<\/p>\n<p>\u00a0 result.IS_NULL := isNull(responsible);<\/p>\n<p>\u00a0 result.RESPONSIBLE := r_responsible;<\/p>\n<p>}<\/div><\/section>\n<h5 id=\"loadsupplier\" ><span class=\"ez-toc-section\" id=\"loadSupplier\"><\/span>loadSupplier<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>loadSupplier<\/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>loadSupplier<\/em> zwraca dane dostawcy partnera.<\/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>CisObject(com.cisag.app.purchasing.obj.Supplier) loadSupplier(String partner, String organisation)<\/p>\n<p>CisObject(com.cisag.app.purchasing.obj.Supplier) loadSupplier(String partner, Guid organisation)<\/p>\n<p>CisObjectSupplier(com.cisag.app.purchasing.obj.Supplier) loadSupplier(Guid partner, String organisation)<\/p>\n<p>CisObject(com.cisag.app.purchasing.obj.Supplier) loadSupplier(Guid partner, Guid organisation)<\/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>partner<\/em> to identyfikator lub identyfikator guid partnera, kt\u00f3rego dane dostawcy maj\u0105 zosta\u0107 otwarte.<\/p>\n<p><em>organisation<\/em> oznacza identyfikator lub identyfikator guid organizacji zakupowej.<\/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 aktualnie obowi\u0105zuj\u0105ce dane dostawcy okre\u015blonego partnera jako wpisany obiekt <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 organizacja nie posiada danych dostawcy dla partnera, dla obiektu CisObject zwracana jest warto\u015b\u0107 domy\u015blna <em>null<\/em>.<\/p>\n<p>Je\u015bli <em>organisation<\/em> nie jest organizacj\u0105 zakupow\u0105, wyst\u0105pi b\u0142\u0105d uruchomienia.<\/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>loadSupplier(&#8222;10010&#8221;, &#8222;90000&#8221;)<\/em> zwraca dane dostawcy partnera <em>10010<\/em> dla organizacji zakupowej <em>90000<\/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>OLTP<\/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>Status blokowania danych dostawcy zwi\u0105zany z organizacj\u0105 mo\u017cna znale\u017a\u0107 w obiekcie biznesowym <em>com.cisag.app.general.obj.OrganizationalUnitPartner<\/em>. Okre\u015bla on r\u00f3wnie\u017c, kt\u00f3ra organizacja jest odpowiedzialna za przetwarzanie danych dostawcy. Informacje o tym, czy organizacja przetwarza w\u0142asne dane dostawcy, czy je dziedziczy, mo\u017cna znale\u017a\u0107 w dokowanym oknie <em>Struktura organizacyjna<\/em> aplikacji <em>Partnerzy<\/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>loadCustomer<\/em><em>, <\/em><em>loadPartner<\/em><em>, <\/em><em>loadPartnerAccountingData<\/em><em>, <\/em><em>loadPartnerMarketingInfo<\/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.loadSupplier<\/em> otwiera dane dostawcy partnera.<\/p>\n<p>function create()<\/p>\n<p>{<\/p>\n<p>\u00a0 var p_partner := parameters.PARTNER;<\/p>\n<p>\u00a0 var p_organisation := parameters.ORGANIZATION;<\/p>\n<p>\u00a0 var r_supplier := &#8222;&#8221;;<\/p>\n<p>\u00a0 var supplier := loadSupplier(p_partner, p_organisation);<\/p>\n<p>\u00a0 if (not isNull(supplier))<\/p>\n<p>\u00a0\u00a0\u00a0 r_supplier := dostawca-&gt;partner:numer;<\/p>\n<p>\u00a0 result.IS_NULL := isNull(dostawca);<\/p>\n<p>\u00a0 result.SUPPLIER := r_supplier;<\/p>\n<p>}<\/div><\/section>\n<h5 id=\"loadtargetsofpartnerrelations\" ><span class=\"ez-toc-section\" id=\"loadTargetsOfPartnerRelations\"><\/span>loadTargetsOfPartnerRelations<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>loadTargetsOfPartnerRelations<\/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>help.loadTargetsOfPartnerRelations<\/em> zwraca partner\u00f3w docelowych powi\u0105zania partnera dla partnera \u017ar\u00f3d\u0142owego.<\/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>CisObject(com.cisag.app.general.obj.Partner)[] loadTargetsOfPartnerRelations(Guid partner, Guid organisation, String type)<\/p>\n<p>CisObject(com.cisag.app.general.obj.Partner)[] loadTargetsOfPartnerRelations(String partner, String organisation, String type)<\/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>partner <\/em>to identyfikator lub identyfikator guid partnera \u017ar\u00f3d\u0142owego.<\/p>\n<p><em>organisation<\/em> to identyfikator lub identyfikator guid organizacji, w kt\u00f3rej kontek\u015bcie zdefiniowane jest powi\u0105zanie partnera.<\/p>\n<p>t<em>ype<\/em> jest identyfikatorem typu powi\u0105zania partnera. Dost\u0119pne typy relacji mo\u017cna sprawdzi\u0107 w aplikacji <em>Rodzaje powi\u0105za\u0144 mi\u0119dzy partnerami<\/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 wszystkich partner\u00f3w, kt\u00f3rzy s\u0105 powi\u0105zani z partnerem \u017ar\u00f3d\u0142owym <em>partner<\/em> w kontek\u015bcie organizacji <em>organisation <\/em>jako partnera docelowego poprzez powi\u0105zanie partnera typu <em>type<\/em> jako typowan\u0105 list\u0119.<\/p>\n<p>Je\u015bli relacja partnerska jest oznaczona jako preferowana, jej partner docelowy jest przenoszony jako pierwszy element na li\u015bcie.<\/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 powi\u0105zanie partnera z okre\u015blonymi danymi, zwracana jest pusta lista. Je\u015bli nie istnieje typ powi\u0105zania o nazwie <em>type<\/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>loadTargetsOfPartnerRelations(&#8222;10010&#8221;, &#8222;00000&#8221;, &#8222;Responsible&#8221;)[0]<\/em> zwraca odpowiedzialnego pracownika partnera <em>10010<\/em>.<\/p>\n<p><em>loadTargetsOfPartnerRelations(&#8222;10010&#8221;, &#8222;90000&#8221;, &#8222;Contact sales&#8221;)<\/em> zwraca osoby kontaktowe ds. sprzeda\u017cy partnera <em>10010 <\/em>w kontek\u015bcie organizacji sprzeda\u017cy <em>90000<\/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>OLTP<\/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>loadResponsibleOfPartner<\/em><em>, substitute, superior<\/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.loadTargetsOfPartnerRelations<\/em> zwraca partner\u00f3w docelowych powi\u0105zania dla partnera \u017ar\u00f3d\u0142owego.<\/p>\n<p>function create()<\/p>\n<p>{<\/p>\n<p>\u00a0 var p_sourcePartner := parameters.SOURCE_PARTNER;<\/p>\n<p>\u00a0 var p_organisation := parameters.ORGANIZATION;<\/p>\n<p>\u00a0 var p_relation := parameters.RELATION;<\/p>\n<p>\u00a0 var r_targetPartners := &#8222;&#8221;;<\/p>\n<p>\u00a0 var targetPartners :=<\/p>\n<p>\u00a0\u00a0\u00a0 loadTargetsOfPartnerRelations(p_sourcePartner, p_organisation, p_relation);<\/p>\n<p>\u00a0 if (not isNull(targetPartners))<\/p>\n<p>\u00a0\u00a0\u00a0 for (p as CisObject(com.cisag.app.general.obj.Partner) : targetPartners)<\/p>\n<p>\u00a0\u00a0\u00a0\u00a0\u00a0 r_targetPartners := r_targetPartners + &#8221; &#8221; + p:number;<\/p>\n<p>\u00a0 result.IS_NULL := isNull(r_targetPartners);<\/p>\n<p>\u00a0 result.TARGET_PARTNERS := substring(r_targetPartners, 1);<\/p>\n<p>}<\/div><\/section>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\">Przyk\u0142ad: wys\u0142anie wiadomo\u015bci e-mail do dowolnej osoby kontaktowej<\/p>\n<p>W poni\u017cszym przyk\u0142adzie nale\u017cy utworzy\u0107 definicj\u0119 procesu, za pomoc\u0105 kt\u00f3rej u\u017cytkownik mo\u017ce wys\u0142a\u0107 wiadomo\u015b\u0107 e-mail do dowolnej osoby kontaktowej klienta zam\u00f3wienia sprzeda\u017cy. Proces powinien by\u0107 uruchamiany za pomoc\u0105 menu kontekstowego zam\u00f3wienia sprzeda\u017cy i oferowa\u0107 u\u017cytkownikowi wszystkie dozwolone osoby kontaktowe z adresem e-mail w polu wyboru.<\/p>\n<p>Najpierw nale\u017cy utworzy\u0107 definicj\u0119 procesu z w\u0119z\u0142em akcji typu <em>Interaktywny w\u0119ze\u0142 e-mail<\/em>.<\/p>\n<p><em>Definicja zdarzenia<\/em><\/p>\n<p>Nast\u0119pnie wprowad\u017a zdarzenie <em>Zdarzenie u\u017cytkownika<\/em> dla obiektu biznesowego <em>com.cisag.app.sales.obj.SalesOrder<\/em> w w\u0119\u017ale startowym. Mo\u017cna u\u017cy\u0107 warunku przej\u015bcia, aby okre\u015bli\u0107 warunki, w kt\u00f3rych zdarzenie jest aktywowane w menu kontekstowym zam\u00f3wienia sprzeda\u017cy. Aby zaoferowa\u0107 akcj\u0119 tylko dla zam\u00f3wie\u0144 sprzeda\u017cy o statusie <em>W opracowaniu<\/em> i <em>Zwolnione<\/em>, nale\u017cy wprowadzi\u0107 nast\u0119puj\u0105cy warunek przej\u015bcia:<\/p>\n<p><em>parameters.object:status = 1 lub parameters.object:status = 2<\/em><\/p>\n<p>Aby zaoferowa\u0107 promocj\u0119 tylko pracownikowi odpowiedzialnemu za zam\u00f3wienie sprzeda\u017cy, nale\u017cy wprowadzi\u0107 nast\u0119puj\u0105cy warunek przej\u015bcia:<\/p>\n<p><em>parameters.userGuid = parameters.object:responsible<\/em><\/p>\n<p>Aby zapobiec zwracaniu przez wyra\u017cenie warto\u015bci <em>null<\/em>, je\u015bli \u017caden odpowiedzialny pracownik nie jest zapisany w zam\u00f3wieniu sprzeda\u017cy, mo\u017cna u\u017cy\u0107 pierwszej funkcji i por\u00f3wna\u0107 j\u0105 ze sta\u0142\u0105 <em>ZERO_GUID<\/em>, je\u015bli odpowiedzialny ma warto\u015b\u0107 <em>null<\/em>:<\/p>\n<p><em>parameters.userGuid = cast(Guid, first(parameters.object:responsible, ZERO_GUID))<\/em><\/p>\n<p>Je\u015bli zamiast tego u\u017cytkownik por\u00f3wna z <em>parameters.userGuid<\/em>, funkcja b\u0119dzie dost\u0119pna dla ka\u017cdego u\u017cytkownika, gdy tylko \u017caden odpowiedzialny pracownik nie zostanie wprowadzony do zam\u00f3wienia sprzeda\u017cy. W przeciwnym razie funkcja jest dost\u0119pna tylko dla odpowiedzialnego pracownika:<\/p>\n<p><em>parameters.userGuid = cast(Guid, first(parameters.object:responsible, parameters.userGuid))<\/em><\/p>\n<p><em>Wyniki dzia\u0142alno\u015bci<\/em><\/p>\n<p>Aby zaoferowa\u0107 mo\u017cliwe osoby kontaktowe w polu wyboru podczas uruchamiania procesu, nale\u017cy wprowadzi\u0107 pole wynik\u00f3w <em>RECIPIENTS<\/em> typu pola <em>Dynamic multiple selection field<\/em> w definicji dzia\u0142ania dla w\u0119z\u0142a pocz\u0105tkowego.<\/p>\n<p>W funkcji <em>applyDefaults <\/em>nale\u017cy zainicjowa\u0107 pole <em>RECIPIENTS<\/em> z adresami e-mail klienta (klienta) i jego og\u00f3lnych os\u00f3b kontaktowych, a tak\u017ce os\u00f3b kontaktowych w dziale sprzeda\u017cy, jak opisano poni\u017cej.<\/p>\n<p>const State as valueSet(com.cisag.sys.workflow.ActivityState);<\/p>\n<p>const EmailMethod := &#8222;300&#8221;; \/* zgodnie z aplikacj\u0105 &#8222;Metody komunikacji&#8221; *\/<\/p>\n<p>function create()<\/p>\n<p>{<\/p>\n<p>\u00a0 \/* zapisanie informacji o zdarzeniu do przetworzenia *\/<\/p>\n<p>\u00a0 process.order := parameters.object;<\/p>\n<p>\u00a0 process.orderText := parameters.object-&gt;Type:code + &#8222;-&#8221; + parameters.object:number;<\/p>\n<p>\u00a0 process.customer := parameters.object-&gt;CustomerData-&gt;CustomerPartner;<\/p>\n<p>}<\/p>\n<p>function applyDefaults()<\/p>\n<p>{<\/p>\n<p>\u00a0 \/* ocena informacji o zdarzeniu *\/<\/p>\n<p>\u00a0 var order := parameters.object;<\/p>\n<p>\u00a0 var company := loadOrganisation(getCustomizingValue(&#8222;com.cisag.app.General&#8221;):company);<\/p>\n<p>\u00a0 var customer := parameters.object-&gt;CustomerData-&gt;CustomerPartner;<\/p>\n<p>\u00a0 var invoicingOrganisation := parameters.object-&gt;InvoicingPartyData-&gt;Organisation;<\/p>\n<p>\u00a0 \/* inicjalizacja dynamicznego pola wielokrotnego wyboru z kontaktami klienta i sprzeda\u017cy *\/<\/p>\n<p>\u00a0 var contactList as CisObject(com.cisag.app.general.obj.Partner)[];<\/p>\n<p>\u00a0 add(contactList, order-&gt;CustomerData-&gt;CustomerPartner);<\/p>\n<p>\u00a0 contactList := loadTargetsOfPartnerRelations(customer:guid, company:guid, &#8222;Contact&#8221;);<\/p>\n<p>\u00a0 contactList := union(contactList, loadTargetsOfPartnerRelations(customer:guid, invoicingOrganisation:guid, &#8222;Contact sales&#8221;));<\/p>\n<p>\u00a0 \/* pobierz adresy e-mail wszystkich kontakt\u00f3w *\/<\/p>\n<p>\u00a0 var communicationData as CisObject(com.cisag.app.general.obj.CommunicationData)[];<\/p>\n<p>\u00a0 var selectionValues := new(HashMap);<\/p>\n<p>\u00a0 for (p : contactList) {<\/p>\n<p>\u00a0\u00a0\u00a0 communicationData := loadCommunicationData(p:guid, EmailMethod);<\/p>\n<p>\u00a0\u00a0\u00a0 for (email : communicationData) {<\/p>\n<p>\u00a0\u00a0\u00a0\u00a0\u00a0 selectionValues[email:commData] := email:commData + &#8221; (&#8221; + p:searchString + &#8222;)&#8221;;<\/p>\n<p>\u00a0\u00a0\u00a0 }<\/p>\n<p>\u00a0 }<\/p>\n<p>\u00a0 \/* formatowanie i inicjalizacja dynamicznego pola wielokrotnego wyboru *\/<\/p>\n<p>\u00a0 formatSelectionField(&#8222;RECIPIENTS&#8221;, selectionValues);<\/p>\n<p>}<\/p>\n<p>function validate(state as Number)<\/p>\n<p>{<\/p>\n<p>\u00a0 if (state = State.DONE) {<\/p>\n<p>\u00a0\u00a0\u00a0 if (size(results.RECIPIENTS) = 0)<\/p>\n<p>\u00a0\u00a0\u00a0\u00a0\u00a0 sendMessage(results.RECIPIENTS_id, &#8222;WARNING_MSG&#8221;, list());<\/p>\n<p>\u00a0 } else {<\/p>\n<p>\u00a0 }<\/p>\n<p>}<\/p>\n<p>function close(state as Number)<\/p>\n<p>{<\/p>\n<p>\u00a0 \/* zapisanie danych wprowadzonych przez u\u017cytkownika do przetworzenia *\/<\/p>\n<p>\u00a0 process.recipients := results.RECIPIENTS;<\/p>\n<p>}<\/p>\n<p>Nale\u017cy pami\u0119ta\u0107, \u017ce nie mo\u017cna zapyta\u0107 o zmienne procesu w funkcji <em>applyDefaults<\/em>, poniewa\u017c <em>applyDefaults<\/em> jest wywo\u0142ywana przed funkcj\u0105 <em>create<\/em> w w\u0119\u017ale startowym procesu r\u0119cznego.<\/p>\n<p><em>Zmienne procesowe<\/em><\/p>\n<p>Zmienne procesowe u\u017cywane w definicji procesu s\u0105 wprowadzane z nast\u0119puj\u0105cymi typami danych:<\/p>\n<ul>\n<li>customer as CisObject(com.cisag.app.general.obj.Partner)<\/li>\n<li>order as CisObject(com.cisag.app.sales.obj.SalesOrder)<\/li>\n<li>orderText as String<\/li>\n<li>odbiorcy jako String<\/li>\n<\/ul>\n<p><em>Linki<\/em><\/p>\n<p>W zdarzeniu <em>Dzia\u0142anie u\u017cytkownika<\/em> jednostka biznesowa jest automatycznie powi\u0105zana z w\u0119z\u0142em pocz\u0105tkowym, a tym samym z procesem. W zwi\u0105zku z tym nie trzeba wykonywa\u0107 funkcji <em>addAttachment(parameters.object),<\/em> aby p\u00f3\u017aniej znale\u017a\u0107 proces za pomoc\u0105 akcji <em>Query processes<\/em> w menu kontekstowym zam\u00f3wienia sprzeda\u017cy.<\/p>\n<p><em>Przetwarzanie<\/em><\/p>\n<p>W w\u0119\u017ale akcji typu <em>Interaktywny w\u0119ze\u0142 e-mail<\/em> nale\u017cy wprowadzi\u0107 odbiorc\u00f3w zgodnie z <em>process.recipients<\/em>.<\/p>\n<p>const State as valueSet(com.cisag.sys.workflow.ActivityState);<\/p>\n<p>const Separator := &#8222;, &#8222;;<\/p>\n<p>function create()<\/p>\n<p>{<\/p>\n<p>\u00a0 \/* format dzia\u0142ania *\/<\/p>\n<p>\u00a0 formatSubject(&#8222;orderText&#8221;, process.orderText);<\/p>\n<p>\u00a0 formatSubject(&#8222;date&#8221;, format(process.order:date, &#8222;yyyy-MM-dd&#8221;));<\/p>\n<p>\u00a0 \/* ustaw opcje poczty *\/<\/p>\n<p>\u00a0 var mailRecipientsTo := &#8222;&#8221;;<\/p>\n<p>\u00a0 for (recipient : process.recipients)<\/p>\n<p>\u00a0\u00a0\u00a0 mailRecipientsTo := mailRecipientsTo + Separator + recipient;<\/p>\n<p>\u00a0 mailRecipientsTo := substring(mailRecipientsTo, length(Separator));<\/p>\n<p>\u00a0 setMailRecipientsTo(mailRecipientsTo);<\/p>\n<p>\u00a0 \/* ustawia replyTo na adres e-mail inicjatora *\/<\/p>\n<p>\u00a0 var mailReplyTo := cast(String, getResultList(&#8222;CONFIGURATION&#8221;,<\/p>\n<p>\u00a0\u00a0\u00a0 &#8222;SELECT u:emailAddress FROM com.cisag.sys.configuration.obj.User u &#8221; +<\/p>\n<p>\u00a0\u00a0\u00a0 &#8222;WHERE u:guid = ?&#8221;, list(userGuid(process.Initiator)), 1)[0][0]);<\/p>\n<p>\u00a0 setMailReplyTo(mailReplyTo);<\/p>\n<p>}<\/p>\n<p>Aby natychmiast otworzy\u0107 dzia\u0142anie dla w\u0119z\u0142a akcji, nale\u017cy wybra\u0107 tryb automatycznego otwarcia nast\u0119pnego dzia\u0142ania dla trybu ci\u0105g\u0142ego przetwarzania w definicji dzia\u0142ania dla w\u0119z\u0142a startowego. Nale\u017cy wskaza\u0107 wyzwalacz jako procesor w w\u0119\u017ale akcji.<\/p>\n<p>Je\u015bli wyzwalacz zako\u0144czy dzia\u0142anie typu <em>Interaktywny w\u0119ze\u0142 e-mail<\/em>, wiadomo\u015b\u0107 e-mail zostanie wys\u0142ana do odbiorcy (odbiorc\u00f3w). Je\u015bli dzia\u0142anie zostanie zako\u0144czone bez przetwarzania, wiadomo\u015b\u0107 e-mail nie zostanie wys\u0142ana.<\/p>\n<p>Wys\u0142ana wiadomo\u015b\u0107 e-mail mo\u017ce zosta\u0107 sprawdzona w dowolnym momencie za po\u015brednictwem zako\u0144czonego dzia\u0142ania. Dzia\u0142anie nie jest jednak kompletnym dowodem wys\u0142ania lub dostarczenia. Informacje te s\u0105 zazwyczaj dost\u0119pne tylko za po\u015brednictwem u\u017cywanego serwera pocztowego.<\/p>\n<p><em>Korzystanie z modu\u0142\u00f3w tekstowych<\/em><\/p>\n<p>Proces ten mo\u017cna rozszerzy\u0107 o znormalizowane modu\u0142y tekstowe, kt\u00f3re s\u0105 zintegrowane z definicj\u0105 dzia\u0142ania za pomoc\u0105 zapytania OQL. Na przyk\u0142ad w\u0119ze\u0142 pocz\u0105tkowy mo\u017ce r\u00f3wnie\u017c oferowa\u0107 u\u017cytkownikowi pole wyboru tematu. Dla ka\u017cdego tematu tworzony jest oddzielny modu\u0142 tekstowy. U\u017cywaj\u0105c konwencji nazewnictwa, w\u0119ze\u0142 startowy inicjalizuje dynamiczne pole wyboru ze wszystkimi modu\u0142ami tekstowymi, kt\u00f3re zaczynaj\u0105 si\u0119 na przyk\u0142ad od <em>SO_<\/em> lub innego prefiksu. Modu\u0142y tekstowe mog\u0105 r\u00f3wnie\u017c zawiera\u0107 szereg predefiniowanych parametr\u00f3w, kt\u00f3re s\u0105 wype\u0142niane okre\u015blonymi warto\u015bciami z zam\u00f3wienia sprzeda\u017cy lub partnera za pomoc\u0105 funkcji formatu.<\/p>\n<p>Dzi\u0119ki takiemu rozwi\u0105zaniu mo\u017cliwe by\u0142oby tworzenie nowych, gotowych szablon\u00f3w wiadomo\u015bci e-mail dla niemal ka\u017cdego tematu bez konieczno\u015bci dostosowywania definicji workflow.<\/div><\/section>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\">Organizacja proces\u00f3w poprzez relacje partnerskie<\/p>\n<p>Aplikacja<em> Stanowiska <\/em>s\u0142u\u017cy do wprowadzania lub edytowania zada\u0144. Stanowisko to zar\u00f3wno przypisanie czynno\u015bci zawodowej (funkcji) do jednego lub wi\u0119kszej liczby pracownik\u00f3w, jak i klasyfikacja w strukturze firmy (strukturze organizacyjnej). W strukturze organizacyjnej stanowiska opisuj\u0105 poszczeg\u00f3lne funkcjonalne miejsca pracy i ich wzajemne relacje.<\/p>\n<p>Aplikacja <em>Partnerzy<\/em> oferuje r\u00f3wnie\u017c mo\u017cliwo\u015b\u0107 mapowania struktury organizacyjnej. Korzystaj\u0105c z w\u0142asnych rodzaj\u00f3w relacji mi\u0119dzy partnerami, mo\u017cna indywidualnie dostosowa\u0107 struktur\u0119 organizacyjn\u0105 do swojej organizacji. Na przyk\u0142ad mo\u017cna wprowadzi\u0107 typy relacji partnerskich <em>Prze\u0142o\u017cony, Podw\u0142adny<\/em> i <em>Zast\u0119pca<\/em>, aby zmapowa\u0107 mniej wi\u0119cej te same funkcje, co zadania wykorzystuj\u0105ce relacje partnerskie i u\u017cywa\u0107 ich w Workflow Management.<\/p>\n<p>Gdy wyra\u017cenie <em>superior(parameters.userGuid)<\/em> okre\u015bla prze\u0142o\u017conych u\u017cytkownika za pomoc\u0105 relacji stanowisk, poni\u017csze wyra\u017cenie okre\u015bli partner\u00f3w prze\u0142o\u017conych za pomoc\u0105 relacji partnerskich rodzaju <em>Prze\u0142o\u017cony<\/em> w kontek\u015bcie organizacji 90000:<\/p>\n<p><em>loadTargetsOfPartnerRelations(getByPrimaryKey(CisObject(com.cisag.app.general.obj.UserAssignment), parameters.userGuid):partner, &#8222;90000&#8221;, &#8222;Superior&#8221;)<\/em><\/p>\n<p>Aby okre\u015bli\u0107 u\u017cytkownik\u00f3w powi\u0105zanych z partnerami prze\u0142o\u017conych w przypadku przekroczenia limitu czasu, ka\u017cdy partner musi zosta\u0107 podzielony na u\u017cytkownik\u00f3w:<\/p>\n<p>var superiorUsers as Guid[];<\/p>\n<p><em>var superiors as loadTargetsOfPartnerRelations(getByPrimaryKey(CisObject(com.cisag.app.general.obj.UserAssignment), parameters.userGuid):partner, &#8222;90000&#8221;, &#8222;Superior&#8221;);<\/em><\/p>\n<p><em>for (p : superiors)<\/em><\/p>\n<p><em>\u00a0 add(superiorUsers, resolvePartner(p:guid));<\/em><\/p>\n<p>Je\u015bli relacje partner\u00f3w s\u0105 uszeregowane, preferowany partner mo\u017ce zosta\u0107 wybrany za pomoc\u0105 pojedynczego wyra\u017cenia:<\/p>\n<p><em>resolvePartner(loadTargetsOfPartnerRelations(getByPrimaryKey(CisObject(com.cisag.app.general.obj.UserAssignment), parameters.userGuid):partner, &#8222;90000&#8221;, &#8222;Superior&#8221;)[0]:guid)<\/em><\/p>\n<p>Je\u015bli rodzaje relacji partnerskich <em>Prze\u0142o\u017cony<\/em> i <em>Podw\u0142adny<\/em> s\u0105 relacjami dwukierunkowymi, w\u00f3wczas poni\u017csze wyra\u017cenie okre\u015bli wszystkich podleg\u0142ych pracownik\u00f3w u\u017cytkownika:<\/p>\n<p><em>loadTargetsOfPartnerRelations(getByPrimaryKey(CisObject(com.cisag.app.general.obj.UserAssignment), parameters.userGuid):partner, &#8222;90000&#8221;, &#8222;Superior&#8221;)<\/em><\/div><\/section>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\">Ocena zast\u0119pcy<\/p>\n<p>Je\u015bli w funkcji konfiguracji <em>Regulacje dot. delegowa\u0144<\/em> nie zdefiniowano pochodzenia dla warto\u015bci domy\u015blnych zast\u0119pc\u00f3w, zast\u0119pcy musz\u0105 by\u0107 wprowadzani indywidualnie w aplikacji <em>Nieobecno\u015bci<\/em>. Mo\u017cna u\u017cy\u0107 funkcji <em>getCisObjectList<\/em>, aby sprawdzi\u0107 wprowadzone tam zast\u0119pstwa i u\u017cy\u0107 ich jako nowych operator\u00f3w, na przyk\u0142ad w przypadku przekroczenia limitu czasu.<\/p>\n<p>Poni\u017csza definicja dzia\u0142ania typu wywo\u0142anie funkcji okre\u015bla wszystkie zast\u0119pstwa u\u017cytkownika bez uwzgl\u0119dniania okresu wa\u017cno\u015bci lub statusu nieobecno\u015bci u\u017cytkownika:<\/p>\n<p>function create()<\/p>\n<p>{<\/p>\n<p>\u00a0 var p_user := parameters.USER;<\/p>\n<p>\u00a0 var r_substitutes := &#8222;&#8221;;<\/p>\n<p>\u00a0 var subs := getCisObjectList(&#8222;REPOSITORY&#8221;, &#8222;SELECT FROM com.cisag.sys.workflow.obj.Substitute o WHERE o:userGuid = ?&#8221;, list(userGuid(p_user)), 99);<\/p>\n<p>\u00a0 for (u as CisObject(com.cisag.sys.workflow.obj.Substitute) : subs)<\/p>\n<p>\u00a0\u00a0\u00a0 r_substitutes := r_substitutes + &#8222;, &#8221; + userName(u:substituteGuid);<\/p>\n<p>\u00a0 result.SUBSTITUTES := substring(r_substitutes, 2);<\/p>\n<p>}<\/div><\/section>\n<h5 id=\"resolvepartner\" ><span class=\"ez-toc-section\" id=\"resolvePartner\"><\/span>resolvePartner<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>resolvePartner<\/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>resolvePartner<\/em> zwraca list\u0119 z identyfikatorami wszystkich u\u017cytkownik\u00f3w przypisanych do partnera.<\/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>Guid[] resolvePartner(Guid partner)<\/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>partner<\/em> to identyfikator guid partnera, kt\u00f3rego przypisani u\u017cytkownicy maj\u0105 zosta\u0107 okre\u015bleni.<\/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 identyfikator\u00f3w wszystkich u\u017cytkownik\u00f3w powi\u0105zanych z partnerem.<\/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 u\u017cytkownik nie jest przypisany do partnera w bie\u017c\u0105cym kontek\u015bcie wykonawczym, 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>Przyk\u0142ady<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Funkcji <em>resolvePartner<\/em> mo\u017cna u\u017cy\u0107 w definicji dzia\u0142ania, na przyk\u0142ad w celu zdefiniowania pracownika odpowiedzialnego za partnera lub dokument jako operatora dzia\u0142ania.<\/p>\n<p><em>resolvePartner(&#8222;70010&#8221;)<\/em> zwraca list\u0119 z identyfikatorami wszystkich u\u017cytkownik\u00f3w przypisanych do partnera <em>70010<\/em>.<\/p>\n<p><em>resolvePartner(loadResponsibleOfPartner(parameters.object:guid):guid)<\/em> okre\u015bla wszystkich u\u017cytkownik\u00f3w, kt\u00f3rzy s\u0105 przypisani do odpowiedzialnego pracownika partnera, do kt\u00f3rego odwo\u0142uje si\u0119 <em>parameters.object<\/em>. Je\u015bli \u017caden odpowiedzialny pracownik nie jest przypisany do partnera, w\u00f3wczas <em>loadResponsibleOfPartner<\/em>, a zatem r\u00f3wnie\u017c <em>resolvePartner<\/em> zwraca warto\u015b\u0107 <em>null<\/em>.<\/p>\n<p><em>resolvePartner(parameters<\/em><em>.object-&gt;Responsible:guid)<\/em> okre\u015bla wszystkich u\u017cytkownik\u00f3w, kt\u00f3rzy s\u0105 przypisani do odpowiedzialnego pracownika dokumentu, do kt\u00f3rego odwo\u0142uje si\u0119 <em>parameters.object<\/em>.<\/p>\n<p><em>minus(resolvePartner(getByPrimaryKey(CisObject( com.cisag.app.general.obj.UserAssignment), parameters.userGuid):partner), list(parameters.userGuid))<\/em> okre\u015bla tych u\u017cytkownik\u00f3w, kt\u00f3rzy s\u0105 przypisani do tego samego partnera co u\u017cytkownik, 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>OLTP<\/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>resolveRole<\/em> (wi\u0119cej informacji znajduje si\u0119 w dokumentacji <a href=\"ScriptLanguageGeneralFunctions_ScriptLanguageGeneralFunctions.pdf\"><em>J\u0119zyk skryptowy systemu: Funkcje podstawowe<\/em><\/a>), <em>resolveJobTitle<\/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.resolvePartner <\/em>zwraca list\u0119 z identyfikatorami wszystkich u\u017cytkownik\u00f3w przypisanych do partnera.<\/p>\n<p>function create()<\/p>\n<p>{<\/p>\n<p>\u00a0 var p_partner := parameters.PARTNER;<\/p>\n<p>\u00a0 var r_users := &#8222;&#8221;;<\/p>\n<p>\u00a0 var partner := loadPartner(p_partner);<\/p>\n<p>\u00a0 if (not isNull(partner)) {<\/p>\n<p>\u00a0\u00a0\u00a0 var users := resolvePartner(partner:guid);<\/p>\n<p>\u00a0\u00a0\u00a0 for (u as Guid : users)<\/p>\n<p>\u00a0\u00a0\u00a0\u00a0\u00a0 r_users := r_users + &#8221; &#8221; + userName(u);<\/p>\n<p>\u00a0 }<\/p>\n<p>\u00a0 result.USERS := substring(r_users, 1);<\/p>\n<p>}<\/div><\/section>\n<h5 id=\"dalsze-deklaracje-funkcji-dla-partnerow\" ><span class=\"ez-toc-section\" id=\"Dalsze_deklaracje_funkcji_dla_partnerow\"><\/span>Dalsze deklaracje funkcji dla partner\u00f3w<span class=\"ez-toc-section-end\"><\/span><\/h5>\n<p>Niniejszy rozdzia\u0142 sugeruje dalsze deklaracje funkcji dla partner\u00f3w, kt\u00f3re mo\u017cna wprowadzi\u0107 i u\u017cywa\u0107 w systemie. Deklaracje funkcji nie s\u0105 gwarantowane i maj\u0105 przede wszystkim pom\u00f3c w nauce j\u0119zyka skryptowego systemu.<\/p>\n<h6 id=\"loadpartnerofuser\" ><span class=\"ez-toc-section\" id=\"loadPartnerOfUser\"><\/span>loadPartnerOfUser<span class=\"ez-toc-section-end\"><\/span><\/h6>\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>loadPartnerOfUser<\/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>loadPartnerOfUser <\/em>zwraca partnera powi\u0105zanego z u\u017cytkownikiem.<\/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>CisObject(com.cisag.app.general.obj.Partner) loadPartnerOfUser(Guid user)<\/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, kt\u00f3rego partner ma zosta\u0107 otwarty.<\/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 partnera powi\u0105zanego z u\u017cytkownikiem jako wpisany obiekt <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 u\u017cytkownik nie jest przypisany do partnera w bie\u017c\u0105cym kontek\u015bcie wykonawczym, zwracana jest domy\u015blna warto\u015b\u0107 <em>null <\/em>dla obiektu <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>Przyk\u0142ady<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>loadPartnerOfUser(userGuid(&#8222;ADMINISTRATOR&#8221;))<\/em> zwraca partnera, do kt\u00f3rego przypisany jest u\u017cytkownik <em>ADMINISTRATOR<\/em>.<\/p>\n<p><em>loadPartnerOfUser(parameters.userGuid)<\/em> zwraca partnera, do kt\u00f3rego przypisany jest u\u017cytkownik, 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>OLTP<\/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>Partner u\u017cytkownika, do kt\u00f3rego odnosi si\u0119 <em>parameters.userGuid,<\/em> mo\u017ce by\u0107 r\u00f3wnie\u017c okre\u015blony za pomoc\u0105 nast\u0119puj\u0105cego wyra\u017cenia:<\/p>\n<p><em>getByPrimaryKey(CisObject(com.cisag.app.general.obj.UserAssignment), parameters.userGuid)<br \/>-&gt;Partner)<\/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>resolvePartner<\/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.loadPartnerOfUser<\/em> zwraca partnera powi\u0105zanego z u\u017cytkownikiem.<\/p>\n<p>function create()<\/p>\n<p>{<\/p>\n<p>\u00a0 var p_user := parameters.USER;<\/p>\n<p>\u00a0 var r_partner := &#8222;&#8221;;<\/p>\n<p>\u00a0 var partnerOfUser as CisObject(com.cisag.app.general.obj.Partner);<\/p>\n<p>\u00a0 var user := userGuid(p_user);<\/p>\n<p>\u00a0 if (not user = INVALID_GUID) {<\/p>\n<p>\u00a0\u00a0\u00a0 partnerOfUser := loadPartnerOfUser(user);<\/p>\n<p>\u00a0\u00a0\u00a0 if (not isNull(partnerOfUser))<\/p>\n<p>\u00a0\u00a0\u00a0\u00a0\u00a0 r_partner := partnerOfUser:number;<\/p>\n<p>\u00a0 }<\/p>\n<p>\u00a0 result.IS_NULL := isNull(partnerOfUser);<\/p>\n<p>\u00a0 result.PARTNER := r_partner;<\/p>\n<p>}<\/p>\n<p>function loadPartnerOfUser(user as Guid) as CisObject(com.cisag.app.general.obj.Partner)<\/p>\n<p>{<\/p>\n<p>\u00a0 back<\/p>\n<p>\u00a0\u00a0\u00a0 getByPrimaryKey(<\/p>\n<p>\u00a0\u00a0\u00a0\u00a0\u00a0 CisObject(com.cisag.app.general.obj.UserAssignment),<\/p>\n<p>\u00a0\u00a0\u00a0\u00a0\u00a0 user)-&gt;Partner;<\/p>\n<p>}<\/div><\/section>\n<h4 id=\"funkcje-dla-artykulow-funkcje-artykulow\" ><span class=\"ez-toc-section\" id=\"Funkcje_dla_artykulow_Funkcje_artykulow\"><\/span>Funkcje dla artyku\u0142\u00f3w (Funkcje artyku\u0142\u00f3w)<span class=\"ez-toc-section-end\"><\/span><\/h4>\n<p>Funkcje artyku\u0142\u00f3w obejmuj\u0105 funkcje otwierania artyku\u0142u i jego u\u017cycia:<\/p>\n<ul>\n<li>loadInventoryItem<\/li>\n<li>loadIteme<\/li>\n<li>loadItemAccountingData<\/li>\n<li>loadItemPlanningData<\/li>\n<li>loadProductionItem<\/li>\n<li>loadPurchaseItem<\/li>\n<li>loadSalesItem<\/li>\n<\/ul>\n<h5 id=\"loadinventoryitem\" ><span class=\"ez-toc-section\" id=\"loadInventoryItem\"><\/span>loadInventoryItem<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>loadInventoryItem<\/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>loadInventoryItem<\/em> zwraca dane logistyczne magazynu artyku\u0142u jako typowy obiekt <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>Podpisy<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>CisObject(com.cisag.app.general.obj.Item) loadInventoryItem(String item, String organisation)<\/p>\n<p>CisObject(com.cisag.app.general.obj.Item) loadInventoryItem(String item, Guid organisation)<\/p>\n<p>CisObject(com.cisag.app.general.obj.Item) loadInventoryItem(Guid item, String organisation)<\/p>\n<p>CisObject(com.cisag.app.general.obj.Item) loadInventoryItem(Guid item, guid organisation)<\/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>item<\/em> to identyfikator lub identyfikator guid artyku\u0142u.<\/p>\n<p><em>organisation<\/em> to identyfikator lub identyfikator guid organizacji logistyki magazynowej.<\/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 aktualnie obowi\u0105zuj\u0105ce dane logistyki magazynu jako wpisany obiekt <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 organizacja nie posiada danych logistyki magazynowej dla pozycji, dla obiektu <em>CisObject<\/em> zwracana jest warto\u015b\u0107 domy\u015blna <em>null<\/em>.<\/p>\n<p>Je\u015bli <em>organisation<\/em> nie jest organizacj\u0105 logistyki magazynowej, wyst\u0105pi b\u0142\u0105d uruchomienia.<\/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>loadInventoryItem(&#8222;10010&#8221;, &#8222;90000&#8221;)<\/em> zwraca dane logistyczne magazynu dla artyku\u0142u <em>10010<\/em> dla organizacji <em>90000<\/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>OLTP<\/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>Status blokady danych logistyki magazynowej zwi\u0105zany z organizacj\u0105 znajduje si\u0119 w obiekcie biznesowym <em>com.cisag.app.general.obj.OrganizationalUnitItem<\/em>. Okre\u015bla on r\u00f3wnie\u017c, kt\u00f3ra organizacja jest odpowiedzialna za przetwarzanie danych logistyki magazynowej. Informacje o tym, czy organizacja przetwarza w\u0142asne dane logistyki magazynowej, czy je dziedziczy, mo\u017cna znale\u017a\u0107 w dokowanym oknie <em>Struktura organizacyjna<\/em> aplikacji <em>Artyku\u0142y<\/em>.<\/p>\n<p>Dane, kt\u00f3re s\u0105 r\u00f3wnie\u017c rejestrowane na podstawie lokalizacji przechowywania, mo\u017cna otworzy\u0107 za pomoc\u0105 funkcji <em>getByPrimaryKey, getByBusinessKey <\/em>lub <em>getCisObjectList<\/em>. Warto\u015bci domy\u015blne dla r\u00f3\u017cnych lokalizacji przechowywania zawieraj\u0105 warto\u015b\u0107 <em>ZEROGUID<\/em> w atrybucie <em>storageArea<\/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>loadItem<\/em><em>, <\/em><em>loadItemAccountingData<\/em><em>, <\/em><em>loadItemPlanningData<\/em><em>, <\/em><em>loadProductionItem<\/em><em>, <\/em><em>loadPurchaseItem<\/em><em>, <\/em><em>loadSalesItem<\/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.loadInventoryItem <\/em>otwiera dane logistyczne magazynu artyku\u0142u i zwraca <em>Klasyfikacj\u0119 artyku\u0142u magazynowego 1<\/em>.<\/p>\n<p>function create()<\/p>\n<p>{<\/p>\n<p>\u00a0 var p_item := parameters.ITEM;<\/p>\n<p>\u00a0 var p_organisation := parameters.ORGANIZATION;<\/p>\n<p>\u00a0 var r_classification1 := &#8222;&#8221;;<\/p>\n<p>\u00a0 var inventoryItem := loadInventoryItem(p_item, p_organisation);<\/p>\n<p>\u00a0 if (not isNull(inventoryItem))<\/p>\n<p>\u00a0\u00a0\u00a0 r_classification1 := cast(String, first(inventoryItem-&gt;Classification1:path, &#8222;&#8221;));<\/p>\n<p>\u00a0 result.IS_NULL := isNull(inventoryItem);<\/p>\n<p>\u00a0 result.CLASSIFICATION1 := r_classification1;<\/p>\n<p>}<\/div><\/section>\n<h5 id=\"loaditem\" ><span class=\"ez-toc-section\" id=\"loadItem\"><\/span>loadItem<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>loadItem<\/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>loadItem<\/em> zwraca artyku\u0142 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>Podpisy<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>CisObject(com.cisag.app.general.obj.Item) loadItem(String number)<\/p>\n<p>CisObject(com.cisag.app.general.obj.Item) loadItem(Guid guid)<\/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>number<\/em> jest identyfikatorem artyku\u0142u.<\/p>\n<p><em>guid<\/em> to identyfikator guid artyku\u0142u.<\/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 aktualnie obowi\u0105zuj\u0105cy artyku\u0142 jako wpisany obiekt <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 artyku\u0142 o identyfikatorze <em>number<\/em> lub identyfikatorze <em>guid<\/em>, dla obiektu <em>CisObject<\/em> zwracana jest warto\u015b\u0107 domy\u015blna<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>loadItem(&#8222;10010&#8221;)<\/em> zwraca artyku\u0142 <em>10010<\/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>OLTP<\/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>Nieaktualne wersje artyku\u0142u \u00a0mo\u017cna otworzy\u0107 za pomoc\u0105 funkcji <em>getCisObjectList<\/em>, na przyk\u0142ad okre\u015blaj\u0105c czas wa\u017cno\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>loadInventoryItem<\/em><em>, <\/em><em>loadItemAccountingData<\/em><em>, <\/em><em>loadItemPlanningData<\/em><em>, <\/em><em>loadProductionItem<\/em><em>, <\/em><em>loadPurchaseItem<\/em><em>, <\/em><em>loadSalesItem<\/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.loadItem<\/em> otwiera artyku\u0142 i zwraca jego nazw\u0119.<\/p>\n<p>function create()<\/p>\n<p>{<\/p>\n<p>\u00a0 var p_item := parameters.ITEM;<\/p>\n<p>\u00a0 var r_description := &#8222;&#8221;;<\/p>\n<p>\u00a0 var item := loadItem(p_item);<\/p>\n<p>\u00a0 if (not isNull(item))<\/p>\n<p>\u00a0\u00a0\u00a0 r_description := item:description;<\/p>\n<p>\u00a0 result.IS_NULL := isNull(item);<\/p>\n<p>\u00a0 result.DESCRIPTION := r_description;<\/p>\n<p>}<\/div><\/section>\n<h5 id=\"loaditemaccountingdata\" ><span class=\"ez-toc-section\" id=\"loadItemAccountingData\"><\/span>loadItemAccountingData<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>loadItemAccountingData<\/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>loadItemAccountingData<\/em> zwraca dane ksi\u0119gowe artyku\u0142u \u00a0jako typowy obiekt <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>Podpisy<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>CisObject(com.cisag.app.general.obj.Item) loadItemAccountingData(String item, String organisation)<\/p>\n<p>CisObject(com.cisag.app.general.obj.Item) loadItemAccountingData(String item, Guid organisation)<\/p>\n<p>CisObject(com.cisag.app.general.obj.Item) loadItemAccountingData(Guid item, String organisation)<\/p>\n<p>CisObject(com.cisag.app.general.obj.Item) loadItemAccountingData(Guid item, guid organisation)<\/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>item<\/em> to identyfikator lub identyfikator guid artyku\u0142u.<\/p>\n<p><em>organisation<\/em> to identyfikator lub identyfikator guid firmy.<\/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 aktualnie obowi\u0105zuj\u0105ce dane faktury jako wpisany obiekt <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 firma nie posiada \u017cadnych danych ksi\u0119gowych dla artyku\u0142u, zwracana jest domy\u015blna warto\u015b\u0107 <em>null<\/em> dla obiektu <em>CisObject<\/em>.<\/p>\n<p>Je\u015bli <em>organisation<\/em> nie jest organizacj\u0105, wyst\u0105pi b\u0142\u0105d uruchomienia.<\/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>loadItemAccountingData(&#8222;10010&#8221;, &#8222;90000&#8221;)<\/em> zwraca dane ksi\u0119gowe dla artyku\u0142u <em>10010<\/em> dla organizacji <em>90000<\/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>OLTP<\/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>Status blokady danych faktury zwi\u0105zany z organizacj\u0105 znajduje si\u0119 w obiekcie biznesowym <em>com.cisag.app.general.obj.OrganizationalUnitItem<\/em>.<\/p>\n<p>Dane, kt\u00f3re s\u0105 r\u00f3wnie\u017c rejestrowane dla okre\u015blonych lokalizacji przechowywania, mo\u017cna otworzy\u0107 za pomoc\u0105 funkcji <em>getByPrimaryKey, getByBusinessKey<\/em> lub <em>getCisObjectList<\/em>. Warto\u015bci domy\u015blne dla r\u00f3\u017cnych lokalizacji przechowywania zawieraj\u0105 warto\u015b\u0107 <em>ZEROGUID<\/em> w atrybucie <em>storageArea<\/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>loadInventoryItem<\/em><em>, <\/em><em>loadItem<\/em><em>, <\/em><em>loadItemPlanningData<\/em><em>, <\/em><em>loadProductionItem<\/em><em>, <\/em><em>loadPurchaseItem<\/em><em>, <\/em><em>loadSalesItem<\/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.loadItemAccountingData<\/em> otwiera dane ksi\u0119gowe artyku\u0142u i zwraca klasyfikacj\u0119 konta magazynowego.<\/p>\n<p>function create()<\/p>\n<p>{<\/p>\n<p>\u00a0 var p_item := parameters.ITEM;<\/p>\n<p>\u00a0 var p_organisation := parameters.ORGANIZATION;<\/p>\n<p>\u00a0 var r_cogClassification := &#8222;&#8221;;<\/p>\n<p>\u00a0 var itemAccountingData := loadItemAccountingData(p_item, p_organisation);<\/p>\n<p>\u00a0 if (not isNull(itemAccountingData))<\/p>\n<p>\u00a0\u00a0\u00a0 r_cogClassification := cast(String, first(itemAccountingData-&gt;CogClassification:path, &#8222;&#8221;));<\/p>\n<p>\u00a0 result.IS_NULL := isNull(itemAccountingData);<\/p>\n<p>\u00a0 result.COG_CLASSIFICATION := r_cogClassification;<\/p>\n<p>}<\/div><\/section>\n<h5 id=\"loaditemplanningdata\" ><span class=\"ez-toc-section\" id=\"loadItemPlanningData\"><\/span>loadItemPlanningData<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>loadItemPlanningData<\/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>loadItemPlanningData<\/em> zwraca dane planowania artyku\u0142u jako typowy obiekt <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>Podpisy<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>CisObject(com.cisag.app.general.obj.Item) loadItemPlanningData(String item, String organisation)<\/p>\n<p>CisObject(com.cisag.app.general.obj.Item) loadItemPlanningData(String item, Guid organisation)<\/p>\n<p>CisObject(com.cisag.app.general.obj.Item) loadItemPlanningData(Guid item, String organisation)<\/p>\n<p>CisObject(com.cisag.app.general.obj.Item) loadItemPlanningData(Guid item, guid organisation)<\/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>item<\/em> to identyfikator lub identyfikator guid artyku\u0142u.<\/p>\n<p><em>organisation<\/em> to identyfikator lub identyfikator guid organizacji logistyki magazynowej.<\/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 aktualnie prawid\u0142owe dane dyspozycji miejsca przechowywania jako wpisany obiekt <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 organizacja nie posiada danych planowania dla artyku\u0142u, zwracana jest domy\u015blna warto\u015b\u0107 <em>null<\/em> dla obiektu <em>CisObject<\/em>.<\/p>\n<p>Je\u015bli <em>organisation<\/em> nie jest organizacj\u0105 logistyki magazynowej, wyst\u0105pi b\u0142\u0105d uruchomienia.<\/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>loadItemPlanningData(&#8222;10010&#8221;, &#8222;90000&#8221;)<\/em> zwraca dane planowania dla artyku\u0142u <em>10010<\/em> dla organizacji <em>90000<\/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>OLTP<\/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>Status blokowania danych planowania zwi\u0105zany z organizacj\u0105 znajduje si\u0119 w obiekcie biznesowym <em>com.cisag.app.general.obj.OrganizationalUnitItem<\/em>. Okre\u015bla on r\u00f3wnie\u017c, kt\u00f3ra organizacja jest odpowiedzialna za przetwarzanie danych planowania. Mo\u017cna dowiedzie\u0107 si\u0119, czy organizacja przetwarza w\u0142asne dane planowania, czy je dziedziczy w dokowanym oknie <em>Struktura organizacyjna<\/em> aplikacji <em>Artyku\u0142y<\/em>.<\/p>\n<p>Dane planowania magazynu mo\u017cna otworzy\u0107 za pomoc\u0105 funkcji <em>getByPrimaryKey, getByBusinessKey<\/em> lub <em>getCisObjectList<\/em>. Warto\u015bci domy\u015blne lokalizacji magazynu zawieraj\u0105 warto\u015b\u0107 <em>ZEROGUID<\/em> w atrybucie <em>storageArea<\/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>loadInventoryItem<\/em><em>, <\/em><em>loadItem<\/em><em>, <\/em><em>loadItemAccountingData<\/em><em>, <\/em><em>loadProductionItem<\/em><em>, <\/em><em>loadPurchaseItem<\/em><em>, <\/em><em>loadSalesItem<\/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.loadItemPlanningData<\/em> otwiera dane planowania artyku\u0142u i zwraca planer.<\/p>\n<p>function create()<\/p>\n<p>{<\/p>\n<p>\u00a0 var p_item := parameters.ITEM;<\/p>\n<p>\u00a0 var p_organisation := parameters.ORGANIZATION;<\/p>\n<p>\u00a0 var r_planner := &#8222;&#8221;;<\/p>\n<p>\u00a0 var itemPlanningData := loadItemPlanningData(p_item, p_organisation);<\/p>\n<p>\u00a0 if (not isNull(itemPlanningData))<\/p>\n<p>\u00a0\u00a0\u00a0 r_planner := cast(String, first(itemPlanningData-&gt;Planner:number, &#8222;&#8221;));<\/p>\n<p>\u00a0 result.IS_NULL := isNull(itemPlanningData);<\/p>\n<p>\u00a0 result.PLANNER := r_planner;<\/p>\n<p>}<\/div><\/section>\n<h5 id=\"loadproductionitem\" ><span class=\"ez-toc-section\" id=\"loadProductionItem\"><\/span>loadProductionItem<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>loadProductionItem<\/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>loadProductionItem<\/em> zwraca dane produkcyjne artyku\u0142u jako typowy obiekt <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>Podpisy<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>CisObject(com.cisag.app.general.obj.Item) loadProductionItem(String item, String organisation)<\/p>\n<p>CisObject(com.cisag.app.general.obj.Item) loadProductionItem(String item, Guid organisation)<\/p>\n<p>CisObject(com.cisag.app.general.obj.Item) loadProductionItem(Guid item, String organisation)<\/p>\n<p>CisObject(com.cisag.app.general.obj.Item) loadProductionItem(Guid item, guid organisation)<\/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>item<\/em> to identyfikator lub identyfikator guid artyku\u0142u.<\/p>\n<p><em>organisation<\/em> to identyfikator lub identyfikator guid organizacji logistyki magazynowej.<\/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 aktualnie obowi\u0105zuj\u0105ce dane produkcyjne jako wpisany obiekt <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 organizacja nie posiada danych produkcyjnych dla artyku\u0142u, zwracana jest domy\u015blna warto\u015b\u0107 <em>null<\/em> dla obiektu <em>CisObject<\/em>.<\/p>\n<p>Je\u015bli <em>organisation<\/em> nie jest organizacj\u0105 logistyki magazynowej, wyst\u0105pi b\u0142\u0105d uruchomienia.<\/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>loadProductionItem(&#8222;10010&#8221;, &#8222;90000&#8221;)<\/em> zwraca dane produkcyjne dla artyku\u0142u <em>10010<\/em> dla organizacji <em>90000<\/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>OLTP<\/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>Status blokady danych produkcyjnych zwi\u0105zany z organizacj\u0105 znajduje si\u0119 w obiekcie biznesowym <em>com.cisag.app.general.obj.OrganizationalUnitItem<\/em>. Okre\u015bla on r\u00f3wnie\u017c, kt\u00f3ra organizacja jest odpowiedzialna za przetwarzanie danych produkcyjnych. Mo\u017cna dowiedzie\u0107 si\u0119, czy organizacja przetwarza w\u0142asne dane produkcyjne, czy je dziedziczy w dokowanym oknie <em>Struktura organizacyjna<\/em> aplikacji <em>Artyku\u0142y<\/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>loadInventoryItem<\/em><em>, <\/em><em>loadItem<\/em><em>, <\/em><em>loadItemAccountingData<\/em><em>, <\/em><em>loadItemPlanningData<\/em><em>, <\/em><em>loadPurchaseItem<\/em><em>, <\/em><em>loadSalesItem<\/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.loadProductionItem<\/em> otwiera dane produkcyjne artyku\u0142u i zwraca lokalizacj\u0119 magazynu produkcyjnego.<\/p>\n<p>function create()<\/p>\n<p>{<\/p>\n<p>\u00a0 var p_item := parameters.ITEM;<\/p>\n<p>\u00a0 var p_organisation := parameters.ORGANIZATION;<\/p>\n<p>\u00a0 var r_defaultStorageArea := &#8222;&#8221;;<\/p>\n<p>\u00a0 var productionItem := loadProductionItem(p_item, p_organisation);<\/p>\n<p>\u00a0 if (not isNull(productionItem))<\/p>\n<p>\u00a0\u00a0\u00a0 r_defaultStorageArea := cast(String, first(productionItem-&gt;DefaultStorageArea:code, &#8222;&#8221;));<\/p>\n<p>\u00a0 result.IS_NULL := isNull(productionItem);<\/p>\n<p>\u00a0 result.DEFAULT_STORAGE_AREA := r_defaultStorageArea;<\/p>\n<p>}<\/div><\/section>\n<h5 id=\"loadpurchaseitem\" ><span class=\"ez-toc-section\" id=\"loadPurchaseItem\"><\/span>loadPurchaseItem<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>loadPurchaseItem<\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<thead>\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>loadPurchaseItem <\/em>zwraca dane zakupowe artyku\u0142u jako typowy obiekt <em>CisObject<\/em>.<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 349px;\">\n<td style=\"height: 349px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Podpisy<\/p>\n<\/td>\n<td style=\"height: 349px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>CisObject(com.cisag.app.general.obj.Item) loadPurchaseItem(String item, String organisation)<\/p>\n<p>CisObject(com.cisag.app.general.obj.Item) loadPurchaseItem(String item, Guid organisation)<\/p>\n<p>CisObject(com.cisag.app.general.obj.Item) loadPurchaseItem(Guid item, String organisation)<\/p>\n<p>CisObject(com.cisag.app.general.obj.Item) loadPurchaseItem(Guid item, guid organisation)<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 151px;\">\n<td style=\"height: 151px;\" width=\"132\">\n<p>Parametry<\/p>\n<\/td>\n<td style=\"height: 151px;\" width=\"406\">\n<p><em>item<\/em> to identyfikator lub identyfikator guid artyku\u0142u.<\/p>\n<p><em>organisation<\/em> oznacza identyfikator lub identyfikator guid organizacji zakupowej.<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 100px;\">\n<td style=\"height: 100px;\" width=\"132\">\n<p>Wynik<\/p>\n<\/td>\n<td style=\"height: 100px;\" width=\"406\">\n<p>Funkcja zwraca aktualnie obowi\u0105zuj\u0105ce dane zakupowe jako wpisany obiekt <em>CisObject<\/em>.<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 151px;\">\n<td style=\"height: 151px;\" width=\"132\">\n<p>\u0179r\u00f3d\u0142a b\u0142\u0119d\u00f3w<\/p>\n<\/td>\n<td style=\"height: 151px;\" width=\"406\">\n<p>Je\u015bli organizacja nie posiada danych zakupowych dla artyku\u0142u, zwracana jest domy\u015blna warto\u015b\u0107 <em>null<\/em> dla obiektu <em>CisObject<\/em>.<\/p>\n<p>Je\u015bli <em>organisation<\/em> nie jest organizacj\u0105 zakupow\u0105, wyst\u0105pi b\u0142\u0105d uruchomienia.<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 100px;\">\n<td style=\"height: 100px;\" width=\"132\">\n<p>Przyk\u0142ady<\/p>\n<\/td>\n<td style=\"height: 100px;\" width=\"406\">\n<p><em>loadPurchaseItem(&#8222;10010&#8221;, &#8222;90000&#8221;)<\/em> zwraca dane zakupowe dla artyku\u0142u <em>10010<\/em> dla organizacji <em>90000<\/em>.<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 68px;\">\n<td style=\"height: 68px;\" width=\"132\">\n<p>Kontekst<\/p>\n<\/td>\n<td style=\"height: 68px;\" width=\"406\">\n<p>OLTP<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 230px;\">\n<td style=\"height: 230px;\" width=\"132\">\n<p>Uwagi<\/p>\n<\/td>\n<td style=\"height: 230px;\" width=\"406\">\n<p>Status blokowania danych zakupowych zwi\u0105zany z organizacj\u0105 znajduje si\u0119 w obiekcie biznesowym <em>com.cisag.app.general.obj.OrganizationalUnitItem<\/em>. Okre\u015bla on r\u00f3wnie\u017c, kt\u00f3ra organizacja jest odpowiedzialna za przetwarzanie danych zakupowych. Mo\u017cna dowiedzie\u0107 si\u0119, czy organizacja przetwarza w\u0142asne dane zakupowe, czy je dziedziczy w dokowanym oknie <em>Struktura organizacyjna<\/em> aplikacji <em>Artyku\u0142y<\/em>.<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 100px;\">\n<td style=\"height: 100px;\" width=\"132\">\n<p>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"height: 100px;\" width=\"406\">\n<p><em>loadInventoryItem<\/em><em>, <\/em><em>loadItem<\/em><em>, <\/em><em>loadItemAccountingData<\/em><em>, <\/em><em>loadItemPlanningData<\/em><em>, <\/em><em>loadProductionItem<\/em><em>, <\/em><em>loadSalesItem<\/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.loadPurchaseItem<\/em> otwiera dane zakupowe artyku\u0142u i zwraca magazyn odbioru.<\/p>\n<p>function create()<\/p>\n<p>{<\/p>\n<p>\u00a0 var p_item := parameters.ITEM;<\/p>\n<p>\u00a0 var p_organisation := parameters.ORGANIZATION;<\/p>\n<p>\u00a0 var r_defaultStorageArea := &#8222;&#8221;;<\/p>\n<p>\u00a0 var purchaseItem := loadPurchaseItem(p_item, p_organisation);<\/p>\n<p>\u00a0 if (not isNull(purchaseItem))<\/p>\n<p>\u00a0\u00a0\u00a0 r_defaultStorageArea := cast(String, first(purchaseItem-&gt;DefaultStorageArea:code, &#8222;&#8221;));<\/p>\n<p>\u00a0 result.IS_NULL := isNull(purchaseItem);<\/p>\n<p>\u00a0 result.DEFAULT_STORAGE_AREA := r_defaultStorageArea;<\/p>\n<p>}<\/div><\/section>\n<h5 id=\"loadsalesitem\" ><span class=\"ez-toc-section\" id=\"loadSalesItem\"><\/span>loadSalesItem<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>loadSalesItem<\/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>loadSalesItem<\/em> zwraca dane sprzeda\u017cy artyku\u0142u jako wpisany obiekt <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>Podpisy<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>CisObject(com.cisag.app.general.obj.Item) loadSalesItem(String item, String organisation)<\/p>\n<p>CisObject(com.cisag.app.general.obj.Item) loadSalesItem(String item, Guid organisation)<\/p>\n<p>CisObject(com.cisag.app.general.obj.Item) loadSalesItem(Guid item, String organisation)<\/p>\n<p>CisObject(com.cisag.app.general.obj.Item) loadSalesItem(Guid item, guid organisation)<\/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>item<\/em> to identyfikator lub identyfikator guid artyku\u0142u.<\/p>\n<p><em>organisation<\/em> to identyfikator lub identyfikator guid organizacji sprzeda\u017cy.<\/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 aktualnie obowi\u0105zuj\u0105ce dane sprzeda\u017cy jako wpisany obiekt <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 organizacja nie posiada danych sprzeda\u017cy dla artyku\u0142u, zwracana jest domy\u015blna warto\u015b\u0107 <em>null<\/em> dla obiektu <em>CisObject<\/em>.<\/p>\n<p>Je\u015bli <em>organisation<\/em> nie jest organizacj\u0105 sprzeda\u017cy, wyst\u0105pi b\u0142\u0105d uruchomienia.<\/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>loadSalesItem(&#8222;10010&#8221;, &#8222;90000&#8221;)<\/em> zwraca dane sprzeda\u017cy dla artyuku\u0142u <em>10010<\/em> dla organizacji <em>90000<\/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>OLTP<\/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>Status blokady danych sprzeda\u017cy zwi\u0105zany z organizacj\u0105 znajduje si\u0119 w obiekcie biznesowym <em>com.cisag.app.general.obj.OrganizationalUnitItem<\/em>. Okre\u015bla on r\u00f3wnie\u017c, kt\u00f3ra organizacja jest odpowiedzialna za przetwarzanie danych sprzeda\u017cy. Mo\u017cna dowiedzie\u0107 si\u0119, czy organizacja przetwarza w\u0142asne dane sprzeda\u017cy, czy je dziedziczy w dokowanym oknie <em>Struktura organizacyjna<\/em> aplikacji <em>Artyku\u0142y<\/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>loadInventoryItem<\/em><em>, <\/em><em>loadItem<\/em><em>, <\/em><em>loadItemAccountingData<\/em><em>, <\/em><em>loadItemPlanningData<\/em><em>, <\/em><em>loadProductionItem<\/em><em>, <\/em><em>loadPurchaseItem<\/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.loadSalesItem<\/em> otwiera dane sprzeda\u017cy artyku\u0142u i zwraca magazyn wydania.<\/p>\n<p>function create()<\/p>\n<p>{<\/p>\n<p>\u00a0 var p_item := parameters.ITEM;<\/p>\n<p>\u00a0 var p_organisation := parameters.ORGANIZATION;<\/p>\n<p>\u00a0 var r_defaultStorageArea := &#8222;&#8221;;<\/p>\n<p>\u00a0 var salesItem := loadSalesItem(p_item, p_organisation);<\/p>\n<p>\u00a0 if (not isNull(salesItem))<\/p>\n<p>\u00a0\u00a0\u00a0 r_defaultStorageArea := cast(String, first(salesItem-&gt;DefaultStorageArea:code, &#8222;&#8221;));<\/p>\n<p>\u00a0 result.IS_NULL := isNull(salesItem);<\/p>\n<p>\u00a0 result.DEFAULT_STORAGE_AREA := r_defaultStorageArea;<\/p>\n<p>}<\/div><\/section>\n<h4 id=\"funkcje-dla-kwot-i-walut-funkcje-walutowe\" ><span class=\"ez-toc-section\" id=\"Funkcje_dla_kwot_i_walut_Funkcje_walutowe\"><\/span>Funkcje dla kwot i walut (Funkcje walutowe)<span class=\"ez-toc-section-end\"><\/span><\/h4>\n<p>Funkcje dla kwot i walut obejmuj\u0105 <em>loadCurrency<\/em> do otwierania waluty.<\/p>\n<h5 id=\"loadcurrency\" ><span class=\"ez-toc-section\" id=\"loadCurrency\"><\/span>loadCurrency<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>loadCurrency<\/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>loadCurrency<\/em> zwraca walut\u0119 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>Podpisy<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>CisObject(com.cisag.app.general.obj.Currency) loadCurrency(String isoCode)<\/p>\n<p>CisObject(com.cisag.app.general.obj.Currency) loadCurrency(Guid guid)<\/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> to identyfikator guid waluty.<\/p>\n<p><em>isoCode <\/em>jest identyfikatorem waluty.<\/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 aktualnie obowi\u0105zuj\u0105c\u0105 walut\u0119 jako wpisany obiekt <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>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>(loadCurrency(&#8222;EUR&#8221;)<\/em> zwraca typowany <em>CisObject<\/em> dla waluty z kodem ISO <em>EUR<\/em>.<\/p>\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>OLTP<\/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.loadCurrency<\/em> otwiera walut\u0119 poprzez jej kod ISO i zwraca jej nazw\u0119.<\/p>\n<p>function create()<\/p>\n<p>{<\/p>\n<p>\u00a0 var p_isoCode := parameters.ISO_CODE;<\/p>\n<p>\u00a0 var r_currency := loadCurrency(p_isoCode);<\/p>\n<p>\u00a0 result.IS_NULL := isNull(r_currency);<\/p>\n<p>\u00a0 if (not isNull(r_currency))<\/p>\n<p>\u00a0\u00a0\u00a0 result.DESCRIPTION := r_currency:description;<\/p>\n<p>}<\/div><\/section>\n<h5 id=\"dalsze-deklaracje-funkcji-dla-kwot-i-walut\" ><span class=\"ez-toc-section\" id=\"Dalsze_deklaracje_funkcji_dla_kwot_i_walut\"><\/span>Dalsze deklaracje funkcji dla kwot i walut<span class=\"ez-toc-section-end\"><\/span><\/h5>\n<p>W tym rozdziale przedstawiono dalsze deklaracje funkcji dla kwot i walut, kt\u00f3re mo\u017cna wprowadzi\u0107 i u\u017cywa\u0107 w systemie. Deklaracje funkcji nie s\u0105 gwarantowane i maj\u0105 na celu przede wszystkim zapoznanie u\u017cytkownika z j\u0119zykiem skrypt\u00f3w systemowych.<\/p>\n<ul>\n<li>amountCorporate<\/li>\n<li>convertCurrency<\/li>\n<li>getCorporateCurrency<\/li>\n<li>getCurrency1<\/li>\n<li>getCurrency2<\/li>\n<li>getCurrency3<\/li>\n<\/ul>\n<h6 id=\"amountcorporate\" ><span class=\"ez-toc-section\" id=\"amountCorporate\"><\/span><strong>amountCorporate<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h6>\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>amountCorporate<\/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>amountCorporate<\/em> zwraca kwot\u0119 w walucie wiodacej organizacji.<\/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>Number amountCorporate(Number amount1, Number amount2, Number amount3, Guid organisation)<\/p>\n<p>Number amountCorporate(domesticAmount CisObject( com.cisag.app.general.obj.DomesticAmount, Guid organisation)<\/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>amount1<\/em> to kwota w <em>Walucie wewn\u0119trznej 1<\/em>.<\/p>\n<p><em>amount2<\/em> to kwota w <em>Walucie wewn\u0119trznej 2<\/em>.<\/p>\n<p><em>amount3<\/em> to kwota w <em>Walucie wewn\u0119trznej 3<\/em>.<\/p>\n<p><em>domesticAmount<\/em> to cz\u0119\u015b\u0107 dla waluty krajowej.<\/p>\n<p><em>organisation<\/em> to identyfikator organizacji, dla kt\u00f3rej zarejestrowano kwot\u0119 w walucie wewn\u0119trznej.<\/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 kwot\u0119 w walucie wewn\u0119trznej <em>domesticAmount<\/em> w walucie wiod\u0105cej organizacji.<\/p>\n<p>Je\u015bli <em>Waluta wewn\u0119trzna 1<\/em> <em>organisation<\/em> jest walut\u0105 wiod\u0105c\u0105, zwracana jest warto\u015b\u0107 <em>amount1<\/em>. Je\u015bli <em>Waluta wewn\u0119trzna 2<\/em> <em>organisation<\/em> jest walut\u0105 wiod\u0105c\u0105, zwracana jest warto\u015b\u0107 <em>amount2<\/em>. Je\u015bli <em>Waluta wewn\u0119trzna 3 organisation<\/em> jest walut\u0105 wiod\u0105c\u0105, zwracana jest warto\u015b\u0107 <em>amount3<\/em>. Je\u015bli <em>organisation<\/em> nie jest firm\u0105, u\u017cywana jest waluta wiod\u0105ca firmy, do kt\u00f3rej przypisana jest <em>organisation.<\/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>amountCorporate( parameters.object:totalValues.<br \/>netValueDomestic. <br \/>amount1, parameters.object:totalValues.netValueDomestic.amount2, parameters.object:totalValues. <br \/>netValueDomestic.amount3, cast(Guid, getAttribute(parameters.object, &#8222;_organisation&#8221;)))<\/em> zwraca ca\u0142kowit\u0105 kwot\u0119 netto w bie\u017c\u0105cej walucie wiod\u0105cej organizacji, w kt\u00f3rej kontek\u015bcie zarejestrowano obiekt biznesowy, do kt\u00f3rego odwo\u0142uje si\u0119 parametr <em>parameters.object<\/em>.<\/p>\n<p><em>amountCorporate(dboDomesticAmount(&#8222;EXTPartner&#8221;, loadPartner(&#8222;10010&#8221;), &#8222;CREDIT_LIMIT_ALT&#8221;), loadOrganisation(&#8222;90000&#8221;):guid)<\/em> zwraca warto\u015b\u0107 pola dodatkowego typu <em>Kwota w walucie wewn\u0119trznej<\/em> w walucie g\u0142\u00f3wnej firmy <em>90000<\/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>OLTP<\/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>Obiekty biznesowe z kwot\u0105 w walucie lokalnej maj\u0105 atrybuty <em>_organisation<\/em> i <em>_currencyCombo<\/em>. Pierwszy atrybut odnosi si\u0119 do organizacji, dla kt\u00f3rej zarejestrowano kwot\u0119 w walucie wewn\u0119trznej. Drugi atrybut odnosi si\u0119 do kombinacji walut wewn\u0119trznych u\u017cywanych przez organizacj\u0119 lub kwoty w walucie wewn\u0119trznej.<\/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>getCorporateCurrency<\/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.amountCorporate<\/em> pokazuje, w jaki spos\u00f3b mo\u017cna okre\u015bli\u0107 kwot\u0119 w walucie wiodacej firmy na podstawie kwoty w walucie wewn\u0119trznej sk\u0142adaj\u0105cej si\u0119 z maksymalnie trzech walut wewn\u0119trznych.<\/p>\n<p>function create()<\/p>\n<p>{<\/p>\n<p>\u00a0 var p_orderType := parameters.ORDER_TYPE;<\/p>\n<p>\u00a0 var p_orderNumber := parameters.ORDER_NUMBER;<\/p>\n<p>\u00a0 var orderType := getByBusinessKey(CisObject(com.cisag.app.sales.obj.SalesOrderType), p_orderType);<\/p>\n<p>\u00a0 var order := getByBusinessKey(CisObject(com.cisag.app.sales.obj.SalesOrder), orderType:guid, p_orderNumber);<\/p>\n<p>\u00a0 var totalGrossValueCorporate := amountCorporate(<\/p>\n<p>\u00a0\u00a0\u00a0 order:totalValues.grossValueDomestic.amount1,<\/p>\n<p>\u00a0\u00a0\u00a0 order:totalValues.grossValueDomestic.amount2,<\/p>\n<p>\u00a0\u00a0\u00a0 order:totalValues.grossValueDomestic.amount3,<\/p>\n<p>\u00a0\u00a0\u00a0 cast(Guid, getAttribute(order, &#8222;_organisation&#8221;)));<\/p>\n<p>\u00a0 result.VALUE := totalGrossValueCorporate;<\/p>\n<p>}<\/p>\n<p>function amountCorporate(amount1 as Number, amount2 as Number, amount3 as Number, org as Guid) as Number<\/p>\n<p>{<\/p>\n<p>\u00a0 var amountCorporate := 0;<\/p>\n<p>\u00a0 var baseFunction := getCustomizingValue(&#8222;com.cisag.app.general.Base&#8221;, loadOrganisation(org):financialsOrganization);<\/p>\n<p>\u00a0 if (not isNull(baseFunction)) {<\/p>\n<p>\u00a0\u00a0\u00a0 if (baseFunction:corporateCurrency = 1)<\/p>\n<p>\u00a0\u00a0\u00a0\u00a0\u00a0 amountCorporate := amount1;<\/p>\n<p>\u00a0\u00a0\u00a0 if (baseFunction:corporateCurrency = 2)<\/p>\n<p>\u00a0\u00a0\u00a0\u00a0\u00a0 amountCorporate := amount2;<\/p>\n<p>\u00a0\u00a0\u00a0 if (baseFunction:corporateCurrency = 3)<\/p>\n<p>\u00a0\u00a0\u00a0\u00a0\u00a0 amountCorporate := amount3;<\/p>\n<p>\u00a0 }<\/p>\n<p>\u00a0 return amountCorporate;<\/p>\n<p>}<\/p>\n<p>function amountCorporate2(domesticAmount as CisObject(com.cisag.app.general.obj.DomesticAmount), org as Guid) as Number<\/p>\n<p>{<\/p>\n<p>\u00a0 var amountCorporate := 0;<\/p>\n<p>\u00a0 var baseFunction := getCustomizingValue(&#8222;com.cisag.app.general.Base&#8221;, loadOrganisation(org):financialsOrganization);<\/p>\n<p>\u00a0 if (not isNull(baseFunction)) {<\/p>\n<p>\u00a0\u00a0\u00a0 if (baseFunction:corporateCurrency = 1)<\/p>\n<p>\u00a0\u00a0\u00a0\u00a0\u00a0 amountCorporate := domesticAmount:amount1;<\/p>\n<p>\u00a0\u00a0\u00a0 if (baseFunction:corporateCurrency = 2)<\/p>\n<p>\u00a0\u00a0\u00a0\u00a0\u00a0 amountCorporate := domesticAmount:amount2;<\/p>\n<p>\u00a0\u00a0\u00a0 if (baseFunction:corporateCurrency = 3)<\/p>\n<p>\u00a0\u00a0\u00a0\u00a0\u00a0 amountCorporate := domesticAmount:amount3;<\/p>\n<p>\u00a0 }<\/p>\n<p>\u00a0 return amountCorporate;<\/p>\n<p>}<\/div><\/section>\n<h6 id=\"convertcurrency\" ><span class=\"ez-toc-section\" id=\"convertCurrency\"><\/span><strong>convertCurrency<\/strong><strong>\u00a0<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h6>\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>convertCurrency<\/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>convertCurrency<\/em> konwertuje kwot\u0119 na inn\u0105 walut\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>Number convertCurrency(Number amount, Guid source, Guid target)<\/p>\n<p>Number convertCurrency(Number amount, Guid source, Guid target, Timestamp conversionDate)<\/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>amount<\/em> to kwota do przeliczenia.<\/p>\n<p><em>source <\/em>to identyfikator guid lub identyfikacja waluty \u017ar\u00f3d\u0142owej.<\/p>\n<p><em>target<\/em> to identyfikator guid lub identyfikacja waluty docelowej.<\/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 przelicza kwot\u0119 z waluty \u017ar\u00f3d\u0142owej na walut\u0119 docelow\u0105. Je\u015bli nie okre\u015blono <em>conversionDate<\/em>, kwota jest przeliczana zgodnie z aktualnie obowi\u0105zuj\u0105cymi kursami wymiany.<\/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 ma prawid\u0142owego kursu wymiany, zwracana jest kwota<em> 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>Przyk\u0142ady<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>convertCurrency(parameters.object:totalValues.grossValue.amount, parameters.object:totalValues.grossValue.currency, getCorporateCurrency(cast(Guid, getAttribute(parameters.object, &#8222;_organisation&#8221;))))<\/em> konwertuje ca\u0142kowit\u0105 kwot\u0119 brutto zam\u00f3wienia sprzeda\u017cy, do kt\u00f3rego odwo\u0142uje si\u0119 <em>parameters.object<\/em> w walucie wiod\u0105cej po aktualnie obowi\u0105zuj\u0105cym kursie wymiany.<\/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>OLTP<\/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.convertCurrency<\/em> pokazuje, w jaki spos\u00f3b mo\u017cna przeliczy\u0107 kwot\u0119 mi\u0119dzy dwiema walutami. Funkcja <em>convertCurrency <\/em>przelicza kwot\u0119 po bie\u017c\u0105cym kursie wymiany, podczas gdy funkcja <em>convertCurrenncyAt<\/em> wykorzystuje r\u00f3wnie\u017c historyczne kursy wymiany.<\/p>\n<p>const ExchangeRateQuotation as valueSet(com.cisag.app.general.ExchangeRateQuotation);<\/p>\n<p>function create()<\/p>\n<p>{<\/p>\n<p>\u00a0 var p_amount := parameters.AMOUNT;<\/p>\n<p>\u00a0 var p_source := parameters.SOURCE;<\/p>\n<p>\u00a0 var p_target := parameters.TARGET;<\/p>\n<p>\u00a0 var p_conversionDate := parameters.CONVERSION_DATE;<\/p>\n<p>\u00a0 var r_convertedAmountAt := 0;<\/p>\n<p>\u00a0 var convertedAmountAt := convertCurrencyAt(p_amount, loadCurrency(p_source):guid, loadCurrency(p_target):guid, p_conversionDate);<\/p>\n<p>\u00a0 if (not isNull(convertedAmountAt))<\/p>\n<p>\u00a0\u00a0\u00a0 r_convertedAmountAt := convertedAmountAt;<\/p>\n<p>\u00a0 result.IS_NULL := isNull(r_convertedAmountAt);<\/p>\n<p>\u00a0 result.CONVERTED_AMOUNT := r_convertedAmountAt;<\/p>\n<p>}<\/p>\n<p>function convertCurrency(amount as Number, sourceCurrency as Guid, targetCurrency as Guid) as Number<\/p>\n<p>{<\/p>\n<p>\u00a0 var convertedAmount := 0;<\/p>\n<p>\u00a0 var useReverseQuotation := false;<\/p>\n<p>\u00a0 var company := cast(Guid, getCustomisingValue(&#8222;com.cisag.app.General&#8221;):company);<\/p>\n<p>\u00a0 var exchangeRateUse := cast(Guid, getCustomisingValue(&#8222;com.cisag.app.general.Base&#8221;, company):exchangeRateUse);<\/p>\n<p>\u00a0 var quotation := getCustomisingValue(&#8222;com.cisag.app.general.Base&#8221;, company):exchangeRateQuotation;<\/p>\n<p>\u00a0 var factor := 1;<\/p>\n<p>\u00a0 var exchangeRate := getByBusinessKey(CisObject(com.cisag.app.general.obj.ExchangeRate), exchangeRateUse, sourceCurrency, targetCurrency);<\/p>\n<p>\u00a0 if (isNull(exchangeRate)) {<\/p>\n<p>\u00a0\u00a0\u00a0 exchangeRate := getByBusinessKey(CisObject(com.cisag.app.general.obj.ExchangeRate), exchangeRateUse, targetCurrency, sourceCurrency);<\/p>\n<p>\u00a0\u00a0\u00a0 useReverseQuotation := true;<\/p>\n<p>\u00a0 }<\/p>\n<p>\u00a0 if (not isNull(exchangeRate)) {<\/p>\n<p>\u00a0\u00a0\u00a0 if (exchangeRate:factor = 2) factor := 10;<\/p>\n<p>\u00a0\u00a0\u00a0 if (exchangeRate:factor = 3) factor := 100;<\/p>\n<p>\u00a0\u00a0\u00a0 if (exchangeRate:factor = 4) factor := 1000;<\/p>\n<p>\u00a0\u00a0\u00a0 if (exchangeRate:factor = 5) factor := 10000;<\/p>\n<p>\u00a0\u00a0\u00a0 if ((useReverseQuotation = false and quotation = ExchangeRateQuotation.DIRECT) or<\/p>\n<p>\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 (useReverseQuotation = true and quotation = ExchangeRateQuotation.INDIRECT))<\/p>\n<p>\u00a0\u00a0\u00a0\u00a0\u00a0 convertedAmount := (amount * factor) \/ exchangeRate:middleRate;<\/p>\n<p>\u00a0\u00a0\u00a0 another<\/p>\n<p>\u00a0\u00a0\u00a0\u00a0\u00a0 convertedAmount := (amount * exchangeRate:middleRate) \/ factor;<\/p>\n<p>\u00a0 }<\/p>\n<p>\u00a0 return convertedAmount;<\/p>\n<p>}<\/p>\n<p>function convertCurrencyAt(amount as Number, sourceCurrency as Guid, targetCurrency as Guid, conversionDate as Timestamp) as Number<\/p>\n<p>{<\/p>\n<p>\u00a0 var convertedAmount := 0;<\/p>\n<p>\u00a0 var useReverseQuotation := false;<\/p>\n<p>\u00a0 var company := cast(Guid, getCustomisingValue(&#8222;com.cisag.app.General&#8221;):company);<\/p>\n<p>\u00a0 var exchangeRateUse := cast(Guid, getCustomisingValue(&#8222;com.cisag.app.general.Base&#8221;, company):exchangeRateUse);<\/p>\n<p>\u00a0 var quotation := getCustomisingValue(&#8222;com.cisag.app.general.Base&#8221;, company):exchangeRateQuotation;<\/p>\n<p>\u00a0 var factor := 1;<\/p>\n<p>\u00a0 var OQL :=<\/p>\n<p>\u00a0\u00a0\u00a0 &#8222;SELECT FROM com.cisag.app.general.obj.ExchangeRate o &#8221; +<\/p>\n<p>\u00a0\u00a0\u00a0 &#8222;WHERE o:exchangeRateUse = ? AND o:sourceCurrency = ? AND o:targetCurrency = ? &#8221; +<\/p>\n<p>\u00a0\u00a0\u00a0 &#8221; AND o:validFrom &lt;= toTimeStamp(&#8222;&#8221; + timeZoneId(today()) + &#8222;&#8221;, &#8221; +<\/p>\n<p>\u00a0\u00a0\u00a0 format(year(conversionDate)) + &#8222;, &#8221; + format(month(conversionDate)) + &#8222;, &#8221; + format(day(conversionDate)) + &#8222;, &#8221; + &#8222;.<\/p>\n<p>\u00a0\u00a0\u00a0 format(hour(conversionDate)) + &#8222;, &#8221; + format(minute(conversionDate)) + &#8222;, &#8221; + format(second(conversionDate)) + &#8222;, &#8221; + &#8222;, &#8221; + &#8222;.<\/p>\n<p>\u00a0\u00a0\u00a0 format(millisecond(conversionDate)) + &#8222;) &#8221; +<\/p>\n<p>\u00a0\u00a0\u00a0 &#8221; AND o:validUntil &gt; toTimeStamp(&#8222;&#8221; + timeZoneId(today()) + &#8222;&#8221;, &#8221; +<\/p>\n<p>\u00a0\u00a0\u00a0 format(year(conversionDate)) + &#8222;, &#8221; + format(month(conversionDate)) + &#8222;, &#8221; + format(day(conversionDate)) + &#8222;, &#8221; + &#8222;.<\/p>\n<p>\u00a0\u00a0\u00a0 format(hour(conversionDate)) + &#8222;, &#8221; + format(minute(conversionDate)) + &#8222;, &#8221; + format(second(conversionDate)) + &#8222;, &#8221; + &#8222;, &#8221; + &#8222;.<\/p>\n<p>\u00a0\u00a0\u00a0 format(millisecond(conversionDate)) + &#8222;)&#8221;;<\/p>\n<p>\u00a0 var oList := getCisObjectList(&#8222;OLTP&#8221;, OQL, list(exchangeRateUse, sourceCurrency, targetCurrency), 1);<\/p>\n<p>\u00a0 if (size(oList) = 0) {<\/p>\n<p>\u00a0\u00a0\u00a0 oList := getCisObjectList(&#8222;OLTP&#8221;, OQL, list(exchangeRateUse, targetCurrency, sourceCurrency), 1);<\/p>\n<p>\u00a0\u00a0\u00a0 useReverseQuotation := true;<\/p>\n<p>\u00a0 }<\/p>\n<p>\u00a0 for (exchangeRate as CisObject(com.cisag.app.general.obj.ExchangeRate) : oList) {<\/p>\n<p>\u00a0\u00a0\u00a0 if (exchangeRate:factor = 2) factor := 10;<\/p>\n<p>\u00a0\u00a0\u00a0 if (exchangeRate:factor = 3) factor := 100;<\/p>\n<p>\u00a0\u00a0\u00a0 if (exchangeRate:factor = 4) factor := 1000;<\/p>\n<p>\u00a0\u00a0\u00a0 if (exchangeRate:factor = 5) factor := 10000;<\/p>\n<p>\u00a0\u00a0\u00a0 if ((useReverseQuotation = false and quotation = ExchangeRateQuotation.DIRECT) or<\/p>\n<p>\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 (useReverseQuotation = true and quotation = ExchangeRateQuotation.INDIRECT))<\/p>\n<p>\u00a0\u00a0\u00a0\u00a0\u00a0 convertedAmount := (amount * factor) \/ exchangeRate:middleRate;<\/p>\n<p>\u00a0\u00a0\u00a0 other<\/p>\n<p>\u00a0\u00a0\u00a0\u00a0\u00a0 convertedAmount := (amount * exchangeRate:middleRate) \/ factor;<\/p>\n<p>\u00a0 }<\/p>\n<p>\u00a0 return convertedAmount;<\/p>\n<p>}<\/div><\/section>\n<h6 id=\"getcorporatecurrency\" ><span class=\"ez-toc-section\" id=\"getCorporateCurrency\"><\/span>getCorporateCurrency<span class=\"ez-toc-section-end\"><\/span><\/h6>\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>getCorporateCurrency<\/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>getCorporateCurrency<\/em> zwraca identyfikator waluty wiod\u0105cej organizacji.<\/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>Guid getCorporateCurrency(Guid organisation)<\/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>organisation<\/em> to identyfikator organizacji, dla kt\u00f3rej ma zosta\u0107 okre\u015blona waluta wiod\u0105ca.<\/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 identyfikator waluty wiod\u0105cej organizacji <em>organisation<\/em>.<\/p>\n<p>Je\u015bli <em>organisation<\/em> nie jest firm\u0105, zwracana jest waluta wiod\u0105ca firmy, do kt\u00f3rej przypisana jest <em>organisation.<\/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>loadCurrency(getCorporateCurrency(cast(Guid, getAttribute(parameters<\/em><em>.object, &#8222;_organisation&#8221;)))):isoCode<\/em> zwraca kod ISO waluty wiod\u0105cej 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>OLTP<\/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>amountCorporate<\/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.getCorporateCurrency <\/em>pokazuje, w jaki spos\u00f3b mo\u017cna zapyta\u0107 o funkcj\u0119 konfiguracyjn\u0105 <em>Podstawowe<\/em> w celu okre\u015blenia waluty wiod\u0105cej firmy.<\/p>\n<p>function create()<\/p>\n<p>{<\/p>\n<p>\u00a0 var p_organisation := parameters.ORGANIZATION;<\/p>\n<p>\u00a0 var r_corporateCurrency := getCorporateCurrency(loadOrganisation(p_organisation):guid);<\/p>\n<p>\u00a0 result.PRIMARY_CURRENCY := loadCurrency(r_corporateCurrency):isoCode;<\/p>\n<p>}<\/p>\n<p>function getCorporateCurrency(org as Guid) as Guid<\/p>\n<p>{<\/p>\n<p>\u00a0 var corporateCurrency as Guid;<\/p>\n<p>\u00a0 var baseFunction := getCustomizingValue(&#8222;com.cisag.app.general.Base&#8221;, loadOrganisation(org):financialsOrganization);<\/p>\n<p>\u00a0 if (not isNull(baseFunction)) {<\/p>\n<p>\u00a0\u00a0\u00a0 corporateCurrency := baseFunction:corporateCurrencyGuid;<\/p>\n<p>\u00a0 }<\/p>\n<p>\u00a0 return corporateCurrency;<\/p>\n<p>}<\/div><\/section>\n<h6 id=\"getcurrency1\" ><span class=\"ez-toc-section\" id=\"getCurrency1\"><\/span><strong>getCurrency1<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h6>\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>getCurrency1<\/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>getCurrency1<\/em> zwraca guid dla <em>Waluty wewn\u0119trznej 1<\/em> klienta.<\/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>Guid getCurrency1()<\/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>Funkcja zwraca identyfikator guid dla <em>Waluty wewn\u0119trznej 1<\/em> klienta.<\/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>loadCurrency(getCurrency1()):isoCode<\/em> zwraca kod ISO <em>Waluty wewn\u0119trznej 1<\/em> klienta.<\/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>OLTP<\/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 firmy mo\u017cna zdefiniowa\u0107 maksymalnie 3 waluty wewn\u0119trzne. <em>Waluty wewn\u0119trzne 2 i 3<\/em> s\u0105 specyficzne dla organizacji. Z drugiej strony <em>Waluta wewn\u0119trzna 1<\/em> jest ustandaryzowana dla ca\u0142ego klienta, tj. wszystkie firmy maj\u0105 t\u0119 sam\u0105 <em>Walut\u0119 wewn\u0119trzn\u0105 1<\/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>getCurrency2<\/em><em>, <\/em><em>getCurrency3<\/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.getCurrency1<\/em> pokazuje, w jaki spos\u00f3b funkcja konfiguracyjna <em>Podstawowe<\/em> mo\u017ce by\u0107 odpytywana dla klienta w celu okre\u015blenia <em>Waluty wewn\u0119trznej 1<\/em> wszystkich firm.<\/p>\n<p>function create()<\/p>\n<p>{<\/p>\n<p>\u00a0 var r_currency1 := getCurrency1();<\/p>\n<p>\u00a0 result.CURRENCY1 := loadCurrency(r_currency1):isoCode;<\/p>\n<p>}<\/p>\n<p>function getCurrency1() as Guid<\/p>\n<p>{<\/p>\n<p>\u00a0 var currency1 as Guid;<\/p>\n<p>\u00a0 var company := loadOrganisation(getCustomizingValue(&#8222;com.cisag.app.General&#8221;):company);<\/p>\n<p>\u00a0 var baseFunction := getCustomizingValue(&#8222;com.cisag.app.general.Base&#8221;, company:guid);<\/p>\n<p>\u00a0 if (not isNull(baseFunction)) {<\/p>\n<p>\u00a0\u00a0\u00a0 var combination := getByPrimaryKey(CisObject(com.cisag.app.multiorg.obj.DomesticCurrencyCombination), baseFunction:combination);<\/p>\n<p>\u00a0\u00a0\u00a0 currency1 := combination:currency1;<\/p>\n<p>\u00a0 }<\/p>\n<p>\u00a0 return currency1;<\/p>\n<p>}<\/div><\/section>\n<h6 id=\"getcurrency2\" ><span class=\"ez-toc-section\" id=\"getCurrency2\"><\/span><strong>getCurrency2<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h6>\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>getCurrency2<\/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>getCurrency2<\/em> zwraca identyfikator guid dla <em>Waluty wewn\u0119trznej 2 <\/em>organizacji.<\/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>Guid getCurrency2(Guid organisation)<\/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>Funkcja zwraca identyfikator guid dla <em>Waluty wewn\u0119trznej 2<\/em> dla <em>organisation<\/em>.<\/p>\n<p>Je\u015bli <em>organisation<\/em> nie jest firm\u0105, zwracana jest <em>Waluta wewn\u0119trzna 2 <\/em>firmy, do kt\u00f3rej przypisana jest <em>organisation<\/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 okre\u015blono <em>Waluty wewn\u0119trznej 2<\/em> dla <em>organisation<\/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>loadCurrency(getCurrency2(cast(Guid, getAttribute(parameters<\/em><em>.object, &#8222;_organisation&#8221;)))):isoCode<\/em> zwraca kod ISO drugiej waluty wewn\u0119trznej 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>OLTP<\/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>getCurrency1<\/em><em>, <\/em><em>getCurrency3<\/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.getCurrency2<\/em> pokazuje, w jaki spos\u00f3b funkcja konfiguracyjna <em>Podstawowe<\/em> mo\u017ce by\u0107 odpytywana dla firmy w celu okre\u015blenia drugiej waluty wewn\u0119trznej firmy.<\/p>\n<p>function create()<\/p>\n<p>{<\/p>\n<p>\u00a0 var p_organisation := parameters.ORGANIZATION;<\/p>\n<p>\u00a0 var r_currency2 := getCurrency2(loadOrganisation(p_organization):guid);<\/p>\n<p>\u00a0 result.IS_NULL := isNull(r_currency2);<\/p>\n<p>\u00a0 if (not isNull(r_currency2))<\/p>\n<p>\u00a0\u00a0\u00a0 result.CURRENCY2 := loadCurrency(r_currency2):isoCode;<\/p>\n<p>}<\/p>\n<p>function getCurrency2(organisation as Guid) as Guid<\/p>\n<p>{<\/p>\n<p>\u00a0 var currency2 as Guid;<\/p>\n<p>\u00a0 var baseFunction := getCustomizingValue(&#8222;com.cisag.app.general.Base&#8221;, loadOrganisation(organisation):guid);<\/p>\n<p>\u00a0 if (not isNull(baseFunction)) {<\/p>\n<p>\u00a0\u00a0\u00a0 var combination := getByPrimaryKey(CisObject(com.cisag.app.multiorg.obj.DomesticCurrencyCombination), baseFunction:combination);<\/p>\n<p>\u00a0\u00a0\u00a0 currency2 := combination:currency2;<\/p>\n<p>\u00a0 }<\/p>\n<p>\u00a0 return currency2;<\/p>\n<p>}<\/div><\/section>\n<h6 id=\"getcurrency3\" ><span class=\"ez-toc-section\" id=\"getCurrency3\"><\/span><strong>getCurrency3<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h6>\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>getCurrency3<\/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>getCurrency3<\/em> zwraca guid dla <em>Waluty wewn\u0119trznej 3<\/em> organizacji.<\/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>Guid getCurrency3(Guid organisation)<\/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>Funkcja zwraca identyfikator guid dla trzeciej waluty wewn\u0119trznej <em>organisation<\/em>.<\/p>\n<p>Je\u015bli <em>organisation<\/em> nie jest firm\u0105, zwracana jest trzecia waluta wewn\u0119trzna firmy, do kt\u00f3rej przypisana jest <em>organisation.<\/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 okre\u015blono trzeciej waluty wewn\u0119trznej dla <em>organisation,<\/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>loadCurrency(getCurrency3(cast(Guid, getAttribute(parameters<\/em><em>.object, &#8222;_organisation&#8221;)))):isoCode<\/em> zwraca kod ISO trzeciej waluty wewn\u0119trznej 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>OLTP<\/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>getCurrency1<\/em><em>, <\/em><em>getCurrency2<\/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.getCurrency3 <\/em>pokazuje, w jaki spos\u00f3b funkcja konfiguracyjna <em>Podstawowe<\/em> mo\u017ce by\u0107 odpytywana dla firmy w celu okre\u015blenia trzeciej waluty wewn\u0119trznej firmy.<\/p>\n<p>function create()<\/p>\n<p>{<\/p>\n<p>\u00a0 var p_organisation := parameters.ORGANIZATION;<\/p>\n<p>\u00a0 var r_currency3 := getCurrency3(loadOrganisation(p_organization):guid);<\/p>\n<p>\u00a0 result.IS_NULL := isNull(r_currency3);<\/p>\n<p>\u00a0 if (not isNull(r_currency3))<\/p>\n<p>\u00a0\u00a0\u00a0 result.CURRENCY3 := loadCurrency(r_currency3):isoCode;<\/p>\n<p>}<\/p>\n<p>function getCurrency3(organisation as Guid) as Guid<\/p>\n<p>{<\/p>\n<p>\u00a0 var currency3 as Guid;<\/p>\n<p>\u00a0 var baseFunction := getCustomizingValue(&#8222;com.cisag.app.general.Base&#8221;, loadOrganisation(organisation):guid);<\/p>\n<p>\u00a0 if (not isNull(baseFunction)) {<\/p>\n<p>\u00a0\u00a0\u00a0 var combination := getByPrimaryKey(CisObject(com.cisag.app.multiorg.obj.DomesticCurrencyCombination), baseFunction:combination);<\/p>\n<p>\u00a0\u00a0\u00a0 currency3 := combination:currency3;<\/p>\n<p>\u00a0 }<\/p>\n<p>\u00a0 return currency3;<\/p>\n<p>}<\/div><\/section>\n<h4 id=\"funkcje-dla-ilosci-i-jednostek-miar-funkcje-jednostek-miar\" ><span class=\"ez-toc-section\" id=\"Funkcje_dla_ilosci_i_jednostek_miar_Funkcje_jednostek_miar\"><\/span>Funkcje dla ilo\u015bci i jednostek miar (Funkcje jednostek miar)<span class=\"ez-toc-section-end\"><\/span><\/h4>\n<p>Funkcje dla ilo\u015bci i jednostek miar obejmuj\u0105 <em>loadUom<\/em> do otwierania jednostki.<\/p>\n<h5 id=\"loaduom\" ><span class=\"ez-toc-section\" id=\"loadUom\"><\/span>loadUom<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>loadUom<\/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>loadUom<\/em> zwraca jednostk\u0119 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>Podpisy<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>CisObject(com.cisag.app.general.obj.Currency) loadUom(String code)<\/p>\n<p>CisObject(com.cisag.app.general.obj.Currency) loadUom(Guid guid)<\/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> to identyfikator guid jednostki.<\/p>\n<p><em>code<\/em> jest identyfikatorem jednostki.<\/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 jednostk\u0119 o okre\u015blonym identyfikatorze guid lub identyfikatorze jako wpisany obiekt <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>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>loadUom(&#8222;kg&#8221;)<\/em> zwraca typowany <em>CisObject<\/em> dla jednostki o kodzie <em>kg<\/em>.<\/p>\n<p><em>loadUom(parameters.object:totalQuantity.uom):code<\/em> zwraca identyfikacj\u0119 jednostki, w kt\u00f3rej wprowadzono pozycj\u0119 zam\u00f3wienia sprzeda\u017cy, do kt\u00f3rej odnosi 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>OLTP<\/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.loadUom<\/em> otwiera jednostk\u0119 miary poprzez jej identyfikacj\u0119 i zwraca oznaczenie.<\/p>\n<p>function create()<\/p>\n<p>{<\/p>\n<p>\u00a0 var p_code := parameters.CODE;<\/p>\n<p>\u00a0 var r_uom := loadUom(p_code);<\/p>\n<p>\u00a0 result.IS_NULL := isNull(r_uom);<\/p>\n<p>\u00a0 if (not isNull(r_uom))<\/p>\n<p>\u00a0\u00a0\u00a0 result.DESCRIPTION := r_uom:description;<\/p>\n<p>}<\/div><\/section>\n<h4 id=\"funkcje-kalendarzy-firmowych-funkcje-kalendarza\" ><span class=\"ez-toc-section\" id=\"Funkcje_kalendarzy_firmowych_Funkcje_kalendarza\"><\/span>Funkcje kalendarzy firmowych (Funkcje kalendarza)<span class=\"ez-toc-section-end\"><\/span><\/h4>\n<p>Funkcje kalendarza firmowego obejmuj\u0105 funkcje oceny typ\u00f3w dni i dodawania dni roboczych do czasu zgodnie z kalendarzem firmowym:<\/p>\n<ul>\n<li>addWorkingDays<\/li>\n<li>getDayType<\/li>\n<li>workingDays<\/li>\n<\/ul>\n<h5 id=\"addworkingdays\" ><span class=\"ez-toc-section\" id=\"addWorkingDays\"><\/span>addWorkingDays<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>addWorkingDays<\/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>addWorkingDays<\/em> dodaje dni robocze do czasu zgodnie ze standardowym kalendarzem pracy organizacji.<\/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>Timestamp addWorkingDays(String organisation, Timestamp time, Number days)<\/p>\n<p>Timestamp addWorkingDays(Guid organisation, Timestamp time, Number days)<\/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>organisation<\/em> to identyfikator lub identyfikator guid organizacji.<\/p>\n<p><em>time<\/em> to czas, do kt\u00f3rego maj\u0105 zosta\u0107 dodane dni robocze.<\/p>\n<p><em>days <\/em>to liczba dni roboczych do dodania.<\/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 czas <em>time<\/em> i <em>days<\/em> dni robocze, zgodnie z kalendarzem firmowym z typem kalendarza firmowego zapisanym w funkcji konfiguracyjnej <em>Podstawowe<\/em> dla organizacji <em>organisation.<\/em> Wynikiem jest zawsze dzie\u0144 roboczy.<\/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 dla organizacji nie wprowadzono kalendarza firmowego ze standardowym typem kalendarza firmowego, funkcja prowadzi do b\u0142\u0119du uruchomienia.<\/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>addWorkingDays(&#8222;90000&#8221;, now(), 10)<\/em> zwraca czas 10 dni roboczych w przysz\u0142o\u015bci zgodnie ze standardowym kalendarzem firmowym organizacji <em>90000<\/em>.<\/p>\n<p><em>addWorkingDays(&#8222;90000&#8221;, now(), -10)<\/em> zwraca czas 10 dni roboczych w przesz\u0142o\u015bci.<\/p>\n<p><em>setActivityDuration(seconds(activity:creationTime, addWorkingDays(parameters.object-&gt;OrderDeliveryData-&gt;StorageArea:organisationalUnit, endOfDay(activity:creationTime), 3))<\/em> ustawia planowany koniec dzia\u0142ania na koniec trzeciego dnia roboczego zgodnie ze standardowym kalendarzem firmowym organizacji logistyki magazynowej magazynu zapisanego w zam\u00f3wieniu sprzeda\u017cy (<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>OLTP<\/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>Nale\u017cy u\u017cy\u0107 funkcji <em>addWorkingDays<\/em>, aby okre\u015bli\u0107 planowany czas przetwarzania dzia\u0142ania workflow za pomoc\u0105 funkcji <em>setActivityWorkDuration<\/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>workingDays<\/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.addWorkingDays<\/em>.<\/p>\n<p>function create()<\/p>\n<p>{<\/p>\n<p>\u00a0 var p_organisation := parameters.ORGANIZATION;<\/p>\n<p>\u00a0 var p_time := parameters.TIME;<\/p>\n<p>\u00a0 var p_days := parameters.DAYS;<\/p>\n<p>\u00a0 var r_addWorkingDays := addWorkingDays(loadOrganisation(p_organization):guid, p_time, p_days);<\/p>\n<p>\u00a0 result.IS_NULL := isNull(r_addWorkingDays);<\/p>\n<p>\u00a0 if (not isNull(r_addWorkingDays))<\/p>\n<p>\u00a0\u00a0\u00a0 result.NEW_TIME := r_addWorkingDays;<\/p>\n<p>}<\/div><\/section>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\"><strong>Implementacja addWorkingDays w JavaScript<\/strong><\/p>\n<p>Poni\u017cszy przyk\u0142ad z definicji dzia\u0142ania <em>help.js.addWorkingDays<\/em> pokazuje, w jaki spos\u00f3b deklaracje zapisane w JavaScript mog\u0105 wywo\u0142ywa\u0107 metody w Javie. Korzystaj\u0105c z JavaScript, r\u00f3\u017cne metody odczytu s\u0105 dost\u0119pne w klasach Java, kt\u00f3re nie wyzwalaj\u0105 transakcji bazodanowych.<\/p>\n<p>\/**<\/p>\n<p>\u00a0* Przesuni\u0119cie daty o okre\u015blon\u0105 liczb\u0119 dni<\/p>\n<p>\u00a0* Parametry:<\/p>\n<p>\u00a0* calendarType domy\u015blny typ kalendarza organizacji<\/p>\n<p>\u00a0* data rozpocz\u0119cia<\/p>\n<p>\u00a0* liczba dni (dozwolone s\u0105 liczby ujemne)<\/p>\n<p>\u00a0* onlyWorkingDays u\u017cywa tylko dni roboczych<\/p>\n<p>\u00a0* resultIsWorkingDay wynik musi by\u0107 dniem roboczym<\/p>\n<p>\u00a0* standardiseResult wynik jest pocz\u0105tkiem dnia w strefie czasowej<\/p>\n<p>\u00a0* Warto\u015b\u0107 zwracana: data wyniku<\/p>\n<p>\u00a0* Podpis:<\/p>\n<p>\u00a0* public CisDate addDays(byte[] calendarType, CisDate date,<\/p>\n<p>\u00a0* int days, boolean onlyWorkingDays, boolean resultIsWorkDay,<\/p>\n<p>\u00a0* boolean standardizeResult) throws IllegalStateException<\/p>\n<p>\u00a0*\/<\/p>\n<p>function create()<\/p>\n<p>{<\/p>\n<p>\u00a0 var p_organisation = parameters.ORGANIZATION;<\/p>\n<p>\u00a0 var p_date = parameters.DATE;<\/p>\n<p>\u00a0 var p_workingDays = parameters.WORKING_DAYS;<\/p>\n<p>\u00a0 var p_onlyWorkingDays = parameters.ONLY_WORKING_DAYS != 0;<\/p>\n<p>\u00a0 var p_resultIsWorkingDay = parameters.RESULT_IS_WORKING_DAY != 0;<\/p>\n<p>\u00a0 var p_standardizeResult = true;<\/p>\n<p>\u00a0 var cisEnvironment = Java.type(&#8222;com.cisag.pgm.appserver.CisEnvironment&#8221;).getInstance();<\/p>\n<p>\u00a0 var objectManager = cisEnvironment.getObjectManager();<\/p>\n<p>\u00a0 var organisation = objectManager.getObject(Java.type(&#8222;com.cisag.app.multiorg.obj.Organisation&#8221;).buildByCodeKey(p_organisation));<\/p>\n<p>\u00a0 var calendarViewLogic = Java.type(&#8222;com.cisag.app.general.calendar.log.CalendarViewLogic&#8221;).getInstance();<\/p>\n<p>\u00a0 var calendarTypeGuid = calendarViewLogic.getDefaultCalendarType(organisation.getGuid()) ;<\/p>\n<p>\u00a0 var context = cisEnvironment.getContext();<\/p>\n<p>\u00a0 var cisCalendar = context.getCisCalendar();<\/p>\n<p>\u00a0 var date = Java.type(&#8222;com.cisag.pgm.datatype.CisDateUtility&#8221;).createCisDate(cisCalendar.getTimeZoneGuid(), p_date);<\/p>\n<p>\u00a0 var resultDate = calendarViewLogic.addDays(calendarTypeGuid, date, p_workingDays, p_onlyWorkingDays, p_resultIsWorkingDay, p_standardizeResult);<\/p>\n<p>\u00a0 result.RESULT_DATE = resultDate;<\/p>\n<p>}<\/p>\n<p>Definicja dzia\u0142ania <em>help.js.addWorkingDays.call<\/em> pokazuje, jak mo\u017cna wywo\u0142a\u0107 <em>help.js.addWorkingDays<\/em>.<\/p>\n<p>function create()<\/p>\n<p>{<\/p>\n<p>\u00a0 var params := new(HashMap);<\/p>\n<p>\u00a0 params.ORGANIZATION := parameters.ORGANIZATION;<\/p>\n<p>\u00a0 params.DATE := parameters.DATE;<\/p>\n<p>\u00a0 params.WORKING_DAYS := parameters.WORKING_DAYS;<\/p>\n<p>\u00a0 params.ONLY_WORKING_DAYS := parameters.ONLY_WORKING_DAYS;<\/p>\n<p>\u00a0 params.RESULT_IS_WORKING_DAY := parameters.RESULT_IS_WORKING_DAY;<\/p>\n<p>\u00a0 var calendarDays := call(&#8222;help.js.addWorkingDays&#8221;, params);<\/p>\n<p>\u00a0 result.RESULT_DATE := cast(Timestamp, calendarDays.RESULT_DATE);<\/p>\n<p>}<\/div><\/section>\n<h5 id=\"getdaytype\" ><span class=\"ez-toc-section\" id=\"getDayType\"><\/span>getDayType<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>getDayType<\/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>getDayType<\/em> zwraca typ dnia punktu w czasie zgodnie ze standardowym kalendarzem pracy organizacji.<\/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>Number getDayType(String organisation, Timestamp time)<\/p>\n<p>Number getDayType(Guid organisation, Timestamp time)<\/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>organisation<\/em> to identyfikator lub identyfikator guid organizacji.<\/p>\n<p><em>time<\/em> to godzina, kt\u00f3rej typ dnia ma zosta\u0107 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>Funkcja zwraca typ dnia <em>time<\/em> zgodnie z kalendarzem firmowym z typem kalendarza firmowego przechowywanym w funkcji konfiguracyjnej <em>Podstawowe<\/em> dla organizacji <em>organisation.<\/em> Typ dnia jest oparty na <em>ValueSet com.cisag.app.general.DayType <\/em>i ma nast\u0119puj\u0105ce warto\u015bci.<\/p>\n<p>1.\u00a0\u00a0\u00a0\u00a0 Dzie\u0144 roboczy<\/p>\n<p>2.\u00a0\u00a0\u00a0\u00a0 Brak dnia roboczego<\/p>\n<p>3.\u00a0\u00a0\u00a0\u00a0 \u015awi\u0119to pa\u0144stwowe<\/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 dla organizacji nie wprowadzono kalendarza firmowego ze standardowym typem kalendarza firmowego, funkcja prowadzi do b\u0142\u0119du uruchomienia.<\/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>getDayType(&#8222;90000&#8221;, now())<\/em> zwraca typ dnia dzisiejszego zgodnie ze standardowym kalendarzem firmowym organizacji <em>90000<\/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>OLTP<\/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 pochodzi z definicji dzia\u0142ania <em>help.getDayType<\/em>.<\/p>\n<p>const DayType as valueSet(com.cisag.app.general.DayType);<\/p>\n<p>function create()<\/p>\n<p>{<\/p>\n<p>\u00a0 var p_organisation := parameters.ORGANIZATION;<\/p>\n<p>\u00a0 var p_time := parameters.TIME;<\/p>\n<p>\u00a0 var r_dayType := getDayType(loadOrganisation(p_organization):guid, p_time);<\/p>\n<p>\u00a0 result.IS_NULL := isNull(r_dayType);<\/p>\n<p>\u00a0 if (not isNull(r_dayType))<\/p>\n<p>\u00a0\u00a0\u00a0 result.DAY_TYPE := valueSetDescription(DayType, r_dayType);<\/p>\n<p>}<\/div><\/section>\n<h5 id=\"workingdays\" ><span class=\"ez-toc-section\" id=\"workingDays\"><\/span>workingDays<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>workingDays<\/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>workingDays<\/em> zwraca liczb\u0119 dni roboczych mi\u0119dzy dwoma punktami w czasie zgodnie ze standardowym kalendarzem pracy organizacji.<\/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>Number workingDays(String organisation, Timestamp from, Timestamp until)<\/p>\n<p>Number workingDays(Guid organisation, Timestamp from, Timestamp until)<\/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>organisation<\/em> to identyfikator lub identyfikator guid organizacji.<\/p>\n<p><em>from<\/em> to punkt w czasie pierwszego dnia kalendarzowego.<\/p>\n<p><em>until<\/em> oznacza moment w ostatnim dniu kalendarzowym.<\/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 liczb\u0119 dni roboczych mi\u0119dzy dniami kalendarzowymi <em>from<\/em> i <em>until<\/em> zgodnie z kalendarzem firmowym z typem kalendarza firmowego zapisanym w funkcji konfiguracyjnej <em>Podstawowe<\/em> dla organizacji <em>organisation<\/em>. Je\u015bli dwa punkty w czasie <em>from<\/em> i <em>until<\/em> znajduj\u0105 si\u0119 w tym samym dniu kalendarzowym, zwracana jest warto\u015b\u0107 0.<\/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 dla organizacji nie wprowadzono kalendarza firmowego ze standardowym typem kalendarza firmowego, funkcja prowadzi do b\u0142\u0119du uruchomienia.<\/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>workingDays(&#8222;90000&#8221;, parameters.object:date, now())<\/em> zwraca liczb\u0119 dni roboczych mi\u0119dzy dokumentem, do kt\u00f3rego odwo\u0142uje si\u0119 parametr <em>parameters.object<\/em>, a bie\u017c\u0105cym dniem. Je\u015bli wydruk jest oceniany podczas generowania i wyprowadzania dowodu dostawy, np. dla zam\u00f3wienia sprzeda\u017cy, mo\u017ce to by\u0107 czas w dniach roboczych mi\u0119dzy wprowadzeniem zam\u00f3wienia sprzeda\u017cy a dostaw\u0105.<\/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>OLTP<\/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>addWorkingDays<\/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.workingDays<\/em>.<\/p>\n<p>function create()<\/p>\n<p>{<\/p>\n<p>\u00a0 var p_organisation := parameters.ORGANIZATION;<\/p>\n<p>\u00a0 var p_from := parameters.FROM;<\/p>\n<p>\u00a0 var p_until := parameters.UNTIL;<\/p>\n<p>\u00a0 r_workingDays := workingDays(loadOrganisation(p_organization):guid, p_from, p_until);<\/p>\n<p>\u00a0 result.IS_NULL := isNull(r_workingDays);<\/p>\n<p>\u00a0 if (not isNull(r_workingDays))<\/p>\n<p>\u00a0\u00a0\u00a0 result.WORKING_DAYS := r_workingDays;<\/p>\n<p>}<\/div><\/section>\n<h4 id=\"funkcje-dla-stanowisk-funkcje-nazwy-stanowiska\" ><span class=\"ez-toc-section\" id=\"Funkcje_dla_stanowisk_Funkcje_nazwy_stanowiska\"><\/span>Funkcje dla stanowisk (Funkcje nazwy stanowiska)<span class=\"ez-toc-section-end\"><\/span><\/h4>\n<p>Funkcje dla stanowisk obejmuj\u0105 funkcje rozwi\u0105zywania zadania na przypisanych u\u017cytkownik\u00f3w oraz funkcje analizy relacji mi\u0119dzy stanowiskami:<\/p>\n<ul>\n<li>resolveJobTitle<\/li>\n<li>substitute<\/li>\n<li>superior<\/li>\n<\/ul>\n<h5 id=\"resolvejobtitle\" ><span class=\"ez-toc-section\" id=\"resolveJobTitle\"><\/span>resolveJobTitle<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>resolveJobTitle<\/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>resolveJobTitle<\/em> rozwi\u0105zuje zadanie w przewodnikach 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>Guid[] resolveJobTitle(Guid jobTitle)<\/p>\n<p>Guid[] resolveJobTitle(String jobTitle, String organisation)<\/p>\n<p>Guid[] resolveJobTitle(String jobTitle, Guid organisation)<\/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>jobTitle<\/em> to identyfikator lub nazwa stanowiska.<\/p>\n<p><em>organisation<\/em> to identyfikator guid lub identyfikacja organizacji.<\/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 identyfikator\u00f3w u\u017cytkownik\u00f3w wszystkich u\u017cytkownik\u00f3w przypisanych do partnera, dla kt\u00f3rego istnieje relacja partnerska ze stanowiskiem.<\/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 stanowisko 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>resolveJobTitle(&#8222;<\/em><em>SALES&#8221;)<\/em> zwraca list\u0119 z identyfikatorami wszystkich u\u017cytkownik\u00f3w, dla kt\u00f3rych istnieje relacja partnerska ze stanowiskiem <em>SALES<\/em> w dowolnej organizacji.<\/p>\n<p><em>resolveJobTitle(&#8222;SALES&#8221;, &#8222;90000&#8221;)<\/em> ogranicza wynik do stanowisk organizacji <em>90000<\/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>OLTP<\/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>Relacje mi\u0119dzy partnerami mog\u0105 by\u0107 rejestrowane w aplikacji <em>Stanowiska<\/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.resolveJobTitle<\/em> rozwi\u0105zuje stanowisko w przewodnikach u\u017cytkownika:<\/p>\n<p>function create()<\/p>\n<p>{<\/p>\n<p>\u00a0 var p_organisation := parameters.ORGANIZATION;<\/p>\n<p>\u00a0 var p_jobTitle := parameters.JOB_TITLE;<\/p>\n<p>\u00a0 var r_users := &#8222;&#8221;;<\/p>\n<p>\u00a0 var users as Guid[];<\/p>\n<p>\u00a0 users := resolveJobTitle(p_jobTitle, p_organisation);<\/p>\n<p>\u00a0 if (not isNull(users)) {<\/p>\n<p>\u00a0\u00a0\u00a0 for (u : users)<\/p>\n<p>\u00a0\u00a0\u00a0\u00a0\u00a0 r_users := r_users + &#8221; &#8221; + userName(u);<\/p>\n<p>\u00a0 }<\/p>\n<p>\u00a0 result.IS_NULL := isNull(users);<\/p>\n<p>\u00a0 result.USERS := substring(r_users, 1);<\/p>\n<p>}<\/div><\/section>\n<h5 id=\"substitute\" ><span class=\"ez-toc-section\" id=\"Substitute\"><\/span>Substitute<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>substitute<\/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>substitute<\/em> zwraca zast\u0119pc\u00f3w u\u017cytkownika lub list\u0119 u\u017cytkownik\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>Guid[] substitute(Guid user)<\/p>\n<p>Guid[] substitute(Guid user, Guid organisation)<\/p>\n<p>Guid[] substitute(Guid user, String organisation)<\/p>\n<p>Guid[] substitute(Guid[] users)<\/p>\n<p>Guid[] substitute(Guid[] users, Guid organisation)<\/p>\n<p>Guid[] substitute(Guid[] users, String organisation)<\/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>users<\/em> to lista zast\u0119pc\u00f3w u\u017cytkownika.<\/p>\n<p><em>user<\/em> to identyfikator u\u017cytkownika.<\/p>\n<p><em>organisation<\/em> to identyfikator guid lub identyfikacja organizacji.<\/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 oblicza identyfikatory u\u017cytkownik\u00f3w zast\u0119pc\u00f3w dla zestawu identyfikator\u00f3w u\u017cytkownik\u00f3w przy u\u017cyciu relacji zada\u0144 typu <em>substitute<\/em> i zwraca je w postaci listy. Opcjonalnie mo\u017cna uwzgl\u0119dni\u0107 kontekst organizacyjny stanowisk w \u015brodowisku wielofirmowym.<\/p>\n<p>Uwzgl\u0119dniane s\u0105 tylko relacje partnerskie typu <em>person<\/em>. Je\u015bli stanowisko ma relacj\u0119 partnersk\u0105 typu <em>organisation<\/em>, jest ona ignorowana.<\/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>substitute(&#8222;70010&#8221;)<\/em> zwraca list\u0119 zawieraj\u0105c\u0105 identyfikatory wszystkich zast\u0119pc\u00f3w u\u017cytkownika <em>70010<\/em> we wszystkich organizacjach.<\/p>\n<p><em>substitute(&#8222;70010&#8221;, &#8222;90000&#8221;)<\/em> ogranicza wynik zast\u0119pc\u00f3w organizacji <em>90000<\/em>.<\/p>\n<p>W wyra\u017ceniu dla nowych pracownik\u00f3w po up\u0142ywie limitu czasu dzia\u0142ania, <em>substitute(currentWorkers())<\/em> zwraca list\u0119 z identyfikatorami u\u017cytkownik\u00f3w zast\u0119puj\u0105cych tych u\u017cytkownik\u00f3w, kt\u00f3rzy jeszcze nie uko\u0144czyli swoich zada\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>OLTP<\/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>Relacje zast\u0119pcze mog\u0105 by\u0107 rejestrowane w aplikacji <em>Stanowiska<\/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>superior<\/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.substitute<\/em> okre\u015bla zast\u0119pstwa dla u\u017cytkownika:<\/p>\n<p>function create()<\/p>\n<p>{<\/p>\n<p>\u00a0 var p_organisation := parameters.ORGANIZATION;<\/p>\n<p>\u00a0 var p_user := parameters.USER;<\/p>\n<p>\u00a0 var r_substitutes := &#8222;&#8221;;<\/p>\n<p>\u00a0 var substitutes as Guid[];<\/p>\n<p>\u00a0 if (userGuid(p_user) &lt;&gt; INVALID_GUID) {<\/p>\n<p>\u00a0\u00a0\u00a0 if (p_organisation &lt;&gt; &#8222;&#8221;)<\/p>\n<p>\u00a0\u00a0\u00a0\u00a0\u00a0 substitutes := substitute(userGuid(p_user), p_organisation);<\/p>\n<p>\u00a0\u00a0\u00a0other<\/p>\n<p>\u00a0\u00a0\u00a0\u00a0\u00a0 substitutes := substitute(userGuid(p_user));<\/p>\n<p>\u00a0\u00a0\u00a0 for (u : substitutes) {<\/p>\n<p>\u00a0\u00a0\u00a0\u00a0\u00a0 r_substitutes := r_substitutes + &#8221; &#8221; + userName(u);<\/p>\n<p>\u00a0\u00a0\u00a0 }<\/p>\n<p>\u00a0 }<\/p>\n<p>\u00a0 result.IS_EMPTY := isEmpty(substitutes);<\/p>\n<p>\u00a0 result.SUBSTITUTE := trim(r_substitutes);<\/p>\n<p>}<\/div><\/section>\n<h5 id=\"superior\" ><span class=\"ez-toc-section\" id=\"superior\"><\/span>superior<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>superior<\/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>superior<\/em> zwraca prze\u0142o\u017conego dla u\u017cytkownika lub listy u\u017cytkownik\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>Guid[] superior(Guid user)<\/p>\n<p>Guid[] superior(Guid user, Guid organisation)<\/p>\n<p>Guid[] superior(Guid user, String organisation)<\/p>\n<p>Guid[] superior(Guid[] users)<\/p>\n<p>Guid[] superior(Guid[] users, Guid organisation)<\/p>\n<p>Guid[] superior(Guid[] users, String organisation)<\/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>users<\/em> to lista prze\u0142o\u017conych u\u017cytkownika.<\/p>\n<p><em>user<\/em> to identyfikator u\u017cytkownika.<\/p>\n<p><em>organisation<\/em> to identyfikator guid lub identyfikacja organizacji.<\/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 oblicza identyfikatory u\u017cytkownik\u00f3w prze\u0142o\u017conych dla zestawu identyfikator\u00f3w u\u017cytkownik\u00f3w przy u\u017cyciu relacji zada\u0144 typu <em>supervisor<\/em> i zwraca je w postaci listy. Opcjonalnie mo\u017cna uwzgl\u0119dni\u0107 kontekst organizacyjny stanowisk w \u015brodowisku wielofirmowym.<\/p>\n<p>Uwzgl\u0119dniane s\u0105 tylko relacje partnerskie typu <em>person<\/em>. Je\u015bli stanowisko ma relacj\u0119 partnersk\u0105 typu <em>organisation<\/em>, jest ona ignorowana.<\/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>superior(&#8222;70010&#8221;)<\/em> zwraca list\u0119 zawieraj\u0105c\u0105 identyfikatory wszystkich prze\u0142o\u017conych u\u017cytkownika <em>70010<\/em> we wszystkich organizacjach.<\/p>\n<p><em>superior(&#8222;70010&#8221;, &#8222;90000&#8221;)<\/em> ogranicza wynik do prze\u0142o\u017conych stanowisk w organizacji <em>90000<\/em>.<\/p>\n<p>W wyra\u017ceniu dla nowych pracownik\u00f3w po up\u0142ywie limitu czasu dzia\u0142ania, <em>superior(currentWorkers())<\/em> zwraca list\u0119 z identyfikatorami u\u017cytkownik\u00f3w prze\u0142o\u017conych tych u\u017cytkownik\u00f3w, kt\u00f3rzy jeszcze nie uko\u0144czyli swoich zada\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>OLTP<\/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>Relacje z prze\u0142o\u017conymi mog\u0105 by\u0107 rejestrowane w aplikacji <em>Stanowiska<\/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>substitute<\/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.superior<\/em> okre\u015bla prze\u0142o\u017conego (prze\u0142o\u017conych) u\u017cytkownika:<\/p>\n<p>function create()<\/p>\n<p>{<\/p>\n<p>var p_organisation := parameters.ORGANIZATION;<\/p>\n<p>var p_user := parameters.USER;<\/p>\n<p>var r_superiors := &#8222;&#8221;;<\/p>\n<p>var superiors as Guid[];<\/p>\n<p>if (userGuid(p_user) &lt;&gt; INVALID_GUID) {<\/p>\n<p>if (p_organisation &lt;&gt; &#8222;&#8221;)<\/p>\n<p>superiors := superior(userGuid(p_user), p_organisation);<\/p>\n<p>other<\/p>\n<p>superiors := superior(userGuid(p_user));<\/p>\n<p>for (u : superiors) {<\/p>\n<p>r_superiors := r_superiors + &#8221; &#8221; + userName(u);<\/p>\n<p>}<\/p>\n<p>}<\/p>\n<p>result.IS_EMPTY := isEmpty(superiors);<\/p>\n<p>result.SUPERIOR := trim(r_superiors);<\/p>\n<p>}<\/div><\/section>\n<h4 id=\"funkcje-zgloszen-serwisowych-funkcje-zgloszen-serwisowych\" ><span class=\"ez-toc-section\" id=\"Funkcje_zgloszen_serwisowych_Funkcje_zgloszen_serwisowych\"><\/span>Funkcje zg\u0142osze\u0144 serwisowych (Funkcje zg\u0142osze\u0144 serwisowych)<span class=\"ez-toc-section-end\"><\/span><\/h4>\n<p>Funkcje dla zg\u0142osze\u0144 wsparcia obejmuj\u0105 <em>supportRequestReferences<\/em>, kt\u00f3ra zwraca zg\u0142oszenia wsparcia powi\u0105zane ze zg\u0142oszeniem wsparcia.<\/p>\n<h5 id=\"supportrequestreferences\" ><span class=\"ez-toc-section\" id=\"supportRequestReferences\"><\/span>supportRequestReferences<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>supportRequestReferences<\/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>supportRequestReferences<\/em> zwraca wszystkie zg\u0142oszenia powi\u0105zane ze zg\u0142oszeniem.<\/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>CisObject(com.cisag.app.internal.obj.SupportRequest)[] supportRequestReferences (CisObject(com.cisag.app.internal.obj.SupportRequest) supportRequest , Number referenceType)<\/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>supportRequest<\/em> to zg\u0142oszenie pomocy technicznej.<\/p>\n<p><em>number<\/em> jest typem relacji <em>ValueSet com.cisag.app.internal.SupportRequestReferenceType<\/em> z nast\u0119puj\u0105cymi sta\u0142ymi:<\/p>\n<p>1.\u00a0\u00a0\u00a0\u00a0 Zobacz<\/p>\n<p>2.\u00a0\u00a0\u00a0\u00a0 W zale\u017cno\u015bci od<\/p>\n<p>3.\u00a0\u00a0\u00a0\u00a0 Do przetestowania z<\/p>\n<p>4.\u00a0\u00a0\u00a0\u00a0 Dalsze zlecenie rozwoju<\/p>\n<p>5.\u00a0\u00a0\u00a0\u00a0 Oryginalne zg\u0142oszenie wsparcia<\/p>\n<p>6.\u00a0\u00a0\u00a0\u00a0 Dostarczone zam\u00f3wienie deweloperskie<\/p>\n<p>7.\u00a0\u00a0\u00a0\u00a0 Dostarczone \u017c\u0105danie wsparcia<\/p>\n<p>8.\u00a0\u00a0\u00a0\u00a0 Powi\u0105zane dostarczanie wsparcia<\/p>\n<p>9.\u00a0\u00a0\u00a0\u00a0 Powi\u0105zane dostarczanie wsparcia<\/p>\n<p>10.\u00a0 Korekta w systemie nast\u0119pcy<\/p>\n<p>11.\u00a0 Korekta w poprzednim systemie<\/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 wszystkie zg\u0142oszenia pomocy technicznej i zlecenia rozwoju powi\u0105zane ze zg\u0142oszeniem pomocy technicznej lub zleceniem rozwoju.<\/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>supportRequestReferences(parameters.object, 2)<\/em> zwraca list\u0119 z identyfikatorami zale\u017cnych zg\u0142osze\u0144 wsparcia i zlece\u0144 rozwoju w definicji dzia\u0142ania z definicj\u0105 zdarzenia typu <em>Jednostka biznesowa<\/em> dla obiektu biznesowego <em>com.cisag.app.internal.obj.SupportRequest<\/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>OLTP<\/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<h4 id=\"rozne-funkcje-dla-obiektow-biznesowych-rozne-funkcje-dla-obiektow-biznesowych\" ><span class=\"ez-toc-section\" id=\"Rozne_funkcje_dla_obiektow_biznesowych_Rozne_funkcje_dla_obiektow_biznesowych\"><\/span>R\u00f3\u017cne funkcje dla obiekt\u00f3w biznesowych (R\u00f3\u017cne funkcje dla obiekt\u00f3w biznesowych)<span class=\"ez-toc-section-end\"><\/span><\/h4>\n<p>Inne funkcje dla obiekt\u00f3w biznesowych obejmuj\u0105 <em>createOrderKey<\/em>, kt\u00f3ra jest u\u017cywana do tworzenia dokument\u00f3w, oraz <em>nextNumberRangeNumber<\/em>, kt\u00f3ra generuje liczb\u0119 z zakresu liczb.<\/p>\n<h5 id=\"createorderkey\" ><span class=\"ez-toc-section\" id=\"createOrderKey\"><\/span>createOrderKey<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>createOrderKey<\/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>createOrderKey<\/em> zwraca cz\u0119\u015b\u0107 <em>com.cisag.app.general.obj.OrderKey <\/em>dla dokumentu.<\/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>CisObject(com.cisag.app.general.obj.OrderKey) createOrderKey(Guid header, Guid detail)<\/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>header<\/em> to identyfikator dokumentu.<\/p>\n<p><em>detail<\/em> to identyfikator pozycji.<\/p>\n<p>Je\u015bli u\u017cytkownik chce utworzy\u0107 klucz <em>OrderKey<\/em> bez odniesienia do pozycji dokumentu, nalezy u\u017cy\u0107 warto\u015bci <em>null<\/em> dla <em>detail<\/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 tworzy now\u0105 instancj\u0119 cz\u0119\u015bci <em>com.cisag.app.general.obj.OrderKey<\/em> dla dokumentu lub pozycji dokumentu.<\/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>list(createOrderKey(parameters.object:guid, null))<\/em> zwraca list\u0119 z cz\u0119\u015bci\u0105 <em>com.cisag.app.general.obj.OrderKey <\/em>dla dokumentu, do kt\u00f3rego odwo\u0142uje si\u0119 <em>parameters.object<\/em>.<\/p>\n<p><em>list(createOrderKey(parameters.entity:guid, parameters.object:guid))<\/em> zwraca list\u0119 z cz\u0119\u015bci\u0105 <em>com.cisag.app.general.obj.OrderKey<\/em> dla pozycji dokumentu, do kt\u00f3rej 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>OLTP<\/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>Wiele aplikacji dzia\u0142aj\u0105cych w tle do generowania dokument\u00f3w wykorzystuje parametr <em>OrderKey<\/em> struktury danych typu <em>list<\/em>, np. parametr <em>Orders<\/em> aplikacji dzia\u0142aj\u0105cej w tle <em>com.cisag.app.sales.confirmation.log.Confirmation<\/em>. Aby wywo\u0142a\u0107 takie aplikacje w tle w dzia\u0142aniu workflow, nale\u017cy u\u017cy\u0107 funkcji <em>list<\/em>, jak opisano w powy\u017cszych przyk\u0142adach.<\/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 pochodzi z definicji dzia\u0142ania <em>help.createOrderKey<\/em>.<\/p>\n<p>function create()<\/p>\n<p>{<\/p>\n<p>\u00a0 var p_orderType := parameters.ORDER_TYPE;<\/p>\n<p>\u00a0 var p_header := parameters.HEADER;<\/p>\n<p>\u00a0 var p_detail := parameters.DETAIL;<\/p>\n<p>\u00a0 var orderType := getByBusinessKey(CisObject(com.cisag.app.sales.obj.SalesOrderType), p_orderType);<\/p>\n<p>\u00a0 var header := getByBusinessKey(CisObject(com.cisag.app.sales.obj.SalesOrder), orderType:guid, p_header);<\/p>\n<p>\u00a0 var detail := getByBusinessKey(CisObject(com.cisag.app.sales.obj.SalesOrderDetail), header:guid, p_detail, 0);<\/p>\n<p>\u00a0 var orderKey := createOrderKey(header:guid, detail:guid);<\/p>\n<p>\u00a0 result.ORDER_KEY_HEADER := orderKey:header;<\/p>\n<p>\u00a0 result.ORDER_KEY_DETAIL := orderKey:detail;<\/p>\n<p>}<\/div><\/section>\n<h5 id=\"nextnumberrangenumber\" ><span class=\"ez-toc-section\" id=\"nextNumberRangeNumber\"><\/span>nextNumberRangeNumber<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>nextNumberRangeNumber<\/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>nextNumberRangeNumber<\/em> generuje now\u0105 liczb\u0119 ze schematu numeracji.<\/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>String nextNumberRangeNumber(String code)<\/p>\n<p>String nextNumberRangeNumber(Guid guid)<\/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>code<\/em> jest identyfikacj\u0105 schematu numeracji.<\/p>\n<p><em>guid<\/em> to identyfikator guid schematu numeracji.<\/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 generuje now\u0105 liczb\u0119 ze schematu numeracji. Schemat numeracji jest identyfikowany za pomoc\u0105 identyfikatora GUID lub nazwy. Funkcja zwraca nowo wygenerowan\u0105 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>\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>nextNumberRangeNumber(&#8222;WFM&#8221;)<\/em> generuje nowy numer ze schematu numeracji z identyfikatorem <em>WFM<\/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>OLTP<\/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 niekt\u00f3rych jurysdykcjach na przyk\u0142ad numery faktur sprzeda\u017cy s\u0105 kompletne. Dlatego numer ze schematu numeracji takiej jednostki biznesowej \u00a0nale\u017cy generowa\u0107 tylko wtedy, gdy numer ten jest r\u00f3wnie\u017c u\u017cywany.<\/p>\n<p>Aby utworzy\u0107 unikalny numer dla pliku przechowywanego w kstore, mo\u017cna na przyk\u0142ad wprowadzi\u0107 nowy schemat numeracji do cel\u00f3w og\u00f3lnych, kt\u00f3ry nie jest u\u017cywany dla dokument\u00f3w ko\u0144cowych.<\/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 pochodzi z definicji dzia\u0142ania <em>help.nextNumberRangeNumber<\/em>.<\/p>\n<p>function create()<\/p>\n<p>{<\/p>\n<p>\u00a0 var p_numberRange := parameters.NUMBER_RANGE;<\/p>\n<p>\u00a0 var r_number := nextNumberRangeNumber(p_numberRange);<\/p>\n<p>\u00a0 result.IS_NULL := isNull(r_number);<\/p>\n<p>\u00a0 result.NUMBER := r_number;<\/p>\n<p>}<\/div><\/section>\n<h4 id=\"funkcje-dla-dynamicznych-obiektow-biznesowych-funkcje-dynamicznych-obiektow-biznesowych\" ><span class=\"ez-toc-section\" id=\"Funkcje_dla_dynamicznych_obiektow_biznesowych_Funkcje_dynamicznych_obiektow_biznesowych\"><\/span>Funkcje dla dynamicznych obiekt\u00f3w biznesowych (Funkcje dynamicznych obiekt\u00f3w biznesowych)<span class=\"ez-toc-section-end\"><\/span><\/h4>\n<p>Funkcje dla dynamicznych obiekt\u00f3w biznesowych obejmuj\u0105 funkcje <em>getter<\/em> do odpytywania o warto\u015b\u0107 innego pola, funkcje <em>setter<\/em> do przypisywania warto\u015bci do innego pola oraz funkcje <em>validate<\/em> do sprawdzania, czy warto\u015b\u0107 mo\u017ce by\u0107 przypisana do innego pola. Z pomoc\u0105 funkcji <em>resetDbo<\/em> mo\u017cna zresetowa\u0107 warto\u015b\u0107 do warto\u015bci domy\u015blnej. Je\u015bli dodatkowe pole nie ma warto\u015bci domy\u015blnej, warto\u015b\u0107 jest resetowana do warto\u015bci domy\u015blnej typu danych.<\/p>\n<p>Funkcje pobieraj\u0105ce:<\/p>\n<ul>\n<li>dboCisDate<\/li>\n<li>dboCisObject<\/li>\n<li>dboDomesticAmount<\/li>\n<li>dboForeignAmount<\/li>\n<li>dboGuid<\/li>\n<li>dboNumber<\/li>\n<li>dboQuantity<\/li>\n<li>dboString<\/li>\n<li>dboText<\/li>\n<li>dboTextContentType<\/li>\n<li>dboTimestamp<\/li>\n<li>dboValueSet<\/li>\n<li>dboValueSetDescription<\/li>\n<li>dboValueSetName<\/li>\n<\/ul>\n<p>Funkcje pobieraj\u0105ce dla list warto\u015bci:<\/p>\n<ul>\n<li>dboListCisDate<\/li>\n<li>dboListCisObject<\/li>\n<li>dboListDomesticAmount<\/li>\n<li>dboListForeignAmount<\/li>\n<li>dboListGuid<\/li>\n<li>dboListNumber<\/li>\n<li>dboListQuantity<\/li>\n<li>dboListString<\/li>\n<li>dboListTimestamp<\/li>\n<li>dboListValueSet<\/li>\n<li>dboListValueSetDescription<\/li>\n<li>dboListValueSetName<\/li>\n<\/ul>\n<p>Funkcja resetowania:<\/p>\n<ul>\n<li>resetDbo<\/li>\n<\/ul>\n<p>Funkcje ustawiaj\u0105ce:<\/p>\n<ul>\n<li>setDboCisDate<\/li>\n<li>setDboCisObject<\/li>\n<li>setDboDomesticAmount<\/li>\n<li>setDboForeignAmount<\/li>\n<li>setDboGuid<\/li>\n<li>setDboNumber<\/li>\n<li>setDboQuantity<\/li>\n<li>setDboString<\/li>\n<li>setDboText<\/li>\n<li>setDboTimestamp<\/li>\n<li>setDboValueSet<\/li>\n<li>setDboValueSetName<\/li>\n<\/ul>\n<p>Funkcje ustawiaj\u0105ce dla list warto\u015bci:<\/p>\n<ul>\n<li>setDboListCisDate<\/li>\n<li>setDboListCisObject<\/li>\n<li>setDboListDomesticAmount<\/li>\n<li>setDboListForeignAmount<\/li>\n<li>setDboListGuid<\/li>\n<li>setDboListNumber<\/li>\n<li>setDboListQuantity<\/li>\n<li>setDboListString<\/li>\n<li>setDboListTimestamp<\/li>\n<li>setDboListValueSet<\/li>\n<li>setDboListValueSetName<\/li>\n<\/ul>\n<p>Sprawdzanie poprawno\u015bci funkcji:<\/p>\n<ul>\n<li>validateDboCisDate<\/li>\n<li>validateDboCisObject<\/li>\n<li>validateDboDomesticAmount<\/li>\n<li>validateDboForeignAmount<\/li>\n<li>validateDboGuid<\/li>\n<li>validateDboNumber<\/li>\n<li>validateDboQuantity<\/li>\n<li>validateDboString<\/li>\n<li>validateDboTimestamp<\/li>\n<li>validateDboValueSet<\/li>\n<li>validateDboValueSetName<\/li>\n<\/ul>\n<h5 id=\"funkcje-pobierajace\" ><span class=\"ez-toc-section\" id=\"Funkcje_pobierajace\"><\/span>Funkcje pobieraj\u0105ce<span class=\"ez-toc-section-end\"><\/span><\/h5>\n<h6 id=\"dbocisdate\" ><span class=\"ez-toc-section\" id=\"dboCisDate\"><\/span><strong>dboCisDate<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h6>\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>dboCisDate<\/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>dboCisDate<\/em> zwraca warto\u015b\u0107 innego pola typu <em>Date<\/em> lub <em>Date and 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>Podpisy<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>CisDate dboCisDate(String schemaName, CisObject object, String attributeName)<\/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>schemaName<\/em> identyfikuje drugie pole. Nazwa schematu zaczyna si\u0119 od<em> EXT<\/em>, po kt\u00f3rym nast\u0119puje nazwa obiektu biznesowego bez jego obszaru nazw. Je\u015bli obiekt biznesowy znajduje si\u0119 w przestrzeni nazw innej ni\u017c <em>com.cisag<\/em>, druga cz\u0119\u015b\u0107 przestrzeni nazw jest wstawiana wielkimi literami mi\u0119dzy <em>EXT<\/em> a nazw\u0105 obiektu biznesowego. Przyk\u0142ady nazw schemat\u00f3w to<\/p>\n<p><em>EXTItem<\/em> dla obiektu biznesowego <em>com.cisag.app.general.obj.Item<\/em><\/p>\n<p><em>EXTPurchaseItem<\/em> dla obiektu biznesowego <em>com.cisag.app.purchasing.obj.PurchaseItem<\/em><\/p>\n<p><em>EXTSEMObjectAccount<\/em> dla obiektu biznesowego <em>com.sem.ext.app.fin.financialaccounting.obj.ObjectAccount<\/em><\/p>\n<p><em>object<\/em> to instancja obiektu biznesowego.<\/p>\n<p><em>attributeName<\/em> to nazwa dodatkowego pola.<\/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 innego pola typu <em>Date<\/em> lub <em>Date and time <\/em>jako <em>CisDate<\/em>.<\/p>\n<p>Je\u015bli do pola dodatkowego nie przypisano daty lub daty i godziny, zwracana jest warto\u015b\u0107 domy\u015blna pola dodatkowego. Je\u015bli pole dodatkowe nie ma warto\u015bci domy\u015blnej, zwracana jest warto\u015b\u0107 domy\u015blna <em>null<\/em> typu danych <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>\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 schemat nie istnieje pod okre\u015blon\u0105 nazw\u0105 lub u\u017cywa typu pola, kt\u00f3ry nie pasuje do funkcji, 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>dboCisDate(&#8222;EXTPartner&#8221;, loadPartner(&#8222;70010&#8221;), &#8222;DATE_OF_BIRTH&#8221;)<\/em> zwraca dodatkowe pole.<\/p>\n<p><em>isNull(dboCisDate(&#8222;EXTPartner&#8221;, loadPartner(&#8222;70010&#8221;), &#8222;DATE_OF_BIRTH&#8221;))<\/em> sprawdza, czy do dodatkowego pola przypisana jest data.<\/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>OLTP<\/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>dboListCisDate<\/em><em>, <\/em><em>setDboCisDate<\/em><em>, <\/em><em>setDboListCisDate<\/em><em>, <\/em><em>validateDboCisDate<\/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.dboCisDate<\/em> zwraca warto\u015b\u0107 innego pola typu <em>Date<\/em> lub <em>Date and time<\/em> partnera jako ci\u0105g znak\u00f3w.<\/p>\n<p>function create()<\/p>\n<p>{<\/p>\n<p>\u00a0 var p_name := parameters.NAME;<\/p>\n<p>\u00a0 var p_partner := loadPartner(parameters.PARTNER);<\/p>\n<p>\u00a0 var r_dboValue := &#8222;&#8221;;<\/p>\n<p>\u00a0 var dboValue := dboCisDate(&#8222;EXTPartner&#8221;, p_partner, p_name);<\/p>\n<p>\u00a0 if (not isNull(dboValue))<\/p>\n<p>\u00a0\u00a0\u00a0 r_dboValue := cast(String, dboValue);<\/p>\n<p>\u00a0 result.IS_ASSIGNED := not isNull(dboValue);<\/p>\n<p>\u00a0 result.DBO_VALUE := r_dboValue;<\/p>\n<p>}<\/div><\/section>\n<h6 id=\"dbocisobject\" ><span class=\"ez-toc-section\" id=\"dboCisObject\"><\/span><strong>dboCisObject<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h6>\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>dboCisObject<\/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>dboCisObject<\/em> zwraca warto\u015b\u0107 innego pola typu <em>Business Entity<\/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>CisObjectReference dboCisObject(String schemaName, CisObject object, String attributeName)<\/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>schemaName<\/em> identyfikuje drugie pole. Nazwa schematu zaczyna si\u0119 od <em>EXT<\/em>, po kt\u00f3rym nast\u0119puje nazwa obiektu biznesowego bez jego przestrzeni nazw. Je\u015bli obiekt biznesowy znajduje si\u0119 w przestrzeni nazw innej ni\u017c <em>com.cisag<\/em>, druga cz\u0119\u015b\u0107 przestrzeni nazw jest wstawiana wielkimi literami mi\u0119dzy <em>EXT<\/em> a nazw\u0105 obiektu biznesowego. Przyk\u0142adami nazw schemat\u00f3w s\u0105<\/p>\n<p><em>EXTItem<\/em> dla obiektu biznesowego <em>com.cisag.app.general.obj.Item<\/em><\/p>\n<p><em>EXTPurchaseItem<\/em> dla obiektu biznesowego <em>com.cisag.app.purchasing.obj.PurchaseItem<\/em><\/p>\n<p><em>EXTSEMObjectAccount<\/em> dla obiektu biznesowego <em>com.sem.ext.app.fin.financialaccounting.obj.ObjectAccount<\/em><\/p>\n<p><em>object <\/em>to instancja obiektu biznesowego.<\/p>\n<p><em>attributeName<\/em> to nazwa dodatkowego pola.<\/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 innego pola typu <em>Business Entity<\/em> jako nieokre\u015blone <em>CisObjectReference<\/em>. Aby u\u017cy\u0107 wyniku, nale\u017cy przekonwertowa\u0107 nieokre\u015blone odniesienie na odniesienie do \u017c\u0105danego obiektu biznesowego za pomoc\u0105 funkcji <em>cast<\/em>.<\/p>\n<p>Je\u015bli do pola dodatkowego nie jest przypisana \u017cadna jednostka biznesowa, zwracana jest warto\u015b\u0107 domy\u015blna pola dodatkowego. Je\u015bli pole dodatkowe nie ma warto\u015bci domy\u015blnej, zwracana jest warto\u015b\u0107 domy\u015blna <em>null<\/em> typu danych <em>CisObjectReference<\/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 schemat nie istnieje pod okre\u015blon\u0105 nazw\u0105 lub u\u017cywa typu pola, kt\u00f3ry nie pasuje do funkcji, 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>cast(<\/em><em>CisObjectReference(com.cisag.app.general.obj.Partner), dboCisObject(&#8222;EXTPartner&#8221;, loadPartner(&#8222;70010&#8221;), &#8222;SPOUSE&#8221;))<\/em> zwraca partnera zapisanego w polu dodatkowym jako typowan\u0105 <em>CisObjectReference<\/em>.<\/p>\n<p><em>isNull(dboListCisObject(&#8222;EXTPartner&#8221;, loadPartner(&#8222;70010&#8221;), &#8222;SPOUSE&#8221;))<\/em> sprawdza, czy obiekt biznesowy jest przypisany do dodatkowego pola.<\/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>OLTP<\/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>dboListCisObject<\/em><em>, <\/em><em>setDboCisObject<\/em><em>, <\/em><em>setDboListCisObject<\/em><em>, <\/em><em>validateDboCisObject<\/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.dboCisObject <\/em>zwraca identyfikacj\u0119 partnera przechowywan\u0105 w innym polu partnera jako ci\u0105g znak\u00f3w.<\/p>\n<p>function create()<\/p>\n<p>{<\/p>\n<p>\u00a0 var p_name := parameters.NAME;<\/p>\n<p>\u00a0 var p_partner := loadPartner(parameters.PARTNER);<\/p>\n<p>\u00a0 var r_dboValue := &#8222;&#8221;;<\/p>\n<p>\u00a0 var dboValue := dboCisObject(&#8222;EXTPartner&#8221;, p_partner, p_name);<\/p>\n<p>\u00a0 if (not isNull(dboValue))<\/p>\n<p>\u00a0\u00a0\u00a0 r_dboValue := cast(CisObject(com.cisag.app.general.obj.Partner), dboValue):number;<\/p>\n<p>\u00a0 result.IS_ASSIGNED := not isNull(dboValue);<\/p>\n<p>\u00a0 result.DBO_VALUE := r_dboValue;<\/p>\n<p>}<\/div><\/section>\n<h6 id=\"dbodomesticamount\" ><span class=\"ez-toc-section\" id=\"dboDomesticAmount\"><\/span><strong>dboDomesticAmount<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h6>\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>dboDomesticAmount<\/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>dboDomesticAmount<\/em> zwraca warto\u015b\u0107 innego pola typu <em>Kwota w walucie wewn\u0119trznej<\/em> lub <em>Cena w walucie wewn\u0119trznej<\/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>CisObject(com.cisag.app.general.obj.DomesticAmount) dboDomesticAmount(String schemaName, CisObject object, String attributeName)<\/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>schemaName<\/em> identyfikuje drugie pole. Nazwa schematu zaczyna si\u0119 od <em>EXT<\/em>, po kt\u00f3rym nast\u0119puje nazwa obiektu biznesowego bez jego przestrzeni nazw. Je\u015bli obiekt biznesowy znajduje si\u0119 w przestrzeni nazw innej ni\u017c <em>com.cisag<\/em>, druga cz\u0119\u015b\u0107 przestrzeni nazw jest wstawiana wielkimi literami mi\u0119dzy <em>EXT<\/em> a nazw\u0105 obiektu biznesowego. Przyk\u0142adami nazw schemat\u00f3w s\u0105<\/p>\n<p><em>EXTItem<\/em> dla obiektu biznesowego <em>com.cisag.app.general.obj.Item<\/em><\/p>\n<p><em>EXTPurchaseItem<\/em> dla obiektu biznesowego <em>com.cisag.app.purchasing.obj.PurchaseItem<\/em><\/p>\n<p><em>EXTSEMObjectAccount<\/em> dla obiektu biznesowego <em>com.sem.ext.app.fin.financialaccounting.obj.ObjectAccount<\/em><\/p>\n<p><em>object<\/em> to instancja obiektu biznesowego.<\/p>\n<p><em>attributeName<\/em> to nazwa dodatkowego pola.<\/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 pola dodatkowego typu <em>Kwota w walucie wewn\u0119trznej <\/em>lub <em>Cena w walucie wewn\u0119trznej<\/em> jako cz\u0119\u015b\u0107 typowan\u0105 <em>CisObject(com.cisag.app.general.obj.DomesticAmount).<\/em> Kwota lub cena jest zwracana w kombinacji waluty wewn\u0119trznej organizacji, dla kt\u00f3rej wprowadzono dodatkowe pole.<\/p>\n<p>Je\u015bli do pola dodatkowego nie przypisano kwoty lub ceny w walucie wewn\u0119trznej, zwracana jest warto\u015b\u0107 domy\u015blna pola dodatkowego. Je\u015bli pole dodatkowe nie ma warto\u015bci domy\u015blnej, zwracana jest cz\u0119\u015b\u0107 o warto\u015bci domy\u015blnej 0 typu danych <em>number<\/em> we wszystkich trzech walutach wewn\u0119trznych.<\/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 schemat nie istnieje pod okre\u015blon\u0105 nazw\u0105 lub u\u017cywa typu pola, kt\u00f3ry nie pasuje do funkcji, 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>dboDomesticAmount(&#8222;EXTPartner&#8221;, loadPartner(&#8222;10010&#8221;), &#8222;CREDIT_LIMIT_ALT&#8221;):amount1<\/em> zwraca warto\u015b\u0107 pola dodatkowego dla partnera w pierwszej walucie wewn\u0119trznej.<\/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>OLTP<\/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>dboListDomesticAmount<\/em><em>, <\/em><em>setDboDomesticAmount<\/em><em>, <\/em><em>setDboListDomesticAmount<\/em><em>, <\/em><em>validateDboDomesticAmount<\/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.dboDomesticAmount<\/em> zwraca warto\u015b\u0107 innego pola typu <em>Kwota w walucie wewn\u0119trznej<\/em> partnera w pierwszej walucie wewn\u0119trznej jako liczb\u0119.<\/p>\n<p>function create()<\/p>\n<p>{<\/p>\n<p>\u00a0 var p_name := parameters.NAME;<\/p>\n<p>\u00a0 var p_partner := loadPartner(parameters.PARTNER);<\/p>\n<p>\u00a0 var r_dboValue := dboDomesticAmount(&#8222;EXTPartner&#8221;, p_partner, p_name):amount1;<\/p>\n<p>\u00a0 result.DBO_VALUE := r_dboValue;<\/p>\n<p>}<\/div><\/section>\n<h6 id=\"dboforeignamount\" ><span class=\"ez-toc-section\" id=\"dboForeignAmount\"><\/span><strong>dboForeignAmount<\/strong><strong>\u00a0<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h6>\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>dboForeignAmount<\/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>dboForeignAmount<\/em> zwraca warto\u015b\u0107 innego pola typu <em>Amount<\/em> lub<em> Price<\/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>CisObject(com.cisag.app.general.obj.ForeignAmount) dboForeignAmount(String schemaName, CisObject object, String attributeName)<\/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>schemaName<\/em> identyfikuje drugie pole. Nazwa schematu zaczyna si\u0119 od <em>EXT<\/em>, po kt\u00f3rym nast\u0119puje nazwa obiektu biznesowego bez jego przestrzeni nazw. Je\u015bli obiekt biznesowy znajduje si\u0119 w przestrzeni nazw innej ni\u017c <em>com.cisag<\/em>, druga cz\u0119\u015b\u0107 przestrzeni nazw jest wstawiana wielkimi literami mi\u0119dzy <em>EXT<\/em> a nazw\u0105 obiektu biznesowego. Przyk\u0142adami nazw schemat\u00f3w s\u0105<\/p>\n<p><em>EXTItem<\/em> dla obiektu biznesowego <em>com.cisag.app.general.obj.Item<\/em><\/p>\n<p><em>EXTPurchaseItem<\/em> dla obiektu biznesowego <em>com.cisag.app.purchasing.obj.PurchaseItem<\/em><\/p>\n<p><em>EXTSEMObjectAccount<\/em> dla obiektu biznesowego <em>com.sem.ext.app.fin.financialaccounting.obj.ObjectAccount<\/em><\/p>\n<p><em>object<\/em> to instancja obiektu biznesowego.<\/p>\n<p><em>attributeName<\/em> to nazwa dodatkowego pola.<\/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 innego pola typu <em>Amount<\/em> lub <em>Price<\/em> jako typowan\u0105 cz\u0119\u015b\u0107 <em>CisObject(com.cisag.app.general.obj.ForeignAmount).<\/em><\/p>\n<p>Je\u015bli do pola dodatkowego nie przypisano kwoty lub ceny, zwracana jest warto\u015b\u0107 domy\u015blna pola dodatkowego. Je\u015bli pole dodatkowe nie ma warto\u015bci domy\u015blnej, zwracana jest cz\u0119\u015b\u0107 z warto\u015bci\u0105 domy\u015bln\u0105 0 typu danych <em>number<\/em> dla kwoty lub ceny oraz z warto\u015bci\u0105 domy\u015bln\u0105 <em>null<\/em> typu danych <em>guid<\/em> jako walut\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>Je\u015bli schemat nie istnieje pod okre\u015blon\u0105 nazw\u0105 lub u\u017cywa typu pola, kt\u00f3ry nie pasuje do funkcji, 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>dboForeignAmount(&#8222;EXTPartner&#8221;, loadPartner(&#8222;10010&#8221;), &#8222;LIMIT&#8221;):amount<\/em> zwraca kwot\u0119 lub cen\u0119 w walucie obcej.<\/p>\n<p><em>loadCurrency(dboForeignAmount(&#8222;EXTPartner&#8221;, loadPartner(&#8222;10010&#8221;), &#8222;LIMIT&#8221;):currency):isoCode<\/em> zwraca kod ISO waluty obcej.<\/p>\n<p><em>isNull(dboForeignAmount(&#8222;EXTPartner&#8221;, loadPartner(&#8222;10010&#8221;), &#8222;LIMIT&#8221;):currency)<\/em> sprawdza, czy do pola dodatkowego przypisana jest kwota lub cena.<\/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>OLTP<\/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>dboListForeignAmount<\/em><em>, <\/em><em>setDboForeignAmount<\/em><em>, <\/em><em>setDboListForeignAmount<\/em><em>, <\/em><em>validateDboForeignAmount<\/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.dboForeignAmount<\/em> zwraca warto\u015b\u0107 innego pola typu <em>Amount<\/em> lub <em>Price<\/em> partnera, w tym kod ISO waluty jako ci\u0105g znak\u00f3w.<\/p>\n<p>function create()<\/p>\n<p>{<\/p>\n<p>\u00a0 var p_name := parameters.NAME;<\/p>\n<p>\u00a0 var p_partner := loadPartner(parameters.PARTNER);<\/p>\n<p>\u00a0 var r_dboValue := &#8222;&#8221;;<\/p>\n<p>\u00a0 var dboValue := dboForeignAmount(&#8222;EXTPartner&#8221;, p_partner, p_name);<\/p>\n<p>\u00a0 if (not isNull(dboValue:currency))<\/p>\n<p>\u00a0\u00a0\u00a0 r_dboValue := format(dboValue:amount, &#8222;#0.00&#8243;) + &#8221; &#8221; + loadCurrency(dboValue:currency):isoCode;<\/p>\n<p>\u00a0 result.IS_ASSIGNED := not isNull(dboValue:currency);<\/p>\n<p>\u00a0 result.DBO_VALUE := r_dboValue;<\/p>\n<p>}<\/div><\/section>\n<h6 id=\"dboguid\" ><span class=\"ez-toc-section\" id=\"dboGuid\"><\/span><strong>dboGuid<\/strong><strong>\u00a0<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h6>\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>dboGuid<\/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>dboGuid<\/em> zwraca warto\u015b\u0107 innego pola typu <em>Classification<\/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>Guid dboGuid(String schemaName, CisObject object, String attributeName)<\/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>schemaName<\/em> identyfikuje drugie pole. Nazwa schematu zaczyna si\u0119 od <em>EXT<\/em>, po kt\u00f3rym nast\u0119puje nazwa obiektu biznesowego bez jego przestrzeni nazw. Je\u015bli obiekt biznesowy znajduje si\u0119 w przestrzeni nazw innej ni\u017c <em>com.cisag<\/em>, druga cz\u0119\u015b\u0107 przestrzeni nazw jest wstawiana wielkimi literami mi\u0119dzy <em>EXT<\/em> a nazw\u0105 obiektu biznesowego. Przyk\u0142adami nazw schemat\u00f3w s\u0105<\/p>\n<p><em>EXTItem<\/em> dla obiektu biznesowego <em>com.cisag.app.general.obj.Item<\/em><\/p>\n<p><em>EXTPurchaseItem<\/em> dla obiektu biznesowego <em>com.cisag.app.purchasing.obj.PurchaseItem<\/em><\/p>\n<p><em>EXTSEMObjectAccount<\/em> dla obiektu biznesowego <em>com.sem.ext.app.fin.financialaccounting.obj.ObjectAccount<\/em><\/p>\n<p><em>object<\/em> to instancja obiektu biznesowego.<\/p>\n<p><em>attributeName<\/em> to nazwa dodatkowego pola.<\/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 dodatkowego pola typu <em>Classification<\/em> jako guid obiektu biznesowego <em>com.cisag.app.general.extension.obj.EntityExtensionHierarchy<\/em>, kt\u00f3ry zawiera w\u0142a\u015bciwo\u015bci przypisanej klasyfikacji.<\/p>\n<p>Je\u015bli do pola dodatkowego nie przypisano \u017cadnej klasyfikacji, zwracana jest warto\u015b\u0107 domy\u015blna pola dodatkowego. Je\u015bli pole dodatkowe nie ma warto\u015bci domy\u015blnej, zwracana jest warto\u015b\u0107 domy\u015blna <em>null<\/em> typu danych <em>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>\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 schemat nie istnieje pod okre\u015blon\u0105 nazw\u0105 lub u\u017cywa typu pola, kt\u00f3ry nie pasuje do funkcji, 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>getByPrimaryKey(CisObject(com.cisag.app.general.extension.obj.EntityExtensionHierarchy), dboGuid(&#8222;EXTPartner&#8221;, loadPartner(&#8222;70010&#8221;), &#8222;HOME_OFFICE&#8221;)):path<\/em> zwraca \u015bcie\u017ck\u0119 dodatkowego pola typu <em>Classification<\/em> dla partnera.<\/p>\n<p><em>isNull(dboGuid(&#8222;EXTPartner&#8221;, loadPartner(&#8222;70010&#8221;), &#8222;LOCATION&#8221;))<\/em> sprawdza, czy klasyfikacja jest przypisana do dodatkowego pola.<\/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>OLTP<\/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>Nale\u017cy u\u017cy\u0107 wyniku, aby otworzy\u0107 klasyfikacj\u0119, np. za pomoc\u0105 funkcji <em>getByPrimaryKey<\/em> i oceni\u0107 dalsze atrybuty. Dodatkowe pola typu <em>Classification<\/em> s\u0105 zapisywane w obiekcie biznesowym <em>com.cisag.app.general.extension.obj.EntityExtensionHierarchy<\/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>dboListGuid<\/em><em>, <\/em><em>setDboGuid<\/em><em>, <\/em><em>setDboListGuid<\/em><em>, <\/em><em>validateDboGuid<\/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.dboGuid<\/em> zwraca \u015bcie\u017ck\u0119 i nazw\u0119 innego pola typu <em>Classification<\/em> partnera jako ci\u0105g znak\u00f3w.<\/p>\n<p>function create()<\/p>\n<p>{<\/p>\n<p>\u00a0 var p_name := parameters.NAME;<\/p>\n<p>\u00a0 var p_partner := loadPartner(parameters.PARTNER);<\/p>\n<p>\u00a0 var r_dboValue := &#8222;&#8221;;<\/p>\n<p>\u00a0 var dboValue := dboGuid(&#8222;EXTPartner&#8221;, p_partner, p_name);<\/p>\n<p>\u00a0 if (not isNull(dboValue)) {<\/p>\n<p>\u00a0\u00a0\u00a0 var classification := getByPrimaryKey(CisObject(com.cisag.app.general.extension.obj.EntityExtensionHierarchy), dboValue);<\/p>\n<p>\u00a0\u00a0\u00a0 r_dboValue := classification:path + &#8221; &#8221; + classification:description;<\/p>\n<p>\u00a0 }<\/p>\n<p>\u00a0 result.IS_ASSIGNED := not isNull(dboValue);<\/p>\n<p>\u00a0 result.DBO_VALUE := r_dboValue;<\/p>\n<p>}<\/div><\/section>\n<h6 id=\"dbonumber\" ><span class=\"ez-toc-section\" id=\"dboNumber\"><\/span><strong>dboNumber<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h6>\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>dboNumber<\/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>dboNumber<\/em> zwraca warto\u015b\u0107 innego pola typu <em>Decimal<\/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>Number dboNumber(String schemaName, CisObject object, String attributeName)<\/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>schemaName<\/em> identyfikuje drugie pole. Nazwa schematu zaczyna si\u0119 od<em> EXT<\/em>, po kt\u00f3rym nast\u0119puje nazwa obiektu biznesowego bez jego przestrzeni nazw. Je\u015bli obiekt biznesowy znajduje si\u0119 w przestrzeni nazw innej ni\u017c <em>com.cisag<\/em>, druga cz\u0119\u015b\u0107 przestrzeni nazw jest wstawiana wielkimi literami mi\u0119dzy <em>EXT<\/em> a nazw\u0105 obiektu biznesowego. Przyk\u0142adami nazw schemat\u00f3w s\u0105<\/p>\n<p><em>EXTItem<\/em> dla obiektu biznesowego <em>com.cisag.app.general.obj.Item<\/em><\/p>\n<p><em>EXTPurchaseItem<\/em> dla obiektu biznesowego <em>com.cisag.app.purchasing.obj.PurchaseItem<\/em><\/p>\n<p><em>EXTSEMObjectAccount<\/em> dla obiektu biznesowego <em>com.sem.ext.app.fin.financialaccounting.obj.ObjectAccount<\/em><\/p>\n<p><em>object<\/em> to instancja obiektu biznesowego.<\/p>\n<p><em>attributeName<\/em> to nazwa dodatkowego pola.<\/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 drugiego pola typu <em>Decimal<\/em> jako liczb\u0119.<\/p>\n<p>Je\u015bli do pola dodatkowego nie przypisano liczby dziesi\u0119tnej, zwracana jest warto\u015b\u0107 domy\u015blna pola dodatkowego. Je\u015bli pole dodatkowe nie ma warto\u015bci domy\u015blnej, zwracana jest warto\u015b\u0107 domy\u015blna 0 typu danych <em>number<\/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 schemat nie istnieje pod okre\u015blon\u0105 nazw\u0105 lub u\u017cywa typu pola, kt\u00f3ry nie pasuje do funkcji, 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>dboNumber(&#8222;EXTPartner&#8221;, loadPartner(&#8222;10010&#8221;), &#8222;CREDIT_POINTS&#8221;)<\/em> zwraca warto\u015b\u0107 dodatkowego pola dla 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>OLTP<\/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>dboListNumber<\/em><em>, <\/em><em>setDboNumber<\/em><em>, <\/em><em>setDboListNumber<\/em><em>, <\/em><em>validateDboNumber<\/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.dboNumber<\/em> zwraca warto\u015b\u0107 innego pola typu <em>Decimal <\/em>partnera jako liczb\u0119.<\/p>\n<p>function create()<\/p>\n<p>{<\/p>\n<p>\u00a0 var p_name := parameters.NAME;<\/p>\n<p>\u00a0 var p_partner := loadPartner(parameters.PARTNER);<\/p>\n<p>\u00a0 var r_dboValue := dboNumber(&#8222;EXTPartner&#8221;, p_partner, p_name);<\/p>\n<p>\u00a0 result.DBO_VALUE := r_dboValue;<\/p>\n<p>}<\/div><\/section>\n<h6 id=\"dboquantity\" ><span class=\"ez-toc-section\" id=\"dboQuantity\"><\/span><strong>dboQuantity<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h6>\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>dboQuantity<\/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>dboQuantity<\/em> zwraca warto\u015b\u0107 innego pola typu <em>Quantity<\/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>CisObject(com.cisag.app.general.obj.Quantity) dboQuantity(String schemaName, CisObject object, String attributeName)<\/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>schemaName <\/em>identyfikuje drugie pole. Nazwa schematu zaczyna si\u0119 od <em>EXT<\/em>, po kt\u00f3rym nast\u0119puje nazwa obiektu biznesowego bez jego przestrzeni nazw. Je\u015bli obiekt biznesowy znajduje si\u0119 w przestrzeni nazw innej ni\u017c <em>com.cisag<\/em>, druga cz\u0119\u015b\u0107 przestrzeni nazw jest wstawiana wielkimi literami mi\u0119dzy<em> EXT<\/em> a nazw\u0105 obiektu biznesowego. Przyk\u0142adami nazw schemat\u00f3w s\u0105<\/p>\n<p><em>EXTItem<\/em> dla obiektu biznesowego <em>com.cisag.app.general.obj.Item<\/em><\/p>\n<p><em>EXTPurchaseItem<\/em> dla obiektu biznesowego <em>com.cisag.app.purchasing.obj.PurchaseItem<\/em><\/p>\n<p><em>EXTSEMObjectAccount<\/em> dla obiektu biznesowego <em>com.sem.ext.app.fin.financialaccounting.obj.ObjectAccount<\/em><\/p>\n<p><em>object<\/em> to instancja obiektu biznesowego.<\/p>\n<p><em>attributeName<\/em> to nazwa dodatkowego pola.<\/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 dodatkowego pola typu <em>Quantity<\/em> jako typowan\u0105 cz\u0119\u015b\u0107 <em>CisObject(com.cisag.app.general.obj.Quantity).<\/em><\/p>\n<p>Je\u015bli do innego pola nie przypisano \u017cadnej ilo\u015bci, zwracana jest liczba 0 dla ilo\u015bci i warto\u015b\u0107 <em>ZERO_GUID<\/em> dla jednostki.<\/p>\n<p>Je\u015bli do pola dodatkowego nie jest przypisana \u017cadna ilo\u015b\u0107, zwracana jest warto\u015b\u0107 domy\u015blna pola dodatkowego. Je\u015bli pole dodatkowe nie ma warto\u015bci domy\u015blnej, zwracana jest cz\u0119\u015b\u0107 z warto\u015bci\u0105 domy\u015bln\u0105 0 typu danych <em>number<\/em> dla ilo\u015bci (<em>amount<\/em>) i z warto\u015bci\u0105 <em>ZERO_GUID<\/em> dla jednostki (<em>uom<\/em>), nawet je\u015bli 0 jest warto\u015bci\u0105 domy\u015bln\u0105 typu danych <em>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>\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 schemat nie istnieje pod okre\u015blon\u0105 nazw\u0105 lub u\u017cywa typu pola, kt\u00f3ry nie pasuje do funkcji, 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>dboQuantity(&#8222;EXTPartner&#8221;, loadPartner(&#8222;70010&#8221;), &#8222;WEIGHT&#8221;):amount<\/em> zwraca warto\u015b\u0107 pola dodatkowego dla partnera jako liczb\u0119.<\/p>\n<p><em>loadUom(dboQuantity(&#8222;EXTPartner&#8221;, loadPartner(&#8222;70010&#8221;), &#8222;WEIGHT&#8221;):uom):code<\/em> zwraca identyfikacj\u0119 jednostki pola dodatkowego.<\/p>\n<p><em>dboQuantity(&#8222;EXTPartner&#8221;, loadPartner(&#8222;10010&#8221;), &#8222;WEIGHT&#8221;):uom &lt;&gt; ZERO_GUID<\/em> sprawdza, czy ilo\u015b\u0107 jest przypisana do pola dodatkowego.<\/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>OLTP<\/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>dboListQuantity<\/em><em>, <\/em><em>setDboQuantity<\/em><em>, <\/em><em>setDboListQuantity<\/em><em>, <\/em><em>validateDboQuantity<\/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.dboQuantity <\/em>zwraca ilo\u015b\u0107 i jednostk\u0119 innego pola typu <em>Quantity <\/em>partnera jako ci\u0105g znak\u00f3w.<\/p>\n<p>function create()<\/p>\n<p>{<\/p>\n<p>\u00a0 var p_name := parameters.NAME;<\/p>\n<p>\u00a0 var p_partner := loadPartner(parameters.PARTNER);<\/p>\n<p>\u00a0 var r_dboValue := &#8222;&#8221;;<\/p>\n<p>\u00a0 var dboValue := dboQuantity(&#8222;EXTPartner&#8221;, p_partner, p_name);<\/p>\n<p>\u00a0 if (not isNull(dboValue:uom))<\/p>\n<p>\u00a0\u00a0\u00a0 r_dboValue := format(dboValue:amount, &#8222;#0.00&#8243;) + &#8221; &#8221; + loadUom(dboValue:uom):code;<\/p>\n<p>\u00a0 result.IS_ASSIGNED := dboValue:uom &lt;&gt; ZERO_GUID;<\/p>\n<p>\u00a0 result.DBO_VALUE := r_dboValue;<\/p>\n<p>}<\/div><\/section>\n<h6 id=\"dbostring\" ><span class=\"ez-toc-section\" id=\"dboString\"><\/span><strong>dboString<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h6>\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>dboString<\/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>dboString<\/em> zwraca warto\u015b\u0107 innego pola typu <em>Text, Email address <\/em>lub <em>Uniform Resource Locator (URL).<\/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>String dboString(String schemaName, CisObject object, String attributeName)<\/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>schemaName<\/em> identyfikuje drugie pole. Nazwa schematu zaczyna si\u0119 od <em>EXT<\/em>, po kt\u00f3rym nast\u0119puje nazwa obiektu biznesowego bez jego przestrzeni nazw. Je\u015bli obiekt biznesowy znajduje si\u0119 w przestrzeni nazw innej ni\u017c <em>com.cisag<\/em>, druga cz\u0119\u015b\u0107 przestrzeni nazw jest wstawiana wielkimi literami mi\u0119dzy<em> EXT<\/em> a nazw\u0105 obiektu biznesowego. Przyk\u0142adami nazw schemat\u00f3w s\u0105<\/p>\n<p><em>EXTItem<\/em> dla obiektu biznesowego <em>com.cisag.app.general.obj.Item<\/em><\/p>\n<p><em>EXTPurchaseItem<\/em> dla obiektu biznesowego <em>com.cisag.app.purchasing.obj.PurchaseItem<\/em><\/p>\n<p><em>EXTSEMObjectAccount<\/em> dla obiektu biznesowego <em>com.sem.ext.app.fin.financialaccounting.obj.ObjectAccount<\/em><\/p>\n<p><em>object<\/em> to instancja obiektu biznesowego.<\/p>\n<p><em>attributeName<\/em> to nazwa dodatkowego pola.<\/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 dodatkowego pola typu <em>Text, Email address <\/em>lub <em>Uniform Resource Locator<\/em>.<\/p>\n<p>Je\u015bli do pola dodatkowego nie przypisano \u017cadnej warto\u015bci, zwracana jest warto\u015b\u0107 domy\u015blna pola dodatkowego. Je\u015bli pole dodatkowe nie ma warto\u015bci domy\u015blnej, jako warto\u015b\u0107 domy\u015blna typu danych <em>string<\/em> 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>Je\u015bli schemat nie istnieje pod okre\u015blon\u0105 nazw\u0105 lub u\u017cywa typu pola, kt\u00f3ry nie pasuje do funkcji, 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>dboString(&#8222;EXTPartner&#8221;, loadPartner(&#8222;10010&#8221;), &#8222;REFERENCE&#8221;)<\/em> zwraca warto\u015b\u0107 dodatkowego pola dla 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>OLTP<\/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>dboListString<\/em><em>, <\/em><em>setDboString<\/em><em>, <\/em><em>setDboListString<\/em><em>, <\/em><em>validateDboString<\/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.dboString<\/em> zwraca warto\u015b\u0107 innego pola z jednego z typ\u00f3w p\u00f3l <em>Text, E-mail address<\/em> lub<em> Uniform Resource Locator (URL)<\/em> partnera jako ci\u0105g znak\u00f3w.<\/p>\n<p>function create()<\/p>\n<p>{<\/p>\n<p>\u00a0 var p_name := parameters.NAME;<\/p>\n<p>\u00a0 var p_partner := loadPartner(parameters.PARTNER);<\/p>\n<p>\u00a0 var r_dboValue := dboString(&#8222;EXTPartner&#8221;, p_partner, p_name);<\/p>\n<p>\u00a0 result.DBO_VALUE := r_dboValue;<\/p>\n<p>}<\/div><\/section>\n<h6 id=\"dbotext\" ><span class=\"ez-toc-section\" id=\"dboText\"><\/span><strong>dboText<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h6>\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>dboText<\/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>dboText<\/em> zwraca warto\u015b\u0107 innego pola typu <em>Long 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>Podpisy<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>String dboText(String schemaName, CisObject object, String attributeName)<\/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>schemaName <\/em>identyfikuje drugie pole. Nazwa schematu zaczyna si\u0119 od <em>EXT<\/em>, po kt\u00f3rym nast\u0119puje nazwa obiektu biznesowego bez jego przestrzeni nazw. Je\u015bli obiekt biznesowy znajduje si\u0119 w przestrzeni nazw innej ni\u017c <em>com.cisag<\/em>, druga cz\u0119\u015b\u0107 przestrzeni nazw jest wstawiana wielkimi literami mi\u0119dzy <em>EXT<\/em> a nazw\u0105 obiektu biznesowego. Przyk\u0142adami nazw schemat\u00f3w s\u0105<\/p>\n<p><em>EXTItem<\/em> dla obiektu biznesowego <em>com.cisag.app.general.obj.Item<\/em><\/p>\n<p><em>EXTPurchaseItem<\/em> dla obiektu biznesowego <em>com.cisag.app.purchasing.obj.PurchaseItem<\/em><\/p>\n<p><em>EXTSEMObjectAccount<\/em> dla obiektu biznesowego <em>com.sem.ext.app.fin.financialaccounting.obj.ObjectAccount<\/em><\/p>\n<p><em>object<\/em> to instancja obiektu biznesowego.<\/p>\n<p><em>attributeName<\/em> to nazwa dodatkowego pola.<\/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 dodatkowego pola typu <em>Long text<\/em> w j\u0119zyku tre\u015bci bie\u017c\u0105cego kontekstu.<\/p>\n<p>Je\u015bli do pola dodatkowego nie przypisano \u017cadnej warto\u015bci, zwracana jest warto\u015b\u0107 domy\u015blna pola dodatkowego. Je\u015bli pole dodatkowe nie ma warto\u015bci domy\u015blnej, 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>\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 schemat nie istnieje pod okre\u015blon\u0105 nazw\u0105 lub u\u017cywa typu pola, kt\u00f3ry nie pasuje do funkcji, 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>dboText(&#8222;EXTPartner&#8221;, loadPartner(&#8222;10010&#8221;), &#8222;NOTES&#8221;)<\/em> zwraca warto\u015b\u0107 dodatkowego pola dla partnera.<\/p>\n<p><em>isNull(dboText(&#8222;EXTPartner&#8221;, loadPartner(&#8222;10010&#8221;), &#8222;NOTES&#8221;))<\/em> sprawdza, czy do pola dodatkowego przypisany jest tekst.<\/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>OLTP<\/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 definicja kolejnego pola typu <em>Long text<\/em> nie obs\u0142uguje ani listy warto\u015bci, ani ogranicze\u0144, nie istniej\u0105 funkcje <em>dboListText, setDboListText<\/em> i<em> validateDboText<\/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>dboTextContentType<\/em><em>, <\/em><em>setDboText<\/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.dboText<\/em> zwraca warto\u015b\u0107 innego pola typu <em>Long text<\/em> partnera jako ci\u0105g znak\u00f3w w dowolnym j\u0119zyku tre\u015bci.<\/p>\n<p>function create()<\/p>\n<p>{<\/p>\n<p>\u00a0 var p_name := parameters.NAME;<\/p>\n<p>\u00a0 var p_language := parameters.LANGUAGE;<\/p>\n<p>\u00a0 var p_partner := loadPartner(parameters.PARTNER);<\/p>\n<p>\u00a0 var r_dboValue := &#8222;&#8221;;<\/p>\n<p>\u00a0 var oldContentLanguage := getNLSContentLanguage();<\/p>\n<p>\u00a0 var oldDisplayLanguage := getNLSDisplayLanguage();<\/p>\n<p>\u00a0 setNLSLanguages(p_language);<\/p>\n<p>\/* var dboValue := dboText(&#8222;EXTPartner&#8221;, p_partner, p_name);*\/<\/p>\n<p>\u00a0 var dboValue := dboString(&#8222;EXTPartner&#8221;, p_partner, p_name);<\/p>\n<p>\u00a0 setNLSContentLanguage(oldContentLanguage);<\/p>\n<p>\u00a0 setNLSDisplayLanguage(oldDisplayLanguage);<\/p>\n<p>\u00a0 if (not isNull(dboValue))<\/p>\n<p>\u00a0\u00a0\u00a0 r_dboValue := dboValue;<\/p>\n<p>\u00a0 result.IS_ASSIGNED := not isNull(dboValue);<\/p>\n<p>\u00a0 result.DBO_VALUE := r_dboValue;<\/p>\n<p>}<\/div><\/section>\n<h6 id=\"dbotextcontenttype\" ><span class=\"ez-toc-section\" id=\"dboTextContentType\"><\/span><strong>dboTextContentType<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h6>\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>dboTextContentType<\/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>dboTextContentType<\/em> zwraca typ zawarto\u015bci innego pola typu <em>Long 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>Podpisy<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Number dboTextContentType(String schemaName, CisObject object, String attributeName)<\/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>schemaName<\/em> identyfikuje drugie pole. Nazwa schematu zaczyna si\u0119 od<em> EXT<\/em>, po kt\u00f3rym nast\u0119puje nazwa obiektu biznesowego bez jego przestrzeni nazw. Je\u015bli obiekt biznesowy znajduje si\u0119 w przestrzeni nazw innej ni\u017c <em>com.cisag<\/em>, druga cz\u0119\u015b\u0107 przestrzeni nazw jest wstawiana wielkimi literami mi\u0119dzy <em>EXT<\/em> a nazw\u0105 obiektu biznesowego. Przyk\u0142adami nazw schemat\u00f3w s\u0105<\/p>\n<p><em>EXTItem<\/em> dla obiektu biznesowego <em>com.cisag.app.general.obj.Item<\/em><\/p>\n<p><em>EXTPurchaseItem<\/em> dla obiektu biznesowego <em>com.cisag.app.purchasing.obj.PurchaseItem<\/em><\/p>\n<p><em>EXTSEMObjectAccount<\/em> dla obiektu biznesowego <em>com.sem.ext.app.fin.financialaccounting.obj.ObjectAccount<\/em><\/p>\n<p><em>object<\/em> to instancja obiektu biznesowego.<\/p>\n<p><em>attributeName<\/em> to nazwa dodatkowego pola.<\/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 typ zawarto\u015bci dodatkowego pola typu <em>Long text<\/em>. Typ zawarto\u015bci jest jednym z wpis\u00f3w <em>ValueSet com.cisag.sys.gui.HTMLEditorContentValueSet<\/em>: HTML lub tylko tekst.<\/p>\n<p>Je\u015bli do pola dodatkowego nie przypisano \u017cadnej warto\u015bci, zwracany jest typ zawarto\u015bci warto\u015bci domy\u015blnej pola dodatkowego. Je\u015bli pole dodatkowe nie ma warto\u015bci domy\u015blnej, zwracana jest warto\u015b\u0107 domy\u015blna 0 typu danych <em>number<\/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 schemat nie istnieje pod okre\u015blon\u0105 nazw\u0105 lub u\u017cywa typu pola, kt\u00f3ry nie pasuje do funkcji, 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>dboTextContentType(&#8222;EXTPartner&#8221;, loadPartner(&#8222;10010&#8221;), &#8222;DETAILS&#8221;)<\/em> zwraca typ zawarto\u015bci dodatkowego pola dla partnera.<\/p>\n<p><em>dboTextContentType(&#8222;EXTPartner&#8221;, loadPartner(&#8222;10010&#8221;), &#8222;NOTES&#8221;) = 0<\/em> sprawdza, czy do pola dodatkowego przypisany jest tekst.<\/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>OLTP<\/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 u\u017cytkownik chce wy\u015bwietli\u0107 warto\u015b\u0107 innego pola typu <em>Long text<\/em> w opisie dzia\u0142ania, mo\u017ce u\u017cy\u0107 funkcji <em>formatActivityHtml<\/em> dla typu zawarto\u015bci <em>\u00a0<\/em>(1) i funkcji <em>formatActivity<\/em> dla typu zawarto\u015bci <em>Tylko tekst<\/em> (2).<\/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>dboText<\/em><em>, <\/em><em>setDboText<\/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.dboTextContextType<\/em> zwraca typ zawarto\u015bci innego pola partnera z typem pola <em>Long text<\/em> jako ci\u0105g znak\u00f3w.<\/p>\n<p>const ContentType as valueSet(com.cisag.sys.gui.HTMLEditorContentValueSet);<\/p>\n<p>function create()<\/p>\n<p>{<\/p>\n<p>\u00a0 var p_name := parameters.NAME;<\/p>\n<p>\u00a0 var p_partner := loadPartner(parameters.PARTNER);<\/p>\n<p>\u00a0 var r_dboValue := dboTextContentType(&#8222;EXTPartner&#8221;, p_partner, p_name);<\/p>\n<p>\u00a0 result.IS_ASSIGNED := r_dboValue &gt; 0;<\/p>\n<p>\u00a0 result.DBO_VALUE := valueSetDescription(ContentType, r_dboValue);<\/p>\n<p>}<\/div><\/section>\n<h6 id=\"dbotimestamp\" ><span class=\"ez-toc-section\" id=\"dboTimestamp\"><\/span><strong>dboTimestamp<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h6>\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>dboTimestamp<\/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>dboTimestamp<\/em> zwraca warto\u015b\u0107 innego pola typu D<em>ate and time <\/em>lub <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>Podpisy<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Timestamp dboTimestamp(Timestamp schemaName, CisObject object, Timestamp attributeName)<\/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>schemaName<\/em> identyfikuje drugie pole. Nazwa schematu zaczyna si\u0119 od <em>EXT<\/em>, po kt\u00f3rym nast\u0119puje nazwa obiektu biznesowego bez jego przestrzeni nazw. Je\u015bli obiekt biznesowy znajduje si\u0119 w przestrzeni nazw innej ni\u017c <em>com.cisag<\/em>, druga cz\u0119\u015b\u0107 przestrzeni nazw jest wstawiana wielkimi literami mi\u0119dzy <em>EXT<\/em> a nazw\u0105 obiektu biznesowego. Przyk\u0142adami nazw schemat\u00f3w s\u0105<\/p>\n<p><em>EXTItem<\/em> dla obiektu biznesowego <em>com.cisag.app.general.obj.Item<\/em><\/p>\n<p><em>EXTPurchaseItem<\/em> dla obiektu biznesowego <em>com.cisag.app.purchasing.obj.PurchaseItem<\/em><\/p>\n<p><em>EXTSEMObjectAccount<\/em> dla obiektu biznesowego <em>com.sem.ext.app.fin.financialaccounting.obj.ObjectAccount<\/em><\/p>\n<p><em>object<\/em> to instancja obiektu biznesowego.<\/p>\n<p><em>attributeName<\/em> to nazwa dodatkowego pola.<\/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 innego pola typu <em>Date and time<\/em> lub <em>Date<\/em> jako godzin\u0119.<\/p>\n<p>Je\u015bli do pola dodatkowego nie przypisano daty i godziny lub daty, zwracana jest warto\u015b\u0107 domy\u015blna pola dodatkowego. Je\u015bli pole dodatkowe nie ma warto\u015bci domy\u015blnej, zwracana jest warto\u015b\u0107 <em>null<\/em>, nawet je\u015bli sta\u0142a <em>UNDEFINED_DATE<\/em> jest rzeczywist\u0105 warto\u015bci\u0105 domy\u015bln\u0105 typu danych <em>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>\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 schemat nie istnieje pod okre\u015blon\u0105 nazw\u0105 lub u\u017cywa typu pola, kt\u00f3ry nie pasuje do funkcji, 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>dboTimestamp(&#8222;EXTPartner&#8221;, loadPartner(&#8222;10010&#8221;), &#8222;LAST_ACCESS&#8221;)<\/em> zwraca warto\u015b\u0107 drugiego pola dla partnera.<\/p>\n<p><em>isNull(dboTimestamp(&#8222;EXTPartner&#8221;, loadPartner(&#8222;10010&#8221;), &#8222;LAST_ACCESS&#8221;))<\/em> sprawdza, czy do dodatkowego pola przypisana jest data i godzina lub data.<\/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>OLTP<\/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>dboListTimestamp<\/em><em>, <\/em><em>setDboTimestamp<\/em><em>, <\/em><em>setDboListTimestamp<\/em><em>, <\/em><em>validateDboTimestamp<\/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.dboTimestamp<\/em> zwraca warto\u015b\u0107 innego pola partnera z typem pola <em>Date and time<\/em> lub <em>Date <\/em>jako czas.<\/p>\n<p>function create()<\/p>\n<p>{<\/p>\n<p>\u00a0 var p_name := parameters.NAME;<\/p>\n<p>\u00a0 var p_partner := loadPartner(parameters.PARTNER);<\/p>\n<p>\u00a0 var r_dboValue := dboTimestamp(&#8222;EXTPartner&#8221;, p_partner, p_name);<\/p>\n<p>\u00a0 result.IS_ASSIGNED := r_dboValue &lt;&gt; UNDEFINED_DATE;<\/p>\n<p>\u00a0 result.DBO_VALUE := r_dboValue;<\/p>\n<p>}<\/div><\/section>\n<h6 id=\"dbovalueset\" ><span class=\"ez-toc-section\" id=\"dboValueSet\"><\/span><strong>dboValueSet<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h6>\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>dboValueSet<\/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>dboValueSet <\/em>zwraca warto\u015b\u0107 liczbow\u0105 wyboru innego pola typu <em>Selection field<\/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>Number dboValueSet(ValueSet schemaName, CisObject object, ValueSet attributeName)<\/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>schemaName <\/em>identyfikuje drugie pole. Nazwa schematu zaczyna si\u0119 od<em> EXT<\/em>, po kt\u00f3rym nast\u0119puje nazwa obiektu biznesowego bez jego przestrzeni nazw. Je\u015bli obiekt biznesowy znajduje si\u0119 w przestrzeni nazw innej ni\u017c <em>com.cisag<\/em>, druga cz\u0119\u015b\u0107 przestrzeni nazw jest wstawiana wielkimi literami mi\u0119dzy <em>EXT<\/em> a nazw\u0105 obiektu biznesowego. Przyk\u0142adami nazw schemat\u00f3w s\u0105<\/p>\n<p><em>EXTItem<\/em> dla obiektu biznesowego <em>com.cisag.app.general.obj.Item<\/em><\/p>\n<p><em>EXTPurchaseItem<\/em> dla obiektu biznesowego <em>com.cisag.app.purchasing.obj.PurchaseItem<\/em><\/p>\n<p><em>EXTSEMObjectAccount<\/em> dla obiektu biznesowego <em>com.sem.ext.app.fin.financialaccounting.obj.ObjectAccount<\/em><\/p>\n<p><em>object<\/em> to instancja obiektu biznesowego.<\/p>\n<p><em>attributeName<\/em> to nazwa dodatkowego pola.<\/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 liczbow\u0105 dodatkowego pola typu <em>Selection field <\/em>jako liczb\u0119.<\/p>\n<p>Je\u015bli do pola dodatkowego nie przypisano \u017cadnej warto\u015bci, zwracana jest warto\u015b\u0107 domy\u015blna pola dodatkowego. Je\u015bli pole dodatkowe nie ma warto\u015bci domy\u015blnej, zwracana jest warto\u015b\u0107 domy\u015blna 0 typu danych <em>number<\/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 schemat nie istnieje pod okre\u015blon\u0105 nazw\u0105 lub u\u017cywa typu pola, kt\u00f3ry nie pasuje do funkcji, 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>dboValueSet(&#8222;EXTPartner&#8221;, loadPartner(&#8222;10010&#8221;), &#8222;SIZE&#8221;)<\/em> zwraca warto\u015b\u0107 liczbow\u0105 dodatkowego pola dla partnera.<\/p>\n<p><em>dboValueSet(&#8222;EXTPartner&#8221;, loadPartner(&#8222;10010&#8221;), &#8222;SIZE&#8221;) &gt; 0<\/em> sprawdza, czy warto\u015b\u0107 jest przypisana do dodatkowego pola.<\/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>OLTP<\/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 liczbowa (ID) nie jest wy\u015bwietlana we w\u0142a\u015bciwo\u015bciach innego pola typu <em>Selection field<\/em>. W wi\u0119kszo\u015bci przypadk\u00f3w warto\u015b\u0107 liczbowa odpowiada kolejno\u015bci, w jakiej zosta\u0142y wprowadzone wpisy.<\/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>dboValueSetDescription<\/em><em>, <\/em><em>dboValueSetName<\/em><em>, <\/em><em>dboListValueSet<\/em><em>, <\/em><em>dboListValueSetDescription<\/em><em>, <\/em><em>dboListValueSetName<\/em><em>, <\/em><em>setDboValueSet<\/em><em>, <\/em><em>setDboValueSetName<\/em><em>, <\/em><em>setDboListValueSet<\/em><em>, <\/em><em>setDboListValueSetName<\/em><em>, <\/em><em>validateDboValueSet<\/em><em>, <\/em><em>validateDboValueSetName<\/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.dboValueSet<\/em> zwraca warto\u015b\u0107 liczbow\u0105 innego pola typu <em>Selection field<\/em> partnera jako liczb\u0119.<\/p>\n<p>function create()<\/p>\n<p>{<\/p>\n<p>\u00a0 var p_name := parameters.NAME;<\/p>\n<p>\u00a0 var p_partner := loadPartner(parameters.PARTNER);<\/p>\n<p>\u00a0 var r_dboValue := dboValueSet(&#8222;EXTPartner&#8221;, p_partner, p_name);<\/p>\n<p>\u00a0 result.IS_ASSIGNED := r_dboValue &gt; 0;<\/p>\n<p>\u00a0 result.DBO_VALUE := r_dboValue;<\/p>\n<p>}<\/div><\/section>\n<h6 id=\"dbovaluesetdescription\" ><span class=\"ez-toc-section\" id=\"dboValueSetDescription\"><\/span><strong>dboValueSetDescription<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h6>\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>dboValueSetDescription<\/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>dboValueSetDescription<\/em> zwraca opis wyboru innego pola typu <em>Selection field<\/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>String dboValueSetDescription(String schemaName, CisObject object, String at-tributeName)<\/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>schemaName<\/em> identyfikuje drugie pole. Nazwa schematu zaczyna si\u0119 od <em>EXT<\/em>, po kt\u00f3rym nast\u0119puje nazwa obiektu biznesowego bez jego przestrzeni nazw. Je\u015bli obiekt biznesowy znajduje si\u0119 w przestrzeni nazw innej ni\u017c <em>com.cisag<\/em>, druga cz\u0119\u015b\u0107 przestrzeni nazw jest wstawiana wielkimi literami mi\u0119dzy <em>EXT<\/em> a nazw\u0105 obiektu biznesowego. Przyk\u0142ady nazw schemat\u00f3w to<\/p>\n<p><em>EXTItem<\/em> dla obiektu biznesowego <em>com.cisag.app.general.obj.Item<\/em><\/p>\n<p><em>EXTPurchaseItem<\/em> dla obiektu biznesowego <em>com.cisag.app.purchasing.obj.PurchaseItem<\/em><\/p>\n<p><em>EXTSEMObjectAccount<\/em> dla obiektu biznesowego <em>com.sem.ext.app.fin.financialaccounting.obj.ObjectAccount<\/em><\/p>\n<p><em>object <\/em>to instancja obiektu biznesowego.<\/p>\n<p><em>attributeName<\/em> to nazwa dodatkowego pola.<\/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 dodatkowego pola typu <em>Selection field<\/em> jako ci\u0105g znak\u00f3w w j\u0119zyku tre\u015bci bie\u017c\u0105cego kontekstu.<\/p>\n<p>Je\u015bli do pola dodatkowego nie przypisano \u017cadnej warto\u015bci, zwracana jest warto\u015b\u0107 domy\u015blna pola dodatkowego. Je\u015bli pole dodatkowe nie ma warto\u015bci domy\u015blnej, jako warto\u015b\u0107 domy\u015blna typu danych <em>String<\/em> 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>Je\u015bli schemat nie istnieje pod okre\u015blon\u0105 nazw\u0105 lub u\u017cywa typu pola, kt\u00f3ry nie pasuje do funkcji, 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>dboValueSetDescription(&#8222;EXTPartner&#8221;, loadPartner(&#8222;10010&#8221;), &#8222;SIZE&#8221;)<\/em> zwraca opis dodatkowego pola dla 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>OLTP<\/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>dboValueSet<\/em><em>, <\/em><em>dboValueSetName<\/em><em>, <\/em><em>dboListValueSet<\/em><em>, <\/em><em>dboListValueSetDescription<\/em><em>, <\/em><em>dboListValueSetName<\/em><em>, <\/em><em>setDboValueSet<\/em><em>, <\/em><em>setDboValueSetName<\/em><em>, <\/em><em>setDboListValueSet<\/em><em>, <\/em><em>setDboListValueSetName<\/em><em>, <\/em><em>validateDboValueSet<\/em><em>, <\/em><em>validateDboValueSetName<\/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.dboValueSetDescription<\/em> zwraca opis innego pola typu <em>Selection field<\/em> jako ci\u0105g znak\u00f3w w dowolnym j\u0119zyku wy\u015bwietlania.<\/p>\n<p>function create()<\/p>\n<p>{<\/p>\n<p>\u00a0 var p_name := parameters.NAME;<\/p>\n<p>\u00a0 var p_language := parameters.LANGUAGE;<\/p>\n<p>\u00a0 var p_partner := loadPartner(parameters.PARTNER);<\/p>\n<p>\u00a0 var oldLanguage := getNLSContentDisplayLanguage;<\/p>\n<p>\u00a0 setNLSDisplayLanguage(p_language);<\/p>\n<p>\u00a0 var r_dboValue := dboValueSetDescription(&#8222;EXTPartner&#8221;, p_partner, p_name);<\/p>\n<p>\u00a0 setNLSDisplayLanguage(oldLanguage);<\/p>\n<p>\u00a0 result.IS_ASSIGNED := dboValueSet(&#8222;EXTPartner&#8221;, p_partner, p_name) &gt; 0;<\/p>\n<p>\u00a0 result.DBO_VALUE := r_dboValue;<\/p>\n<p>}<\/div><\/section>\n<h6 id=\"dbovaluesetname\" ><span class=\"ez-toc-section\" id=\"dboValueSetName\"><\/span><strong>dboValueSetName<\/strong><strong>\u00a0<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h6>\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>dboValueSetName<\/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>dboValueSetName<\/em> zwraca sta\u0142\u0105 warto\u015b\u0107 wyboru kolejnego pola typu <em>Selection field<\/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>String dboValueSetName(String schemaName, CisObject object, String attribu-teName)<\/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>schemaName<\/em> identyfikuje drugie pole. Nazwa schematu zaczyna si\u0119 od <em>EXT<\/em>, po kt\u00f3rym nast\u0119puje nazwa obiektu biznesowego bez jego przestrzeni nazw. Je\u015bli obiekt biznesowy znajduje si\u0119 w przestrzeni nazw innej ni\u017c <em>com.cisag<\/em>, druga cz\u0119\u015b\u0107 przestrzeni nazw jest wstawiana wielkimi literami mi\u0119dzy <em>EXT<\/em> a nazw\u0105 obiektu biznesowego. Przyk\u0142adami nazw schemat\u00f3w s\u0105<\/p>\n<p><em>EXTItem<\/em> dla obiektu biznesowego <em>com.cisag.app.general.obj.Item<\/em><\/p>\n<p><em>EXTPurchaseItem<\/em> dla obiektu biznesowego <em>com.cisag.app.purchasing.obj.PurchaseItem<\/em><\/p>\n<p><em>EXTSEMObjectAccount<\/em> dla obiektu biznesowego <em>com.sem.ext.app.fin.financialaccounting.obj.ObjectAccount<\/em><\/p>\n<p><em>object<\/em> to instancja obiektu biznesowego.<\/p>\n<p><em>attributeName<\/em> to nazwa dodatkowego pola.<\/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 sta\u0142\u0105 warto\u015b\u0107 drugiego pola typu <em>Selection field <\/em>jako ci\u0105g znak\u00f3w.<\/p>\n<p>Je\u015bli do pola dodatkowego nie przypisano \u017cadnej warto\u015bci, zwracana jest warto\u015b\u0107 domy\u015blna pola dodatkowego. Je\u015bli pole dodatkowe nie ma warto\u015bci domy\u015blnej, jako warto\u015b\u0107 domy\u015blna typu danych <em>String<\/em> 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>Je\u015bli schemat nie istnieje pod okre\u015blon\u0105 nazw\u0105 lub u\u017cywa typu pola, kt\u00f3ry nie pasuje do funkcji, 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>dboValueSetName(&#8222;EXTPartner&#8221;, loadPartner(&#8222;10010&#8221;), &#8222;SIZE&#8221;)<\/em> zwraca sta\u0142\u0105 warto\u015b\u0107 dodatkowego pola dla partnera.<\/p>\n<p><em>dboValueSetName(&#8222;EXTPartner&#8221;, loadPartner(&#8222;10010&#8221;), &#8222;SIZE&#8221;) = &#8222;&#8221;<\/em> sprawdza, czy warto\u015b\u0107 jest przypisana do dodatkowego pola.<\/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>OLTP<\/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>dboValueSet<\/em><em>, <\/em><em>dboValueSetDescription<\/em><em>, <\/em><em>dboListValueSet<\/em><em>, <\/em><em>dboListValueSetDescription<\/em><em>, <\/em><em>dboListValueSetName<\/em><em>, <\/em><em>setDboValueSet<\/em><em>, <\/em><em>setDboValueSetName<\/em><em>, <\/em><em>setDboListValueSet<\/em><em>, <\/em><em>setDboListValueSetName<\/em><em>, <\/em><em>validateDboValueSet<\/em><em>, <\/em><em>validateDboValueSetName<\/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.dboValueSetName<\/em> zwraca sta\u0142\u0105 warto\u015b\u0107 innego pola typu <em>Selection field<\/em> partnera jako ci\u0105g znak\u00f3w.<\/p>\n<p>function create()<\/p>\n<p>{<\/p>\n<p>\u00a0 var p_name := parameters.NAME;<\/p>\n<p>\u00a0 var p_partner := loadPartner(parameters.PARTNER);<\/p>\n<p>\u00a0 var r_dboValue := dboValueSetName(&#8222;EXTPartner&#8221;, p_partner, p_name);<\/p>\n<p>\u00a0 result.IS_ASSIGNED := r_dboValue &lt;&gt; &#8222;&#8221;;<\/p>\n<p>\u00a0 result.DBO_VALUE := r_dboValue;<\/p>\n<p>}<\/div><\/section>\n<h5 id=\"funkcje-pobierajace-dla-list-wartosci\" ><span class=\"ez-toc-section\" id=\"Funkcje_pobierajace_dla_list_wartosci\"><\/span>Funkcje pobieraj\u0105ce dla list warto\u015bci<span class=\"ez-toc-section-end\"><\/span><\/h5>\n<h6 id=\"dbolistcisdate\" ><span class=\"ez-toc-section\" id=\"dboListCisDate\"><\/span><strong>dboListCisDate<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h6>\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>dboListCisDate<\/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>dboListCisDate <\/em>zwraca list\u0119 warto\u015bci innego pola typu <em>Date<\/em> lub <em>Date and 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>Podpisy<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>CisDate[] dboListCisDate(String schemaName, CisObject object, String attributeName)<\/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>schemaName<\/em> identyfikuje drugie pole. Nazwa schematu zaczyna si\u0119 od <em>EXT<\/em>, po kt\u00f3rym nast\u0119puje nazwa obiektu biznesowego bez jego przestrzeni nazw. Je\u015bli obiekt biznesowy znajduje si\u0119 w przestrzeni nazw innej ni\u017c <em>com.cisag<\/em>, druga cz\u0119\u015b\u0107 przestrzeni nazw jest wstawiana wielkimi literami mi\u0119dzy <em>EXT<\/em> a nazw\u0105 obiektu biznesowego. Przyk\u0142adami nazw schemat\u00f3w s\u0105<\/p>\n<p><em>EXTItem<\/em> dla obiektu biznesowego <em>com.cisag.app.general.obj.Item<\/em><\/p>\n<p><em>EXTPurchaseItem<\/em> dla obiektu biznesowego <em>com.cisag.app.purchasing.obj.PurchaseItem<\/em><\/p>\n<p><em>EXTSEMObjectAccount<\/em> dla obiektu biznesowego <em>com.sem.ext.app.fin.financialaccounting.obj.ObjectAccount<\/em><\/p>\n<p><em>object<\/em> to instancja obiektu biznesowego.<\/p>\n<p><em>attributeName<\/em> to nazwa dodatkowego pola.<\/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 warto\u015bci innego pola typu <em>Date<\/em> lub <em>Date and time <\/em>jako list\u0119 <em>CisDates<\/em>.<\/p>\n<p>Je\u015bli do pola dodatkowego nie przypisano daty lub daty i godziny, zwracana jest warto\u015b\u0107 domy\u015blna pola dodatkowego. Je\u015bli pole dodatkowe nie ma warto\u015bci domy\u015blnej, zwracana jest lista z pojedynczym elementem listy o warto\u015bci domy\u015blnej <em>null <\/em>typu danych <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>\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 schemat nie istnieje pod okre\u015blon\u0105 nazw\u0105 lub u\u017cywa typu pola, kt\u00f3ry nie pasuje do funkcji, 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>dboListCisDate(&#8222;EXTPartner&#8221;, loadPartner(&#8222;70010&#8221;), &#8222;APPRAISAL_DATES&#8221;)<\/em> zwraca list\u0119 warto\u015bci dodatkowego pola dla partnera.<\/p>\n<p><em>toTimestamp(dboListCisDate(&#8222;EXTPartner&#8221;, loadPartner(&#8222;70010&#8221;), &#8222;DATE_OF_BIRTH&#8221;))[0] &lt;&gt; UNDEFINED_DATE)<\/em> sprawdza, czy do pola dodatkowego przypisana jest data czy data i godzina.<\/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>OLTP<\/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>dboCisDate<\/em><em>, <\/em><em>setDboCisDate<\/em><em>, <\/em><em>setDboListCisDate<\/em><em>, <\/em><em>validateDboCisDate<\/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.dboListCisDate<\/em> zwraca list\u0119 warto\u015bci innego pola typu <em>Date<\/em> lub <em>Date and time<\/em> partnera w postaci ci\u0105gu znak\u00f3w.<\/p>\n<p>function create()<\/p>\n<p>{<\/p>\n<p>\u00a0 var p_name := parameters.NAME;<\/p>\n<p>\u00a0 var p_partner := loadPartner(parameters.PARTNER);<\/p>\n<p>\u00a0 var r_dboValue := &#8222;&#8221;;<\/p>\n<p>\u00a0 var dboValueList := dboListCisDate(&#8222;EXTPartner&#8221;, p_partner, p_name);<\/p>\n<p>\u00a0 for (element : dboValueList)<\/p>\n<p>\u00a0\u00a0\u00a0 if (isNull(element))<\/p>\n<p>\u00a0\u00a0\u00a0\u00a0\u00a0 r_dboValue := r_dboValue + &#8222;[null] &#8222;;<\/p>\n<p>\u00a0\u00a0\u00a0 else if (toTimestamp(element) = UNDEFINED_DATE)<\/p>\n<p>\u00a0\u00a0\u00a0\u00a0\u00a0 r_dboValue := r_dboValue + &#8222;[UNDEFINED_DATE] &#8222;;<\/p>\n<p>\u00a0\u00a0\u00a0 else if (toTimestamp(element) = MIN_DATE)<\/p>\n<p>\u00a0\u00a0\u00a0\u00a0\u00a0 r_dboValue := r_dboValue + &#8222;[MIN_DATE] &#8222;;<\/p>\n<p>\u00a0\u00a0\u00a0 else if (toTimestamp(element) = MAX_DATE)<\/p>\n<p>\u00a0\u00a0\u00a0\u00a0\u00a0 r_dboValue := r_dboValue + &#8222;[MAX_DATE] &#8222;;<\/p>\n<p>\u00a0\u00a0\u00a0other<\/p>\n<p>\u00a0\u00a0\u00a0\u00a0\u00a0 r_dboValue := r_dboValue + &#8222;[&#8221; + format(element, &#8222;rrrr-MM-dd&#8221;) + &#8222;] &#8222;;<\/p>\n<p>\u00a0 result.IS_ASSIGNED := isNull(dboValueList[0]);<\/p>\n<p>\u00a0 result.DBO_VALUE := trim(r_dboValue);<\/p>\n<p>}<\/div><\/section>\n<h6 id=\"dbolistcisobject\" ><span class=\"ez-toc-section\" id=\"dboListCisObject\"><\/span><strong>dboListCisObject<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h6>\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>dboListCisObject<\/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>dboListCisObject<\/em> zwraca list\u0119 warto\u015bci innego pola typu <em>Business Entity<\/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>CisObjectReference[] dboListCisObject(String schemaName, CisObject object, String attributeName)<\/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>schemaName<\/em> identyfikuje drugie pole. Nazwa schematu zaczyna si\u0119 od<em> EXT<\/em>, po kt\u00f3rym nast\u0119puje nazwa obiektu biznesowego bez jego przestrzeni nazw. Je\u015bli obiekt biznesowy znajduje si\u0119 w przestrzeni nazw innej ni\u017c <em>com.cisag<\/em>, druga cz\u0119\u015b\u0107 przestrzeni nazw jest wstawiana wielkimi literami mi\u0119dzy <em>EXT<\/em> a nazw\u0105 obiektu biznesowego. Przyk\u0142adami nazw schemat\u00f3w s\u0105<\/p>\n<p><em>EXTItem<\/em> dla obiektu biznesowego <em>com.cisag.app.general.obj.Item<\/em><\/p>\n<p><em>EXTPurchaseItem<\/em> dla obiektu biznesowego <em>com.cisag.app.purchasing.obj.PurchaseItem<\/em><\/p>\n<p><em>EXTSEMObjectAccount<\/em> dla obiektu biznesowego <em>com.sem.ext.app.fin.financialaccounting.obj.ObjectAccount<\/em><\/p>\n<p><em>object <\/em>to instancja obiektu biznesowego.<\/p>\n<p><em>attributeName<\/em> to nazwa dodatkowego pola.<\/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 warto\u015bci dodatkowego pola typu <em>Business Entity <\/em>jako list\u0119 nieokre\u015blonych <em>CisObjectReference<\/em>. Aby u\u017cy\u0107 wyniku, nale\u017cy przekonwertowa\u0107 poszczeg\u00f3lne elementy listy na \u017c\u0105dany obiekt biznesowy za pomoc\u0105 funkcji <em>cast<\/em>.<\/p>\n<p>Je\u015bli do pola dodatkowego nie jest przypisana \u017cadna jednostka biznesowa, zwracana jest warto\u015b\u0107 domy\u015blna pola dodatkowego. Je\u015bli pole dodatkowe nie ma warto\u015bci domy\u015blnej, zwracana jest lista z pojedynczym elementem listy o warto\u015bci domy\u015blnej <em>null <\/em>typu danych <em>CisObjectReference<\/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 schemat nie istnieje pod okre\u015blon\u0105 nazw\u0105 lub u\u017cywa typu pola, kt\u00f3ry nie pasuje do funkcji, 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>dboListCisObject(&#8222;EXTPartner&#8221;, loadPartner(&#8222;70010&#8221;), &#8222;CHILDREN&#8221;)<\/em> zwraca list\u0119 warto\u015bci pola dodatkowego dla partnera.<\/p>\n<p><em>isNull(dboListCisObject(&#8222;EXTPartner&#8221;, loadPartner(&#8222;70010&#8221;), &#8222;CHILDREN&#8221;)[0])<\/em> sprawdza, czy obiekt biznesowy jest przypisany do dodatkowego pola.<\/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>OLTP<\/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>dboCisObject<\/em><em>, <\/em><em>setDboCisObject<\/em><em>, <\/em><em>setDboListCisObject<\/em><em>, <\/em><em>validateDboCisObject<\/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.dboListCisObject<\/em> zwraca identyfikacj\u0119 wszystkich partner\u00f3w w ci\u0105gu znak\u00f3w, kt\u00f3re s\u0105 przechowywane w innym polu partnera.<\/p>\n<p>function create()<\/p>\n<p>{<\/p>\n<p>\u00a0 var p_name := parameters.NAME;<\/p>\n<p>\u00a0 var p_partner := loadPartner(parameters.PARTNER);<\/p>\n<p>\u00a0 var r_dboValue := &#8222;&#8221;;<\/p>\n<p>\u00a0 var dboValueList := dboListCisObject(&#8222;EXTPartner&#8221;, p_partner, p_name);<\/p>\n<p>\u00a0 for (element as CisObject(com.cisag.app.general.obj.Partner) : dboValueList)<\/p>\n<p>\u00a0\u00a0\u00a0 if (isNull(element))<\/p>\n<p>\u00a0\u00a0\u00a0\u00a0\u00a0 r_dboValue := r_dboValue + &#8222;[null] &#8222;;<\/p>\n<p>\u00a0\u00a0\u00a0 other<\/p>\n<p>\u00a0\u00a0\u00a0\u00a0\u00a0 r_dboValue := r_dboValue + &#8222;[&#8221; + cast(CisObject(com.cisag.app.general.obj.Partner), element):number + &#8222;] &#8222;;<\/p>\n<p>\u00a0 result.IS_ASSIGNED := not isNull(dboValueList[0]);<\/p>\n<p>\u00a0 result.DBO_VALUE := trim(r_dboValue);<\/p>\n<p>}<\/div><\/section>\n<h6 id=\"dbolistdomesticamount\" ><span class=\"ez-toc-section\" id=\"dboListDomesticAmount\"><\/span><strong>dboListDomesticAmount<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h6>\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>dboListDomesticAmount<\/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>dboListDomesticAmount<\/em> zwraca list\u0119 warto\u015bci innego pola typu <em>Kwota w walucie wewn\u0119trznej<\/em> lub <em>Cena w walucie wewn\u0119trznej<\/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>CisObject(com.cisag.app.general.obj.DomesticAmount)[] dboListDomesticAmount(String schemaName, CisObject object, String attributeName)<\/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>schemaName<\/em> identyfikuje drugie pole. Nazwa schematu zaczyna si\u0119 od <em>EXT<\/em>, po kt\u00f3rym nast\u0119puje nazwa obiektu biznesowego bez jego przestrzeni nazw. Je\u015bli obiekt biznesowy znajduje si\u0119 w przestrzeni nazw innej ni\u017c <em>com.cisag<\/em>, druga cz\u0119\u015b\u0107 przestrzeni nazw jest wstawiana wielkimi literami mi\u0119dzy <em>EXT<\/em> a nazw\u0105 obiektu biznesowego. Przyk\u0142adami nazw schemat\u00f3w s\u0105<\/p>\n<p><em>EXTItem<\/em> dla obiektu biznesowego <em>com.cisag.app.general.obj.Item<\/em><\/p>\n<p><em>EXTPurchaseItem<\/em> dla obiektu biznesowego <em>com.cisag.app.purchasing.obj.PurchaseItem<\/em><\/p>\n<p><em>EXTSEMObjectAccount<\/em> dla obiektu biznesowego <em>com.sem.ext.app.fin.financialaccounting.obj.ObjectAccount<\/em><\/p>\n<p><em>object<\/em> to instancja obiektu biznesowego.<\/p>\n<p><em>attributeName <\/em>to nazwa dodatkowego pola.<\/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 warto\u015bci innego pola typu <em>Kwota w walucie wewn\u0119trznej <\/em>lub <em>Cena w walucie wewn\u0119trznej<\/em> jako list\u0119 wpisanych cz\u0119\u015bci <em>CisObject(com.cisag.app.general.obj.DomesticAmount).<\/em><\/p>\n<p>Je\u015bli do pola dodatkowego nie przypisano kwoty lub ceny w walucie wewn\u0119trznej, zwracana jest warto\u015b\u0107 domy\u015blna pola dodatkowego. Je\u015bli pole dodatkowe nie ma warto\u015bci domy\u015blnej, zwracana jest cz\u0119\u015b\u0107 o warto\u015bci domy\u015blnej 0 typu danych <em>number<\/em> we wszystkich trzech walutach wewn\u0119trznych.<\/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 schemat nie istnieje pod okre\u015blon\u0105 nazw\u0105 lub u\u017cywa typu pola, kt\u00f3ry nie pasuje do funkcji, 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>dboListDomesticAmount(&#8222;EXTPartner&#8221;, loadPartner(&#8222;10010&#8221;), &#8222;CREDIT_LIMIT_ALT&#8221;)<\/em> zwraca list\u0119 warto\u015bci pola dodatkowego dla 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>OLTP<\/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>dboDomesticAmount<\/em><em>, <\/em><em>setDboDomesticAmount<\/em><em>, <\/em><em>setDboListDomesticAmount<\/em><em>, <\/em><em>validateDboDomesticAmount<\/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.dboListDomesticAmount<\/em> zwraca wszystkie warto\u015bci z innego pola typu <em>Kwota w walucie wewn\u0119trznej <\/em>partnera w pierwszej walucie wewn\u0119trznej w postaci ci\u0105gu znak\u00f3w.<\/p>\n<p>function create()<\/p>\n<p>{<\/p>\n<p>\u00a0 var p_name := parameters.NAME;<\/p>\n<p>\u00a0 var p_partner := loadPartner(parameters.PARTNER);<\/p>\n<p>\u00a0 var r_dboValue := &#8222;&#8221;;<\/p>\n<p>\u00a0 var currency1 := loadCurrency(getCurrency1()):isoCode;<\/p>\n<p>\u00a0 var dboValueList := dboListDomesticAmount(&#8222;EXTPartner&#8221;, p_partner, p_name);<\/p>\n<p>\u00a0 for (element : dboValueList)<\/p>\n<p>\u00a0\u00a0\u00a0 r_dboValue := r_dboValue + &#8222;[&#8221; + format(element:amount1, &#8222;#.00&#8243;) + &#8221; &#8221; + currency1 + &#8222;] &#8222;;<\/p>\n<p>\u00a0 result.DBO_VALUE := trim(r_dboValue);<\/p>\n<p>}<\/p>\n<p>function getCurrency1() as Guid<\/p>\n<p>{<\/p>\n<p>\u00a0 var currency1 as Guid;<\/p>\n<p>\u00a0 var company := loadOrganisation(getCustomizingValue(&#8222;com.cisag.app.General&#8221;):company);<\/p>\n<p>\u00a0 var baseFunction := getCustomizingValue(&#8222;com.cisag.app.general.Base&#8221;, company:guid);<\/p>\n<p>\u00a0 if (not isNull(baseFunction)) {<\/p>\n<p>\u00a0\u00a0\u00a0 var combination := getByPrimaryKey(CisObject(com.cisag.app.multiorg.obj.DomesticCurrencyCombination), baseFunction:combination);<\/p>\n<p>\u00a0\u00a0\u00a0 currency1 := combination:currency1;<\/p>\n<p>\u00a0 }<\/p>\n<p>\u00a0 return currency1;<\/p>\n<p>}<\/div><\/section>\n<h6 id=\"dbolistforeignamount\" ><span class=\"ez-toc-section\" id=\"dboListForeignAmount\"><\/span>dboListForeignAmount<span class=\"ez-toc-section-end\"><\/span><\/h6>\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>dboListForeignAmount<\/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>dboListForeignAmount<\/em> zwraca list\u0119 warto\u015bci innego pola typu<em> Amount <\/em>lub <em>Price<\/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>CisObject(com.cisag.app.general.obj.ForeignAmount)[] dboListForeignAmount(String schemaName, CisObject object, String attributeName)<\/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>schemaName<\/em> identyfikuje drugie pole. Nazwa schematu zaczyna si\u0119 od <em>EXT<\/em>, po kt\u00f3rym nast\u0119puje nazwa obiektu biznesowego bez jego przestrzeni nazw. Je\u015bli obiekt biznesowy znajduje si\u0119 w przestrzeni nazw innej ni\u017c <em>com.cisag<\/em>, druga cz\u0119\u015b\u0107 przestrzeni nazw jest wstawiana wielkimi literami mi\u0119dzy <em>EXT<\/em> a nazw\u0105 obiektu biznesowego. Przyk\u0142adami nazw schemat\u00f3w s\u0105<\/p>\n<p><em>EXTItem<\/em> dla obiektu biznesowego <em>com.cisag.app.general.obj.Item<\/em><\/p>\n<p><em>EXTPurchaseItem<\/em> dla obiektu biznesowego <em>com.cisag.app.purchasing.obj.PurchaseItem<\/em><\/p>\n<p><em>EXTSEMObjectAccount<\/em> dla obiektu biznesowego <em>com.sem.ext.app.fin.financialaccounting.obj.ObjectAccount<\/em><\/p>\n<p><em>object<\/em> to instancja obiektu biznesowego.<\/p>\n<p><em>attributeName<\/em> to nazwa dodatkowego pola.<\/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 warto\u015bci innego pola typu <em>Amount<\/em> lub <em>Price <\/em>jako list\u0119 z typowanymi cz\u0119\u015bciami <em>CisObject(com.cisag.app.general.obj.ForeignAmount).<\/em><\/p>\n<p>Je\u015bli do pola dodatkowego nie przypisano kwoty lub ceny, zwracana jest warto\u015b\u0107 domy\u015blna pola dodatkowego. Je\u015bli pole dodatkowe nie ma warto\u015bci domy\u015blnej, zwracana jest lista z pojedynczym elementem listy z cz\u0119\u015bci\u0105, z warto\u015bci\u0105 domy\u015bln\u0105 0 typu danych <em>number<\/em> dla kwoty lub ceny oraz z warto\u015bci\u0105 domy\u015bln\u0105 <em>null<\/em> typu danych <em>Guid <\/em>jako walut\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>Je\u015bli schemat nie istnieje pod okre\u015blon\u0105 nazw\u0105 lub u\u017cywa typu pola, kt\u00f3ry nie pasuje do funkcji, 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>dboListForeignAmount(&#8222;EXTPartner&#8221;, loadPartner(&#8222;10010&#8221;), &#8222;CREDIT_LIMIT_LOCAL&#8221;)<\/em> zwraca list\u0119 warto\u015bci pola dodatkowego dla partnera.<\/p>\n<p><em>isNull(dboListForeignAmount(&#8222;EXTPartner&#8221;, loadPartner(&#8222;10010&#8221;), &#8222;LIMIT&#8221;)[0]:currency)<\/em> sprawdza, czy do pola dodatkowego przypisana jest kwota lub cena.<\/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>OLTP<\/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>dboForeignAmount<\/em><em>, <\/em><em>setDboForeignAmount<\/em><em>, <\/em><em>setDboListForeignAmount<\/em><em>, <\/em><em>validateDboForeignAmount<\/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.dboForeignAmount<\/em> zwraca wszystkie warto\u015bci innego pola typu <em>Amount<\/em> partnera w postaci ci\u0105gu znak\u00f3w, w tym kod ISO waluty.<\/p>\n<p>function create()<\/p>\n<p>{<\/p>\n<p>\u00a0 var p_name := parameters.NAME;<\/p>\n<p>\u00a0 var p_partner := loadPartner(parameters.PARTNER);<\/p>\n<p>\u00a0 var r_dboValue := &#8222;&#8221;;<\/p>\n<p>\u00a0 var dboValueList := dboListForeignAmount(&#8222;EXTPartner&#8221;, p_partner, p_name);<\/p>\n<p>\u00a0 for (element as CisObject(com.cisag.app.general.obj.ForeignAmount) : dboValueList)<\/p>\n<p>\u00a0\u00a0\u00a0 if (isNull(element:currency))<\/p>\n<p>\u00a0\u00a0\u00a0\u00a0\u00a0 r_dboValue := r_dboValue + &#8222;[null] &#8222;;<\/p>\n<p>\u00a0\u00a0\u00a0 else if (element:currency = ZERO_GUID)<\/p>\n<p>\u00a0\u00a0\u00a0\u00a0\u00a0 r_dboValue := r_dboValue + &#8222;[ZERO_GUID] &#8222;;<\/p>\n<p>\u00a0\u00a0\u00a0 inny<\/p>\n<p>\u00a0\u00a0\u00a0\u00a0\u00a0 r_dboValue := r_dboValue + &#8222;[&#8221; + format(element:amount, &#8222;#0.00&#8243;) + &#8221; &#8221; + loadCurrency(element:currency):isoCode + &#8222;] &#8222;;<\/p>\n<p>\u00a0 result.IS_ASSIGNED := not isNull(dboValueList[0]:currency);<\/p>\n<p>\u00a0 result.DBO_VALUE := trim(r_dboValue);<\/p>\n<p>}<\/div><\/section>\n<h6 id=\"dbolistguid\" ><span class=\"ez-toc-section\" id=\"dboListGuid\"><\/span><strong>dboListGuid<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h6>\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>dboListGuid<\/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>dboListGuid <\/em>zwraca list\u0119 warto\u015bci innego pola typu <em>Classification<\/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>Guid[] dboListGuid(String schemaName, CisObject object, String attributeName)<\/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>schemaName<\/em> identyfikuje drugie pole. Nazwa schematu zaczyna si\u0119 od <em>EXT<\/em>, po kt\u00f3rym nast\u0119puje nazwa obiektu biznesowego bez jego przestrzeni nazw. Je\u015bli obiekt biznesowy znajduje si\u0119 w przestrzeni nazw innej ni\u017c <em>com.cisag<\/em>, druga cz\u0119\u015b\u0107 przestrzeni nazw jest wstawiana wielkimi literami mi\u0119dzy<em> EXT<\/em> a nazw\u0105 obiektu biznesowego. Przyk\u0142adami nazw schemat\u00f3w s\u0105<\/p>\n<p><em>EXTItem<\/em> dla obiektu biznesowego <em>com.cisag.app.general.obj.Item<\/em><\/p>\n<p><em>EXTPurchaseItem<\/em> dla obiektu biznesowego <em>com.cisag.app.purchasing.obj.PurchaseItem<\/em><\/p>\n<p><em>EXTSEMObjectAccount<\/em> dla obiektu biznesowego <em>com.sem.ext.app.fin.financialaccounting.obj.ObjectAccount<\/em><\/p>\n<p><em>object<\/em> to instancja obiektu biznesowego.<\/p>\n<p><em>attributeName<\/em> to nazwa dodatkowego pola.<\/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 warto\u015bci innego pola typu <em>Classification<\/em> jako list\u0119 guid\u00f3w obiektu biznesowego <em>com.cisag.app.general.extension.obj.EntityExtensionHierarchy<\/em>, kt\u00f3ry zawiera w\u0142a\u015bciwo\u015bci przypisanych klasyfikacji.<\/p>\n<p>Je\u015bli do pola dodatkowego nie przypisano \u017cadnej klasyfikacji, zwracana jest warto\u015b\u0107 domy\u015blna pola dodatkowego. Je\u015bli pole dodatkowe nie ma warto\u015bci domy\u015blnej, zwracana jest lista z pojedynczym elementem listy o warto\u015bci domy\u015blnej <em>null<\/em> typu danych <em>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>\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 schemat nie istnieje pod okre\u015blon\u0105 nazw\u0105 lub u\u017cywa typu pola, kt\u00f3ry nie pasuje do funkcji, 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>dboListGuid(&#8222;EXTPartner&#8221;, loadPartner(&#8222;70010&#8221;), &#8222;HOME_OFFICE&#8221;)<\/em> zwraca list\u0119 warto\u015bci pola dodatkowego dla partnera.<\/p>\n<p><em>isNull(dboListGuid(&#8222;EXTPartner&#8221;, loadPartner(&#8222;70010&#8221;), &#8222;HOME_OFFICE&#8221;))[0]<\/em> sprawdza, czy warto\u015b\u0107 jest przypisana do dodatkowego pola.<\/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>OLTP<\/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>Nale\u017cy u\u017cy\u0107 wyniku, aby otworzy\u0107 klasyfikacj\u0119, np. za pomoc\u0105 funkcji <em>getByPrimaryKey <\/em>i oceni\u0107 dalsze atrybuty. Dodatkowe pola typu<em> Classification<\/em> s\u0105 zapisywane w obiekcie biznesowym <em>com.cisag.app.general.extension.obj.EntityExtensionHierarchy<\/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>dboGuid<\/em><em>, <\/em><em>setDboGuid<\/em><em>, <\/em><em>setDboListGuid<\/em><em>, <\/em><em>validateDboGuid<\/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.dboGuid<\/em> zwraca \u015bcie\u017ck\u0119 i nazw\u0119 wszystkich klasyfikacji przechowywanych w innym polu typu <em>Classification <\/em>partnera w postaci ci\u0105gu znak\u00f3w.<\/p>\n<p>function create()<\/p>\n<p>{<\/p>\n<p>\u00a0 var p_name := parameters.NAME;<\/p>\n<p>\u00a0 var p_partner := loadPartner(parameters.PARTNER);<\/p>\n<p>\u00a0 var r_dboValue := &#8222;&#8221;;<\/p>\n<p>\u00a0 var dboValueList := dboListGuid(&#8222;EXTPartner&#8221;, p_partner, p_name);<\/p>\n<p>\u00a0 var classification as CisObject(com.cisag.app.general.extension.obj.EntityExtensionHierarchy);<\/p>\n<p>\u00a0 for (element : dboValueList)<\/p>\n<p>\u00a0\u00a0\u00a0 if (isNull(element))<\/p>\n<p>\u00a0\u00a0\u00a0\u00a0\u00a0 r_dboValue := r_dboValue + &#8222;[null] &#8222;;<\/p>\n<p>\u00a0\u00a0\u00a0 else {<\/p>\n<p>\u00a0\u00a0\u00a0\u00a0\u00a0 classification := getByPrimaryKey(CisObject(com.cisag.app.general.extension.obj.EntityExtensionHierarchy), element);<\/p>\n<p>\u00a0\u00a0\u00a0\u00a0\u00a0 r_dboValue := r_dboValue + &#8222;[&#8221; + classification:path + &#8221; &#8221; + classification:description + &#8222;] &#8222;;<\/p>\n<p>\u00a0\u00a0\u00a0 }<\/p>\n<p>\u00a0 result.IS_ASSIGNED := not isNull(dboValueList[0]);<\/p>\n<p>\u00a0 result.DBO_VALUE := trim(r_dboValue);<\/p>\n<p>}<\/div><\/section>\n<h6 id=\"dbolistnumber\" ><span class=\"ez-toc-section\" id=\"dboListNumber\"><\/span><strong>dboListNumber<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h6>\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>dboListNumber<\/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>dboListNumber<\/em> zwraca list\u0119 warto\u015bci innego pola typu <em>Decimal<\/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>Number[] dboListNumber(String schemaName, CisObject object, String attributeName)<\/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>schemaName<\/em> identyfikuje drugie pole. Nazwa schematu zaczyna si\u0119 od <em>EXT<\/em>, po kt\u00f3rym nast\u0119puje nazwa obiektu biznesowego bez jego przestrzeni nazw. Je\u015bli obiekt biznesowy znajduje si\u0119 w przestrzeni nazw innej ni\u017c <em>com.cisag<\/em>, druga cz\u0119\u015b\u0107 przestrzeni nazw jest wstawiana wielkimi literami mi\u0119dzy <em>EXT<\/em> a nazw\u0105 obiektu biznesowego. Przyk\u0142adami nazw schemat\u00f3w s\u0105<\/p>\n<p><em>EXTItem <\/em>dla obiektu biznesowego <em>com.cisag.app.general.obj.Item<\/em><\/p>\n<p><em>EXTPurchaseItem<\/em> dla obiektu biznesowego <em>com.cisag.app.purchasing.obj.PurchaseItem<\/em><\/p>\n<p><em>EXTSEMObjectAccount<\/em> dla obiektu biznesowego <em>com.sem.ext.app.fin.financialaccounting.obj.ObjectAccount<\/em><\/p>\n<p><em>object<\/em> to instancja obiektu biznesowego.<\/p>\n<p><em>attributeNam<\/em>e to nazwa dodatkowego pola.<\/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 warto\u015bci innego pola typu <em>Decimal <\/em>jako list\u0119 liczb.<\/p>\n<p>Je\u015bli do pola dodatkowego nie przypisano liczby dziesi\u0119tnej, zwracana jest warto\u015b\u0107 domy\u015blna pola dodatkowego. Je\u015bli pole dodatkowe nie ma warto\u015bci domy\u015blnej, zwracana jest lista z pojedynczym elementem listy i warto\u015bci\u0105 domy\u015bln\u0105 0 typu danych <em>Number<\/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 schemat nie istnieje pod okre\u015blon\u0105 nazw\u0105 lub u\u017cywa typu pola, kt\u00f3ry nie pasuje do funkcji, 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>dboListNumber(&#8222;EXTPartner&#8221;, loadPartner(&#8222;10010&#8221;), &#8222;CREDIT_POINTS&#8221;)<\/em> zwraca list\u0119 warto\u015bci dodatkowego pola dla 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>OLTP<\/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>dboNumber<\/em><em>, <\/em><em>setDboNumber<\/em><em>, <\/em><em>setDboListNumber<\/em><em>, <\/em><em>validateDboNumber<\/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.dboNumber<\/em> zwraca wszystkie warto\u015bci innego pola typu <em>Decimal<\/em> partnera w postaci ci\u0105gu znak\u00f3w.<\/p>\n<p>function create()<\/p>\n<p>{<\/p>\n<p>\u00a0 var p_name := parameters.NAME;<\/p>\n<p>\u00a0 var p_partner := loadPartner(parameters.PARTNER);<\/p>\n<p>\u00a0 var r_dboValue := &#8222;&#8221;;<\/p>\n<p>\u00a0 var dboValueList := dboListNumber(&#8222;EXTPartner&#8221;, p_partner, p_name);<\/p>\n<p>\u00a0 for (element : dboValueList)<\/p>\n<p>\u00a0\u00a0\u00a0 r_dboValue := r_dboValue + &#8222;[&#8221; + element + &#8222;] &#8222;;<\/p>\n<p>\u00a0 result.DBO_VALUE := trim(r_dboValue);<\/p>\n<p>}<\/div><\/section>\n<h6 id=\"dbolistquantity\" ><span class=\"ez-toc-section\" id=\"dboListQuantity\"><\/span><strong>dboListQuantity<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h6>\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>dboListQuantity<\/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>dboListQuantity<\/em> zwraca list\u0119 warto\u015bci innego pola typu <em>Quantity<\/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>CisObject(com.cisag.app.general.obj.Quantity)[] dboListQuantity(String schemaName, CisObject object, String attributeName)<\/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>schemaName<\/em> identyfikuje drugie pole. Nazwa schematu zaczyna si\u0119 od <em>EXT<\/em>, po kt\u00f3rym nast\u0119puje nazwa obiektu biznesowego bez jego przestrzeni nazw. Je\u015bli obiekt biznesowy znajduje si\u0119 w przestrzeni nazw innej ni\u017c <em>com.cisag<\/em>, druga cz\u0119\u015b\u0107 przestrzeni nazw jest wstawiana wielkimi literami mi\u0119dzy <em>EXT<\/em> a nazw\u0105 obiektu biznesowego. Przyk\u0142adami nazw schemat\u00f3w s\u0105<\/p>\n<p><em>EXTItem<\/em> dla obiektu biznesowego <em>com.cisag.app.general.obj.Item<\/em><\/p>\n<p><em>EXTPurchaseItem<\/em> dla obiektu biznesowego <em>com.cisag.app.purchasing.obj.PurchaseItem<\/em><\/p>\n<p><em>EXTSEMObjectAccount<\/em> dla obiektu biznesowego <em>com.sem.ext.app.fin.financialaccounting.obj.ObjectAccount<\/em><\/p>\n<p><em>object<\/em> to instancja obiektu biznesowego.<\/p>\n<p><em>attributeName <\/em>to nazwa dodatkowego pola.<\/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 warto\u015bci innego pola typu <em>Quantity<\/em> jako list\u0119 wpisanych cz\u0119\u015bci <em>CisObject(com.cisag.app.general.obj.Quantity).<\/em><\/p>\n<p>Je\u015bli do pola dodatkowego nie jest przypisana \u017cadna ilo\u015b\u0107, zwracana jest warto\u015b\u0107 domy\u015blna pola dodatkowego. Je\u015bli pole dodatkowe nie ma warto\u015bci domy\u015blnej, zwracana jest lista z pojedynczym elementem listy z cz\u0119\u015bci\u0105 o warto\u015bci domy\u015blnej 0 typu danych <em>Number<\/em> dla kwoty i warto\u015bci\u0105 <em>ZERO_GUID<\/em> dla jednostki (<em>uom<\/em>), nawet je\u015bli zero jest warto\u015bci\u0105 domy\u015bln\u0105 typu danych <em>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>\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 schemat nie istnieje pod okre\u015blon\u0105 nazw\u0105 lub u\u017cywa typu pola, kt\u00f3ry nie pasuje do funkcji, 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>dboListQuantity(&#8222;EXTPartner&#8221;, loadPartner(&#8222;70010&#8221;), &#8222;DIMENSIONS&#8221;)<\/em> zwraca list\u0119 warto\u015bci pola dodatkowego dla partnera.<\/p>\n<p><em>dboLstQuantity(&#8222;EXTPartner&#8221;, loadPartner(&#8222;10010&#8221;), &#8222;DIMENSIONS&#8221;)[0]:uom = ZERO_GUID<\/em> sprawdza, czy ilo\u015b\u0107 jest przypisana do pola dodatkowego.<\/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>OLTP<\/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>dboQuantity<\/em><em>, <\/em><em>setDboQuantity<\/em><em>, <\/em><em>setDboListQuantity<\/em><em>, <\/em><em>validateDboQuantity<\/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.dboListQuantity<\/em> zwraca wszystkie ilo\u015bci wraz z jednostk\u0105 innego pola typu <em>Quantity<\/em> partnera w postaci ci\u0105gu znak\u00f3w.<\/p>\n<p>function create()<\/p>\n<p>{<\/p>\n<p>\u00a0 var p_name := parameters.NAME;<\/p>\n<p>\u00a0 var p_partner := loadPartner(parameters.PARTNER);<\/p>\n<p>\u00a0 var r_dboValue := &#8222;&#8221;;<\/p>\n<p>\u00a0 var dboValueList := dboListQuantity(&#8222;EXTPartner&#8221;, p_partner, p_name);<\/p>\n<p>\u00a0 for (element as CisObject(com.cisag.app.general.obj.Quantity) : dboValueList)<\/p>\n<p>\u00a0\u00a0\u00a0 if (isNull(element))<\/p>\n<p>\u00a0\u00a0\u00a0\u00a0\u00a0 r_dboValue := r_dboValue + &#8222;[null] &#8222;;<\/p>\n<p>\u00a0\u00a0\u00a0 else if (element:uom = ZERO_GUID)<\/p>\n<p>\u00a0\u00a0\u00a0\u00a0\u00a0 r_dboValue := r_dboValue + &#8222;ZERO_GUID &#8222;;<\/p>\n<p>\u00a0\u00a0\u00a0 inny<\/p>\n<p>\u00a0\u00a0\u00a0\u00a0\u00a0 r_dboValue := r_dboValue + &#8222;[&#8221; + element:amount + &#8221; &#8221; + loadUom(element:uom):code + &#8222;] &#8222;;<\/p>\n<p>\u00a0 result.IS_ASSIGNED := dboValueList[0]:uom &lt;&gt; ZERO_GUID;<\/p>\n<p>\u00a0 result.DBO_VALUE := trim(r_dboValue);<\/p>\n<p>}<\/div><\/section>\n<h6 id=\"dboliststring\" ><span class=\"ez-toc-section\" id=\"dboListString\"><\/span><strong>dboListString<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h6>\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>dboListString<\/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>dboListString<\/em> zwraca list\u0119 warto\u015bci innego pola typu <em>Text<\/em>, <em>Long text, E-mail address<\/em> lub <em>Uniform Resource Locator (URL).<\/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>String[] dboListString(String schemaName, CisObject object, String attributeName)<\/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>schemaName<\/em> identyfikuje drugie pole. Nazwa schematu zaczyna si\u0119 od <em>EXT<\/em>, po kt\u00f3rym nast\u0119puje nazwa obiektu biznesowego bez jego przestrzeni nazw. Je\u015bli obiekt biznesowy znajduje si\u0119 w przestrzeni nazw innej ni\u017c <em>com.cisag<\/em>, druga cz\u0119\u015b\u0107 przestrzeni nazw jest wstawiana wielkimi literami mi\u0119dzy <em>EXT<\/em> a nazw\u0105 obiektu biznesowego. Przyk\u0142adami nazw schemat\u00f3w s\u0105<\/p>\n<p><em>EXTItem <\/em>dla obiektu biznesowego <em>com.cisag.app.general.obj.Item<\/em><\/p>\n<p><em>EXTPurchaseItem<\/em> dla obiektu biznesowego <em>com.cisag.app.purchasing.obj.PurchaseItem<\/em><\/p>\n<p><em>EXTSEMObjectAccount<\/em> dla obiektu biznesowego <em>com.sem.ext.app.fin.financialaccounting.obj.ObjectAccount<\/em><\/p>\n<p><em>object<\/em> to instancja obiektu biznesowego.<\/p>\n<p><em>attributeName<\/em> to nazwa dodatkowego pola.<\/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 warto\u015bci innego pola typu <em>Text, Long text, Email address<\/em> lub <em>Uniform Resource Locator<\/em> jako list\u0119 ci\u0105g\u00f3w znak\u00f3w.<\/p>\n<p>Je\u015bli do pola dodatkowego nie zostanie przypisana \u017cadna warto\u015b\u0107, zwracana jest warto\u015b\u0107 domy\u015blna pola dodatkowego. Je\u015bli pole dodatkowe nie ma warto\u015bci domy\u015blnej, jako warto\u015b\u0107 domy\u015blna typu danych <em>String<\/em> zwracana jest lista z pojedynczym elementem listy i pustym 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>\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 schemat nie istnieje pod okre\u015blon\u0105 nazw\u0105 lub u\u017cywa typu pola, kt\u00f3ry nie pasuje do funkcji, 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>dboListString(&#8222;EXTPartner&#8221;, loadPartner(&#8222;10010&#8221;), &#8222;EXTERNAL_REFERENCE&#8221;)<\/em> zwraca list\u0119 warto\u015bci dodatkowego pola dla 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>OLTP<\/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>dboString<\/em><em>, <\/em><em>setDboString<\/em><em>, <\/em><em>setDboListString<\/em><em>, <\/em><em>validateDboString<\/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.dboString<\/em> zwraca wszystkie warto\u015bci innego pola jednego z typ\u00f3w <em>Text, Long text, E-mail address<\/em> lub <em>Uniform Resource Locator (URL).<\/em><\/p>\n<p>function create()<\/p>\n<p>{<\/p>\n<p>\u00a0 var p_name := parameters.NAME;<\/p>\n<p>\u00a0 var p_partner := loadPartner(parameters.PARTNER);<\/p>\n<p>\u00a0 var r_dboValue := &#8222;&#8221;;<\/p>\n<p>\u00a0 var dboValueList := dboListString(&#8222;EXTPartner&#8221;, p_partner, p_name);<\/p>\n<p>\u00a0 for (element : dboValueList)<\/p>\n<p>\u00a0\u00a0\u00a0 r_dboValue := r_dboValue + &#8222;[&#8221; + element + &#8222;] &#8222;;<\/p>\n<p>\u00a0 result.DBO_VALUE := trim(r_dboValue);<\/p>\n<p>}<\/div><\/section>\n<h6 id=\"dbolisttimestamp\" ><span class=\"ez-toc-section\" id=\"dboListTimestamp\"><\/span><strong>dboListTimestamp<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h6>\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>dboListTimestamp<\/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>dboListTimestamp<\/em> zwraca list\u0119 warto\u015bci innego pola typu <em>Date and time<\/em> lub <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>Podpisy<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Timestamp[] dboListTimestamp(Timestamp schemaName, CisObject object, Timestamp attributeName)<\/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>schemaName<\/em> identyfikuje drugie pole. Nazwa schematu zaczyna si\u0119 od <em>EXT<\/em>, po kt\u00f3rym nast\u0119puje nazwa obiektu biznesowego bez jego przestrzeni nazw. Je\u015bli obiekt biznesowy znajduje si\u0119 w przestrzeni nazw innej ni\u017c <em>com.cisag<\/em>, druga cz\u0119\u015b\u0107 przestrzeni nazw jest wstawiana wielkimi literami mi\u0119dzy <em>EXT<\/em> a nazw\u0105 obiektu biznesowego. Przyk\u0142adami nazw schemat\u00f3w s\u0105<\/p>\n<p><em>EXTItem <\/em>dla obiektu biznesowego <em>com.cisag.app.general.obj.Item<\/em><\/p>\n<p><em>EXTPurchaseItem<\/em> dla obiektu biznesowego <em>com.cisag.app.purchasing.obj.PurchaseItem<\/em><\/p>\n<p><em>EXTSEMObjectAccount<\/em> dla obiektu biznesowego <em>com.sem.ext.app.fin.financialaccounting.obj.ObjectAccount<\/em><\/p>\n<p><em>object<\/em> to instancja obiektu biznesowego.<\/p>\n<p><em>attributeName<\/em> to nazwa dodatkowego pola.<\/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 warto\u015bci pola dodatkowego typu <em>Date and time<\/em> lub <em>Date<\/em> jako list\u0119 punkt\u00f3w w czasie.<\/p>\n<p>Je\u015bli do pola dodatkowego nie przypisano daty i godziny lub daty, zwracana jest warto\u015b\u0107 domy\u015blna pola dodatkowego. Je\u015bli pole dodatkowe nie ma warto\u015bci domy\u015blnej, zwracana jest lista z pojedynczym elementem listy o warto\u015bci domy\u015blnej <em>null<\/em>, nawet je\u015bli sta\u0142a <em>UNDEFINED_DATE<\/em> jest warto\u015bci\u0105 domy\u015bln\u0105 typu danych <em>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>\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 schemat nie istnieje pod okre\u015blon\u0105 nazw\u0105 lub u\u017cywa typu pola, kt\u00f3ry nie pasuje do funkcji, 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>dboListTimestamp(&#8222;EXTPartner&#8221;, loadPartner(&#8222;10010&#8221;), &#8222;LAST_ACCESS&#8221;)<\/em> zwraca list\u0119 warto\u015bci dodatkowego pola dla partnera.<\/p>\n<p><em>not isNull(dboListTimestamp(&#8222;EXTPartner&#8221;, loadPartner(&#8222;10010&#8221;), &#8222;LAST_ACCESS&#8221;)[0])<\/em> sprawdza, czy czas jest przypisany do dodatkowego pola.<\/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>OLTP<\/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>dboTimestamp<\/em><em>, <\/em><em>setDboTimestamp<\/em><em>, <\/em><em>setDboListTimestamp<\/em><em>, <\/em><em>validateDboTimestamp<\/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.dboListTimestamp<\/em> zwraca wszystkie warto\u015bci innego pola typu <em>Date and time<\/em> lub <em>Date<\/em> jako ci\u0105g znak\u00f3w.<\/p>\n<p>function create()<\/p>\n<p>{<\/p>\n<p>\u00a0 var p_name := parameters.NAME;<\/p>\n<p>\u00a0 var p_partner := loadPartner(parameters.PARTNER);<\/p>\n<p>\u00a0 var r_dboValue := &#8222;&#8221;;<\/p>\n<p>\u00a0 var dboValueList := dboListTimestamp(&#8222;EXTPartner&#8221;, p_partner, p_name);<\/p>\n<p>\u00a0 for (element : dboValueList)<\/p>\n<p>\u00a0\u00a0\u00a0 if (element = UNDEFINED_DATE)<\/p>\n<p>\u00a0\u00a0\u00a0\u00a0\u00a0 r_dboValue := r_dboValue + &#8222;[UNDEFINED_DATE] &#8222;;<\/p>\n<p>\u00a0\u00a0\u00a0 else if (element = MIN_DATE)<\/p>\n<p>\u00a0\u00a0\u00a0\u00a0\u00a0 r_dboValue := r_dboValue + &#8222;[MIN_DATE] &#8222;;<\/p>\n<p>\u00a0\u00a0\u00a0 else if (element = MAX_DATE)<\/p>\n<p>\u00a0\u00a0\u00a0\u00a0\u00a0 r_dboValue := r_dboValue + &#8222;[MAX_DATE] &#8222;;<\/p>\n<p>\u00a0\u00a0\u00a0 other<\/p>\n<p>\u00a0\u00a0\u00a0\u00a0\u00a0 r_dboValue := r_dboValue + &#8222;[&#8221; + format(element, &#8222;yyyy-MM-dd hh:mm:ss&#8221;) + &#8222;] &#8222;;<\/p>\n<p>\u00a0 result.IS_ASSIGNED := dboValueList[0] &lt;&gt; UNDEFINED_DATE;<\/p>\n<p>\u00a0 result.DBO_VALUE := trim(r_dboValue);<\/p>\n<p>}<\/div><\/section>\n<h6 id=\"dbolistvalueset\" ><span class=\"ez-toc-section\" id=\"dboListValueSet\"><\/span><strong>dboListValueSet<\/strong><strong>\u00a0<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h6>\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>dboListValueSet<\/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>dboListValueSet<\/em> zwraca warto\u015bci liczbowe listy warto\u015bci innego pola typu <em>Selection field<\/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>Number[] dboListValueSet(ValueSet schemaName, CisObject object, ValueSet attributeName)<\/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>schemaName<\/em> identyfikuje drugie pole. Nazwa schematu zaczyna si\u0119 od <em>EXT<\/em>, po kt\u00f3rym nast\u0119puje nazwa obiektu biznesowego bez jego przestrzeni nazw. Je\u015bli obiekt biznesowy znajduje si\u0119 w przestrzeni nazw innej ni\u017c <em>com.cisag<\/em>, druga cz\u0119\u015b\u0107 przestrzeni nazw jest wstawiana wielkimi literami mi\u0119dzy <em>EXT<\/em> a nazw\u0105 obiektu biznesowego. Przyk\u0142adami nazw schemat\u00f3w s\u0105<\/p>\n<p><em>EXTItem<\/em> dla obiektu biznesowego <em>com.cisag.app.general.obj.Item<\/em><\/p>\n<p><em>EXTPurchaseItem<\/em> dla obiektu biznesowego <em>com.cisag.app.purchasing.obj.PurchaseItem<\/em><\/p>\n<p><em>EXTSEMObjectAccount<\/em> dla obiektu biznesowego <em>com.sem.ext.app.fin.financialaccounting.obj.ObjectAccount<\/em><\/p>\n<p><em>object <\/em>to instancja obiektu biznesowego.<\/p>\n<p><em>attributeName<\/em> to nazwa dodatkowego pola.<\/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\u015bci liczbowe listy warto\u015bci pola dodatkowego typu <em>Selection field<\/em> jako list\u0119 liczb.<\/p>\n<p>Je\u015bli do pola dodatkowego nie przypisano \u017cadnej warto\u015bci, zwracana jest warto\u015b\u0107 domy\u015blna pola dodatkowego. Je\u015bli pole dodatkowe nie ma warto\u015bci domy\u015blnej, zwracana jest lista z pojedynczym elementem listy i warto\u015bci\u0105 domy\u015bln\u0105 0 typu danych <em>Number<\/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 schemat nie istnieje pod okre\u015blon\u0105 nazw\u0105 lub u\u017cywa typu pola, kt\u00f3ry nie pasuje do funkcji, 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>dboListValueSet(&#8222;EXTPartner&#8221;, loadPartner(&#8222;10010&#8221;), &#8222;PREFERENCES&#8221;)<\/em> zwraca warto\u015bci liczbowe listy warto\u015bci pola dodatkowego dla partnera.<\/p>\n<p><em>dboListValueSet(&#8222;EXTPartner&#8221;, loadPartner(&#8222;10010&#8221;), &#8222;PREFERENCES&#8221;)[0] &gt; 0<\/em> sprawdza, czy warto\u015b\u0107 jest przypisana do dodatkowego pola.<\/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>OLTP<\/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 liczbowa (ID) nie jest wy\u015bwietlana we w\u0142a\u015bciwo\u015bciach innego pola typu <em>Selection field<\/em>. W wi\u0119kszo\u015bci przypadk\u00f3w warto\u015b\u0107 liczbowa odpowiada kolejno\u015bci, w jakiej zosta\u0142y wprowadzone wpisy.<\/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>dboValueSet<\/em><em>, <\/em><em>dboValueSetDescription<\/em><em>, <\/em><em>dboValueSetName<\/em><em>, <\/em><em>dboListValueSetDescription<\/em><em>, <\/em><em>dboListValueSetName<\/em><em>, <\/em><em>setDboValueSet<\/em><em>, <\/em><em>setDboValueSetName<\/em><em>, <\/em><em>setDboListValueSet<\/em><em>, <\/em><em>setDboListValueSetName<\/em><em>, <\/em><em>validateDboValueSet<\/em><em>, <\/em><em>validateDboValueSetName<\/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.dboListValueSet<\/em> zwraca wszystkie warto\u015bci liczbowe innego pola typu <em>Selection field<\/em> jako ci\u0105g znak\u00f3w.<\/p>\n<p>function create()<\/p>\n<p>{<\/p>\n<p>\u00a0 var p_name := parameters.NAME;<\/p>\n<p>\u00a0 var p_partner := loadPartner(parameters.PARTNER);<\/p>\n<p>\u00a0 var r_dboValue := &#8222;&#8221;;<\/p>\n<p>\u00a0 var dboValueList := dboListValueSet(&#8222;EXTPartner&#8221;, p_partner, p_name);<\/p>\n<p>\u00a0 for (element : dboValueList)<\/p>\n<p>\u00a0\u00a0\u00a0 if (element &lt;&gt; 0)<\/p>\n<p>\u00a0\u00a0\u00a0\u00a0\u00a0 r_dboValue := r_dboValue + &#8222;[&#8221; + format(element, &#8222;0&#8221;) + &#8222;] &#8222;;<\/p>\n<p>\u00a0 result.IS_ASSIGNED := dboValueList[0] &lt;&gt; 0;<\/p>\n<p>\u00a0 result.DBO_VALUE := trim(r_dboValue);<\/p>\n<p>}<\/div><\/section>\n<h6 id=\"dbolistvaluesetdescription\" ><span class=\"ez-toc-section\" id=\"dboListValueSetDescription\"><\/span><strong>dboListValueSetDescription<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h6>\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>dboListValueSetDescription<\/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>dboListValueSetDescription<\/em> zwraca list\u0119 warto\u015bci z opisami wyboru kolejnego pola typu <em>Selection field<\/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>String[] dboListValueSetDescription(String schemaName, CisObject object, String attributeName)<\/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>schemaName<\/em> identyfikuje drugie pole. Nazwa schematu zaczyna si\u0119 od <em>EXT<\/em>, po kt\u00f3rym nast\u0119puje nazwa obiektu biznesowego bez jego przestrzeni nazw. Je\u015bli obiekt biznesowy znajduje si\u0119 w przestrzeni nazw innej ni\u017c <em>com.cisag<\/em>, druga cz\u0119\u015b\u0107 przestrzeni nazw jest wstawiana wielkimi literami mi\u0119dzy <em>EXT<\/em> a nazw\u0105 obiektu biznesowego. Przyk\u0142adami nazw schemat\u00f3w s\u0105<\/p>\n<p><em>EXTItem<\/em> dla obiektu biznesowego <em>com.cisag.app.general.obj.Item<\/em><\/p>\n<p><em>EXTPurchaseItem<\/em> dla obiektu biznesowego <em>com.cisag.app.purchasing.obj.PurchaseItem<\/em><\/p>\n<p><em>EXTSEMObjectAccount<\/em> dla obiektu biznesowego <em>com.sem.ext.app.fin.financialaccounting.obj.ObjectAccount<\/em><\/p>\n<p><em>object <\/em>to instancja obiektu biznesowego.<\/p>\n<p><em>attributeName<\/em> to nazwa dodatkowego pola.<\/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 nazwy listy warto\u015bci dodatkowego pola typu <em>Selection field<\/em> jako list\u0119 ci\u0105g\u00f3w znak\u00f3w.<\/p>\n<p>Je\u015bli do pola dodatkowego nie zostanie przypisana \u017cadna warto\u015b\u0107, zwracana jest warto\u015b\u0107 domy\u015blna pola dodatkowego. Je\u015bli pole dodatkowe nie ma warto\u015bci domy\u015blnej, jako warto\u015b\u0107 domy\u015blna typu danych <em>String<\/em> zwracana jest lista z pojedynczym elementem listy i pustym 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>\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 schemat nie istnieje pod okre\u015blon\u0105 nazw\u0105 lub u\u017cywa typu pola, kt\u00f3ry nie pasuje do funkcji, 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>dboListValueSetDescription(&#8222;EXTPartner&#8221;, loadPartner(&#8222;10010&#8221;), &#8222;PREFERENCES&#8221;)<\/em> zwraca opis listy warto\u015bci pola dodatkowego dla 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>OLTP<\/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>dboValueSet<\/em><em>, <\/em><em>dboValueSetDescription<\/em><em>, <\/em><em>dboValueSetName<\/em><em>, <\/em><em>dboListValueSet<\/em><em>, <\/em><em>dboListValueSetName<\/em><em>, <\/em><em>setDboValueSet<\/em><em>, <\/em><em>setDboValueSetName<\/em><em>, <\/em><em>setDboListValueSet<\/em><em>, <\/em><em>setDboListValueSetName<\/em><em>, <\/em><em>validateDboValueSet<\/em><em>, <\/em><em>validateDboValueSetName<\/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.dboListValueSetDescription<\/em> zwraca opisy listy warto\u015bci z innego pola z typem pola <em>Selection field<\/em> jako ci\u0105g znak\u00f3w.<\/p>\n<p>function create()<\/p>\n<p>{<\/p>\n<p>\u00a0 var p_name := parameters.NAME;<\/p>\n<p>\u00a0 var p_language := parameters.LANGUAGE;<\/p>\n<p>\u00a0 var p_partner := loadPartner(parameters.PARTNER);<\/p>\n<p>\u00a0 var r_dboValue := &#8222;&#8221;;<\/p>\n<p>\u00a0 var oldContentLanguage := getNLSContentLanguage();<\/p>\n<p>\u00a0 var oldDisplayLanguage := getNLSDisplayLanguage();<\/p>\n<p>\u00a0 setNLSLanguages(p_language);<\/p>\n<p>\u00a0 var r_dboValue := dboListValueSetDescription(&#8222;EXTPartner&#8221;, p_partner, p_name);<\/p>\n<p>\u00a0 for (element : dboValueList)<\/p>\n<p>\u00a0\u00a0\u00a0\u00a0\u00a0 r_dboValue := r_dboValue + &#8222;[&#8221; + element + &#8222;] &#8222;;<\/p>\n<p>\u00a0 setNLSContentLanguage(oldContentLanguage);<\/p>\n<p>\u00a0 setNLSDisplayLanguage(oldDisplayLanguage);<\/p>\n<p>\u00a0 result.DBO_VALUE := r_dboValue;<\/p>\n<p>}<\/div><\/section>\n<h6 id=\"dbolistvaluesetname\" ><span class=\"ez-toc-section\" id=\"dboListValueSetName\"><\/span><strong>dboListValueSetName<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h6>\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>dboListValueSetName<\/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>dboValueSetName <\/em>zwraca list\u0119 warto\u015bci ze sta\u0142ymi nazwami wyboru kolejnego pola typu <em>Selection field<\/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>String[] dboListValueSetName(String schemaName, CisObject object, String attributeName)<\/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>schemaName<\/em> identyfikuje drugie pole. Nazwa schematu zaczyna si\u0119 od <em>EXT<\/em>, po kt\u00f3rym nast\u0119puje nazwa obiektu biznesowego bez jego przestrzeni nazw. Je\u015bli obiekt biznesowy znajduje si\u0119 w przestrzeni nazw innej ni\u017c <em>com.cisag<\/em>, druga cz\u0119\u015b\u0107 przestrzeni nazw jest wstawiana wielkimi literami mi\u0119dzy <em>EXT<\/em> a nazw\u0105 obiektu biznesowego. Przyk\u0142ady nazw schemat\u00f3w to<\/p>\n<p><em>EXTItem<\/em> dla obiektu biznesowego <em>com.cisag.app.general.obj.Item<\/em><\/p>\n<p><em>EXTPurchaseItem<\/em> dla obiektu biznesowego <em>com.cisag.app.purchasing.obj.PurchaseItem<\/em><\/p>\n<p><em>EXTSEMObjectAccount<\/em> dla obiektu biznesowego <em>com.sem.ext.app.fin.financialaccounting.obj.ObjectAccount<\/em><\/p>\n<p><em>object<\/em> to instancja obiektu biznesowego.<\/p>\n<p><em>attributeName<\/em> to nazwa dodatkowego pola.<\/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 sta\u0142e warto\u015bci listy warto\u015bci innego pola typu <em>Selection field<\/em> jako list\u0119 ci\u0105g\u00f3w znak\u00f3w.<\/p>\n<p>Je\u015bli do pola dodatkowego nie zostanie przypisana \u017cadna warto\u015b\u0107, zwracana jest warto\u015b\u0107 domy\u015blna pola dodatkowego. Je\u015bli pole dodatkowe nie ma warto\u015bci domy\u015blnej, jako warto\u015b\u0107 domy\u015blna typu danych <em>String<\/em> zwracana jest lista z pojedynczym elementem listy i pustym 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>\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 schemat nie istnieje pod okre\u015blon\u0105 nazw\u0105 lub u\u017cywa typu pola, kt\u00f3ry nie pasuje do funkcji, 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>dboListValueSetName(&#8222;EXTPartner&#8221;, loadPartner(&#8222;10010&#8221;), &#8222;PREFERENCES&#8221;)<\/em> zwraca sta\u0142e warto\u015bci listy warto\u015bci pola dodatkowego dla partnera.<\/p>\n<p><em>dboListValueSetName(&#8222;EXTPartner&#8221;, loadPartner(&#8222;10010&#8221;), &#8222;SIZE&#8221;)[0] &gt; &#8222;&#8221;<\/em> sprawdza, czy warto\u015b\u0107 jest przypisana do pola dodatkowego.<\/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>OLTP<\/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>dboValueSet<\/em><em>, <\/em><em>dboValueSetDescription<\/em><em>, <\/em><em>dboValueSetName<\/em><em>, <\/em><em>dboListValueSet<\/em><em>, <\/em><em>dboListValueSetDescription<\/em><em>, <\/em><em>setDboValueSet<\/em><em>, <\/em><em>setDboValueSetName<\/em><em>, <\/em><em>setDboListValueSet<\/em><em>, <\/em><em>setDboListValueSetName<\/em><em>, <\/em><em>validateDboValueSet<\/em><em>, <\/em><em>validateDboValueSetName<\/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.dboListValueSetName<\/em> zwraca wszystkie sta\u0142e warto\u015bci innego pola typu <em>Selection field<\/em> jako ci\u0105g znak\u00f3w.<\/p>\n<p>function create()<\/p>\n<p>{<\/p>\n<p>\u00a0 var p_name := parameters.NAME;<\/p>\n<p>\u00a0 var p_partner := loadPartner(parameters.PARTNER);<\/p>\n<p>\u00a0 var r_dboValue := &#8222;&#8221;;<\/p>\n<p>\u00a0 var r_dboValue := dboListValueSetName(&#8222;EXTPartner&#8221;, p_partner, p_name);<\/p>\n<p>\u00a0 for (element : dboValueList)<\/p>\n<p>\u00a0\u00a0\u00a0\u00a0\u00a0 r_dboValue := r_dboValue + &#8222;[&#8221; + element + &#8222;] &#8222;;<\/p>\n<p>\u00a0 result.IS_ASSIGNED := dboValueList[0] &lt;&gt; &#8222;&#8221;;<\/p>\n<p>\u00a0 result.DBO_VALUE := r_dboValue;<\/p>\n<p>}<\/div><\/section>\n<h5 id=\"funkcja-resetowania\" ><span class=\"ez-toc-section\" id=\"Funkcja_resetowania\"><\/span>Funkcja resetowania<span class=\"ez-toc-section-end\"><\/span><\/h5>\n<h6 id=\"resetdbo\" ><span class=\"ez-toc-section\" id=\"resetDbo\"><\/span><strong>resetDbo<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h6>\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>resetDbo<\/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>resetDbo <\/em>resetuje warto\u015b\u0107 innego pola do warto\u015bci domy\u015blnej lub oryginalnej.<\/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>resetDbo (String schemaName, CisObject object, String attributeName)<\/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>schemaName<\/em> identyfikuje drugie pole. Nazwa schematu zaczyna si\u0119 od <em>EXT<\/em>, po kt\u00f3rym nast\u0119puje nazwa obiektu biznesowego bez jego przestrzeni nazw. Je\u015bli obiekt biznesowy znajduje si\u0119 w przestrzeni nazw innej ni\u017c <em>com.cisag<\/em>, druga cz\u0119\u015b\u0107 przestrzeni nazw jest wstawiana wielkimi literami mi\u0119dzy <em>EXT <\/em>a nazw\u0105 obiektu biznesowego. Przyk\u0142adami nazw schemat\u00f3w s\u0105<\/p>\n<p><em>EXTItem<\/em> dla obiektu biznesowego <em>com.cisag.app.general.obj.Item<\/em><\/p>\n<p><em>EXTPurchaseItem<\/em> dla obiektu biznesowego <em>com.cisag.app.purchasing.obj.PurchaseItem<\/em><\/p>\n<p><em>EXTSEMObjectAccount<\/em> dla obiektu biznesowego <em>com.sem.ext.app.fin.financialaccounting.obj.ObjectAccount<\/em><\/p>\n<p><em>object<\/em> to instancja obiektu biznesowego.<\/p>\n<p><em>attributeName<\/em> to nazwa dodatkowego pola.<\/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>Polecenie resetuje pole dodatkowe do warto\u015bci domy\u015blnej. Je\u015bli pole dodatkowe nie ma warto\u015bci domy\u015blnej, pole dodatkowe jest resetowane do tej samej warto\u015bci, kt\u00f3r\u0105 zwracaj\u0105 funkcje <em>getter<\/em>, je\u015bli ani warto\u015b\u0107 domy\u015blna, ani warto\u015b\u0107 nie s\u0105 przypisane. W wi\u0119kszo\u015bci przypadk\u00f3w odpowiada to warto\u015bci domy\u015blnej u\u017cywanego 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>\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 schemat nie istnieje pod okre\u015blon\u0105 nazw\u0105 lub u\u017cywa typu pola, kt\u00f3ry nie pasuje do funkcji, polecenie nie mo\u017ce zosta\u0107 wykonane.<\/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>resetDbo (&#8222;EXTPartner&#8221;, loadPartner(&#8222;70010&#8221;), &#8222;BALANCE&#8221;)<\/em> usuwa warto\u015b\u0107 z drugiego pola.<\/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>OLTP<\/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>Polecenie <em>resetDbo<\/em> usuwa warto\u015b\u0107 z pola dodatkowego. W przypadku niekt\u00f3rych typ\u00f3w p\u00f3l mo\u017cna osi\u0105gn\u0105\u0107 ten sam rezultat, przypisuj\u0105c warto\u015b\u0107 domy\u015bln\u0105 lub standardow\u0105 warto\u015b\u0107 typu danych do pola dodatkowego.<\/p>\n<p>Funkcja nie wywo\u0142uje \u017cadnych indywidualnych kontroli dla dodatkowego pola. Dlatego nale\u017cy wprowadzi\u0107 wszystkie niezb\u0119dne kontrole w deklaracjach definicji dzia\u0142a\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\">\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.resetDbo<\/em> usuwa warto\u015b\u0107 z innego pola typu <em>Timestamp<\/em> partnera.<\/p>\n<p>function create()<\/p>\n<p>{<\/p>\n<p>\u00a0 var p_name := parameters.NAME;<\/p>\n<p>\u00a0 var p_partner := loadPartner(parameters.PARTNER);<\/p>\n<p>\u00a0 resetDbo (&#8222;EXTPartner&#8221;, p_partner, p_name);<\/p>\n<p>}<\/div><\/section>\n<h5 id=\"funkcje-ustawiajace\" ><span class=\"ez-toc-section\" id=\"Funkcje_ustawiajace\"><\/span>Funkcje ustawiaj\u0105ce<span class=\"ez-toc-section-end\"><\/span><\/h5>\n<h6 id=\"setdbocisdate\" ><span class=\"ez-toc-section\" id=\"setDboCisDate\"><\/span><strong>setDboCisDate<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h6>\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>setDboCisDate<\/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>setDboCisDate<\/em> przypisuje warto\u015b\u0107 do innego pola typu <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>Podpisy<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Boolean setDboCisDate(String schemaName, CisObject object, String attributeName, CisDate date)<\/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>schemaName<\/em> identyfikuje drugie pole. Nazwa schematu zaczyna si\u0119 od <em>EXT<\/em>, po kt\u00f3rym nast\u0119puje nazwa obiektu biznesowego bez jego przestrzeni nazw. Je\u015bli obiekt biznesowy znajduje si\u0119 w przestrzeni nazw innej ni\u017c <em>com.cisag<\/em>, druga cz\u0119\u015b\u0107 przestrzeni nazw jest wstawiana wielkimi literami mi\u0119dzy <em>EXT<\/em> a nazw\u0105 obiektu biznesowego. Przyk\u0142ady nazw schemat\u00f3w to<\/p>\n<p><em>EXTItem<\/em> dla obiektu biznesowego <em>com.cisag.app.general.obj.Item<\/em><\/p>\n<p><em>EXTPurchaseItem<\/em> dla obiektu biznesowego <em>com.cisag.app.purchasing.obj.PurchaseItem<\/em><\/p>\n<p><em>EXTSEMObjectAccount<\/em> dla obiektu biznesowego <em>com.sem.ext.app.fin.financialaccounting.obj.ObjectAccount<\/em><\/p>\n<p><em>object<\/em> to instancja obiektu biznesowego.<\/p>\n<p><em>attributeName<\/em> to nazwa dodatkowego pola.<\/p>\n<p><em>date<\/em> to warto\u015b\u0107, kt\u00f3ra ma zosta\u0107 przypisana do dodatkowego pola.<\/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 przypisuje dat\u0119 <em>date<\/em> do pola dodatkowego.<\/p>\n<p>Je\u015bli przypisanie powiod\u0142o si\u0119, funkcja zwraca warto\u015b\u0107 <em>true<\/em>. Je\u015bli ograniczenia s\u0105 zdefiniowane dla innego pola i <em>date<\/em> nie jest dozwolone, funkcja 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>\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 schemat nie istnieje pod okre\u015blon\u0105 nazw\u0105 lub u\u017cywa typu pola, kt\u00f3ry nie pasuje do funkcji, 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>setDboCisDate(&#8222;EXTItem&#8221;, loadItem(&#8222;10010&#8221;), &#8222;LAST_DATE&#8221;, today())<\/em> przypisuje dzisiejsz\u0105 dat\u0119 do drugiego pola.<\/p>\n<p><em>setDboCisDate(&#8222;EXTItem&#8221;, loadItem(&#8222;10010&#8221;), &#8222;NEXT_DATE&#8221;, addDays(cast(CisDate, first(dboCisDate(&#8222;EXTItem&#8221;, loadItem(&#8222;10010&#8221;), &#8222;NEXT_DATE&#8221;), today()), 90))<\/em> zwi\u0119ksza dat\u0119 w drugim polu o 90 dni. Je\u015bli dodatkowe pole nie ma prawid\u0142owej warto\u015bci, przyjmowana jest dzisiejsza data.<\/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>OLTP<\/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>setDboCisDate(&#8222;EXTItem&#8221;, loadItem(&#8222;10010&#8221;), &#8222;MY_FIELD&#8221;, new(CisDate))<\/em> pr\u00f3buje przypisa\u0107 warto\u015b\u0107 domy\u015bln\u0105 <em>null<\/em> typu danych <em>CisDate<\/em> do dodatkowego pola. Nale\u017cy por\u00f3wna\u0107 to z funkcj\u0105 <em>resetDbo<\/em>, kt\u00f3ra resetuje pole dodatkowe do jego warto\u015bci domy\u015blnej lub oryginalnej.<\/p>\n<p>Funkcja nie wywo\u0142uje \u017cadnych indywidualnych kontroli dla dodatkowego pola. Dlatego nale\u017cy wprowadzi\u0107 wszystkie niezb\u0119dne kontrole w deklaracjach definicji dzia\u0142a\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>dboCisDate<\/em><em>, <\/em><em>dboListCisDate<\/em><em>, <\/em><em>setDboListCisDate<\/em><em>, <\/em><em>validateDboCisDate<\/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.setDboCisDate<\/em> zwi\u0119ksza dat\u0119 innego pola partnera o okre\u015blon\u0105 liczb\u0119 dni.<\/p>\n<p>function create()<\/p>\n<p>{<\/p>\n<p>\u00a0 var p_name := parameters.NAME;<\/p>\n<p>\u00a0 var p_partner := loadPartner(parameters.PARTNER);<\/p>\n<p>\u00a0 var p_offset := parameters.OFFSET;<\/p>\n<p>\u00a0 var dboSuccess := false;<\/p>\n<p>\u00a0 var oldDboValue := cast(CisDate, first(dboCisDate(&#8222;EXTPartner&#8221;, p_partner, p_name), today()));<\/p>\n<p>\u00a0 var newDboValue := addDays(oldDboValue, p_offset);<\/p>\n<p>\u00a0 var dboSuccess := setDboCisDate(&#8222;EXTPartner&#8221;, p_partner, p_name, newDboValue);<\/p>\n<p>\u00a0 result.IS_NULL := isNull(dboSuccess);<\/p>\n<p>\u00a0 result.IS_SUCCESS := cast(Boolean, first(dboSuccess, false));<\/p>\n<p>}<\/div><\/section>\n<h6 id=\"setdbocisobject\" ><span class=\"ez-toc-section\" id=\"setDboCisObject\"><\/span><strong>setDboCisObject<\/strong><strong>\u00a0<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h6>\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>setDboCisObject<\/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>setDboCisObject<\/em> przypisuje warto\u015b\u0107 do innego pola typu <em>Business Entity<\/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>Boolean setDboCisObject(String schemaName, CisObject object, String attributeName, CisObjectReference objectReference)<\/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>schemaName<\/em> identyfikuje drugie pole. Nazwa schematu zaczyna si\u0119 od <em>EXT<\/em>, po kt\u00f3rym nast\u0119puje nazwa obiektu biznesowego bez jego przestrzeni nazw. Je\u015bli obiekt biznesowy znajduje si\u0119 w przestrzeni nazw innej ni\u017c <em>com.cisag<\/em>, druga cz\u0119\u015b\u0107 przestrzeni nazw jest wstawiana wielkimi literami mi\u0119dzy <em>EXT<\/em> a nazw\u0105 obiektu biznesowego. Przyk\u0142adami nazw schemat\u00f3w s\u0105<\/p>\n<p><em>EXTItem<\/em> dla obiektu biznesowego <em>com.cisag.app.general.obj.Item<\/em><\/p>\n<p><em>EXTPurchaseItem<\/em> dla obiektu biznesowego <em>com.cisag.app.purchasing.obj.PurchaseItem<\/em><\/p>\n<p><em>EXTSEMObjectAccount<\/em> dla obiektu biznesowego <em>com.sem.ext.app.fin.financialaccounting.obj.ObjectAccount<\/em><\/p>\n<p><em>object<\/em> to instancja obiektu biznesowego.<\/p>\n<p><em>attributeName<\/em> to nazwa dodatkowego pola.<\/p>\n<p><em>objectReference <\/em>to obiekt <em>CisObject<\/em>, kt\u00f3ry ma zosta\u0107 przypisany do dodatkowego pola.<\/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 przypisuje <em>CisObjectReference objectReference<\/em> do dodatkowego pola.<\/p>\n<p>Je\u015bli przypisanie powiod\u0142o si\u0119, funkcja zwraca warto\u015b\u0107 <em>true<\/em>. Je\u015bli ograniczenia s\u0105 zdefiniowane dla innego pola i <em>objectReference<\/em> nie jest dozwolone, funkcja 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>\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 schemat nie istnieje pod okre\u015blon\u0105 nazw\u0105 lub u\u017cywa typu pola, kt\u00f3ry nie pasuje do funkcji, 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>setDboCisObject(&#8222;EXTItem&#8221;, parameters.object, &#8222;SUBMITTER&#8221;, getByPrimaryKey(CisObject( com.cisag.app.general.obj.UserAssignment), parameters.userGuid)-&gt;Partner)<\/em> przypisuje do pola dodatkowego partnera, kt\u00f3rego u\u017cytkownik wywo\u0142a\u0142 zdarzenie typu <em>Business Entity<\/em> lub <em>User Action<\/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>OLTP<\/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>setDboCisObject(&#8222;EXTItem&#8221;, loadItem(&#8222;10010&#8221;), &#8222;MY_FIELD&#8221;, new(CisObject))<\/em> pr\u00f3buje przypisa\u0107 warto\u015b\u0107 domy\u015bln\u0105 <em>null<\/em> typu danych <em>CisObject<\/em> do dodatkowego pola. Por\u00f3wnaj to z funkcj\u0105 <em>resetDbo<\/em>, kt\u00f3ra resetuje pole dodatkowe do jego warto\u015bci domy\u015blnej lub oryginalnej.<\/p>\n<p>Funkcja nie wywo\u0142uje \u017cadnych indywidualnych kontroli dla dodatkowego pola. Dlatego nale\u017cy wprowadzi\u0107 wszystkie niezb\u0119dne kontrole w deklaracjach 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>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>dboCisObject<\/em><em>, <\/em><em>dboListCisObject<\/em><em>, <\/em><em>setDboListCisObject<\/em><em>, <\/em><em>validateDboCisObject<\/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.setDboCisObject<\/em> przypisuje partnera okre\u015blonego u\u017cytkownika do innego pola artyku\u0142u.<\/p>\n<p>function create()<\/p>\n<p>{<\/p>\n<p>\u00a0 var p_name := parameters.NAME;<\/p>\n<p>\u00a0 var p_item := loadItem(parameters.ITEM);<\/p>\n<p>\u00a0 var p_user := parameters.USER;<\/p>\n<p>\u00a0 var dboSuccess := false;<\/p>\n<p>\u00a0 dboSuccess := setDboCisObject(&#8222;EXTItem&#8221;, item, p_name, loadPartnerOfUser(userGuid(p_user)));<\/p>\n<p>\u00a0 result.IS_NULL := isNull(dboSuccess);<\/p>\n<p>\u00a0 result.IS_SUCCESS := cast(Boolean, first(dboSuccess, false));<\/p>\n<p>}<\/p>\n<p>function loadPartnerOfUser(user as Guid) as CisObject(com.cisag.app.general.obj.Partner)<\/p>\n<p>{<\/p>\n<p>\u00a0 powr\u00f3t<\/p>\n<p>\u00a0\u00a0\u00a0 getByPrimaryKey(<\/p>\n<p>\u00a0\u00a0\u00a0\u00a0\u00a0 CisObject(com.cisag.app.general.obj.UserAssignment),<\/p>\n<p>\u00a0\u00a0\u00a0\u00a0\u00a0 u\u017cytkownik)-&gt;Partner;<\/p>\n<p>}<\/div><\/section>\n<h6 id=\"setdbodomesticamount\" ><span class=\"ez-toc-section\" id=\"setDboDomesticAmount\"><\/span><strong>setDboDomesticAmount<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h6>\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>setDboDomesticAmount<\/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>setDboDomesticAmount<\/em> przypisuje warto\u015b\u0107 do innego pola typu <em>Kwota w walucie wewn\u0119trznej<\/em> lub <em>Cena w walucie wewn\u0119trznej<\/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>Boolean setDboDomesticAmount(String schemaName, CisObject object, String attributeName, Number domesticAmount)<\/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>schemaName <\/em>identyfikuje drugie pole. Nazwa schematu zaczyna si\u0119 od <em>EXT<\/em>, po kt\u00f3rym nast\u0119puje nazwa obiektu biznesowego bez jego przestrzeni nazw. Je\u015bli obiekt biznesowy znajduje si\u0119 w przestrzeni nazw innej ni\u017c <em>com.cisag<\/em>, druga cz\u0119\u015b\u0107 przestrzeni nazw jest wstawiana wielkimi literami mi\u0119dzy <em>EXT<\/em> a nazw\u0105 obiektu biznesowego. Przyk\u0142adami nazw schemat\u00f3w s\u0105<\/p>\n<p><em>EXTItem <\/em>dla obiektu biznesowego <em>com.cisag.app.general.obj.Item<\/em><\/p>\n<p><em>EXTPurchaseItem<\/em> dla obiektu biznesowego <em>com.cisag.app.purchasing.obj.PurchaseItem<\/em><\/p>\n<p><em>EXTSEMObjectAccount<\/em> dla obiektu biznesowego <em>com.sem.ext.app.fin.financialaccounting.obj.ObjectAccount<\/em><\/p>\n<p><em>object <\/em>to instancja obiektu biznesowego.<\/p>\n<p><em>attributeName <\/em>to nazwa dodatkowego pola.<\/p>\n<p><em>domesticAmount<\/em> to kwota lub cena w walucie g\u0142\u00f3wnej organizacji, dla kt\u00f3rej wprowadzono dodatkowe pole.<\/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 przypisuje kwot\u0119 lub cen\u0119 <em>domesticAmount <\/em>do pola dodatkowego w walucie wiod\u0105cej organizacji, dla kt\u00f3rej wprowadzono pole dodatkowe. Je\u015bli w ramach dostosowywania zdefiniowano inne waluty wewn\u0119trzne, kwota jest przeliczana z waluty wiod\u0105cej na inne waluty wewn\u0119trzne po bie\u017c\u0105cym kursie wymiany.<\/p>\n<p>Je\u015bli przypisanie powiod\u0142o si\u0119, funkcja zwraca warto\u015b\u0107 <em>true<\/em>. Je\u015bli dla innego pola zdefiniowano ograniczenia, a kwota lub cena w walucie wewn\u0119trznej jest niedozwolona, funkcja zwraca warto\u015b\u0107 <em>false<\/em>.<\/p>\n<p>Je\u015bli przypisanie powiod\u0142o si\u0119, funkcja aktualizuje r\u00f3wnie\u017c dat\u0119 konwersji walut.<\/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 schemat nie istnieje pod okre\u015blon\u0105 nazw\u0105 lub u\u017cywa typu pola, kt\u00f3ry nie pasuje do funkcji, 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>setDboDomesticAmount(&#8222;EXTPartner&#8221;, loadPartner(&#8222;20010&#8221;), &#8222;CREDIT_LIMIT&#8221;, 10000)<\/em> przypisuje kwot\u0119 lub cen\u0119 10000 w walucie wewn\u0119trznej do dodatkowego pola dla partnera.<\/p>\n<p><em>setDboDomesticAmount(&#8222;EXTPartner&#8221;, loadPartner(&#8222;20010&#8221;), &#8222;CREDIT_LIMIT&#8221;, dboDomesticAmount(&#8222;EXTPartner&#8221;, loadPartner(&#8222;20010&#8221;), &#8222;CREDIT_LIMIT&#8221;) + 1000)<\/em> zwi\u0119ksza kwot\u0119 lub cen\u0119 w walucie wewn\u0119trznej o 1000.<\/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>OLTP<\/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>setDboDomesticAmount(&#8222;EXTItem&#8221;, loadItem(&#8222;10010&#8221;), &#8222;MY_FIELD&#8221;, new(Number))<\/em> pr\u00f3buje przypisa\u0107 domy\u015bln\u0105 warto\u015b\u0107 0 typu danych<em> Number<\/em> do dodatkowego pola. Nale\u017cy por\u00f3wna\u0107 to z funkcj\u0105 <em>resetDbo<\/em><em>,<\/em> kt\u00f3ra resetuje pole dodatkowe do jego warto\u015bci domy\u015blnej lub pierwotnej.<\/p>\n<p>Funkcja nie wywo\u0142uje \u017cadnych indywidualnych kontroli dla dodatkowego pola. Dlatego nale\u017cy wprowadzi\u0107 wszystkie niezb\u0119dne kontrole w deklaracjach definicji dzia\u0142a\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>dboDomesticAmount<\/em><em>, <\/em><em>dboListDomesticAmount<\/em><em>, <\/em><em>setDboListDomesticAmount<\/em><em>, <\/em><em>validateDboDomesticAmount<\/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.setDboDomesticAmount<\/em> przypisuje dalszemu polu typu <em>Kwota w walucie wewn\u0119trznej<\/em> lub <em>Cena w walucie wewn\u0119trznej<\/em> kwot\u0119 w walucie wewn\u0119trznej w walucie wiodacej organizacji, dla kt\u00f3rej wprowadzono dalsze pole.<\/p>\n<p>function create()<\/p>\n<p>{<\/p>\n<p>\u00a0 var p_name := parameters.NAME;<\/p>\n<p>\u00a0 var p_partner := loadPartner(parameters.PARTNER);<\/p>\n<p>\u00a0 var p_amount := parameters.AMOUNT;<\/p>\n<p>\u00a0 var dboSuccess := false;<\/p>\n<p>\u00a0 dboSuccess := setDboDomesticAmount(&#8222;EXTPartner&#8221;, p_partner, p_name, p_amount);<\/p>\n<p>\u00a0 result.IS_NULL := isNull(dboSuccess);<\/p>\n<p>\u00a0 result.IS_SUCCESS := cast(Boolean, first(dboSuccess, false));<\/p>\n<p>}<\/div><\/section>\n<h6 id=\"setdboforeignamount\" ><span class=\"ez-toc-section\" id=\"setDboForeignAmount\"><\/span><strong>setDboForeignAmount<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h6>\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=\"414\">\n<p>setDboForeignAmount<\/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=\"414\">\n<p><em>setDboForeignAmount <\/em>przypisuje warto\u015b\u0107 do innego pola typu <em>Amount<\/em> lub <em>Price<\/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=\"414\">\n<p>Boolean setDboForeignAmount(String schemaName, CisObject object, String attributeName, CisObject(com.cisag.app.general.obj.ForeignAmount) foreignAmount)<\/p>\n<p>Boolean setDboForeignAmount(String schemaName, CisObject object, String attributeName, Number amount, Guid currency)<\/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=\"414\">\n<p><em>schemaName <\/em>identyfikuje drugie pole. Nazwa schematu zaczyna si\u0119 od <em>EXT<\/em>, po kt\u00f3rym nast\u0119puje nazwa obiektu biznesowego bez jego przestrzeni nazw. Je\u015bli obiekt biznesowy znajduje si\u0119 w przestrzeni nazw innej ni\u017c <em>com.cisag<\/em>, druga cz\u0119\u015b\u0107 przestrzeni nazw jest wstawiana wielkimi literami mi\u0119dzy <em>EXT<\/em> a nazw\u0105 obiektu biznesowego. Przyk\u0142adami nazw schemat\u00f3w s\u0105<\/p>\n<p><em>EXTItem<\/em> dla obiektu biznesowego <em>com.cisag.app.general.obj.Item<\/em><\/p>\n<p><em>EXTPurchaseItem<\/em> dla obiektu biznesowego <em>com.cisag.app.purchasing.obj.PurchaseItem<\/em><\/p>\n<p><em>EXTSEMObjectAccount<\/em> dla obiektu biznesowego <em>com.sem.ext.app.fin.financialaccounting.obj.ObjectAccount<\/em><\/p>\n<p><em>object <\/em>to instancja obiektu biznesowego.<\/p>\n<p><em>attributeName<\/em> to nazwa dodatkowego pola.<\/p>\n<p><em>amount<\/em> to kwota lub cena w walucie obcej, kt\u00f3ra ma zosta\u0107 przypisana do pola dodatkowego.<\/p>\n<p><em>currency<\/em> to identyfikator waluty obcej.<\/p>\n<p><em>foreignAmount<\/em> to cz\u0119\u015b\u0107, kt\u00f3ra ma zosta\u0107 przypisana.<\/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=\"414\">\n<p>Funkcja przypisuje kwot\u0119 lub cen\u0119 w walucie obcej do pola dodatkowego.<\/p>\n<p>Je\u015bli przypisanie powiod\u0142o si\u0119, funkcja zwraca warto\u015b\u0107 <em>true<\/em>. Je\u015bli dla innego pola zdefiniowano ograniczenia, a kwota lub cena w walucie obcej jest niedozwolona, funkcja zwraca warto\u015b\u0107 <em>false<\/em>.<\/p>\n<p>Je\u015bli przypisanie powiod\u0142o si\u0119, funkcja aktualizuje r\u00f3wnie\u017c dat\u0119 konwersji walut.<\/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=\"414\">\n<p>Je\u015bli schemat nie istnieje pod okre\u015blon\u0105 nazw\u0105 lub u\u017cywa typu pola, kt\u00f3ry nie pasuje do funkcji, zwracana jest warto\u015b\u0107 <em>null<\/em>. Nawet je\u015bli <em>currency<\/em> nie jest ani <em>null<\/em>, ani prawid\u0142ow\u0105 walut\u0105, 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=\"414\">\n<p><em>setDboForeignAmount(&#8222;EXTPartner&#8221;, loadPartner(&#8222;20010&#8221;), &#8222;CREDIT_LIMIT&#8221;, 10000, loadCurrency(&#8222;USD&#8221;):guid)<\/em> przypisuje kwot\u0119 lub cen\u0119 10000 USD do pola dodatkowego.<\/p>\n<p><em>setDboForeignAmount(&#8222;EXTPartner&#8221;, loadPartner(&#8222;20010&#8221;), &#8222;CREDIT_LIMIT&#8221;, dboForeignAmount(&#8222;EXTPartner&#8221;, loadPartner(&#8222;20010&#8221;), &#8222;CREDIT_LIMIT&#8221;):amount + 1000, dboForeignAmount(&#8222;EXTPartner&#8221;, loadPartner(&#8222;20010&#8221;), &#8222;CREDIT_LIMIT&#8221;):guid)<\/em> zwi\u0119ksza kwot\u0119 lub cen\u0119 o 1000.<\/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=\"414\">\n<p>OLTP<\/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=\"414\">\n<p><em>setDboForeignAmount(&#8222;EXTItem&#8221;, loadItem(&#8222;10010&#8221;), &#8222;MY_FIELD&#8221;, new(Number), new(Guid))<\/em> pr\u00f3buje przypisa\u0107 warto\u015b\u0107 domy\u015bln\u0105 0 typu danych <em>Number <\/em>i warto\u015b\u0107 domy\u015bln\u0105 <em>null<\/em> typu danych <em>Guid<\/em> do dodatkowego pola. Nale\u017cy por\u00f3wna\u0107 to z funkcj\u0105 <em>resetDbo<\/em>, kt\u00f3ra resetuje pole dodatkowe do jego warto\u015bci domy\u015blnej lub oryginalnej.<\/p>\n<p>Funkcja nie wywo\u0142uje \u017cadnych indywidualnych kontroli dla dodatkowego pola. Dlatego nale\u017cy wprowadzi\u0107 wszystkie niezb\u0119dne kontrole w deklaracjach definicji dzia\u0142a\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=\"414\">\n<p><em>dboForeignAmount<\/em><em>, <\/em><em>dboListForeignAmount<\/em><em>, <\/em><em>setDboListForeignAmount<\/em><em>, <\/em><em>validateDboForeignAmount<\/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.setDboForeignAmount<\/em> przypisuje kwot\u0119 lub cen\u0119 do innego pola typu <em>Amount<\/em> lub <em>Price<\/em>. Je\u015bli waluta nie jest okre\u015blona lub nie istnieje, u\u017cywana jest pierwsza waluta wewn\u0119trzna.<\/p>\n<p>function create()<\/p>\n<p>{<\/p>\n<p>\u00a0 var p_name := parameters.NAME;<\/p>\n<p>\u00a0 var p_partner := loadPartner(parameters.PARTNER);<\/p>\n<p>\u00a0 var p_amount := parameters.AMOUNT;<\/p>\n<p>\u00a0 var p_currency := parameters.CURRENCY;<\/p>\n<p>\u00a0 var dboSuccess := false;<\/p>\n<p>\u00a0 var currencyGuid := loadCurrency(p_currency):guid;<\/p>\n<p>\u00a0 if (isNull(currencyGuid))<\/p>\n<p>\u00a0\u00a0\u00a0 currencyGuid := getCurrency1();<\/p>\n<p>\u00a0 dboSuccess := setDboForeignAmount(&#8222;EXTPartner&#8221;, p_partner, p_name, p_amount, p_currency);<\/p>\n<p>\u00a0 result.IS_NULL := isNull(dboSuccess);<\/p>\n<p>\u00a0 result.IS_SUCCESS := cast(Boolean, first(dboSuccess, false));<\/p>\n<p>}<\/p>\n<p>function getCurrency1() as Guid<\/p>\n<p>{<\/p>\n<p>\u00a0 var currency1 as Guid;<\/p>\n<p>\u00a0 var company := loadOrganisation(getCustomizingValue(&#8222;com.cisag.app.General&#8221;):company);<\/p>\n<p>\u00a0 var baseFunction := getCustomisingValue(&#8222;com.cisag.app.general.Base&#8221;, company:guid);<\/p>\n<p>\u00a0 if (not isNull(baseFunction)) {<\/p>\n<p>\u00a0\u00a0\u00a0 var combination := getByPrimaryKey(CisObject(com.cisag.app.multiorg.obj.DomesticCurrencyCombination), baseFunction:combination);<\/p>\n<p>\u00a0\u00a0\u00a0 currency1 := combination:currency1;<\/p>\n<p>\u00a0 }<\/p>\n<p>\u00a0 return currency1;<\/p>\n<p>}<\/div><\/section>\n<h6 id=\"setdboguid\" ><span class=\"ez-toc-section\" id=\"setDboGuid\"><\/span><strong>setDboGuid<\/strong><strong>\u00a0<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h6>\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>setDboGuid<\/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>setDboGuid <\/em>przypisuje warto\u015b\u0107 do innego pola typu <em>Classification<\/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>Boolean setDboGuid(String schemaName, CisObject object, String attributeName, String path)<\/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>schemaName <\/em>identyfikuje drugie pole. Nazwa schematu zaczyna si\u0119 od <em>EXT<\/em>, po kt\u00f3rym nast\u0119puje nazwa obiektu biznesowego bez jego przestrzeni nazw. Je\u015bli obiekt biznesowy znajduje si\u0119 w przestrzeni nazw innej ni\u017c <em>com.cisag<\/em>, druga cz\u0119\u015b\u0107 przestrzeni nazw jest wstawiana wielkimi literami mi\u0119dzy <em>EXT<\/em> a nazw\u0105 obiektu biznesowego. Przyk\u0142adami nazw schemat\u00f3w s\u0105<\/p>\n<p><em>EXTItem<\/em> dla obiektu biznesowego <em>com.cisag.app.general.obj.Item<\/em><\/p>\n<p><em>EXTPurchaseItem<\/em> dla obiektu biznesowego <em>com.cisag.app.purchasing.obj.PurchaseItem<\/em><\/p>\n<p><em>EXTSEMObjectAccount<\/em> dla obiektu biznesowego <em>com.sem.ext.app.fin.financialaccounting.obj.ObjectAccount<\/em><\/p>\n<p><em>object<\/em> to instancja obiektu biznesowego.<\/p>\n<p><em>attributeName <\/em>to nazwa dodatkowego pola.<\/p>\n<p><em>path<\/em> to pe\u0142na \u015bcie\u017cka klasyfikacji, kt\u00f3ra ma zosta\u0107 przypisana do dodatkowego pola.<\/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 przypisuje klasyfikacj\u0119 ze \u015bcie\u017ck\u0105 <em>path<\/em> do dodatkowego pola.<\/p>\n<p>Je\u015bli przypisanie powiod\u0142o si\u0119, funkcja zwraca warto\u015b\u0107 <em>true<\/em>. Je\u015bli dla innego pola zdefiniowano ograniczenia, a \u015bcie\u017cka jest niedozwolona, funkcja 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>\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 schemat nie istnieje pod okre\u015blon\u0105 nazw\u0105 lub u\u017cywa typu pola, kt\u00f3ry nie pasuje do funkcji, 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>setDboGuid(&#8222;EXTItem&#8221;, loadItem(&#8222;10010&#8221;), &#8222;NACE&#8221;, &#8222;J-62-01&#8221;)<\/em> przypisuje klasyfikacj\u0119 o okre\u015blonej \u015bcie\u017cce do dodatkowego pola.<\/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>OLTP<\/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>setDboGuid(&#8222;EXTItem&#8221;, loadItem(&#8222;10010&#8221;), &#8222;MY_FIELD&#8221;, new(String))<\/em> pr\u00f3buje przypisa\u0107 pusty ci\u0105g znak\u00f3w do dodatkowego pola jako domy\u015bln\u0105 warto\u015b\u0107 typu danych <em>String<\/em>. Por\u00f3wnaj to z funkcj\u0105 <em>resetDbo<\/em>, kt\u00f3ra resetuje pole dodatkowe do jego domy\u015blnej lub oryginalnej warto\u015bci.<\/p>\n<p>Poniewa\u017c funkcja <em>setDboGuid<\/em> oczekuje ci\u0105gu znak\u00f3w, ale <em>dboGuid <\/em>zwraca identyfikator <em>Guid<\/em>, nie mo\u017cna przypisa\u0107 warto\u015bci innego pola do innego pola bez dodatkowego skryptu.<\/p>\n<p>Funkcja nie wywo\u0142uje \u017cadnych indywidualnych kontroli dla dodatkowego pola. Dlatego nale\u017cy wprowadzi\u0107 wszystkie niezb\u0119dne kontrole w deklaracjach definicji dzia\u0142a\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>dboGuid<\/em><em>, <\/em><em>dboListGuid<\/em><em>, <\/em><em>setDboListGuid<\/em><em>, <\/em><em>validateDboGuid<\/em><em>\u00a0 <\/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.setDboGuid<\/em> przypisuje \u015bcie\u017ck\u0119 do innego pola typu <em>Classification<\/em>.<\/p>\n<p>function create()<\/p>\n<p>{<\/p>\n<p>\u00a0 var p_name := parameters.NAME;<\/p>\n<p>\u00a0 var p_partner := loadPartner(parameters.PARTNER);<\/p>\n<p>\u00a0 var p_path := parameters.PATH;<\/p>\n<p>\u00a0 var dboSuccess := false;<\/p>\n<p>\u00a0 dboSuccess := setDboGuid(&#8222;EXTPartner&#8221;, p_partner, p_name, p_path);<\/p>\n<p>\u00a0 result.IS_NULL := isNull(dboSuccess);<\/p>\n<p>\u00a0 result.IS_SUCCESS := cast(Boolean, first(dboSuccess, false));<\/p>\n<p>}<\/div><\/section>\n<h6 id=\"setdbonumber\" ><span class=\"ez-toc-section\" id=\"setDboNumber\"><\/span><strong>setDboNumber<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h6>\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>setDboNumber<\/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>setDboNumber<\/em> przypisuje warto\u015b\u0107 do innego pola typu <em>Decimal<\/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>Boolean setDboNumber(String schemaName, CisObject object, String attributeName, Number decimal)<\/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>schemaName <\/em>identyfikuje drugie pole. Nazwa schematu zaczyna si\u0119 od <em>EXT<\/em>, po kt\u00f3rym nast\u0119puje nazwa obiektu biznesowego bez jego przestrzeni nazw. Je\u015bli obiekt biznesowy znajduje si\u0119 w przestrzeni nazw innej ni\u017c <em>com.cisag<\/em>, druga cz\u0119\u015b\u0107 przestrzeni nazw jest wstawiana wielkimi literami mi\u0119dzy <em>EXT<\/em> a nazw\u0105 obiektu biznesowego. Przyk\u0142adami nazw schemat\u00f3w s\u0105<\/p>\n<p><em>EXTItem<\/em> dla obiektu biznesowego <em>com.cisag.app.general.obj.Item<\/em><\/p>\n<p><em>EXTPurchaseItem<\/em> dla obiektu biznesowego <em>com.cisag.app.purchasing.obj.PurchaseItem<\/em><\/p>\n<p><em>EXTSEMObjectAccount<\/em> dla obiektu biznesowego <em>com.sem.ext.app.fin.financialaccounting.obj.ObjectAccount<\/em><\/p>\n<p><em>object<\/em> to instancja obiektu biznesowego.<\/p>\n<p><em>attributeName <\/em>to nazwa dodatkowego pola.<\/p>\n<p><em>decimal <\/em>to liczba, kt\u00f3ra ma zosta\u0107 przypisana do dodatkowego pola.<\/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 przypisuje liczb\u0119 <em>decimal<\/em> do dodatkowego pola. Je\u015bli przypisanie powiod\u0142o si\u0119, funkcja zwraca warto\u015b\u0107 <em>true<\/em>. Je\u015bli dla pola dodatkowego zdefiniowano ograniczenia, a liczba jest nieprawid\u0142owa, funkcja 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>\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 schemat nie istnieje pod okre\u015blon\u0105 nazw\u0105 lub u\u017cywa typu pola, kt\u00f3ry nie pasuje do funkcji, 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>setDboNumber(&#8222;EXTPartner&#8221;, loadPartner(&#8222;70010&#8221;), &#8222;YEAR_OF_BIRTH&#8221;, 2000)<\/em> przypisuje liczb\u0119 2000 do dodatkowego pola dla partnera.<\/p>\n<p><em>setDboNumber(&#8222;EXTPartner&#8221;, loadPartner(&#8222;10010&#8221;), &#8222;RETURNS&#8221;, dboNumber(&#8222;EXTPartner&#8221;, loadPartner(&#8222;70010&#8221;), &#8222;RETURNS&#8221;) + 1)<\/em> zwi\u0119ksza warto\u015b\u0107 drugiego pola o 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>OLTP<\/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>setDboNumber(&#8222;EXTItem&#8221;, loadItem(&#8222;10010&#8221;), &#8222;MY_FIELD&#8221;, new(Number))<\/em> pr\u00f3buje przypisa\u0107 domy\u015bln\u0105 warto\u015b\u0107 0 typu danych <em>Number<\/em> do dodatkowego pola. Por\u00f3wnaj to z funkcj\u0105 <em>resetDbo<\/em>, kt\u00f3ra resetuje pole dodatkowe do jego warto\u015bci domy\u015blnej lub pierwotnej.<\/p>\n<p>Funkcja nie wywo\u0142uje \u017cadnych indywidualnych kontroli dla dodatkowego pola. Dlatego nale\u017cy wprowadzi\u0107 wszystkie niezb\u0119dne kontrole w deklaracjach 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>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>dboNumber<\/em><em>, <\/em><em>dboListGuid<\/em><em>, <\/em><em>setDboListNumber<\/em><em>, <\/em><em>validateDboNumber<\/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.setDboNumber<\/em> przypisuje liczb\u0119 do dodatkowego pola typu <em>Decimal<\/em>.<\/p>\n<p>function create()<\/p>\n<p>{<\/p>\n<p>\u00a0 var p_name := parameters.NAME;<\/p>\n<p>\u00a0 var p_partner := loadPartner(parameters.PARTNER);<\/p>\n<p>\u00a0 var p_number := parameters.NUMBER;<\/p>\n<p>\u00a0 var dboSuccess := false;<\/p>\n<p>\u00a0 dboSuccess := setDboNumber(&#8222;EXTPartner&#8221;, p_partner, p_name, p_number);<\/p>\n<p>\u00a0 result.IS_NULL := isNull(dboSuccess);<\/p>\n<p>\u00a0 result.IS_SUCCESS := cast(Boolean, first(dboSuccess, false));<\/p>\n<p>}<\/div><\/section>\n<h6 id=\"setdboquantity\" ><span class=\"ez-toc-section\" id=\"setDboQuantity\"><\/span><strong>setDboQuantity<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h6>\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=\"414\">\n<p>setDboQuantity<\/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=\"414\">\n<p><em>setDboQuantity<\/em> przypisuje warto\u015b\u0107 do innego pola typu <em>Quantity<\/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=\"414\">\n<p>Boolean setDboQuantity(String schemaName, CisObject object, String attributeName, CisObject(com.cisag.app.general.obj.Quantity) quantity)<\/p>\n<p>Boolean setDboQuantity(String schemaName, CisObject object, String attributeName, Number amount, Guid uom)<\/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=\"414\">\n<p><em>schemaName<\/em> identyfikuje drugie pole. Nazwa schematu zaczyna si\u0119 od <em>EXT<\/em>, po kt\u00f3rym nast\u0119puje nazwa obiektu biznesowego bez jego przestrzeni nazw. Je\u015bli obiekt biznesowy znajduje si\u0119 w przestrzeni nazw innej ni\u017c <em>com.cisag<\/em>, druga cz\u0119\u015b\u0107 przestrzeni nazw jest wstawiana wielkimi literami mi\u0119dzy <em>EXT<\/em> a nazw\u0105 obiektu biznesowego. Przyk\u0142ady nazw schemat\u00f3w to<\/p>\n<p><em>EXTItem<\/em> dla obiektu biznesowego <em>com.cisag.app.general.obj.Item<\/em><\/p>\n<p><em>EXTPurchaseItem<\/em> dla obiektu biznesowego <em>com.cisag.app.purchasing.obj.PurchaseItem<\/em><\/p>\n<p><em>EXTSEMObjectAccount<\/em> dla obiektu biznesowego <em>com.sem.ext.app.fin.financialaccounting.obj.ObjectAccount<\/em><\/p>\n<p><em>object<\/em> to instancja obiektu biznesowego.<\/p>\n<p><em>attributeName<\/em> to nazwa dodatkowego pola.<\/p>\n<p><em>amount<\/em> to ilo\u015b\u0107, kt\u00f3ra ma zosta\u0107 przypisana do pola dodatkowego.<\/p>\n<p><em>uom<\/em> to identyfikator jednostki miary.<\/p>\n<p><em>quantity<\/em> to cz\u0119\u015b\u0107, kt\u00f3ra ma zosta\u0107 przypisana.<\/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=\"414\">\n<p>Funkcja przypisuje ilo\u015b\u0107 do pola dodatkowego.<\/p>\n<p>Je\u015bli przypisanie powiod\u0142o si\u0119, funkcja zwraca warto\u015b\u0107 <em>true<\/em>. Je\u015bli ograniczenia s\u0105 zdefiniowane dla innego pola, a ilo\u015b\u0107 jest nieprawid\u0142owa, funkcja 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>\u0179r\u00f3d\u0142a b\u0142\u0119d\u00f3w<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"414\">\n<p>Je\u015bli schemat nie istnieje pod okre\u015blon\u0105 nazw\u0105 lub u\u017cywa typu pola, kt\u00f3ry nie pasuje do funkcji, zwracana jest warto\u015b\u0107 <em>null<\/em>. Nawet je\u015bli <em>uom <\/em>nie jest ani <em>null<\/em>, ani prawid\u0142ow\u0105 jednostk\u0105 miary, 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=\"414\">\n<p><em>setDboQuantity(&#8222;EXTItem&#8221;, loadItem(&#8222;10010&#8221;), &#8222;MAX_LOAD&#8221;, 1000, loadUnit(&#8222;kg&#8221;):guid)<\/em> przypisuje ilo\u015b\u0107 1000 kg do pola dodatkowego.<\/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=\"414\">\n<p>OLTP<\/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=\"414\">\n<p><em>setDboQuantity(&#8222;EXTItem&#8221;, loadItem(&#8222;10010&#8221;), &#8222;MY_FIELD&#8221;, new(Number), <\/em><em>ZERO_GUID)<\/em> pr\u00f3buje przypisa\u0107 domy\u015bln\u0105 warto\u015b\u0107 0 typu danych <em>Number<\/em> i Guid <em>ZERO_GUID<\/em> do dodatkowego pola. Nalezy por\u00f3wna\u0107 to z funkcj\u0105 <em>resetDbo<\/em>, kt\u00f3ra resetuje pole dodatkowe do jego domy\u015blnej lub oryginalnej warto\u015bci.<\/p>\n<p>Funkcja nie wywo\u0142uje \u017cadnych indywidualnych kontroli dla dodatkowego pola. Dlatego nale\u017cy wprowadzi\u0107 wszystkie niezb\u0119dne kontrole w deklaracjach definicji dzia\u0142a\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=\"414\">\n<p><em>dboQuantity<\/em><em>, <\/em><em>dboListQuantity<\/em><em>, <\/em><em>setDboListQuantity<\/em><em>, <\/em><em>validateDboQuantity<\/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.setDboQuantity<\/em> przypisuje ilo\u015b\u0107 do innego pola typu <em>Quantity<\/em>. Je\u015bli jednostka miary nie jest okre\u015blona lub nie istnieje, u\u017cywana jest jednostka miary <em>kg<\/em>.<\/p>\n<p>function create()<\/p>\n<p>{<\/p>\n<p>\u00a0 var p_name := parameters.NAME;<\/p>\n<p>\u00a0 var p_partner := loadPartner(parameters.PARTNER);<\/p>\n<p>\u00a0 var p_amount := parameters.AMOUNT;<\/p>\n<p>\u00a0 var p_uom := parameters.UOM;<\/p>\n<p>\u00a0 var dboSuccess := false;<\/p>\n<p>\u00a0 var uomGuid := loadUom(p_uom):guid;<\/p>\n<p>\u00a0 if (isNull(uomGuid))<\/p>\n<p>\u00a0\u00a0\u00a0 uomGuid := loadUom(&#8222;kg&#8221;):guid;<\/p>\n<p>\u00a0 dboSuccess := setDboQuantity(&#8222;EXTPartner&#8221;, p_partner, p_name, p_amount, p_uom);<\/p>\n<p>\u00a0 result.IS_NULL := isNull(dboSuccess);<\/p>\n<p>\u00a0 result.IS_SUCCESS := cast(Boolean, first(dboSuccess, false));<\/p>\n<p>}<\/div><\/section>\n<h6 id=\"setdbostring\" ><span class=\"ez-toc-section\" id=\"setDboString\"><\/span><strong>setDboString<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h6>\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>setDboString<\/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>setDboString <\/em>przypisuje warto\u015b\u0107 do innego pola typu <em>Text<\/em>, <em>Email address<\/em> lub <em>Uniform Resource Locator (URL).<\/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>Boolean setDboString(String schemaName, CisObject object, String attributeName, String text)<\/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>schemaName<\/em> identyfikuje drugie pole. Nazwa schematu zaczyna si\u0119 od <em>EXT<\/em>, po kt\u00f3rym nast\u0119puje nazwa obiektu biznesowego bez jego przestrzeni nazw. Je\u015bli obiekt biznesowy znajduje si\u0119 w przestrzeni nazw innej ni\u017c <em>com.cisag<\/em>, druga cz\u0119\u015b\u0107 przestrzeni nazw jest wstawiana wielkimi literami mi\u0119dzy <em>EXT<\/em> a nazw\u0105 obiektu biznesowego. Przyk\u0142ady nazw schemat\u00f3w to<\/p>\n<p><em>EXTItem<\/em> dla obiektu biznesowego <em>com.cisag.app.general.obj.Item<\/em><\/p>\n<p><em>EXTPurchaseItem<\/em> dla obiektu biznesowego <em>com.cisag.app.purchasing.obj.PurchaseItem<\/em><\/p>\n<p><em>EXTSEMObjectAccount<\/em> dla obiektu biznesowego <em>com.sem.ext.app.fin.financialaccounting.obj.ObjectAccount<\/em><\/p>\n<p><em>object<\/em> to instancja obiektu biznesowego.<\/p>\n<p><em>attributeName<\/em> to nazwa dodatkowego pola.<\/p>\n<p><em>text<\/em> to ci\u0105g znak\u00f3w, kt\u00f3ry ma zosta\u0107 przypisany do dodatkowego pola.<\/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 przypisuje ci\u0105g znak\u00f3w do pola dodatkowego. Je\u015bli przypisanie powiod\u0142o si\u0119, funkcja zwraca warto\u015b\u0107 <em>true<\/em>. Je\u015bli dla pola dodatkowego zdefiniowano ograniczenia, a ci\u0105g znak\u00f3w jest nieprawid\u0142owy, funkcja 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>\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 schemat nie istnieje pod okre\u015blon\u0105 nazw\u0105 lub u\u017cywa typu pola, kt\u00f3ry nie pasuje do funkcji, 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>setDboDomesticAmount(&#8222;EXTPartner&#8221;, loadPartner(&#8222;20010&#8221;), &#8222;CREDIT_LIMIT&#8221;, 10000)<\/em> przypisuje kwot\u0119 lub cen\u0119 10000 w walucie wewn\u0119trznej do dodatkowego pola dla partnera.<\/p>\n<p><em>setDboDomesticAmount(&#8222;EXTPartner&#8221;, loadPartner(&#8222;20010&#8221;), &#8222;CREDIT_LIMIT&#8221;, dboDomesticAmount(&#8222;EXTPartner&#8221;, loadPartner(&#8222;20010&#8221;), &#8222;CREDIT_LIMIT&#8221;) + 1000)<\/em> zwi\u0119ksza kwot\u0119 lub cen\u0119 w walucie wewn\u0119trznej o 1000.<\/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>OLTP<\/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>setDboString(&#8222;EXTItem&#8221;, loadItem(&#8222;10010&#8221;), &#8222;MY_FIELD&#8221;, new(String))<\/em> pr\u00f3buje przypisa\u0107 pusty ci\u0105g znak\u00f3w do dodatkowego pola. Nalezy por\u00f3wna\u0107 to z funkcj\u0105 <em>resetDbo<\/em>, kt\u00f3ra resetuje pole dodatkowe do jego domy\u015blnej lub oryginalnej warto\u015bci.<\/p>\n<p>Funkcja nie wywo\u0142uje \u017cadnych indywidualnych kontroli dla dodatkowego pola. Dlatego nale\u017cy wprowadzi\u0107 wszystkie niezb\u0119dne kontrole w deklaracjach 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>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>dboString<\/em><em>, <\/em><em>dboListString<\/em><em>, <\/em><em>setDboListString<\/em><em>, <\/em><em>validateDboString<\/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.setDboString<\/em> przypisuje ci\u0105g znak\u00f3w do innego pola typu <em>Text, E-mail address<\/em> lub<em> Uniform Resource Locator (URL).<\/em><\/p>\n<p>function create()<\/p>\n<p>{<\/p>\n<p>\u00a0 var p_name := parameters.NAME;<\/p>\n<p>\u00a0 var p_partner := loadPartner(parameters.PARTNER);<\/p>\n<p>\u00a0 var p_text := parameters.TEXT;<\/p>\n<p>\u00a0 var dboSuccess := false;<\/p>\n<p>\u00a0 dboSuccess := setDboString(&#8222;EXTPartner&#8221;, p_partner, p_name, p_text);<\/p>\n<p>\u00a0 result.IS_NULL := isNull(dboSuccess);<\/p>\n<p>\u00a0 result.IS_SUCCESS := cast(Boolean, first(dboSuccess, false));<\/p>\n<p>}<\/div><\/section>\n<h6 id=\"setdbotext\" ><span class=\"ez-toc-section\" id=\"setDboText\"><\/span><strong>setDboText<\/strong><strong>\u00a0<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h6>\n<table style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\">\n<tbody>\n<tr>\n<td style=\"width: 23.8095%; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Nazwa<\/p>\n<\/td>\n<td style=\"width: 75.3571%; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>setDboText<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"width: 23.8095%; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Opis<\/p>\n<\/td>\n<td style=\"width: 75.3571%; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>setDboText<\/em> przypisuje warto\u015b\u0107 do innego pola typu <em>Long text<\/em>.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"width: 23.8095%; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Podpisy<\/p>\n<\/td>\n<td style=\"width: 75.3571%; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Boolean setDboText(String schemaName, CisObject object, String attributeName, String longText, Number contentType)<\/p>\n<p>Boolean setDboText(String schemaName, CisObject object, String attributeName, String longText, Number contentType, String language)<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"width: 23.8095%; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Parametry<\/p>\n<\/td>\n<td style=\"width: 75.3571%; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>schemaName<\/em> identyfikuje drugie pole. Nazwa schematu zaczyna si\u0119 od <em>EXT<\/em>, po kt\u00f3rym nast\u0119puje nazwa obiektu biznesowego bez jego przestrzeni nazw. Je\u015bli obiekt biznesowy znajduje si\u0119 w przestrzeni nazw innej ni\u017c <em>com.cisag<\/em>, druga cz\u0119\u015b\u0107 przestrzeni nazw jest wstawiana wielkimi literami mi\u0119dzy <em>EXT<\/em> a nazw\u0105 obiektu biznesowego. Przyk\u0142adami nazw schemat\u00f3w s\u0105<\/p>\n<p><em>EXTItem<\/em> dla obiektu biznesowego <em>com.cisag.app.general.obj.Item<\/em><\/p>\n<p><em>EXTPurchaseItem<\/em> dla obiektu biznesowego <em>com.cisag.app.purchasing.obj.PurchaseItem<\/em><\/p>\n<p><em>EXTSEMObjectAccount<\/em> dla obiektu biznesowego <em>com.sem.ext.app.fin.financialaccounting.obj.ObjectAccount<\/em><\/p>\n<p><em>object<\/em> to instancja obiektu biznesowego.<\/p>\n<p><em>attributeName <\/em>to nazwa dodatkowego pola.<\/p>\n<p><em>longText <\/em>to ci\u0105g znak\u00f3w, kt\u00f3ry ma zosta\u0107 przypisany do dodatkowego pola.<\/p>\n<p><em>contentType<\/em> jest warto\u015bci\u0105 z ValueSet <em>com.cisag.sys.gui.HTMLEditorContentValueSet<\/em>.<\/p>\n<p><em>language<\/em> to kod ISO j\u0119zyka tre\u015bci.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"width: 23.8095%; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Wynik<\/p>\n<\/td>\n<td style=\"width: 75.3571%; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Funkcja przypisuje ci\u0105g znak\u00f3w <em>text <\/em>do pola dodatkowego.<\/p>\n<p>Je\u015bli przypisanie powiod\u0142o si\u0119, funkcja zwraca warto\u015b\u0107 <em>true<\/em>. Je\u015bli dla innego pola zdefiniowano ograniczenia, a ci\u0105g znak\u00f3w jest nieprawid\u0142owy, funkcja zwraca warto\u015b\u0107 <em>false<\/em>.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"width: 23.8095%; 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=\"width: 75.3571%; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Je\u015bli schemat nie istnieje pod okre\u015blon\u0105 nazw\u0105 lub u\u017cywa typu pola, kt\u00f3ry nie pasuje do funkcji, zwracana jest warto\u015b\u0107 <em>null<\/em>.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"width: 23.8095%; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Przyk\u0142ady<\/p>\n<\/td>\n<td style=\"width: 75.3571%; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>setDboText(&#8222;EXTItem&#8221;, loadItem(&#8222;10010&#8221;), &#8222;OLD_TEXT&#8221;, 2, loadItem(&#8222;10010&#8221;):longDescription, getContentLanguage())<\/em> przypisuje d\u0142ugi opis w j\u0119zyku tre\u015bci bie\u017c\u0105cego kontekstu do dodatkowego pola.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"width: 23.8095%; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Kontekst<\/p>\n<\/td>\n<td style=\"width: 75.3571%; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>OLTP<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"width: 23.8095%; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Uwagi<\/p>\n<\/td>\n<td style=\"width: 75.3571%; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>setDboText(&#8222;EXTItem&#8221;, loadItem(&#8222;10010&#8221;), &#8222;MY_FIELD&#8221;, new(String))<\/em> pr\u00f3buje przypisa\u0107 pusty ci\u0105g znak\u00f3w do dodatkowego pola. Por\u00f3wnaj to z funkcj\u0105 <em>resetDbo<\/em>, kt\u00f3ra resetuje pole dodatkowe do jego domy\u015blnej lub oryginalnej warto\u015bci.<\/p>\n<p>Funkcja nie wywo\u0142uje \u017cadnych indywidualnych kontroli dla dodatkowego pola. Dlatego nale\u017cy wprowadzi\u0107 wszystkie niezb\u0119dne kontrole w deklaracjach definicji dzia\u0142a\u0144.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"width: 23.8095%; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"width: 75.3571%; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>dboText<\/em><em>, <\/em><em>dboTextContentType<\/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.setDboText<\/em> przypisuje ci\u0105g znak\u00f3w w okre\u015blonym j\u0119zyku tre\u015bci do innego pola typu <em>Long text<\/em>.<\/p>\n<p>function create()<\/p>\n<p>{<\/p>\n<p>\u00a0 var p_name := parameters.NAME;<\/p>\n<p>\u00a0 var p_partner := loadPartner(parameters.PARTNER);<\/p>\n<p>\u00a0 var p_contentType := parameters.CONTENT_TYPE;<\/p>\n<p>\u00a0 var p_language := parameters.LANGUAGE;<\/p>\n<p>\u00a0 var p_text := parameters.TEXT;<\/p>\n<p>\u00a0 var dboSuccess := false;<\/p>\n<p>\u00a0 if (isNull(valueSetName(&#8222;com.cisag.sys.gui.HTMLEditorContentValueSet&#8221;, p_contentType)))<\/p>\n<p>\u00a0\u00a0\u00a0 p_contentType := 2; \/* tylko tekst *\/<\/p>\n<p>\u00a0 if (isNull(getByBusinessKey(CisObject(com.cisag.app.general.obj.Language), p_language)))<\/p>\n<p>\u00a0\u00a0\u00a0 dboSuccess := setDboText(&#8222;EXTPartner&#8221;, p_partner, p_name, p_text, p_contentType);<\/p>\n<p>\u00a0 inny<\/p>\n<p>\u00a0\u00a0\u00a0 dboSuccess := setDboText(&#8222;EXTPartner&#8221;, p_partner, p_name, p_text, p_contentType, p_language);<\/p>\n<p>\u00a0 result.IS_NULL := isNull(dboSuccess);<\/p>\n<p>\u00a0 result.IS_SUCCESS := cast(Boolean, first(dboSuccess, false));<\/p>\n<p>}<\/div><\/section>\n<h6 id=\"setdbotimestamp\" ><span class=\"ez-toc-section\" id=\"setDboTimestamp\"><\/span><strong>setDboTimestamp<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h6>\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>setDboTimestamp<\/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>setDboTimestamp <\/em>przypisuje warto\u015b\u0107 do innego pola typu <em>Date and 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>Podpisy<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Boolean setDboTimestamp(String schemaName, CisObject object, Timestamp attributeName, Timestamp timestamp)<\/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>schemaName<\/em> identyfikuje drugie pole. Nazwa schematu zaczyna si\u0119 od <em>EXT<\/em>, po kt\u00f3rym nast\u0119puje nazwa obiektu biznesowego bez jego przestrzeni nazw. Je\u015bli obiekt biznesowy znajduje si\u0119 w przestrzeni nazw innej ni\u017c <em>com.cisag<\/em>, druga cz\u0119\u015b\u0107 przestrzeni nazw jest wstawiana wielkimi literami mi\u0119dzy <em>EXT<\/em> a nazw\u0105 obiektu biznesowego. Przyk\u0142adami nazw schemat\u00f3w s\u0105<\/p>\n<p><em>EXTItem <\/em>dla obiektu biznesowego <em>com.cisag.app.general.obj.Item<\/em><\/p>\n<p><em>EXTPurchaseItem<\/em> dla obiektu biznesowego <em>com.cisag.app.purchasing.obj.PurchaseItem<\/em><\/p>\n<p><em>EXTSEMObjectAccount<\/em> dla obiektu biznesowego <em>com.sem.ext.app.fin.financialaccounting.obj.ObjectAccount<\/em><\/p>\n<p><em>object <\/em>to instancja obiektu biznesowego.<\/p>\n<p><em>attributeName <\/em>to nazwa dodatkowego pola.<\/p>\n<p><em>timestamp <\/em>to warto\u015b\u0107, kt\u00f3ra ma zosta\u0107 przypisana do dodatkowego pola.<\/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 przypisuje czas <em>timestamp <\/em>do dodatkowego pola.<\/p>\n<p>Je\u015bli przypisanie powiod\u0142o si\u0119, funkcja zwraca warto\u015b\u0107 <em>true<\/em>. Je\u015bli ograniczenia s\u0105 zdefiniowane dla innego pola, a <em>timestamp<\/em> nie jest dozwolone, funkcja 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>\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 schemat nie istnieje pod okre\u015blon\u0105 nazw\u0105 lub u\u017cywa typu pola, kt\u00f3ry nie pasuje do funkcji, 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>setDboTimestamp(&#8222;EXTItem&#8221;, loadItem(&#8222;10010&#8221;), &#8222;LAST_DATE&#8221;, now())<\/em> przypisuje bie\u017c\u0105cy czas do drugiego pola.<\/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>OLTP<\/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>setDboTimestamp(&#8222;EXTItem&#8221;, loadItem(&#8222;10010&#8221;), &#8222;MY_FIELD&#8221;, new(Timestamp))<\/em> pr\u00f3buje przypisa\u0107 warto\u015b\u0107 domy\u015bln\u0105 <em>UNDEFINED_DATE<\/em> typu danych <em>CisDate<\/em> do dodatkowego pola. Nalezy por\u00f3wna\u0107 to z funkcj\u0105 <em>resetDbo<\/em>, kt\u00f3ra resetuje pole dodatkowe do jego warto\u015bci domy\u015blnej lub oryginalnej.<\/p>\n<p>Funkcja nie wywo\u0142uje \u017cadnych indywidualnych kontroli dla dodatkowego pola. Dlatego nale\u017cy wprowadzi\u0107 wszystkie niezb\u0119dne kontrole w deklaracjach definicji dzia\u0142a\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>dboTimestamp<\/em><em>, <\/em><em>dboListTimestamp<\/em><em>, <\/em><em>setDboListTimestamp<\/em><em>, <\/em><em>validateDboTimestamp<\/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.setDboTimestamp<\/em> zwi\u0119ksza czas innego pola partnera o okre\u015blon\u0105 liczb\u0119 dni.<\/p>\n<p>function create()<\/p>\n<p>{<\/p>\n<p>\u00a0 var p_name := parameters.NAME;<\/p>\n<p>\u00a0 var p_partner := loadPartner(parameters.PARTNER);<\/p>\n<p>\u00a0 var p_offset := parameters.OFFSET;<\/p>\n<p>\u00a0 var dboSuccess := false;<\/p>\n<p>\u00a0 var oldDboValue := dboTimestamp(&#8222;EXTPartner&#8221;, p_partner, p_name);<\/p>\n<p>\u00a0 if (oldDboValue = UNDEFINED_DATE)<\/p>\n<p>\u00a0\u00a0\u00a0 oldDboValue := now();<\/p>\n<p>\u00a0 var newDboValue := addDays(oldDboValue, p_offset);<\/p>\n<p>\u00a0 var dboSuccess := setDboTimestamp(&#8222;EXTPartner&#8221;, p_partner, p_name, newDboValue);<\/p>\n<p>\u00a0 result.IS_NULL := isNull(dboSuccess);<\/p>\n<p>\u00a0 result.IS_SUCCESS := cast(Boolean, first(dboSuccess, false));<\/p>\n<p>}<\/div><\/section>\n<h6 id=\"setdbovalueset\" ><span class=\"ez-toc-section\" id=\"setDboValueSet\"><\/span><strong>setDboValueSet<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h6>\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>setDboValueSet<\/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>setDboValueSet<\/em> przypisuje numeryczn\u0105 identyfikacj\u0119 wyboru do innego pola typu <em>Selection field<\/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>Boolean setDboValueSet(String schemaName, CisObject object, ValueSet attributeName, Number id)<\/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>schemaName<\/em> identyfikuje drugie pole. Nazwa schematu zaczyna si\u0119 od <em>EXT<\/em>, po kt\u00f3rym nast\u0119puje nazwa obiektu biznesowego bez jego przestrzeni nazw. Je\u015bli obiekt biznesowy znajduje si\u0119 w przestrzeni nazw innej ni\u017c <em>com.cisag<\/em>, druga cz\u0119\u015b\u0107 przestrzeni nazw jest wstawiana wielkimi literami mi\u0119dzy <em>EXT <\/em>a nazw\u0105 obiektu biznesowego. Przyk\u0142adami nazw schemat\u00f3w s\u0105<\/p>\n<p><em>EXTItem<\/em> dla obiektu biznesowego <em>com.cisag.app.general.obj.Item<\/em><\/p>\n<p><em>EXTPurchaseItem<\/em> dla obiektu biznesowego <em>com.cisag.app.purchasing.obj.PurchaseItem<\/em><\/p>\n<p><em>EXTSEMObjectAccount<\/em> dla obiektu biznesowego <em>com.sem.ext.app.fin.financialaccounting.obj.ObjectAccount<\/em><\/p>\n<p><em>object<\/em> to instancja obiektu biznesowego.<\/p>\n<p><em>attributeName <\/em>to nazwa dodatkowego pola.<\/p>\n<p><em>id<\/em> to numeryczny identyfikator wyboru, kt\u00f3ry ma zosta\u0107 przypisany do dodatkowego pola.<\/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 przypisuje wyb\u00f3r <em>id<\/em> do dodatkowego pola.<\/p>\n<p>Je\u015bli przypisanie powiod\u0142o si\u0119, funkcja zwraca warto\u015b\u0107 <em>true<\/em>. Je\u015bli <em>id<\/em> nie jest prawid\u0142ow\u0105 warto\u015bci\u0105 <em>ValueSet<\/em>, funkcja 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>\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 schemat nie istnieje pod okre\u015blon\u0105 nazw\u0105 lub u\u017cywa typu pola, kt\u00f3ry nie pasuje do funkcji, 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>setDboValueSet(&#8222;EXTItem&#8221;, loadItem(&#8222;10010&#8221;), &#8222;APPROVAL&#8221;, 0)<\/em> przypisuje liczb\u0119 0 do dodatkowego pola dla partnera w celu usuni\u0119cia wyboru.<\/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>OLTP<\/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>setDboValueSet(&#8222;EXTItem&#8221;, loadItem(&#8222;10010&#8221;), &#8222;MY_FIELD&#8221;, new(Number))<\/em> pr\u00f3buje przypisa\u0107 domy\u015bln\u0105 warto\u015b\u0107 0 typu danych<em> Number<\/em> do dodatkowego pola. Por\u00f3wnaj to z funkcj\u0105 <em>resetDbo<\/em>, kt\u00f3ra resetuje pole dodatkowe do jego warto\u015bci domy\u015blnej lub pierwotnej.<\/p>\n<p>Funkcja nie wywo\u0142uje \u017cadnych indywidualnych kontroli dla dodatkowego pola. Dlatego nale\u017cy wprowadzi\u0107 wszystkie niezb\u0119dne kontrole w deklaracjach 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>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>dboValueSet<\/em><em>, <\/em><em>dboValueSetDescription<\/em><em>, <\/em><em>dboValueSetName<\/em><em>, <\/em><em>dboListValueSet<\/em><em>, <\/em><em>dboListValueSetDescription<\/em><em>, <\/em><em>dboListValueSetName<\/em><em>, <\/em><em>setDboValueSetName<\/em><em>, <\/em><em>setDboListValueSet<\/em><em>, <\/em><em>setDboListValueSetName<\/em><em>, <\/em><em>validateDboValueSet<\/em><em>, <\/em><em>validateDboValueSetName<\/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.setDboValueSet<\/em> przypisuje numeryczn\u0105 identyfikacj\u0119 <em>ValueSet<\/em> do dodatkowego pola typu <em>Selection field<\/em>. Je\u015bli liczba nie jest warto\u015bci\u0105 <em>ValueSet com.cisag.app.general.docman.DocumentStatus<\/em>, liczba 0 jest przypisywana do pustego pola.<\/p>\n<p>function create()<\/p>\n<p>{<\/p>\n<p>\u00a0 var p_name := parameters.NAME;<\/p>\n<p>\u00a0 var p_partner := loadPartner(parameters.PARTNER);<\/p>\n<p>\u00a0 var p_id := parameters.ID;<\/p>\n<p>\u00a0 var dboSuccess := false;<\/p>\n<p>\u00a0 if (isNull(valueSetName(&#8222;com.cisag.app.general.docman.DocumentStatus&#8221;, p_id)))<\/p>\n<p>\u00a0\u00a0\u00a0 p_id := 0; \/* domy\u015blnie *\/<\/p>\n<p>\u00a0 dboSuccess := setDboValueSet(&#8222;EXTPartner&#8221;, p_partner, p_name, p_id);<\/p>\n<p>\u00a0 result.IS_NULL := isNull(dboSuccess);<\/p>\n<p>\u00a0 result.IS_SUCCESS := cast(Boolean, first(dboSuccess, false));<\/p>\n<p>}<\/div><\/section>\n<h6 id=\"setdbovaluesetname\" ><span class=\"ez-toc-section\" id=\"setDboValueSetName\"><\/span><strong>setDboValueSetName<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h6>\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>setDboValueSetName<\/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>setDboValueSetName<\/em> przypisuje nazw\u0119 selekcji do innego pola typu <em>Selection field<\/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>Boolean setDboValueSetName(String schemaName, CisObject object, ValueSet attributeName, String constant)<\/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>schemaName<\/em> identyfikuje drugie pole. Nazwa schematu zaczyna si\u0119 od <em>EXT<\/em>, po kt\u00f3rym nast\u0119puje nazwa obiektu biznesowego bez jego przestrzeni nazw. Je\u015bli obiekt biznesowy znajduje si\u0119 w przestrzeni nazw innej ni\u017c <em>com.cisag<\/em>, druga cz\u0119\u015b\u0107 przestrzeni nazw jest wstawiana wielkimi literami mi\u0119dzy <em>EXT<\/em> a nazw\u0105 obiektu biznesowego. Przyk\u0142ady nazw schemat\u00f3w to<\/p>\n<p><em>EXTItem<\/em> dla obiektu biznesowego <em>com.cisag.app.general.obj.Item<\/em><\/p>\n<p><em>EXTPurchaseItem<\/em> dla obiektu biznesowego <em>com.cisag.app.purchasing.obj.PurchaseItem<\/em><\/p>\n<p><em>EXTSEMObjectAccount<\/em> dla obiektu biznesowego <em>com.sem.ext.app.fin.financialaccounting.obj.ObjectAccount<\/em><\/p>\n<p><em>object <\/em>to instancja obiektu biznesowego.<\/p>\n<p><em>attributeName <\/em>to nazwa dodatkowego pola.<\/p>\n<p><em>constant <\/em>to nazwa selekcji, kt\u00f3ra ma zosta\u0107 przypisana do dodatkowego pola.<\/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 przypisuje <em>constant <\/em>wyboru do dodatkowego pola.<\/p>\n<p>Je\u015bli przypisanie powiod\u0142o si\u0119, funkcja zwraca warto\u015b\u0107 <em>true<\/em>. Je\u015bli <em>constant<\/em> nie jest prawid\u0142ow\u0105 warto\u015bci\u0105 <em>ValueSet<\/em>, funkcja 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>\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 schemat nie istnieje pod okre\u015blon\u0105 nazw\u0105 lub u\u017cywa typu pola, kt\u00f3ry nie pasuje do funkcji, 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>setDboValueSetName(&#8222;EXTItem&#8221;, loadItem(&#8222;10010&#8221;), &#8222;APPROVAL&#8221;, &#8222;APPPROVED&#8221;)<\/em> przypisuje warto\u015b\u0107 <em>APPROVED<\/em> do dodatkowego pola.<\/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>OLTP<\/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>setDboValueSetName(&#8222;EXTItem&#8221;, loadItem(&#8222;10010&#8221;), &#8222;MY_FIELD&#8221;, new(String))<\/em> pr\u00f3buje przypisa\u0107 pusty ci\u0105g znak\u00f3w do dodatkowego pola jako domy\u015bln\u0105 warto\u015b\u0107 typu danych <em>Number<\/em>. Por\u00f3wnaj to z funkcj\u0105 <em>resetDbo<\/em>, kt\u00f3ra resetuje pole dodatkowe do jego domy\u015blnej lub oryginalnej warto\u015bci.<\/p>\n<p>Funkcja nie wywo\u0142uje \u017cadnych indywidualnych kontroli dla dodatkowego pola. Dlatego nale\u017cy wprowadzi\u0107 wszystkie niezb\u0119dne kontrole w deklaracjach 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>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>dboValueSet<\/em><em>, <\/em><em>dboValueSetDescription<\/em><em>, <\/em><em>dboValueSetName<\/em><em>, <\/em><em>dboListValueSet<\/em><em>, <\/em><em>dboListValueSetDescription<\/em><em>, <\/em><em>dboListValueSetName<\/em><em>, <\/em><em>setDboValueSet<\/em><em>, <\/em><em>setDboListValueSet<\/em><em>, <\/em><em>setDboListValueSetName<\/em><em>, <\/em><em>validateDboValueSet<\/em><em>, <\/em><em>validateDboValueSetName<\/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.setDboValueSetName<\/em> przypisuje sta\u0142\u0105 nazw\u0119 selekcji do dodatkowego pola typu <em>Selection field<\/em>. Je\u015bli nazwa nie jest prawid\u0142owym wyborem, pole jest resetowane.<\/p>\n<p>function create()<\/p>\n<p>{<\/p>\n<p>\u00a0 var p_name := parameters.NAME;<\/p>\n<p>\u00a0 var p_partner := loadPartner(parameters.PARTNER);<\/p>\n<p>\u00a0 var p_constant := parameters.CONSTANT;<\/p>\n<p>\u00a0 var dboSuccess := false;<\/p>\n<p>\u00a0 var dboSuccess := setDboValueSet(&#8222;EXTPartner&#8221;, p_partner, p_name, p_constant);<\/p>\n<p>\u00a0 if (not isNull(dboSuccess) and not dboSuccess)<\/p>\n<p>\u00a0\u00a0\u00a0 dboSuccess := setDboValueSet(&#8222;EXTPartner&#8221;, p_partner, p_name, 0);<\/p>\n<p>\u00a0 result.IS_NULL := isNull(dboSuccess);<\/p>\n<p>\u00a0 result.IS_SUCCESS := cast(Boolean, first(dboSuccess, false));<\/p>\n<p>}<\/div><\/section>\n<h5 id=\"funkcje-ustawiajace-dla-list-wartosci\" ><span class=\"ez-toc-section\" id=\"Funkcje_ustawiajace_dla_list_wartosci\"><\/span>Funkcje ustawiaj\u0105ce dla list warto\u015bci<span class=\"ez-toc-section-end\"><\/span><\/h5>\n<h6 id=\"setdbolistcisdate\" ><span class=\"ez-toc-section\" id=\"setDboListCisDate\"><\/span><strong>setDboListCisDate<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h6>\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>setDboListCisDate<\/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>setDboListCisDate<\/em> przypisuje list\u0119 warto\u015bci do innego pola typu <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>Podpisy<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Boolean setDboListCisDate(String schemaName, CisObject object, String attributeName, CisDate[] dateList[])<\/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>schemaName<\/em> identyfikuje drugie pole. Nazwa schematu zaczyna si\u0119 od <em>EXT<\/em>, po kt\u00f3rym nast\u0119puje nazwa obiektu biznesowego bez jego przestrzeni nazw. Je\u015bli obiekt biznesowy znajduje si\u0119 w przestrzeni nazw innej ni\u017c <em>com.cisag<\/em>, druga cz\u0119\u015b\u0107 przestrzeni nazw jest wstawiana wielkimi literami mi\u0119dzy <em>EXT <\/em>a nazw\u0105 obiektu biznesowego. Przyk\u0142ady nazw schemat\u00f3w to<\/p>\n<p><em>EXTItem <\/em>dla obiektu biznesowego <em>com.cisag.app.general.obj.Item<\/em><\/p>\n<p><em>EXTPurchaseItem<\/em> dla obiektu biznesowego <em>com.cisag.app.purchasing.obj.PurchaseItem<\/em><\/p>\n<p><em>EXTSEMObjectAccount<\/em> dla obiektu biznesowego <em>com.sem.ext.app.fin.financialaccounting.obj.ObjectAccount<\/em><\/p>\n<p><em>object<\/em> to instancja obiektu biznesowego.<\/p>\n<p><em>attributeName<\/em> to nazwa dodatkowego pola.<\/p>\n<p><em>dateList <\/em>to lista warto\u015bci, kt\u00f3ra ma zosta\u0107 przypisana do pola dodatkowego.<\/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 przypisuje list\u0119 warto\u015bci <em>dateList<\/em> do pola dodatkowego.<\/p>\n<p>Je\u015bli przypisanie powiod\u0142o si\u0119 dla wszystkich element\u00f3w listy warto\u015bci, funkcja zwraca warto\u015b\u0107 <em>true<\/em>. Je\u015bli ograniczenia s\u0105 zdefiniowane dla innego pola i co najmniej jeden element listy warto\u015bci jest nieprawid\u0142owy, funkcja zwraca <em>false<\/em>. Funkcja <em>validateDboCisDate<\/em> jest dost\u0119pna do sprawdzania poszczeg\u00f3lnych element\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 schemat nie istnieje pod okre\u015blon\u0105 nazw\u0105 lub u\u017cywa typu pola, kt\u00f3ry nie pasuje do funkcji, 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>setDboListCisDate(&#8222;EXTItem&#8221;, loadItem(&#8222;10010&#8221;), &#8222;DATES&#8221;, list(addDays(today(), -1), today(), addDays(today(), 1)))<\/em> przypisuje list\u0119 warto\u015bci z dat\u0105 wczorajsz\u0105, dzisiejsz\u0105 i jutrzejsz\u0105 do drugiego pola.<\/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>OLTP<\/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>setDboListCisDate(&#8222;EXTItem&#8221;, loadItem(&#8222;10010&#8221;), &#8222;MY_FIELD&#8221;, list(new(CisDate))<\/em> pr\u00f3buje przypisa\u0107 warto\u015b\u0107 domy\u015bln\u0105 <em>null<\/em> typu danych<em> CisDate<\/em> do dodatkowego pola. Nalezy por\u00f3wna\u0107 to z funkcj\u0105 <em>resetDbo<\/em>, kt\u00f3ra resetuje pole dodatkowe do jego warto\u015bci domy\u015blnej lub oryginalnej.<\/p>\n<p>Funkcja nie wywo\u0142uje \u017cadnych indywidualnych kontroli dla dodatkowego pola. Dlatego nale\u017cy wprowadzi\u0107 wszystkie niezb\u0119dne kontrole w deklaracjach 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>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>dboCisDate<\/em><em>, <\/em><em>dboListCisDate<\/em><em>, <\/em><em>setDboCisDate<\/em><em>, <\/em><em>validateDboCisDate<\/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.setDboListCisDate<\/em> dodaje nowy element z dzisiejsz\u0105 dat\u0105 do listy warto\u015bci innego pola dla partnera.<\/p>\n<p>function create()<\/p>\n<p>{<\/p>\n<p>\u00a0 var p_name := parameters.NAME;<\/p>\n<p>\u00a0 var p_partner := loadPartner(parameters.PARTNER);<\/p>\n<p>\u00a0 var dboSuccess := false;<\/p>\n<p>\u00a0 var newElement := today();<\/p>\n<p>\u00a0 var valueList := dboListCisDate(&#8222;EXTPartner&#8221;, p_partner, p_name);<\/p>\n<p>\u00a0 if (isNull(valueList[0]))<\/p>\n<p>\u00a0\u00a0\u00a0 valueList[0] := newElement;<\/p>\n<p>\u00a0 inny<\/p>\n<p>\u00a0\u00a0\u00a0 add(valueList, newElement);<\/p>\n<p>\u00a0 dboSuccess := setDboListCisDate(&#8222;EXTPartner&#8221;, p_partner, p_name, valueList);<\/p>\n<p>\u00a0 result.IS_NULL := isNull(dboSuccess);<\/p>\n<p>\u00a0 result.IS_SUCCESS := cast(Boolean, first(dboSuccess, false));<\/p>\n<p>}<\/div><\/section>\n<h6 id=\"setdbolistcisobject\" ><span class=\"ez-toc-section\" id=\"setDboListCisObject\"><\/span><strong>setDboListCisObject<\/strong><strong>\u00a0<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h6>\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>setDboListCisObject<\/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>setDboListCisObject <\/em>przypisuje list\u0119 warto\u015bci do innego pola typu <em>Business Entity<\/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>Boolean setDboListCisObject(String schemaName, CisObject object, String attributeName, CisObject[] valueList)<\/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>schemaName<\/em> identyfikuje drugie pole. Nazwa schematu zaczyna si\u0119 od <em>EXT<\/em>, po kt\u00f3rym nast\u0119puje nazwa obiektu biznesowego bez jego przestrzeni nazw. Je\u015bli obiekt biznesowy znajduje si\u0119 w przestrzeni nazw innej ni\u017c <em>com.cisag<\/em>, druga cz\u0119\u015b\u0107 przestrzeni nazw jest wstawiana wielkimi literami mi\u0119dzy <em>EXT<\/em> a nazw\u0105 obiektu biznesowego. Przyk\u0142ady nazw schemat\u00f3w to<\/p>\n<p><em>EXTItem<\/em> dla obiektu biznesowego <em>com.cisag.app.general.obj.Item<\/em><\/p>\n<p><em>EXTPurchaseItem<\/em> dla obiektu biznesowego <em>com.cisag.app.purchasing.obj.PurchaseItem<\/em><\/p>\n<p><em>EXTSEMObjectAccount<\/em> dla obiektu biznesowego <em>com.sem.ext.app.fin.financialaccounting.obj.ObjectAccount<\/em><\/p>\n<p><em>object<\/em> to instancja obiektu biznesowego.<\/p>\n<p><em>attributeName <\/em>to nazwa dodatkowego pola.<\/p>\n<p><em>valueList <\/em>to lista warto\u015bci, kt\u00f3ra ma zosta\u0107 przypisana do pola dodatkowego.<\/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 przypisuje list\u0119 warto\u015bci <em>valueList<\/em> do pola dodatkowego.<\/p>\n<p>Je\u015bli przypisanie powiod\u0142o si\u0119 dla wszystkich element\u00f3w listy warto\u015bci, funkcja zwraca warto\u015b\u0107 <em>true<\/em>. Je\u015bli ograniczenia s\u0105 zdefiniowane dla innego pola i co najmniej jeden element listy warto\u015bci jest nieprawid\u0142owy, funkcja zwraca <em>false<\/em>. Funkcja <em>validateDboCisObject<\/em> jest dost\u0119pna do sprawdzania poszczeg\u00f3lnych element\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 schemat nie istnieje pod okre\u015blon\u0105 nazw\u0105 lub u\u017cywa typu pola, kt\u00f3ry nie pasuje do funkcji, 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>setDboListCisObject(&#8222;EXTItem&#8221;, loadItem(&#8222;10010&#8221;), &#8222;APPROVERS&#8221;, list(loadPartner(&#8222;70010&#8221;)))<\/em> przypisuje list\u0119 warto\u015bci z partnerem <em>70010<\/em> do pola dodatkowego.<\/p>\n<p><em>setDboListCisObject(&#8222;EXTItem&#8221;, loadItem(&#8222;10010&#8221;), &#8222;APPROVERS&#8221;, union(minus(dboListCisObject(&#8222;EXTItem&#8221;, loadItem(&#8222;10010&#8221;), &#8222;APPROVERS&#8221;), list(new(Guid))), list(loadPartner(&#8222;70010&#8221;))))<\/em> dodaje partnera <em>70010<\/em> do listy warto\u015bci.<\/p>\n<p><em>setDboListCisObject(&#8222;EXTItem&#8221;, loadItem(&#8222;10010&#8221;), &#8222;APPROVERS&#8221;, minus(dboListCisObject(&#8222;EXTItem&#8221;, loadItem(&#8222;10010&#8221;), &#8222;APPROVERS&#8221;), list(loadPartner(&#8222;70010&#8221;))))<\/em> usuwa partnera <em>70010<\/em> z listy 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>Kontekst<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>OLTP<\/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>setDboListCisObject(&#8222;EXTItem&#8221;, loadItem(&#8222;10010&#8221;), &#8222;MY_FIELD&#8221;, list(new(CisObject))<\/em> pr\u00f3buje przypisa\u0107 warto\u015b\u0107 domy\u015bln\u0105 <em>null<\/em> typu danych <em>CisObject<\/em> do dodatkowego pola. Nale\u017cy por\u00f3wna\u0107 to z funkcj\u0105 <em>resetDbo<\/em>, kt\u00f3ra resetuje pole dodatkowe do jego warto\u015bci domy\u015blnej lub oryginalnej.<\/p>\n<p>Funkcja nie wywo\u0142uje \u017cadnych indywidualnych kontroli dla dodatkowego pola. Dlatego nale\u017cy wprowadzi\u0107 wszystkie niezb\u0119dne kontrole w deklaracjach 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>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>dboCisObject<\/em><em>, <\/em><em>dboListCisObject<\/em><em>, <\/em><em>setDboCisObject<\/em><em>, <\/em><em>validateDboCisObject<\/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.setDboListCisObject<\/em> dodaje kolejne pole do listy warto\u015bci dla partnera okre\u015blonego u\u017cytkownika.<\/p>\n<p>function create()<\/p>\n<p>{<\/p>\n<p>\u00a0 var p_name := parameters.NAME;<\/p>\n<p>\u00a0 var p_partner := loadPartner(parameters.PARTNER);<\/p>\n<p>\u00a0 var dboSuccess := false;<\/p>\n<p>\u00a0 var newElement := today();<\/p>\n<p>\u00a0 var valueList := dboListCisDate(&#8222;EXTPartner&#8221;, p_partner, p_name);<\/p>\n<p>\u00a0 if (isNull(valueList[0]))<\/p>\n<p>\u00a0\u00a0\u00a0 valueList[0] := newElement;<\/p>\n<p>\u00a0 inny<\/p>\n<p>\u00a0\u00a0\u00a0 add(valueList, newElement);<\/p>\n<p>\u00a0 dboSuccess := setDboListCisDate(&#8222;EXTPartner&#8221;, p_partner, p_name, valueList);<\/p>\n<p>\u00a0 result.IS_NULL := isNull(dboSuccess);<\/p>\n<p>\u00a0 result.IS_SUCCESS := cast(Boolean, first(dboSuccess, false));<\/p>\n<p>}<\/div><\/section>\n<h6 id=\"setdbolistdomesticamount\" ><span class=\"ez-toc-section\" id=\"setDboListDomesticAmount\"><\/span><strong>setDboListDomesticAmount<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h6>\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>setDboListDomesticAmount<\/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>setDboListDomesticAmount<\/em> przypisuje list\u0119 warto\u015bci do innego pola typu Kwota w walucie wewn\u0119trznej lub <em>Cena w walucie wewn\u0119trznej<\/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>Boolean setDboListDomesticAmount(String schemaName, CisObject object, String attributeName, Number[] domesticAmountList)<\/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>schemaName <\/em>identyfikuje drugie pole. Nazwa schematu zaczyna si\u0119 od <em>EXT,<\/em> po kt\u00f3rym nast\u0119puje nazwa obiektu biznesowego bez jego przestrzeni nazw. Je\u015bli obiekt biznesowy znajduje si\u0119 w przestrzeni nazw innej ni\u017c <em>com.cisag<\/em>, druga cz\u0119\u015b\u0107 przestrzeni nazw jest wstawiana wielkimi literami mi\u0119dzy <em>EXT<\/em> a nazw\u0105 obiektu biznesowego. Przyk\u0142adami nazw schemat\u00f3w s\u0105<\/p>\n<p><em>EXTItem<\/em> dla obiektu biznesowego <em>com.cisag.app.general.obj.Item<\/em><\/p>\n<p><em>EXTPurchaseItem<\/em> dla obiektu biznesowego <em>com.cisag.app.purchasing.obj.PurchaseItem<\/em><\/p>\n<p><em>EXTSEMObjectAccount<\/em> dla obiektu biznesowego <em>com.sem.ext.app.fin.financialaccounting.obj.ObjectAccount<\/em><\/p>\n<p><em>object <\/em>to instancja obiektu biznesowego.<\/p>\n<p><em>attributeName <\/em>to nazwa dodatkowego pola.<\/p>\n<p><em>domesticAmountList <\/em>to lista warto\u015bci, kt\u00f3ra ma zosta\u0107 przypisana do pola dodatkowego.<\/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 przypisuje list\u0119 warto\u015bci <em>domesticAmountLis<\/em>t do pola dodatkowego.<\/p>\n<p>Je\u015bli przypisanie powiod\u0142o si\u0119 dla wszystkich element\u00f3w listy warto\u015bci, funkcja zwraca warto\u015b\u0107 <em>true<\/em>. Je\u015bli ograniczenia s\u0105 zdefiniowane dla innego pola i co najmniej jeden element listy warto\u015bci jest nieprawid\u0142owy, funkcja zwraca warto\u015b\u0107 <em>false<\/em>. Funkcja <em>validateDboDomesticAmount<\/em> jest dost\u0119pna do sprawdzania poszczeg\u00f3lnych element\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 schemat nie istnieje pod okre\u015blon\u0105 nazw\u0105 lub u\u017cywa typu pola, kt\u00f3ry nie pasuje do funkcji, 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>setDboListDomesticAmount(&#8222;EXTItem&#8221;, loadItem(&#8222;10010&#8221;), &#8222;AMOUNTS&#8221;, list(500, 600))<\/em> przypisuje list\u0119 warto\u015bci z warto\u015bciami 500 i 600 do pola dodatkowego.<\/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>OLTP<\/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>setDboListDomesticAmount(&#8222;EXTItem&#8221;, loadItem(&#8222;10010&#8221;), &#8222;MY_FIELD&#8221;, list(new(Number)))<\/em> pr\u00f3buje przypisa\u0107 domy\u015bln\u0105 warto\u015b\u0107 0 typu danych <em>Number<\/em> do dodatkowego pola. Nalezy por\u00f3wna\u0107 to z funkcj\u0105 <em>resetDbo<\/em>, kt\u00f3ra resetuje pole dodatkowe do jego warto\u015bci domy\u015blnej lub pierwotnej.<\/p>\n<p>Funkcja nie wywo\u0142uje \u017cadnych indywidualnych kontroli dla dodatkowego pola. Dlatego nale\u017cy wprowadzi\u0107 wszystkie niezb\u0119dne kontrole w deklaracjach definicji dzia\u0142a\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>dboDomesticAmount<\/em><em>, <\/em><em>dboListDomesticAmount<\/em><em>, <\/em><em>setDboDomesticAmount<\/em><em>, <\/em><em>validateDboDomesticAmount<\/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.setDboListDomesticAmount<\/em> przypisuje dwie kwoty lub ceny w walucie wewn\u0119trznej do listy warto\u015bci innego pola partnera.<\/p>\n<p>function create()<\/p>\n<p>{<\/p>\n<p>\u00a0 var p_name := parameters.NAME;<\/p>\n<p>\u00a0 var p_partner := loadPartner(parameters.PARTNER);<\/p>\n<p>\u00a0 var p_amount1 := parameters.AMOUNT1;<\/p>\n<p>\u00a0 var p_amount2 := parameters.AMOUNT2;<\/p>\n<p>\u00a0 var dboSuccess := false;<\/p>\n<p>\u00a0 dboSuccess := setDboListDomesticAmount(&#8222;EXTPartner&#8221;, p_partner, p_name, list(p_amount1, p_amount2));<\/p>\n<p>\u00a0 result.IS_NULL := isNull(dboSuccess);<\/p>\n<p>\u00a0 result.IS_SUCCESS := cast(Boolean, first(dboSuccess, false));<\/p>\n<p>}<\/div><\/section>\n<h6 id=\"setdbolistforeignamount\" ><span class=\"ez-toc-section\" id=\"setDboListForeignAmount\"><\/span><strong>setDboListForeignAmount<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h6>\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>setDboListForeignAmount<\/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>setDboListForeignAmount<\/em> przypisuje list\u0119 warto\u015bci do innego pola typu <em>Amount<\/em> lub <em>Price<\/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>Boolean setDboListForeignAmount(String schemaName, CisObject object, String attributeName, CisObject( com.cisag.app.general.obj.ForeignAmount)[] foreignAmountList)<\/p>\n<p>Boolean setDboListForeignAmount(String schemaName, CisObject object, String attributeName, Number[] amountList, Guid[] currencyList)<\/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>schemaName <\/em>identyfikuje drugie pole. Nazwa schematu zaczyna si\u0119 od<em> EXT<\/em>, po kt\u00f3rym nast\u0119puje nazwa obiektu biznesowego bez jego przestrzeni nazw. Je\u015bli obiekt biznesowy znajduje si\u0119 w przestrzeni nazw innej ni\u017c <em>com.cisag<\/em>, druga cz\u0119\u015b\u0107 przestrzeni nazw jest wstawiana wielkimi literami mi\u0119dzy <em>EXT<\/em> a nazw\u0105 obiektu biznesowego. Przyk\u0142adami nazw schemat\u00f3w s\u0105<\/p>\n<p><em>EXTItem<\/em> dla obiektu biznesowego <em>com.cisag.app.general.obj.Item<\/em><\/p>\n<p><em>EXTPurchaseItem<\/em> dla obiektu biznesowego <em>com.cisag.app.purchasing.obj.PurchaseItem<\/em><\/p>\n<p><em>EXTSEMObjectAccount <\/em>dla obiektu biznesowego <em>com.sem.ext.app.fin.financialaccounting.obj.ObjectAccount<\/em><\/p>\n<p><em>object <\/em>to instancja obiektu biznesowego.<\/p>\n<p><em>attributeName<\/em> to nazwa dodatkowego pola.<\/p>\n<p><em>amountList <\/em>to lista warto\u015bci z kwotami lub cenami w walucie obcej, kt\u00f3re maj\u0105 zosta\u0107 przypisane do drugiego pola.<\/p>\n<p><em>currencyList<\/em> to lista warto\u015bci z identyfikatorem walut obcych.<\/p>\n<p><em>foreignAmountList<\/em> to lista warto\u015bci z cz\u0119\u015bciami, kt\u00f3re maj\u0105 zosta\u0107 przypisane.<\/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 przypisuje list\u0119 warto\u015bci z kwotami lub cenami w walucie obcej do drugiego pola.<\/p>\n<p>Je\u015bli przypisanie powiod\u0142o si\u0119 dla wszystkich element\u00f3w listy warto\u015bci, funkcja zwraca warto\u015b\u0107 <em>true<\/em>. Je\u015bli ograniczenia s\u0105 zdefiniowane dla innego pola i co najmniej jeden element listy warto\u015bci jest nieprawid\u0142owy, funkcja zwraca <em>false<\/em>. Funkcja <em>validateDboForeignAmount<\/em> jest dost\u0119pna do sprawdzania poszczeg\u00f3lnych element\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 schemat nie istnieje pod okre\u015blon\u0105 nazw\u0105 lub u\u017cywa typu pola, kt\u00f3ry nie pasuje do funkcji, 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>setDboListForeignAmount(&#8222;EXTItem&#8221;, loadItem(&#8222;10010&#8221;), &#8222;AMOUNTS&#8221;, list(500, 600), list(loadCurrency(&#8222;SEK&#8221;), loadCurrency(&#8222;NOK&#8221;))<\/em> przypisuje list\u0119 warto\u015bci z warto\u015bciami 500 SEK i 600 NOK do drugiego pola.<\/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>OLTP<\/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>setDboListForeignAmount(&#8222;EXTItem&#8221;, loadItem(&#8222;10010&#8221;), &#8222;MY_FIELD&#8221;, list(new(Number)), list(new(Guid))))<\/em> pr\u00f3buje przypisa\u0107 domy\u015bln\u0105 warto\u015b\u0107 0 typu danych <em>Number<\/em> i domy\u015bln\u0105 warto\u015b\u0107 <em>null<\/em> typu danych <em>Guid<\/em> do dodatkowego pola. Nalezy por\u00f3wna\u0107 to z funkcj\u0105 <em>resetDbo<\/em>, kt\u00f3ra resetuje pole dodatkowe do jego warto\u015bci domy\u015blnej lub oryginalnej.<\/p>\n<p>Funkcja nie wywo\u0142uje \u017cadnych indywidualnych kontroli dla dodatkowego pola. Dlatego nale\u017cy wprowadzi\u0107 wszystkie niezb\u0119dne kontrole w deklaracjach definicji dzia\u0142a\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>dboForeignAmount<\/em><em>, <\/em><em>dboListForeignAmount<\/em><em>, <\/em><em>setDboForeignAmount<\/em><em>, <\/em><em>validateDboForeignAmount<\/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\u0142a\u0144 <em>help.setDboListForeignAmount<\/em> dodaje dwie kwoty lub ceny w walucie obcej do listy warto\u015bci innego pola dla partnera. Je\u015bli jedna z walut jest nieprawid\u0142owa, u\u017cywana jest pierwsza waluta wewn\u0119trzna.<\/p>\n<p>function create()<\/p>\n<p>{<\/p>\n<p>\u00a0 var p_name := parameters.NAME;<\/p>\n<p>\u00a0 var p_partner := loadPartner(parameters.PARTNER);<\/p>\n<p>\u00a0 var p_amount1 := parameters.AMOUNT1;<\/p>\n<p>\u00a0 var p_amount2 := parameters.AMOUNT2;<\/p>\n<p>\u00a0 var p_currency1 := parameters.CURRENCY1;<\/p>\n<p>\u00a0 var p_currency2 := parameters.CURRENCY2;<\/p>\n<p>\u00a0 var dboSuccess := false;<\/p>\n<p>\u00a0 var currency1Guid := loadCurrency(p_currency1):guid;<\/p>\n<p>\u00a0 if (isNull(currency1Guid))<\/p>\n<p>\u00a0\u00a0\u00a0 currency1Guid := getCurrency1();<\/p>\n<p>\u00a0 var currency2Guid := loadCurrency(p_currency2):guid;<\/p>\n<p>\u00a0 if (isNull(currency2Guid))<\/p>\n<p>\u00a0\u00a0\u00a0 currency2Guid := getCurrency1();<\/p>\n<p>\u00a0 dboSuccess := setDboListForeignAmount(&#8222;EXTPartner&#8221;, p_partner, p_name, list(p_amount1, p_amount2), list(currency1Guid, currency2Guid));<\/p>\n<p>\u00a0 result.IS_NULL := isNull(dboSuccess);<\/p>\n<p>\u00a0 result.IS_SUCCESS := cast(Boolean, first(dboSuccess, false));<\/p>\n<p>}<\/p>\n<p>function getCurrency1() as Guid<\/p>\n<p>{<\/p>\n<p>\u00a0 var currency1 as Guid;<\/p>\n<p>\u00a0 var company := loadOrganisation(getCustomizingValue(&#8222;com.cisag.app.General&#8221;):company);<\/p>\n<p>\u00a0 var baseFunction := getCustomizingValue(&#8222;com.cisag.app.general.Base&#8221;, company:guid);<\/p>\n<p>\u00a0 if (not isNull(baseFunction)) {<\/p>\n<p>\u00a0\u00a0\u00a0 var combination := getByPrimaryKey(CisObject(com.cisag.app.multiorg.obj.DomesticCurrencyCombination), baseFunction:combination);<\/p>\n<p>\u00a0\u00a0\u00a0 currency1 := combination:currency1;<\/p>\n<p>\u00a0 }<\/p>\n<p>\u00a0 return currency1;<\/p>\n<p>}<\/div><\/section>\n<h6 id=\"setdbolistguid\" ><span class=\"ez-toc-section\" id=\"setDboListGuid\"><\/span><strong>setDboListGuid<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h6>\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>setDboListGuid<\/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>setDboListGuid <\/em>przypisuje list\u0119 warto\u015bci do innego pola typu <em>Classification<\/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>Boolean setDboListGuid(String schemaName, CisObject object, String attributeName, String[] pathList)<\/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>schemaName<\/em> identyfikuje drugie pole. Nazwa schematu zaczyna si\u0119 od <em>EXT<\/em>, po kt\u00f3rym nast\u0119puje nazwa obiektu biznesowego bez jego przestrzeni nazw. Je\u015bli obiekt biznesowy znajduje si\u0119 w przestrzeni nazw innej ni\u017c <em>com.cisag<\/em>, druga cz\u0119\u015b\u0107 przestrzeni nazw jest wstawiana wielkimi literami mi\u0119dzy <em>EXT<\/em> a nazw\u0105 obiektu biznesowego. Przyk\u0142adami nazw schemat\u00f3w s\u0105<\/p>\n<p><em>EXTItem<\/em> dla obiektu biznesowego <em>com.cisag.app.general.obj.Item<\/em><\/p>\n<p><em>EXTPurchaseItem<\/em> dla obiektu biznesowego <em>com.cisag.app.purchasing.obj.PurchaseItem<\/em><\/p>\n<p><em>EXTSEMObjectAccount<\/em> dla obiektu biznesowego <em>com.sem.ext.app.fin.financialaccounting.obj.ObjectAccount<\/em><\/p>\n<p><em>object<\/em> to instancja obiektu biznesowego.<\/p>\n<p><em>attributeName <\/em>to nazwa dodatkowego pola.<\/p>\n<p><em>pathList<\/em> to lista warto\u015bci zawieraj\u0105ca \u015bcie\u017cki klasyfikacji, kt\u00f3re maj\u0105 zosta\u0107 przypisane do pola dodatkowego.<\/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 przypisuje list\u0119 warto\u015bci <em>pathList<\/em> do pola dodatkowego.<\/p>\n<p>Je\u015bli przypisanie powiod\u0142o si\u0119 dla wszystkich element\u00f3w listy warto\u015bci, funkcja zwraca warto\u015b\u0107 <em>true<\/em>. Je\u015bli ograniczenia s\u0105 zdefiniowane dla innego pola i co najmniej jeden element listy warto\u015bci jest nieprawid\u0142owy, funkcja zwraca <em>false<\/em>. Funkcja <em>validateDboGuid<\/em> jest dost\u0119pna do sprawdzania poszczeg\u00f3lnych element\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 schemat nie istnieje pod okre\u015blon\u0105 nazw\u0105 lub u\u017cywa typu pola, kt\u00f3ry nie pasuje do funkcji, 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>setDboListGuid(&#8222;EXTItem&#8221;, loadItem(&#8222;10010&#8221;), &#8222;NACE&#8221;, list(&#8222;J-62-01&#8221;, &#8222;P-85-5&#8221;))<\/em> przypisuje klasyfikacje z okre\u015blonymi \u015bcie\u017ckami do dodatkowego pola.<\/p>\n<p><em>setDboListGuid(&#8222;EXTItem&#8221;, loadItem(&#8222;10010&#8221;), &#8222;NACE&#8221;, union(minus(dboListGuid(&#8222;EXTItem&#8221;, loadItem(&#8222;10010&#8221;), &#8222;NACE&#8221;)), list(new(Guid))), list(&#8222;J-62-02&#8221;)))<\/em> dodaje klasyfikacj\u0119 o okre\u015blonej \u015bcie\u017cce do listy warto\u015bci.<\/p>\n<p><em>setDboListGuid(&#8222;EXTItem&#8221;, loadItem(&#8222;10010&#8221;), &#8222;NACE&#8221;, minus(dboListGuid(&#8222;EXTItem&#8221;, loadItem(&#8222;10010&#8221;), &#8222;NACE&#8221;), list(&#8222;P-85-5&#8221;)))<\/em> usuwa klasyfikacj\u0119 o okre\u015blonej \u015bcie\u017cce z listy 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>Kontekst<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>OLTP<\/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>setDboListGuid(&#8222;EXTItem&#8221;, loadItem(&#8222;10010&#8221;), &#8222;MY_FIELD&#8221;, list(new(String))<\/em> pr\u00f3buje przypisa\u0107 do dodatkowego pola list\u0119 z pustym ci\u0105giem znak\u00f3w jako domy\u015bln\u0105 warto\u015bci\u0105 typu danych <em>String<\/em>. Por\u00f3wnaj to z funkcj\u0105 <em>resetDbo<\/em>, kt\u00f3ra resetuje pole dodatkowe do jego domy\u015blnej lub oryginalnej warto\u015bci.<\/p>\n<p>Poniewa\u017c funkcja <em>setDboListGuid<\/em> oczekuje listy ci\u0105g\u00f3w znak\u00f3w, ale <em>dboListGuid<\/em> zwraca list\u0119 identyfikator\u00f3w, nie mo\u017cna przypisa\u0107 warto\u015bci innego pola do innego pola bez dodatkowego skryptowania.<\/p>\n<p>Funkcja nie wywo\u0142uje \u017cadnych indywidualnych kontroli dla dodatkowego pola. Dlatego nale\u017cy wprowadzi\u0107 wszystkie niezb\u0119dne kontrole w deklaracjach definicji dzia\u0142a\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>dboGuid<\/em><em>, <\/em><em>dboListGuid<\/em><em>, <\/em><em>setDboGuid<\/em><em>, <\/em><em>validateDboGuid<\/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.setDboListGuid<\/em> dodaje now\u0105 \u015bcie\u017ck\u0119 do innego pola typu <em>Classification<\/em> dla partnera. Dzi\u0119ki u\u017cyciu funkcji <em>union<\/em> \u015bcie\u017cka jest przypisywana do klasyfikacji tylko raz. Funkcja <em>minus<\/em> usuwa domy\u015bln\u0105 warto\u015b\u0107 <em>null <\/em>dla dodatkowego pola bez przypisanej klasyfikacji.<\/p>\n<p>function create()<\/p>\n<p>{<\/p>\n<p>\u00a0 var p_name := parameters.NAME;<\/p>\n<p>\u00a0 var p_partner := loadPartner(parameters.PARTNER);<\/p>\n<p>\u00a0 var p_path := parameters.PATH;<\/p>\n<p>\u00a0 var dboSuccess := false;<\/p>\n<p>\u00a0 dboSuccess := setDboListGuid(&#8222;EXTPartner&#8221;, p_partner, p_name, union(minus(dboListGuid(&#8222;EXTPartner&#8221;, p_partner, &#8222;NACE&#8221;)), list(new(Guid))), list(p_path)));<\/p>\n<p>\u00a0 result.IS_NULL := isNull(dboSuccess);<\/p>\n<p>\u00a0 result.IS_SUCCESS := cast(Boolean, first(dboSuccess, false));<\/p>\n<p>}<\/div><\/section>\n<h6 id=\"setdbolistnumber\" ><span class=\"ez-toc-section\" id=\"setDboListNumber\"><\/span>setDboListNumber<span class=\"ez-toc-section-end\"><\/span><\/h6>\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>setDboListNumber<\/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>setDboListNumber<\/em> przypisuje list\u0119 warto\u015bci do innego pola typu <em>Decimal<\/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>Boolean setDboListNumber(String schemaName, CisObject object, String attributeName, Number[] numberList)<\/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>schemaName <\/em>identyfikuje drugie pole. Nazwa schematu zaczyna si\u0119 od <em>EXT<\/em>, po kt\u00f3rym nast\u0119puje nazwa obiektu biznesowego bez jego przestrzeni nazw. Je\u015bli obiekt biznesowy znajduje si\u0119 w przestrzeni nazw innej ni\u017c &#8222;com.cisag&#8221;, druga cz\u0119\u015b\u0107 przestrzeni nazw jest wstawiana wielkimi literami mi\u0119dzy <em>EXT<\/em> a nazw\u0105 obiektu biznesowego. Przyk\u0142adami nazw schemat\u00f3w s\u0105<\/p>\n<p><em>EXTItem<\/em> dla obiektu biznesowego <em>com.cisag.app.general.obj.Item<\/em><\/p>\n<p><em>EXTPurchaseItem<\/em> dla obiektu biznesowego <em>com.cisag.app.purchasing.obj.PurchaseItem<\/em><\/p>\n<p><em>EXTSEMObjectAccount<\/em> dla obiektu biznesowego <em>com.sem.ext.app.fin.financialaccounting.obj.ObjectAccount<\/em><\/p>\n<p><em>object<\/em> to instancja obiektu biznesowego.<\/p>\n<p><em>attributeName<\/em> to nazwa dodatkowego pola.<\/p>\n<p><em>numberList<\/em> to lista warto\u015bci, kt\u00f3ra ma zosta\u0107 przypisana do pola dodatkowego.<\/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 przypisuje list\u0119 warto\u015bci <em>numberList<\/em> do pola dodatkowego.<\/p>\n<p>Je\u015bli przypisanie powiod\u0142o si\u0119 dla wszystkich element\u00f3w listy warto\u015bci, funkcja zwraca warto\u015b\u0107 <em>true<\/em>. Je\u015bli ograniczenia s\u0105 zdefiniowane dla innego pola i co najmniej jeden element listy warto\u015bci jest nieprawid\u0142owy, funkcja zwraca <em>false<\/em>. Funkcja <em>validateDboNumber<\/em> jest dost\u0119pna do sprawdzania poszczeg\u00f3lnych element\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 schemat nie istnieje pod okre\u015blon\u0105 nazw\u0105 lub u\u017cywa typu pola, kt\u00f3ry nie pasuje do funkcji, 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>setDboListNumber(&#8222;EXTItem&#8221;, loadItem(&#8222;10010&#8221;), &#8222;NUMBERS&#8221;, list(1, 2, 3))<\/em> przypisuje list\u0119 warto\u015bci o warto\u015bciach 1, 2 i 3 do pola dodatkowego.<\/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>OLTP<\/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>setDboListNumber(&#8222;EXTItem&#8221;, loadItem(&#8222;10010&#8221;), &#8222;MY_FIELD&#8221;, list(new(Number))<\/em> pr\u00f3buje przypisa\u0107 domy\u015bln\u0105 warto\u015b\u0107 0 typu danych <em>Number<\/em> do dodatkowego pola. Nalezy por\u00f3wna\u0107 to z funkcj\u0105 <em>resetDbo<\/em>, kt\u00f3ra resetuje pole dodatkowe do jego warto\u015bci domy\u015blnej lub pierwotnej.<\/p>\n<p>Funkcja nie wywo\u0142uje \u017cadnych indywidualnych kontroli dla dodatkowego pola. Dlatego nale\u017cy wprowadzi\u0107 wszystkie niezb\u0119dne kontrole w deklaracjach definicji dzia\u0142a\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>dboNumber<\/em><em>, <\/em><em>dboListNumber<\/em><em>, <\/em><em>setDboNumber<\/em><em>, <\/em><em>validateDboNumber<\/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.setDboListNumber<\/em> dodaje nowy numer do listy warto\u015bci innego pola dla partnera.<\/p>\n<p>function create()<\/p>\n<p>{<\/p>\n<p>\u00a0 var p_name := parameters.NAME;<\/p>\n<p>\u00a0 var p_partner := loadPartner(parameters.PARTNER);<\/p>\n<p>\u00a0 var p_number := parameters.NUMBER;<\/p>\n<p>\u00a0 var dboSuccess := false;<\/p>\n<p>\u00a0 var valueList := dboListNumber(&#8222;EXTPartner&#8221;, p_partner, p_name);<\/p>\n<p>\u00a0 add(valueList, p_number);<\/p>\n<p>\u00a0 dboSuccess := setDboListNumber(&#8222;EXTPartner&#8221;, p_partner, p_name, valueList);<\/p>\n<p>\u00a0 result.IS_NULL := isNull(dboSuccess);<\/p>\n<p>\u00a0 result.IS_SUCCESS := cast(Boolean, first(dboSuccess, false));<\/p>\n<p>}<\/div><\/section>\n<h6 id=\"setdbolistquantity\" ><span class=\"ez-toc-section\" id=\"setDboListQuantity\"><\/span><strong>setDboListQuantity<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h6>\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>setDboListQuantity<\/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>setDboListQuantity <\/em>przypisuje list\u0119 warto\u015bci do innego pola typu <em>Quantity<\/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>Boolean setDboListQuantity(String schemaName, CisObject object, String attributeName, CisObject(com.cisag.app.general.obj.Quantity)[] quantityList)<\/p>\n<p>Boolean setDboListQuantity(String schemaName, CisObject object, String attributeName, Number[] amountList, Guid[] uomList)<\/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>schemaName<\/em> identyfikuje drugie pole. Nazwa schematu zaczyna si\u0119 od <em>EXT<\/em>, po kt\u00f3rym nast\u0119puje nazwa obiektu biznesowego bez jego przestrzeni nazw. Je\u015bli obiekt biznesowy znajduje si\u0119 w przestrzeni nazw innej ni\u017c <em>com.cisag<\/em>, druga cz\u0119\u015b\u0107 przestrzeni nazw jest wstawiana wielkimi literami mi\u0119dzy <em>EXT <\/em>a nazw\u0105 obiektu biznesowego. Przyk\u0142ady nazw schemat\u00f3w to<\/p>\n<p><em>EXTItem <\/em>dla obiektu biznesowego <em>com.cisag.app.general.obj.Item<\/em><\/p>\n<p><em>EXTPurchaseItem<\/em> dla obiektu biznesowego <em>com.cisag.app.purchasing.obj.PurchaseItem<\/em><\/p>\n<p><em>EXTSEMObjectAccount<\/em> dla obiektu biznesowego <em>com.sem.ext.app.fin.financialaccounting.obj.ObjectAccount<\/em><\/p>\n<p><em>object <\/em>to instancja obiektu biznesowego.<\/p>\n<p><em>attributeName <\/em>to nazwa dodatkowego pola.<\/p>\n<p><em>amountList <\/em>to lista warto\u015bci z ilo\u015bciami, kt\u00f3re maj\u0105 zosta\u0107 przypisane do pola dodatkowego.<\/p>\n<p><em>uomList <\/em>to lista warto\u015bci z identyfikatorem jednostki miary.<\/p>\n<p><em>quantityList<\/em> to lista warto\u015bci z cz\u0119\u015bciami, kt\u00f3re maj\u0105 zosta\u0107 przypisane.<\/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 przypisuje list\u0119 warto\u015bci z ilo\u015bciami do drugiego pola.<\/p>\n<p>Je\u015bli przypisanie powiod\u0142o si\u0119 dla wszystkich element\u00f3w listy warto\u015bci, funkcja zwraca warto\u015b\u0107 <em>true<\/em>. Je\u015bli ograniczenia s\u0105 zdefiniowane dla innego pola i co najmniej jeden element listy warto\u015bci jest nieprawid\u0142owy, funkcja zwraca <em>false<\/em>. Funkcja <em>validateDboQuantity<\/em> jest dost\u0119pna do sprawdzania poszczeg\u00f3lnych element\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 schemat nie istnieje pod okre\u015blon\u0105 nazw\u0105 lub u\u017cywa typu pola, kt\u00f3ry nie pasuje do funkcji, 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>setDboListQuantity(&#8222;EXTItem&#8221;, loadItem(&#8222;10010&#8221;), &#8222;TIME&#8221;, list(5), list(loadUom(&#8222;day&#8221;))<\/em> przypisuje list\u0119 warto\u015bci z ilo\u015bci\u0105 5 dni do drugiego pola.<\/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>OLTP<\/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>setDboListQuantity(&#8222;EXTItem&#8221;, loadItem(&#8222;10010&#8221;), &#8222;MY_FIELD&#8221;, list(new(Number)), list(<\/em><em>ZERO_GUID))<\/em> pr\u00f3buje przypisa\u0107 warto\u015b\u0107 domy\u015bln\u0105 0 dla typu danych <em>Number<\/em> i warto\u015b\u0107 <em>ZERO_GUID<\/em> dla typu danych <em>Guid<\/em> do dodatkowego pola. Nale\u017cy por\u00f3wna\u0107 to z funkcj\u0105 <em>resetDbo<\/em>, kt\u00f3ra resetuje pole dodatkowe do jego warto\u015bci domy\u015blnej lub pierwotnej.<\/p>\n<p>Funkcja nie wywo\u0142uje \u017cadnych indywidualnych kontroli dla dodatkowego pola. Dlatego nale\u017cy wprowadzi\u0107 wszystkie niezb\u0119dne kontrole w deklaracjach 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>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>dboQuantity<\/em><em>, <\/em><em>dboListQuantity<\/em><em>, <\/em><em>setDboQuantity<\/em><em>, <\/em><em>validateDboQuantity<\/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.setDboListQuantity<\/em> dodaje dwie ilo\u015bci do listy warto\u015bci innego pola dla partnera. Je\u015bli jednostka miary jest nieprawid\u0142owa, u\u017cywana jest warto\u015b\u0107 <em>kg<\/em>.<\/p>\n<p>function create()<\/p>\n<p>{<\/p>\n<p>\u00a0 var p_name := parameters.NAME;<\/p>\n<p>\u00a0 var p_partner := loadPartner(parameters.PARTNER);<\/p>\n<p>\u00a0 var p_amount1 := parameters.AMOUNT1;<\/p>\n<p>\u00a0 var p_amount2 := parameters.AMOUNT2;<\/p>\n<p>\u00a0 var p_uom1 := parameters.UOM1;<\/p>\n<p>\u00a0 var p_uom2 := parameters.UOM2;<\/p>\n<p>\u00a0 var dboSuccess := false;<\/p>\n<p>\u00a0 var defaultUomGuid := loadUom(&#8222;kg&#8221;):guid;<\/p>\n<p>\u00a0 var uom1Guid := loadUom(p_uom1):guid;<\/p>\n<p>\u00a0 if (isNull(uom1Guid))<\/p>\n<p>\u00a0\u00a0\u00a0 uom1Guid := defaultUomGuid;<\/p>\n<p>\u00a0 var uom2Guid := loadUom(p_uom2):guid;<\/p>\n<p>\u00a0 if (isNull(uom2Guid))<\/p>\n<p>\u00a0\u00a0\u00a0 uom2Guid := defaultUomGuid;<\/p>\n<p>\u00a0 dboSuccess := setDboListQuantity(&#8222;EXTPartner&#8221;, p_partner, p_name, list(p_amount1, p_amount2), list(uom1Guid, uom2Guid));<\/p>\n<p>\u00a0 result.IS_NULL := isNull(dboSuccess);<\/p>\n<p>\u00a0 result.IS_SUCCESS := cast(Boolean, first(dboSuccess, false));<\/p>\n<p>}<\/div><\/section>\n<h6 id=\"setdboliststring\" ><span class=\"ez-toc-section\" id=\"setDboListString\"><\/span><strong>setDboListString<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h6>\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>setDboListString<\/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>setDboListString<\/em> przypisuje warto\u015b\u0107 do innego pola typu <em>Text, Email address<\/em> lub<em> Uniform Resource Locator (URL).<\/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>Boolean setDboListString(String schemaName, CisObject object, String attributeName, String[] textList)<\/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>schemaName<\/em> identyfikuje drugie pole. Nazwa schematu zaczyna si\u0119 od <em>EXT<\/em>, po kt\u00f3rym nast\u0119puje nazwa obiektu biznesowego bez jego przestrzeni nazw. Je\u015bli obiekt biznesowy znajduje si\u0119 w przestrzeni nazw innej ni\u017c <em>com.cisag<\/em>, druga cz\u0119\u015b\u0107 przestrzeni nazw jest wstawiana wielkimi literami mi\u0119dzy <em>EXT <\/em>a nazw\u0105 obiektu biznesowego. Przyk\u0142ady nazw schemat\u00f3w to<\/p>\n<p><em>EXTItem<\/em> dla obiektu biznesowego <em>com.cisag.app.general.obj.Item<\/em><\/p>\n<p><em>EXTPurchaseItem<\/em> dla obiektu biznesowego <em>com.cisag.app.purchasing.obj.PurchaseItem<\/em><\/p>\n<p><em>EXTSEMObjectAccount<\/em> dla obiektu biznesowego <em>com.sem.ext.app.fin.financialaccounting.obj.ObjectAccount<\/em><\/p>\n<p><em>object<\/em> to instancja obiektu biznesowego.<\/p>\n<p><em>attributeName <\/em>to nazwa dodatkowego pola.<\/p>\n<p><em>textList <\/em>to lista warto\u015bci, kt\u00f3ra ma zosta\u0107 przypisana do pola dodatkowego.<\/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 przypisuje list\u0119 warto\u015bci <em>textList<\/em> do pola dodatkowego.<\/p>\n<p>Je\u015bli przypisanie powiod\u0142o si\u0119 dla wszystkich element\u00f3w listy warto\u015bci, funkcja zwraca warto\u015b\u0107 <em>true<\/em>. Je\u015bli ograniczenia s\u0105 zdefiniowane dla innego pola i co najmniej jeden element listy warto\u015bci jest nieprawid\u0142owy, funkcja zwraca <em>false<\/em>. Funkcja <em>validateDboString<\/em> jest dost\u0119pna do sprawdzania poszczeg\u00f3lnych element\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 schemat nie istnieje pod okre\u015blon\u0105 nazw\u0105 lub u\u017cywa typu pola, kt\u00f3ry nie pasuje do funkcji, 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>setDboListText(&#8222;EXTItem&#8221;, loadItem(&#8222;10010&#8221;), &#8222;STRINGS&#8221;, list(&#8222;A&#8221;, &#8222;B&#8221;, &#8222;C&#8221;))<\/em> przypisuje list\u0119 warto\u015bci z okre\u015blonymi warto\u015bciami do dodatkowego pola.<\/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>OLTP<\/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>setDboListString(&#8222;EXTItem&#8221;, loadItem(&#8222;10010&#8221;), &#8222;MY_FIELD&#8221;, list(new(String))<\/em> pr\u00f3buje przypisa\u0107 pusty ci\u0105g znak\u00f3w do dodatkowego pola jako domy\u015bln\u0105 warto\u015b\u0107 typu danych <em>Number<\/em>. Por\u00f3wnaj to z funkcj\u0105 <em>resetDbo<\/em>, kt\u00f3ra resetuje pole dodatkowe do jego domy\u015blnej lub oryginalnej warto\u015bci.<\/p>\n<p>Funkcja nie wywo\u0142uje \u017cadnych indywidualnych kontroli dla dodatkowego pola. Dlatego nale\u017cy wprowadzi\u0107 wszystkie niezb\u0119dne kontrole w deklaracjach 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>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>dboString<\/em><em>, <\/em><em>dboListString<\/em><em>, <\/em><em>setDboString<\/em><em>, <\/em><em>validateDboString<\/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.setDboListString<\/em> dodaje nowy ci\u0105g znak\u00f3w do listy warto\u015bci innego pola dla partnera.<\/p>\n<p>function create()<\/p>\n<p>{<\/p>\n<p>\u00a0 var p_name := parameters.NAME;<\/p>\n<p>\u00a0 var p_partner := loadPartner(parameters.PARTNER);<\/p>\n<p>\u00a0 var p_text := parameters.TEXT;<\/p>\n<p>\u00a0 var dboSuccess := false;<\/p>\n<p>\u00a0 if (p_text = &#8222;&#8221;)<\/p>\n<p>\u00a0\u00a0\u00a0 p_text := &#8222;[pusty ci\u0105g]&#8221;;<\/p>\n<p>\u00a0 var valueList := dboListString(&#8222;EXTPartner&#8221;, p_partner, p_name);<\/p>\n<p>\u00a0 if (valueList[0] = new(String))<\/p>\n<p>\u00a0\u00a0\u00a0 valueList[0] := p_text;<\/p>\n<p>\u00a0 inny<\/p>\n<p>\u00a0\u00a0\u00a0 add(valueList, p_text);<\/p>\n<p>\u00a0 dboSuccess := setDboString(&#8222;EXTPartner&#8221;, p_partner, p_name, valueList);<\/p>\n<p>\u00a0 result.IS_NULL := isNull(dboSuccess);<\/p>\n<p>\u00a0 result.IS_SUCCESS := cast(Boolean, first(dboSuccess, false));<\/p>\n<p>}<\/div><\/section>\n<h6 id=\"setdbolisttimestamp\" ><span class=\"ez-toc-section\" id=\"setDboListTimestamp\"><\/span><strong>setDboListTimestamp<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h6>\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>setDboListTimestamp<\/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>setDboListTimestamp<\/em> przypisuje list\u0119 warto\u015bci do innego pola typu <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>Podpisy<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Boolean setDboListTimestamp(String schemaName, CisObject object, Timestamp attributeName, Timestamp[] timestampList)<\/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>schemaName<\/em> identyfikuje drugie pole. Nazwa schematu zaczyna si\u0119 od <em>EXT,<\/em> po kt\u00f3rym nast\u0119puje nazwa obiektu biznesowego bez jego przestrzeni nazw. Je\u015bli obiekt biznesowy znajduje si\u0119 w przestrzeni nazw innej ni\u017c <em>com.cisag<\/em>, druga cz\u0119\u015b\u0107 przestrzeni nazw jest wstawiana wielkimi literami mi\u0119dzy <em>EXT<\/em> a nazw\u0105 obiektu biznesowego. Przyk\u0142ady nazw schemat\u00f3w to<\/p>\n<p><em>EXTItem<\/em> dla obiektu biznesowego <em>com.cisag.app.general.obj.Item<\/em><\/p>\n<p><em>EXTPurchaseItem<\/em> dla obiektu biznesowego <em>com.cisag.app.purchasing.obj.PurchaseItem<\/em><\/p>\n<p><em>EXTSEMObjectAccount<\/em> dla obiektu biznesowego <em>com.sem.ext.app.fin.financialaccounting.obj.ObjectAccount<\/em><\/p>\n<p><em>object<\/em> to instancja obiektu biznesowego.<\/p>\n<p><em>attributeName <\/em>to nazwa dodatkowego pola.<\/p>\n<p><em>timestampList <\/em>to lista warto\u015bci, kt\u00f3ra ma zosta\u0107 przypisana do dodatkowego pola.<\/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 przypisuje list\u0119 warto\u015bci <em>timestampList<\/em> do pola dodatkowego.<\/p>\n<p>Je\u015bli przypisanie powiod\u0142o si\u0119 dla wszystkich element\u00f3w listy warto\u015bci, funkcja zwraca warto\u015b\u0107 <em>true<\/em>. Je\u015bli ograniczenia s\u0105 zdefiniowane dla innego pola i co najmniej jeden element listy warto\u015bci jest nieprawid\u0142owy, funkcja zwraca <em>false<\/em>. Funkcja <em>validateDboTimestamp <\/em>jest dost\u0119pna do sprawdzania poszczeg\u00f3lnych element\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 schemat nie istnieje pod okre\u015blon\u0105 nazw\u0105 lub u\u017cywa typu pola, kt\u00f3ry nie pasuje do funkcji, 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>setDboListTimestamp(&#8222;EXTItem&#8221;, parameters.object, &#8222;CHANGE_HISTORY&#8221;, union(minus(dboListTimestamp(&#8222;EXTItem&#8221;, parameters.object, &#8222;CHANGE_HISTORY&#8221;)), list(new(Timestamp))), list(now()))<\/em> dodaje nowy element z aktualnym czasem do listy warto\u015bci elementu, do kt\u00f3rego odwo\u0142uje si\u0119 parametr zdarzenia <em>parameters.object.<\/em> Funkcja <em>minus<\/em> usuwa domy\u015bln\u0105 warto\u015b\u0107 typu danych <em>Timestamp<\/em>, kt\u00f3r\u0105 funkcja <em>dboListTimestamp<\/em> zwraca, je\u015bli do dodatkowego pola nie jest przypisana \u017cadna 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>Kontekst<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>OLTP<\/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>setDboListTimestamp(&#8222;EXTItem&#8221;, loadItem(&#8222;10010&#8221;), &#8222;MY_FIELD&#8221;, list(new(Timestamp)))<\/em> pr\u00f3buje przypisa\u0107 warto\u015b\u0107 domy\u015bln\u0105 <em>UNDEFINED_DATE<\/em> typu danych <em>Timestamp<\/em> do dodatkowego pola. Nalezy por\u00f3wna\u0107 to z funkcj\u0105 <em>resetDbo<\/em>, kt\u00f3ra resetuje pole dodatkowe do jego warto\u015bci domy\u015blnej lub oryginalnej.<\/p>\n<p>Funkcja nie wywo\u0142uje \u017cadnych indywidualnych kontroli dla dodatkowego pola. Dlatego nale\u017cy wprowadzi\u0107 wszystkie niezb\u0119dne kontrole w deklaracjach 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>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>dboTimestamp<\/em><em>, <\/em><em>dboListTimestamp<\/em><em>, <\/em><em>setDboTimestamp<\/em><em>, <\/em><em>validateDboTimestamp<\/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.setDboListTimestamp<\/em> dodaje nowy element z aktualnym czasem do listy warto\u015bci innego pola partnera.<\/p>\n<p>function create()<\/p>\n<p>{<\/p>\n<p>\u00a0 var p_name := parameters.NAME;<\/p>\n<p>\u00a0 var p_partner := loadPartner(parameters.PARTNER);<\/p>\n<p>\u00a0 var dboSuccess := false;<\/p>\n<p>\u00a0 var newElement := now();<\/p>\n<p>\u00a0 var valueList := dboListTimestamp(&#8222;EXTPartner&#8221;, p_partner, p_name);<\/p>\n<p>\u00a0 if (valueList[0] = new(Timestamp))<\/p>\n<p>\u00a0\u00a0\u00a0 valueList[0] := newElement;<\/p>\n<p>\u00a0 inny<\/p>\n<p>\u00a0\u00a0\u00a0 add(valueList, newElement);<\/p>\n<p>\u00a0 dboSuccess := setDboListTimestamp(&#8222;EXTPartner&#8221;, p_partner, p_name, valueList);<\/p>\n<p>\u00a0 result.IS_NULL := isNull(dboSuccess);<\/p>\n<p>\u00a0 result.IS_SUCCESS := cast(Boolean, first(dboSuccess, false));<\/p>\n<p>}<\/div><\/section>\n<h6 id=\"setdbolistvalueset\" ><span class=\"ez-toc-section\" id=\"setDboListValueSet\"><\/span><strong>setDboListValueSet<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h6>\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>setDboListValueSet<\/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>setDboListValueSet<\/em> przypisuje list\u0119 warto\u015bci z numeryczn\u0105 identyfikacj\u0105 wyboru do innego pola typu <em>Selection field<\/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>Boolean setDboListValueSet(String schemaName, CisObject object, ValueSet attributeName, Number[] idList)<\/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>schemaName<\/em> identyfikuje drugie pole. Nazwa schematu zaczyna si\u0119 od <em>EXT<\/em>, po kt\u00f3rym nast\u0119puje nazwa obiektu biznesowego bez jego przestrzeni nazw. Je\u015bli obiekt biznesowy znajduje si\u0119 w przestrzeni nazw innej ni\u017c <em>com.cisag<\/em>, druga cz\u0119\u015b\u0107 przestrzeni nazw jest wstawiana wielkimi literami mi\u0119dzy <em>EXT<\/em> a nazw\u0105 obiektu biznesowego. Przyk\u0142adami nazw schemat\u00f3w s\u0105<\/p>\n<p><em>EXTItem<\/em> dla obiektu biznesowego <em>com.cisag.app.general.obj.Item<\/em><\/p>\n<p><em>EXTPurchaseItem<\/em> dla obiektu biznesowego <em>com.cisag.app.purchasing.obj.PurchaseItem<\/em><\/p>\n<p><em>EXTSEMObjectAccount<\/em> dla obiektu biznesowego <em>com.sem.ext.app.fin.financialaccounting.obj.ObjectAccount<\/em><\/p>\n<p><em>object<\/em> to instancja obiektu biznesowego.<\/p>\n<p><em>attributeName<\/em> to nazwa dodatkowego pola.<\/p>\n<p><em>idList <\/em>to lista warto\u015bci, kt\u00f3ra ma zosta\u0107 przypisana do pola dodatkowego.<\/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 przypisuje list\u0119 warto\u015bci <em>idList<\/em> do pola dodatkowego.<\/p>\n<p>Je\u015bli przypisanie powiod\u0142o si\u0119 dla wszystkich element\u00f3w listy warto\u015bci, funkcja zwraca warto\u015b\u0107 <em>true<\/em>. Je\u015bli ograniczenia s\u0105 zdefiniowane dla innego pola i co najmniej jeden element listy warto\u015bci jest nieprawid\u0142owy, funkcja zwraca <em>false<\/em>. Funkcja <em>validateDboValueSet<\/em> jest dost\u0119pna do sprawdzania poszczeg\u00f3lnych element\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 schemat nie istnieje pod okre\u015blon\u0105 nazw\u0105 lub u\u017cywa typu pola, kt\u00f3ry nie pasuje do funkcji, 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>setDboListValueSet(&#8222;EXTItem&#8221;, loadItem(&#8222;10010&#8221;), &#8222;SELECTION&#8221;, list(1, 2, 3))<\/em> przypisuje list\u0119 warto\u015bci z numerycznymi identyfikatorami 1, 2 i 3 do dodatkowego pola.<\/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>OLTP<\/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>setDboListValueSet(&#8222;EXTItem&#8221;, loadItem(&#8222;10010&#8221;), &#8222;MY_FIELD&#8221;, list(new(Number))<\/em> pr\u00f3buje przypisa\u0107 domy\u015bln\u0105 warto\u015b\u0107 0 typu danych <em>Number<\/em> do dodatkowego pola. Nalezy por\u00f3wna\u0107 to z funkcj\u0105 <em>resetDbo<\/em>, kt\u00f3ra resetuje pole dodatkowe do jego warto\u015bci domy\u015blnej lub pierwotnej.<\/p>\n<p>Funkcja nie wywo\u0142uje \u017cadnych indywidualnych kontroli dla dodatkowego pola. Dlatego nale\u017cy wprowadzi\u0107 wszystkie niezb\u0119dne kontrole w deklaracjach 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>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>dboValueSet<\/em><em>, <\/em><em>dboValueSetDescription<\/em><em>, <\/em><em>dboValueSetName<\/em><em>, <\/em><em>dboListValueSet<\/em><em>, <\/em><em>dboListValueSetDescription<\/em><em>, <\/em><em>dboListValueSetName<\/em><em>, <\/em><em>setDboValueSet<\/em><em>, <\/em><em>setDboValueSetName<\/em><em>, <\/em><em>setDboListValueSetName<\/em><em>, <\/em><em>validateDboValueSet<\/em><em>, <\/em><em>validateDboValueSetName<\/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.setDboValueSet<\/em> dodaje now\u0105 numeryczn\u0105 identyfikacj\u0119 wyboru do listy warto\u015bci innego pola partnera. Je\u015bli wyb\u00f3r jest nieprawid\u0142owy, funkcja <em>setDboValueSet<\/em> zwraca warto\u015b\u0107 prawdy <em>false.<\/em><\/p>\n<p>function create()<\/p>\n<p>{<\/p>\n<p>\u00a0 var p_name := parameters.NAME;<\/p>\n<p>\u00a0 var p_partner := loadPartner(parameters.PARTNER);<\/p>\n<p>\u00a0 var p_id := parameters.ID;<\/p>\n<p>\u00a0 var dboSuccess := false;<\/p>\n<p>\u00a0 var valueList := dboListNumber(&#8222;EXTPartner&#8221;, p_partner, p_name);<\/p>\n<p>\u00a0 if (valueList[0] = new(Number))<\/p>\n<p>\u00a0\u00a0\u00a0 valueList[0] := p_id;<\/p>\n<p>\u00a0 inny<\/p>\n<p>\u00a0\u00a0\u00a0 add(valueList, p_id);<\/p>\n<p>\u00a0 dboSuccess := setDboListNumber(&#8222;EXTPartner&#8221;, p_partner, p_name, valueList);<\/p>\n<p>\u00a0 result.IS_NULL := isNull(dboSuccess);<\/p>\n<p>\u00a0 result.IS_SUCCESS := cast(Boolean, first(dboSuccess, false));<\/p>\n<p>}<\/div><\/section>\n<h6 id=\"setdbolistvaluesetname\" ><span class=\"ez-toc-section\" id=\"setDboListValueSetName\"><\/span><strong>setDboListValueSetName<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h6>\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>setDboListtValueSetName<\/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>setDboListValueSetName <\/em>przypisuje list\u0119 warto\u015bci ze sta\u0142ymi nazwami selekcji do innego pola typu <em>Selection field<\/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>Boolean setDboListValueSetName(String schemaName, CisObject object, ValueSet attributeName, String[] constantList)<\/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>schemaName<\/em> identyfikuje drugie pole. Nazwa schematu zaczyna si\u0119 od <em>EXT<\/em>, po kt\u00f3rym nast\u0119puje nazwa obiektu biznesowego bez jego przestrzeni nazw. Je\u015bli obiekt biznesowy znajduje si\u0119 w przestrzeni nazw innej ni\u017c <em>com.cisag<\/em>, druga cz\u0119\u015b\u0107 przestrzeni nazw jest wstawiana wielkimi literami mi\u0119dzy <em>EXT<\/em> a nazw\u0105 obiektu biznesowego. Przyk\u0142adami nazw schemat\u00f3w s\u0105<\/p>\n<p><em>EXTItem<\/em> dla obiektu biznesowego <em>com.cisag.app.general.obj.Item<\/em><\/p>\n<p><em>EXTPurchaseItem<\/em> dla obiektu biznesowego <em>com.cisag.app.purchasing.obj.PurchaseItem<\/em><\/p>\n<p><em>EXTSEMObjectAccount<\/em> dla obiektu biznesowego <em>com.sem.ext.app.fin.financialaccounting.obj.ObjectAccount<\/em><\/p>\n<p><em>object<\/em> to instancja obiektu biznesowego.<\/p>\n<p><em>attributeName<\/em> to nazwa dodatkowego pola.<\/p>\n<p><em>constantList<\/em> to lista warto\u015bci, kt\u00f3ra ma zosta\u0107 przypisana do dodatkowego pola.<\/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 przypisuje list\u0119 warto\u015bci <em>constantList<\/em> do pola dodatkowego.<\/p>\n<p>Je\u015bli przypisanie powiod\u0142o si\u0119 dla wszystkich element\u00f3w listy warto\u015bci, funkcja zwraca warto\u015b\u0107 <em>true<\/em>. Je\u015bli ograniczenia s\u0105 zdefiniowane dla innego pola i co najmniej jeden element listy warto\u015bci jest nieprawid\u0142owy, funkcja zwraca <em>false<\/em>. Funkcja <em>validateDboValueSetName<\/em> jest dost\u0119pna do sprawdzania poszczeg\u00f3lnych element\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 schemat nie istnieje pod okre\u015blon\u0105 nazw\u0105 lub u\u017cywa typu pola, kt\u00f3ry nie pasuje do funkcji, 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>setDboListValueSetName(&#8222;EXTItem&#8221;, loadItem(&#8222;10010&#8221;), &#8222;SELECTION&#8221;, list(&#8222;ONE&#8221;, &#8222;TWO&#8221;, &#8222;THREE&#8221;))<\/em> przypisuje list\u0119 warto\u015bci ze sta\u0142ymi nazwami selekcji do dodatkowego pola.<\/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>OLTP<\/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>setDboListValueSetName(&#8222;EXTItem&#8221;, loadItem(&#8222;10010&#8221;), &#8222;MY_FIELD&#8221;, list(new(String))<\/em> pr\u00f3buje przypisa\u0107 pusty ci\u0105g znak\u00f3w do dodatkowego pola jako domy\u015bln\u0105 warto\u015b\u0107 typu danych <em>String<\/em>. Por\u00f3wnaj to z funkcj\u0105 <em>resetDbo<\/em>, kt\u00f3ra resetuje pole dodatkowe do jego domy\u015blnej lub oryginalnej warto\u015bci.<\/p>\n<p>Funkcja nie wywo\u0142uje \u017cadnych indywidualnych kontroli dla dodatkowego pola. Dlatego nale\u017cy wprowadzi\u0107 wszystkie niezb\u0119dne kontrole w deklaracjach 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>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>dboValueSet<\/em><em>, <\/em><em>dboValueSetDescription<\/em><em>, <\/em><em>dboValueSetName<\/em><em>, <\/em><em>dboListValueSet<\/em><em>, <\/em><em>dboListValueSetDescription<\/em><em>, <\/em><em>dboListValueSetName<\/em><em>, <\/em><em>setDboValueSet<\/em><em>, <\/em><em>setDboValueSetName<\/em><em>, <\/em><em>setDboListValueSet<\/em><em>, <\/em><em>validateDboValueSet<\/em><em>, <\/em><em>validateDboValueSetName<\/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.setDboValueSetName<\/em> dodaje nazwy oddzielone przecinkami do listy warto\u015bci innego pola partnera. Je\u015bli wyb\u00f3r jest nieprawid\u0142owy, funkcja <em>setDboValueSetName <\/em>zwraca warto\u015b\u0107 prawdy <em>false<\/em>.<\/p>\n<p>function create()<\/p>\n<p>{<\/p>\n<p>\u00a0 var p_name := parameters.NAME;<\/p>\n<p>\u00a0 var p_partner := loadPartner(parameters.PARTNER);<\/p>\n<p>\u00a0 var p_constantNames := parameters.CONSTANTS;<\/p>\n<p>\u00a0 var dboSuccess := false;<\/p>\n<p>\u00a0 var constantNames := split(p_constantNames, &#8222;,&#8221;);<\/p>\n<p>\u00a0 if (isEmpty(constantNames))<\/p>\n<p>\u00a0\u00a0\u00a0 constantNames := list(new(String));<\/p>\n<p>\u00a0 dboSuccess := setDboListValueSetName(&#8222;EXTPartner&#8221;, p_partner, p_name, constantNames);<\/p>\n<p>\u00a0 result.IS_NULL := isNull(dboSuccess);<\/p>\n<p>\u00a0 result.IS_SUCCESS := cast(Boolean, first(dboSuccess, false));<\/p>\n<p>}<\/p>\n<p>\/* Dzieli &#8222;p_text&#8221; na tablic\u0119 przy ka\u017cdym wyst\u0105pieniu &#8222;p_separator&#8221; *\/<\/p>\n<p>function split(p_text as String, p_separator as String) as String[]<\/p>\n<p>{<\/p>\n<p>\u00a0 if (p_separator = &#8222;&#8221;)<\/p>\n<p>\u00a0\u00a0\u00a0 p_separator := &#8221; &#8222;;<\/p>\n<p>\u00a0 var increment := length(p_separator);<\/p>\n<p>\u00a0 var sep as String;<\/p>\n<p>\u00a0 var word as String;<\/p>\n<p>\u00a0 var r_wordList as String[];<\/p>\n<p>\u00a0 var i := 0;<\/p>\n<p>\u00a0 var startPos := 0;<\/p>\n<p>\u00a0 while (i + increment &#8211; 1 &lt; length(p_text)) {<\/p>\n<p>\u00a0\u00a0\u00a0 sep := substring(p_text, i, i + increment);<\/p>\n<p>\u00a0\u00a0\u00a0 if (sep = p_separator) {<\/p>\n<p>\u00a0\u00a0\u00a0\u00a0\u00a0 word := trim(substring(p_text, startPos, i));<\/p>\n<p>\u00a0\u00a0\u00a0\u00a0\u00a0 i := i + przyrost;<\/p>\n<p>\u00a0\u00a0\u00a0\u00a0\u00a0 startPos := i;<\/p>\n<p>\u00a0\u00a0\u00a0\u00a0\u00a0 if (word &lt;&gt; &#8222;&#8221; and word &lt;&gt; p_separator)<\/p>\n<p>\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 add(r_wordList, word);<\/p>\n<p>\u00a0\u00a0\u00a0 } else {<\/p>\n<p>\u00a0\u00a0\u00a0\u00a0\u00a0 i := i + 1;<\/p>\n<p>\u00a0\u00a0\u00a0 }<\/p>\n<p>\u00a0 }<\/p>\n<p>\u00a0 word := substring(p_text, startPos);<\/p>\n<p>\u00a0 if (word &lt;&gt; &#8222;&#8221; and word &lt;&gt; p_separator)<\/p>\n<p>\u00a0\u00a0\u00a0 add(r_wordList, word);<\/p>\n<p>\u00a0 return r_wordList;<\/p>\n<p>}<\/div><\/section>\n<h5 id=\"funkcje-sprawdzania-poprawnosci\" ><span class=\"ez-toc-section\" id=\"Funkcje_sprawdzania_poprawnosci\"><\/span>Funkcje sprawdzania poprawno\u015bci<span class=\"ez-toc-section-end\"><\/span><\/h5>\n<h6 id=\"validatedbocisdate\" ><span class=\"ez-toc-section\" id=\"validateDboCisDate\"><\/span><strong>validateDboCisDate<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h6>\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>validateDboCisDate<\/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>validateDboCisDate <\/em>sprawdza, czy CisDate mo\u017cna przypisa\u0107 do innego pola typu <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>Podpisy<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Boolean validateDboCisDate(String schemaName, CisObject object, String attributeName, CisDate date)<\/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>schemaName<\/em> identyfikuje drugie pole. Nazwa schematu zaczyna si\u0119 od <em>EXT<\/em>, po kt\u00f3rym nast\u0119puje nazwa obiektu biznesowego bez jego przestrzeni nazw. Je\u015bli obiekt biznesowy znajduje si\u0119 w przestrzeni nazw innej ni\u017c <em>com.cisag<\/em>, druga cz\u0119\u015b\u0107 przestrzeni nazw jest wstawiana wielkimi literami mi\u0119dzy <em>EXT<\/em> a nazw\u0105 obiektu biznesowego. Przyk\u0142adami nazw schemat\u00f3w s\u0105<\/p>\n<p><em>EXTItem<\/em> dla obiektu biznesowego <em>com.cisag.app.general.obj.Item<\/em><\/p>\n<p><em>EXTPurchaseItem<\/em> dla obiektu biznesowego <em>com.cisag.app.purchasing.obj.PurchaseItem<\/em><\/p>\n<p><em>EXTSEMObjectAccount<\/em> dla obiektu biznesowego <em>com.sem.ext.app.fin.financialaccounting.obj.ObjectAccount<\/em><\/p>\n<p><em>object <\/em>to instancja obiektu biznesowego.<\/p>\n<p><em>attributeName <\/em>to nazwa dodatkowego pola.<\/p>\n<p><em>date <\/em>to warto\u015b\u0107, 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 sprawdza, czy data <em>date<\/em> mo\u017ce zosta\u0107 przypisana do pola dodatkowego.<\/p>\n<p>Je\u015bli sprawdzenie zako\u0144czy\u0142o si\u0119 pomy\u015blnie, funkcja zwraca warto\u015b\u0107 <em>true<\/em>. Je\u015bli ograniczenia s\u0105 zdefiniowane dla innego pola i <em>date<\/em> nie jest dozwolone, funkcja 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>\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 schemat nie istnieje pod okre\u015blon\u0105 nazw\u0105 lub u\u017cywa typu pola, kt\u00f3ry nie pasuje do funkcji, 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>validateDboCisDate(&#8222;EXTItem&#8221;, loadItem(&#8222;10010&#8221;), &#8222;LAST_DATE&#8221;, today())<\/em> sprawdza, czy dzisiejsza data jest prawid\u0142ow\u0105 warto\u015bci\u0105 dla drugiego pola.<\/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>OLTP<\/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>validateDboCisDate(&#8222;EXTItem&#8221;, loadItem(&#8222;10010&#8221;), &#8222;MY_FIELD&#8221;, new(CisDate))<\/em> sprawdza, czy warto\u015b\u0107 domy\u015blna <em>null<\/em> typu danych <em>CisDate<\/em> jest dopuszczaln\u0105 warto\u015bci\u0105 dla pola dodatkowego, tj. czy pole dodatkowe mo\u017ce zosta\u0107 opr\u00f3\u017cnione przez to przypisanie. Nale\u017cy por\u00f3wna\u0107 tak\u017ce funkcj\u0119 <em>resetDbo<\/em>, kt\u00f3ra resetuje pole dodatkowe do jego warto\u015bci domy\u015blnej lub pierwotnej.<\/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>dboCisDate<\/em><em>, <\/em><em>dboListCisDate<\/em><em>, <\/em><em>setDboCisDate<\/em><em>, <\/em><em>setDboListCisDate<\/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.validateDboCisDate<\/em> sprawdza, czy dzisiejsza data mo\u017ce zosta\u0107 przypisana do innego pola typu <em>Date<\/em>.<\/p>\n<p>function create()<\/p>\n<p>{<\/p>\n<p>\u00a0 var p_name := parameters.NAME;<\/p>\n<p>\u00a0 var p_partner := loadPartner(parameters.PARTNER);<\/p>\n<p>\u00a0 var testValue := today();<\/p>\n<p>\u00a0 var dboSuccess := false;<\/p>\n<p>\u00a0 dboSuccess := validateDboCisDate(&#8222;EXTPartner&#8221;, p_partner, p_name, testValue);<\/p>\n<p>\u00a0 result.IS_NULL := isNull(dboSuccess);<\/p>\n<p>\u00a0 result.IS_SUCCESS := cast(Boolean, first(dboSuccess, false));<\/p>\n<p>}<\/div><\/section>\n<h6 id=\"validatedbocisobject\" ><span class=\"ez-toc-section\" id=\"validateDboCisObject\"><\/span><strong>validateDboCisObject<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h6>\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>validateDboCisObject<\/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>validateDboCisObject<\/em> sprawdza, czy warto\u015b\u0107 mo\u017ce zosta\u0107 przypisana do innego pola typu <em>Business Entity<\/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>Boolean validateDboCisObject(String schemaName, CisObject object, String attributeName, CisObjectReference objectReference)<\/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>schemaName<\/em> identyfikuje drugie pole. Nazwa schematu zaczyna si\u0119 od <em>EXT<\/em>, po kt\u00f3rym nast\u0119puje nazwa obiektu biznesowego bez jego przestrzeni nazw. Je\u015bli obiekt biznesowy znajduje si\u0119 w przestrzeni nazw innej ni\u017c <em>com.cisag<\/em>, druga cz\u0119\u015b\u0107 przestrzeni nazw jest wstawiana wielkimi literami mi\u0119dzy <em>EXT<\/em> a nazw\u0105 obiektu biznesowego. Przyk\u0142adami nazw schemat\u00f3w s\u0105<\/p>\n<p><em>EXTItem<\/em> dla obiektu biznesowego <em>com.cisag.app.general.obj.Item<\/em><\/p>\n<p><em>EXTPurchaseItem<\/em> dla obiektu biznesowego <em>com.cisag.app.purchasing.obj.PurchaseItem<\/em><\/p>\n<p><em>EXTSEMObjectAccount<\/em> dla obiektu biznesowego <em>com.sem.ext.app.fin.financialaccounting.obj.ObjectAccount<\/em><\/p>\n<p><em>object<\/em> to instancja obiektu biznesowego.<\/p>\n<p><em>attributeName<\/em> to nazwa dodatkowego pola.<\/p>\n<p><em>objectReference<\/em> to warto\u015b\u0107, 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 sprawdza, czy jednostka biznesowa, do kt\u00f3rej odwo\u0142uje si\u0119 <em>objectReference<\/em>, mo\u017ce zosta\u0107 przypisana do dodatkowego pola.<\/p>\n<p>Je\u015bli sprawdzenie zako\u0144czy\u0142o si\u0119 pomy\u015blnie, funkcja zwraca warto\u015b\u0107 <em>true<\/em>. Je\u015bli ograniczenia s\u0105 zdefiniowane dla innego pola, a <em>object<\/em> nie jest dozwolone, funkcja 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>\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 schemat nie istnieje pod okre\u015blon\u0105 nazw\u0105 lub u\u017cywa typu pola, kt\u00f3ry nie pasuje do funkcji, 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>validateDboCisObject(&#8222;EXTItem&#8221;, parameters.object, &#8222;SUBMITTER&#8221;, getByPrimaryKey(CisObject( com.cisag.app.general.obj.UserAssignment), parameters.userGuid)-&gt;Partner)<\/em> sprawdza, czy partner u\u017cytkownika, kt\u00f3ry wywo\u0142a\u0142 zdarzenie typu <em>Business Entity <\/em>lub <em>User Action<\/em> jest prawid\u0142ow\u0105 warto\u015bci\u0105 dla dodatkowego pola.<\/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>OLTP<\/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>validateDboCisObject(&#8222;EXTItem&#8221;, loadItem(&#8222;10010&#8221;), &#8222;MY_FIELD&#8221;, new(CisObject))<\/em> sprawdza, czy warto\u015b\u0107 domy\u015blna <em>null<\/em> typu danych <em>CisObject<\/em> jest dopuszczaln\u0105 warto\u015bci\u0105 dla pola dodatkowego, tj. czy pole dodatkowe mo\u017ce zosta\u0107 opr\u00f3\u017cnione przez to przypisanie. Nale\u017cy por\u00f3wna\u0107 tak\u017ce funkcj\u0119 <em>resetDbo<\/em>, kt\u00f3ra resetuje pole dodatkowe do jego warto\u015bci domy\u015blnej lub pierwotnej.<\/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>dboCisObject<\/em><em>, <\/em><em>dboListCisObject<\/em><em>, <\/em><em>setDboCisObject<\/em><em>, <\/em><em>setDboListCisObject<\/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.validateDboCisObject <\/em>sprawdza, czy partner u\u017cytkownika mo\u017ce zosta\u0107 przypisany do innego pola typu <em>Business Entity<\/em>.<\/p>\n<p>function create()<\/p>\n<p>{<\/p>\n<p>\u00a0 var p_name := parameters.NAME;<\/p>\n<p>\u00a0 var p_item := loadItem(parameters.ITEM);<\/p>\n<p>\u00a0 var p_user := parameters.USER;<\/p>\n<p>\u00a0 var testValue := loadPartnerOfUser(userGuid(p_user));<\/p>\n<p>\u00a0 var dboSuccess := false;<\/p>\n<p>\u00a0 dboSuccess := validateDboCisObject(&#8222;EXTItem&#8221;, item, p_name, testValue);<\/p>\n<p>\u00a0 result.IS_NULL := isNull(dboSuccess);<\/p>\n<p>\u00a0 result.IS_SUCCESS := cast(Boolean, first(dboSuccess, false));<\/p>\n<p>}<\/p>\n<p>function loadPartnerOfUser(user as Guid) as CisObject(com.cisag.app.general.obj.Partner)<\/p>\n<p>{<\/p>\n<p>\u00a0 back<\/p>\n<p>\u00a0\u00a0\u00a0 getByPrimaryKey(<\/p>\n<p>\u00a0\u00a0\u00a0\u00a0\u00a0 CisObject(com.cisag.app.general.obj.UserAssignment),<\/p>\n<p>\u00a0\u00a0\u00a0\u00a0\u00a0 user)-&gt;Partner;<\/p>\n<p>}<\/div><\/section>\n<h6 id=\"validatedbodomesticamount\" ><span class=\"ez-toc-section\" id=\"validateDboDomesticAmount\"><\/span><strong>validateDboDomesticAmount<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h6>\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>validateDboDomesticAmount<\/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>validateDboDomesticAmount<\/em> sprawdza, czy warto\u015b\u0107 mo\u017ce zosta\u0107 przypisana do innego pola typu <em>Kwota w walucie wewn\u0119trznej<\/em> lub <em>Cena w walucie wewn\u0119trznej<\/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>Boolean validateDboDomesticAmount(String schemaName, CisObject object, String attributeName, Number amount)<\/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>schemaName<\/em> identyfikuje drugie pole. Nazwa schematu zaczyna si\u0119 od <em>EXT<\/em>, po kt\u00f3rym nast\u0119puje nazwa obiektu biznesowego bez jego przestrzeni nazw. Je\u015bli obiekt biznesowy znajduje si\u0119 w przestrzeni nazw innej ni\u017c <em>com.cisag<\/em>, druga cz\u0119\u015b\u0107 przestrzeni nazw jest wstawiana wielkimi literami mi\u0119dzy <em>EXT<\/em> a nazw\u0105 obiektu biznesowego. Przyk\u0142adami nazw schemat\u00f3w s\u0105<\/p>\n<p><em>EXTItem<\/em> dla obiektu biznesowego <em>com.cisag.app.general.obj.Item<\/em><\/p>\n<p><em>EXTPurchaseItem<\/em> dla obiektu biznesowego <em>com.cisag.app.purchasing.obj.PurchaseItem<\/em><\/p>\n<p><em>EXTSEMObjectAccount<\/em> dla obiektu biznesowego <em>com.sem.ext.app.fin.financialaccounting.obj.ObjectAccount<\/em><\/p>\n<p><em>object <\/em>to instancja obiektu biznesowego.<\/p>\n<p><em>attributeName<\/em> to nazwa dodatkowego pola.<\/p>\n<p><em>amount<\/em> to warto\u015b\u0107, 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 sprawdza, czy<em> amount<\/em> mo\u017ce zosta\u0107 przypisana do pola dodatkowego.<\/p>\n<p>Je\u015bli sprawdzenie zako\u0144czy\u0142o si\u0119 pomy\u015blnie, funkcja zwraca warto\u015b\u0107<em> true<\/em>. Je\u015bli ograniczenia s\u0105 zdefiniowane dla innego pola, a <em>object <\/em>nie jest dozwolone, funkcja 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>\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 schemat nie istnieje pod okre\u015blon\u0105 nazw\u0105 lub u\u017cywa typu pola, kt\u00f3ry nie pasuje do funkcji, 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>validateDboDomesticAmount(&#8222;EXTItem&#8221;, loadItem(&#8222;10010&#8221;), &#8222;INITIAL_VALUE&#8221;, 100)<\/em> sprawdza, czy 100 jest dopuszczaln\u0105 warto\u015bci\u0105 dla pola dodatkowego.<\/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>OLTP<\/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>validateDboDomesticAmount(&#8222;EXTItem&#8221;, loadItem(&#8222;10010&#8221;), &#8222;MY_FIELD&#8221;, new(Number))<\/em> sprawdza, czy warto\u015b\u0107 domy\u015blna 0 typu danych <em>Number<\/em> jest dopuszczaln\u0105 warto\u015bci\u0105 dla pola dodatkowego, tj. czy pole dodatkowe mo\u017ce zosta\u0107 opr\u00f3\u017cnione przez to przypisanie. Nale\u017cy por\u00f3wna\u0107 tak\u017ce funkcj\u0119 <em>resetDbo<\/em>, kt\u00f3ra resetuje pole dodatkowe do jego warto\u015bci domy\u015blnej lub pierwotnej.<\/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>dboDomesticAmount<\/em><em>, <\/em><em>dboListDomesticAmount<\/em><em>, <\/em><em>setDboDomesticAmount<\/em><em>, <\/em><em>setDboListDomesticAmount<\/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.setDboDomesticAmount<\/em> sprawdza, czy warto\u015b\u0107 mo\u017ce zosta\u0107 przypisana do innego pola typu <em>Kwota w walucie wewn\u0119trznej<\/em> lub <em>Cena w walucie wewn\u0119trznej<\/em>.<\/p>\n<p>function create()<\/p>\n<p>{<\/p>\n<p>\u00a0 var p_name := parameters.NAME;<\/p>\n<p>\u00a0 var p_partner := loadPartner(parameters.PARTNER);<\/p>\n<p>\u00a0 var testValue := parameters.AMOUNT;<\/p>\n<p>\u00a0 var dboSuccess := false;<\/p>\n<p>\u00a0 dboSuccess := validateDboDomesticAmount(&#8222;EXTPartner&#8221;, p_partner, p_name, testValue);<\/p>\n<p>\u00a0 result.IS_NULL := isNull(dboSuccess);<\/p>\n<p>\u00a0 result.IS_SUCCESS := cast(Boolean, first(dboSuccess, false));<\/p>\n<p>}<\/div><\/section>\n<h6 id=\"validatedboforeignamount\" ><span class=\"ez-toc-section\" id=\"validateDboForeignAmount\"><\/span><strong>validateDboForeignAmount<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h6>\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=\"414\">\n<p>validateDboForeignAmount<\/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=\"414\">\n<p><em>validateDboForeignAmount <\/em>sprawdza, czy warto\u015b\u0107 mo\u017ce zosta\u0107 przypisana do innego pola typu <em>Amount <\/em>lub <em>Price<\/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=\"414\">\n<p>Boolean validateDboForeignAmount(String schemaName, CisObject object, String attributeName, CisObject(com.cisag.app.general.obj.ForeignAmount) foreignAmount)<\/p>\n<p>Boolean validateDboForeignAmount(String schemaName, CisObject object, String attributeName, Number amount, Guid currency)<\/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=\"414\">\n<p><em>schemaName <\/em>identyfikuje drugie pole. Nazwa schematu zaczyna si\u0119 od <em>EXT<\/em>, po kt\u00f3rym nast\u0119puje nazwa obiektu biznesowego bez jego przestrzeni nazw. Je\u015bli obiekt biznesowy znajduje si\u0119 w przestrzeni nazw innej ni\u017c <em>com.cisag<\/em>, druga cz\u0119\u015b\u0107 przestrzeni nazw jest wstawiana wielkimi literami mi\u0119dzy <em>EXT<\/em> a nazw\u0105 obiektu biznesowego. Przyk\u0142adami nazw schemat\u00f3w s\u0105<\/p>\n<p><em>EXTItem <\/em>dla obiektu biznesowego <em>com.cisag.app.general.obj.Item<\/em><\/p>\n<p><em>EXTPurchaseItem<\/em> dla obiektu biznesowego <em>com.cisag.app.purchasing.obj.PurchaseItem<\/em><\/p>\n<p><em>EXTSEMObjectAccount <\/em>dla obiektu biznesowego <em>com.sem.ext.app.fin.financialaccounting.obj.ObjectAccount<\/em><\/p>\n<p><em>object<\/em> to instancja obiektu biznesowego.<\/p>\n<p><em>attributeName <\/em>to nazwa dodatkowego pola.<\/p>\n<p><em>amount <\/em>to kwota lub cena w walucie obcej, kt\u00f3ra ma zosta\u0107 sprawdzona.<\/p>\n<p><em>currency<\/em> to identyfikator waluty obcej.<\/p>\n<p><em>foreignAmount<\/em> to cz\u0119\u015b\u0107, 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=\"414\">\n<p>Funkcja sprawdza, czy kwota lub cena w walucie obcej mo\u017ce zosta\u0107 przypisana do pola dodatkowego.<\/p>\n<p>Je\u015bli sprawdzenie zako\u0144czy\u0142o si\u0119 pomy\u015blnie, funkcja zwraca warto\u015b\u0107 <em>true<\/em>. Je\u015bli ograniczenia s\u0105 zdefiniowane dla innego pola, a <em>object <\/em>nie jest dozwolone, funkcja 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>\u0179r\u00f3d\u0142a b\u0142\u0119d\u00f3w<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"414\">\n<p>Je\u015bli schemat nie istnieje pod okre\u015blon\u0105 nazw\u0105 lub u\u017cywa typu pola, kt\u00f3ry nie pasuje do funkcji, zwracana jest warto\u015b\u0107 <em>null<\/em>. Nawet je\u015bli <em>currency<\/em> nie jest ani <em>null<\/em>, ani prawid\u0142ow\u0105 walut\u0105, 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=\"414\">\n<p><em>validateDboForeignAmount(&#8222;EXTPartner&#8221;, loadPartner(&#8222;20010&#8221;), &#8222;CREDIT_LIMIT&#8221;, 10000, loadCurrency(&#8222;USD&#8221;):guid) <\/em>sprawdza, czy kwota lub cena 10000 USD mo\u017ce by\u0107 przypisana do dodatkowego pola.<\/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=\"414\">\n<p>OLTP<\/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=\"414\">\n<p><em>validateDboForeignAmount(&#8222;EXTItem&#8221;, loadItem(&#8222;10010&#8221;), &#8222;MY_FIELD&#8221;, new(Number), new(Guid))<\/em> sprawdza, czy warto\u015b\u0107 domy\u015blna 0 typu danych <em>Number<\/em> i warto\u015b\u0107 domy\u015blna<em> null<\/em> typu danych <em>Guid <\/em>jest dopuszczaln\u0105 kwot\u0105 lub cen\u0105 dla dodatkowego pola, tj. czy dodatkowe pole mo\u017ce zosta\u0107 opr\u00f3\u017cnione przez to przypisanie. Nale\u017cy zweryfikowa\u0107 tak\u017ce funkcj\u0119 <em>resetDbo<\/em>, kt\u00f3ra resetuje pole dodatkowe do jego warto\u015bci domy\u015blnej lub pierwotnej.<\/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=\"414\">\n<p><em>dboForeignAmount<\/em><em>, <\/em><em>dboListForeignAmount<\/em><em>, <\/em><em>setDboForeignAmount<\/em><em>, <\/em><em>setDboListForeignAmount<\/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.setDboForeignAmount <\/em>sprawdza, czy warto\u015b\u0107 liczbowa i guid waluty mog\u0105 zosta\u0107 przypisane do innego pola typu <em>Amount <\/em>lub <em>Price<\/em>.<\/p>\n<p>function create()<\/p>\n<p>{<\/p>\n<p>\u00a0 var p_name := parameters.NAME;<\/p>\n<p>\u00a0 var p_partner := loadPartner(parameters.PARTNER);<\/p>\n<p>\u00a0 var testAmount := parameters.AMOUNT;<\/p>\n<p>\u00a0 var testCurrency := loadCurrency(parameters.CURRENCY):guid;<\/p>\n<p>\u00a0 var dboSuccess := false;<\/p>\n<p>\u00a0 dboSuccess := validateDboForeignAmount(&#8222;EXTPartner&#8221;, p_partner, p_name, testAmount, testCurrency);<\/p>\n<p>\u00a0 result.IS_NULL := isNull(dboSuccess);<\/p>\n<p>\u00a0 result.IS_SUCCESS := cast(Boolean, first(dboSuccess, false));<\/p>\n<p>}<\/div><\/section>\n<h6 id=\"validatedboguid\" ><span class=\"ez-toc-section\" id=\"validateDboGuid\"><\/span><strong>validateDboGuid<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h6>\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>validateDboGuid<\/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>validateDboGuid<\/em> sprawdza, czy warto\u015b\u0107 mo\u017ce zosta\u0107 przypisana do innego pola typu <em>Classification<\/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>Boolean validateDboGuid(String schemaName, Guid object, String attributeName, String path)<\/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>schemaName<\/em> identyfikuje drugie pole. Nazwa schematu zaczyna si\u0119 od <em>EXT<\/em>, po kt\u00f3rym nast\u0119puje nazwa obiektu biznesowego bez jego przestrzeni nazw. Je\u015bli obiekt biznesowy znajduje si\u0119 w przestrzeni nazw innej ni\u017c <em>com.cisag<\/em>, druga cz\u0119\u015b\u0107 przestrzeni nazw jest wstawiana wielkimi literami mi\u0119dzy <em>EXT<\/em> a nazw\u0105 obiektu biznesowego. Przyk\u0142ady nazw schemat\u00f3w to<\/p>\n<p><em>EXTItem<\/em> dla obiektu biznesowego <em>com.cisag.app.general.obj.Item<\/em><\/p>\n<p><em>EXTPurchaseItem<\/em> dla obiektu biznesowego <em>com.cisag.app.purchasing.obj.PurchaseItem<\/em><\/p>\n<p><em>EXTSEMObjectAccount<\/em> dla obiektu biznesowego <em>com.sem.ext.app.fin.financialaccounting.obj.ObjectAccount<\/em><\/p>\n<p><em>object<\/em> to instancja obiektu biznesowego.<\/p>\n<p><em>attributeName<\/em> to nazwa dodatkowego pola.<\/p>\n<p><em>path <\/em>to \u015bcie\u017cka klasyfikacji, 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 sprawdza, czy klasyfikacja ze \u015bcie\u017ck\u0105 <em>path<\/em> mo\u017ce zosta\u0107 przypisana do dodatkowego pola.<\/p>\n<p>Je\u015bli sprawdzenie zako\u0144czy\u0142o si\u0119 pomy\u015blnie, funkcja zwraca warto\u015b\u0107 <em>true.<\/em> Je\u015bli ograniczenia s\u0105 zdefiniowane dla innego pola, a <em>object<\/em> nie jest dozwolone, funkcja 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>\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 schemat nie istnieje pod okre\u015blon\u0105 nazw\u0105 lub u\u017cywa typu pola, kt\u00f3ry nie pasuje do funkcji, 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>validateDboGuid(&#8222;EXTItem&#8221;, loadItem(&#8222;10010&#8221;), &#8222;NACE&#8221;, &#8222;J-56-1-2&#8221;)<\/em> sprawdza, czy klasyfikacja jest dopuszczaln\u0105 warto\u015bci\u0105 dla pola dodatkowego.<\/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>OLTP<\/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>validateDboGuid(&#8222;EXTItem&#8221;, loadItem(&#8222;10010&#8221;), &#8222;MY_FIELD&#8221;, new(String))<\/em> sprawdza, czy pusty ci\u0105g znak\u00f3w jako warto\u015b\u0107 domy\u015blna typu danych <em>String<\/em> jest dopuszczaln\u0105 warto\u015bci\u0105 dla pola dodatkowego, tj. czy pole dodatkowe mo\u017ce zosta\u0107 opr\u00f3\u017cnione przez to przypisanie. Nale\u017cy zweryfikowa\u0107 tak\u017ce funkcj\u0119 <em>resetDbo<\/em>, kt\u00f3ra resetuje pole dodatkowe do jego warto\u015bci domy\u015blnej lub pierwotnej.<\/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>dboGuid<\/em><em>, <\/em><em>dboListGuid<\/em><em>, <\/em><em>setDboGuid<\/em><em>, <\/em><em>setDboListGuid<\/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.validateDboGuid<\/em> sprawdza, czy \u015bcie\u017cka klasyfikacji mo\u017ce zosta\u0107 przypisana do innego pola typu <em>Classification<\/em>.<\/p>\n<p>function create()<\/p>\n<p>{<\/p>\n<p>\u00a0 var p_name := parameters.NAME;<\/p>\n<p>\u00a0 var p_partner := loadPartner(parameters.PARTNER);<\/p>\n<p>\u00a0 var testValue := parameters.PATH;<\/p>\n<p>\u00a0 var dboSuccess := false;<\/p>\n<p>\u00a0 dboSuccess := validateDboGuid(&#8222;EXTPartner&#8221;, p_partner, p_name, testValue);<\/p>\n<p>\u00a0 result.IS_NULL := isNull(dboSuccess);<\/p>\n<p>\u00a0 result.IS_SUCCESS := cast(Boolean, first(dboSuccess, false));<\/p>\n<p>}<\/div><\/section>\n<h6 id=\"validatedbonumber\" ><span class=\"ez-toc-section\" id=\"validateDboNumber\"><\/span><strong>validateDboNumber<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h6>\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>validateDboNumber<\/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>validateDboNumber<\/em> sprawdza, czy warto\u015b\u0107 mo\u017ce zosta\u0107 przypisana do innego pola typu <em>Decimal<\/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>Boolean validateDboNumber(String schemaName, CisObject object, String attributeName, Number decimal)<\/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>schemaName<\/em> identyfikuje drugie pole. Nazwa schematu zaczyna si\u0119 od <em>EXT,<\/em> po kt\u00f3rym nast\u0119puje nazwa obiektu biznesowego bez jego przestrzeni nazw. Je\u015bli obiekt biznesowy znajduje si\u0119 w przestrzeni nazw innej ni\u017c <em>com.cisag<\/em>, druga cz\u0119\u015b\u0107 przestrzeni nazw jest wstawiana wielkimi literami mi\u0119dzy <em>EXT<\/em> a nazw\u0105 obiektu biznesowego. Przyk\u0142adami nazw schemat\u00f3w s\u0105<\/p>\n<p><em>EXTItem<\/em> dla obiektu biznesowego <em>com.cisag.app.general.obj.Item<\/em><\/p>\n<p><em>EXTPurchaseItem<\/em> dla obiektu biznesowego <em>com.cisag.app.purchasing.obj.PurchaseItem<\/em><\/p>\n<p><em>EXTSEMObjectAccount<\/em> dla obiektu biznesowego <em>com.sem.ext.app.fin.financialaccounting.obj.ObjectAccount<\/em><\/p>\n<p><em>object<\/em> to instancja obiektu biznesowego.<\/p>\n<p><em>attributeName<\/em> to nazwa dodatkowego pola.<\/p>\n<p><em>decimal <\/em>to warto\u015b\u0107, 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 sprawdza, czy do pola dodatkowego mo\u017cna przypisa\u0107 warto\u015b\u0107 <em>decimal<\/em>.<\/p>\n<p>Je\u015bli sprawdzenie zako\u0144czy\u0142o si\u0119 pomy\u015blnie, funkcja zwraca warto\u015b\u0107 <em>true<\/em>. Je\u015bli ograniczenia s\u0105 zdefiniowane dla innego pola, a <em>object <\/em>nie jest dozwolone, funkcja 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>\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 schemat nie istnieje pod okre\u015blon\u0105 nazw\u0105 lub u\u017cywa typu pola, kt\u00f3ry nie pasuje do funkcji, 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>validateDboNumber(&#8222;EXTItem&#8221;, loadItem(&#8222;10010&#8221;), &#8222;SIZE&#8221;, 100)<\/em> sprawdza, czy 100 jest dopuszczaln\u0105 warto\u015bci\u0105 dla pola dodatkowego.<\/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>OLTP<\/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>validateDboNumber(&#8222;EXTItem&#8221;, loadItem(&#8222;10010&#8221;), &#8222;MY_FIELD&#8221;, new(Number))<\/em> sprawdza, czy warto\u015b\u0107 domy\u015blna 0 typu danych <em>Number<\/em> jest dopuszczaln\u0105 warto\u015bci\u0105 dla pola dodatkowego, tj. czy pole dodatkowe mo\u017ce zosta\u0107 opr\u00f3\u017cnione przez to przypisanie. Nale\u017cy zweryfikowa\u0107 tak\u017ce funkcj\u0119 <em>resetDbo<\/em>, kt\u00f3ra resetuje pole dodatkowe do jego warto\u015bci domy\u015blnej lub pierwotnej.<\/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>dboNumber<\/em><em>, <\/em><em>dboListNumber<\/em><em>, <\/em><em>setDboNumber<\/em><em>, <\/em><em>setDboListNumber<\/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.validateDboNumber<\/em> sprawdza, czy warto\u015b\u0107 mo\u017ce zosta\u0107 przypisana do innego pola typu <em>Decimal<\/em>.<\/p>\n<p>function create()<\/p>\n<p>{<\/p>\n<p>\u00a0 var p_name := parameters.NAME;<\/p>\n<p>\u00a0 var p_partner := loadPartner(parameters.PARTNER);<\/p>\n<p>\u00a0 var testValue := parameters.NUMBER;<\/p>\n<p>\u00a0 var dboSuccess := false;<\/p>\n<p>\u00a0 dboSuccess := validateDboNumber(&#8222;EXTPartner&#8221;, p_partner, p_name, testValue);<\/p>\n<p>\u00a0 result.IS_NULL := isNull(dboSuccess);<\/p>\n<p>\u00a0 result.IS_SUCCESS := cast(Boolean, first(dboSuccess, false));<\/p>\n<p>}<\/div><\/section>\n<h6 id=\"validatedboquantity\" ><span class=\"ez-toc-section\" id=\"validateDboQuantity\"><\/span><strong>validateDboQuantity<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h6>\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=\"414\">\n<p>validateDboQuantity<\/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=\"414\">\n<p><em>validateDboQuantity<\/em> sprawdza, czy warto\u015b\u0107 mo\u017ce zosta\u0107 przypisana do innego pola typu <em>Quantity<\/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=\"414\">\n<p>Boolean validateDboQuantity(String schemaName, CisObject object, String attributeName, CisObject(com.cisag.app.general.obj.Quantity) quantity)<\/p>\n<p>Boolean validateDboQuantity(String schemaName, CisObject object, String attributeName, Number amount, Guid uom)<\/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=\"414\">\n<p><em>schemaName<\/em> identyfikuje drugie pole. Nazwa schematu zaczyna si\u0119 od <em>EXT<\/em>, po kt\u00f3rym nast\u0119puje nazwa obiektu biznesowego bez jego przestrzeni nazw. Je\u015bli obiekt biznesowy znajduje si\u0119 w przestrzeni nazw innej ni\u017c <em>com.cisag<\/em>, druga cz\u0119\u015b\u0107 przestrzeni nazw jest wstawiana wielkimi literami mi\u0119dzy <em>EXT<\/em> a nazw\u0105 obiektu biznesowego. Przyk\u0142adami nazw schemat\u00f3w s\u0105<\/p>\n<p><em>EXTItem<\/em> dla obiektu biznesowego <em>com.cisag.app.general.obj.Item<\/em><\/p>\n<p><em>EXTPurchaseItem<\/em> dla obiektu biznesowego <em>com.cisag.app.purchasing.obj.PurchaseItem<\/em><\/p>\n<p><em>EXTSEMObjectAccount<\/em> dla obiektu biznesowego <em>com.sem.ext.app.fin.financialaccounting.obj.ObjectAccount<\/em><\/p>\n<p><em>object<\/em> to instancja obiektu biznesowego.<\/p>\n<p><em>attributeName <\/em>to nazwa dodatkowego pola.<\/p>\n<p><em>amount <\/em>to ilo\u015b\u0107 do sprawdzenia.<\/p>\n<p><em>uom <\/em>to identyfikator jednostki miary.<\/p>\n<p><em>quantity<\/em> to cz\u0119\u015b\u0107, 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=\"414\">\n<p>Funkcja sprawdza, czy ilo\u015b\u0107 mo\u017ce zosta\u0107 przypisana do pola dodatkowego.<\/p>\n<p>Je\u015bli sprawdzenie zako\u0144czy\u0142o si\u0119 pomy\u015blnie, funkcja zwraca warto\u015b\u0107 <em>true<\/em>. Je\u015bli ograniczenia s\u0105 zdefiniowane dla innego pola, a <em>object<\/em> nie jest dozwolone, funkcja 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>\u0179r\u00f3d\u0142a b\u0142\u0119d\u00f3w<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"414\">\n<p>Je\u015bli schemat nie istnieje pod okre\u015blon\u0105 nazw\u0105 lub u\u017cywa typu pola, kt\u00f3ry nie pasuje do funkcji, zwracana jest warto\u015b\u0107 <em>null<\/em>. Nawet je\u015bli <em>uom<\/em> nie jest <em>ZERO_GUID<\/em> ani prawid\u0142ow\u0105 jednostk\u0105 miary, 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=\"414\">\n<p><em>validateDboQuantity(&#8222;EXTItem&#8221;, loadItem(&#8222;10010&#8221;), &#8222;DEAD_WEIGHT&#8221;, 10000, loadUom(&#8222;kg&#8221;):guid)<\/em> sprawdza, czy ilo\u015b\u0107 10 000 kg mo\u017ce by\u0107 przypisana do pola dodatkowego.<\/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=\"414\">\n<p>OLTP<\/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=\"414\">\n<p><em>validateDboQuantity(&#8222;EXTItem&#8221;, loadItem(&#8222;10010&#8221;), &#8222;MY_FIELD&#8221;, new(Number), <\/em><em>ZERO_GUID)<\/em> sprawdza, czy warto\u015b\u0107 domy\u015blna 0 typu danych <em>Number<\/em> i warto\u015b\u0107 <em>ZERO_GUID<\/em> jest dopuszczaln\u0105 ilo\u015bci\u0105 dla dodatkowego pola, tj. czy dodatkowe pole mo\u017ce zosta\u0107 opr\u00f3\u017cnione przez to przypisanie. Nale\u017cy zweryfikowa\u0107 tak\u017ce funkcj\u0119 <em>resetDbo<\/em>, kt\u00f3ra resetuje pole dodatkowe do jego warto\u015bci domy\u015blnej lub pierwotnej.<\/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=\"414\">\n<p><em>dboQuantity<\/em><em>, <\/em><em>dboListQuantity<\/em><em>, <\/em><em>setDboQuantity<\/em><em>, <\/em><em>setDboListQuantity<\/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.setDboDomestic<\/em> sprawdza, czy warto\u015b\u0107 liczbowa i identyfikator jednostki miary mog\u0105 zosta\u0107 przypisane do innego pola typu <em>Quantity<\/em>.<\/p>\n<p>function create()<\/p>\n<p>{<\/p>\n<p>\u00a0 var p_name := parameters.NAME;<\/p>\n<p>\u00a0 var p_partner := loadPartner(parameters.PARTNER);<\/p>\n<p>\u00a0 var testAmount := parameters.AMOUNT;<\/p>\n<p>\u00a0 var testUom := loadUom(parameters.UOM):guid;<\/p>\n<p>\u00a0 var dboSuccess := false;<\/p>\n<p>\u00a0 dboSuccess := validateDboQuantity(&#8222;EXTPartner&#8221;, p_partner, p_name, testAmount, testUom);<\/p>\n<p>\u00a0 result.IS_NULL := isNull(dboSuccess);<\/p>\n<p>\u00a0 result.IS_SUCCESS := cast(Boolean, first(dboSuccess, false));<\/p>\n<p>}<\/div><\/section>\n<h6 id=\"validatedbostring\" ><span class=\"ez-toc-section\" id=\"validateDboString\"><\/span><strong>validateDboString<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h6>\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>validateDboString<\/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>validateDboString<\/em> sprawdza, czy warto\u015b\u0107 mo\u017ce by\u0107 przypisana do innego pola typu <em>Text, Email address<\/em> lub <em>Uniform Resource Locator (URL).<\/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>Boolean validateDboString(String schemaName, CisObject object, String attributeName, String text)<\/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>schemaName <\/em>identyfikuje drugie pole. Nazwa schematu zaczyna si\u0119 od <em>EXT<\/em>, po kt\u00f3rym nast\u0119puje nazwa obiektu biznesowego bez jego przestrzeni nazw. Je\u015bli obiekt biznesowy znajduje si\u0119 w przestrzeni nazw innej ni\u017c <em>com.cisag<\/em>, druga cz\u0119\u015b\u0107 przestrzeni nazw jest wstawiana wielkimi literami mi\u0119dzy<em> EXT<\/em> a nazw\u0105 obiektu biznesowego. Przyk\u0142ady nazw schemat\u00f3w to<\/p>\n<p><em>EXTItem<\/em> dla obiektu biznesowego <em>com.cisag.app.general.obj.Item<\/em><\/p>\n<p><em>EXTPurchaseItem<\/em> dla obiektu biznesowego <em>com.cisag.app.purchasing.obj.PurchaseItem<\/em><\/p>\n<p><em>EXTSEMObjectAccount<\/em> dla obiektu biznesowego <em>com.sem.ext.app.fin.financialaccounting.obj.ObjectAccount<\/em><\/p>\n<p><em>object <\/em>to instancja obiektu biznesowego.<\/p>\n<p><em>attributeName <\/em>to nazwa dodatkowego pola.<\/p>\n<p><em>text<\/em> to warto\u015b\u0107, 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 sprawdza, czy do pola dodatkowego mo\u017cna przypisa\u0107 <em>text<\/em>.<\/p>\n<p>Je\u015bli sprawdzenie zako\u0144czy\u0142o si\u0119 pomy\u015blnie, funkcja zwraca warto\u015b\u0107 <em>true<\/em>. Je\u015bli ograniczenia s\u0105 zdefiniowane dla innego pola, a <em>object <\/em>nie jest dozwolone, funkcja 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>\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 schemat nie istnieje pod okre\u015blon\u0105 nazw\u0105 lub u\u017cywa typu pola, kt\u00f3ry nie pasuje do funkcji, 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>validateDboString(&#8222;EXTItem&#8221;, loadItem(&#8222;10010&#8221;), &#8222;APPROVAL_STATUS&#8221;, &#8222;APPROVED&#8221;)<\/em> sprawdza, czy ci\u0105g znak\u00f3w jest dopuszczaln\u0105 warto\u015bci\u0105 dla pola dodatkowego.<\/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>OLTP<\/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>validateDboString(&#8222;EXTItem&#8221;, loadItem(&#8222;10010&#8221;), &#8222;MY_FIELD&#8221;, new(String)) <\/em>sprawdza, czy pusty ci\u0105g znak\u00f3w jako warto\u015b\u0107 domy\u015blna typu danych <em>String<\/em> jest dopuszczaln\u0105 warto\u015bci\u0105 dla pola dodatkowego, tj. czy pole dodatkowe mo\u017ce zosta\u0107 opr\u00f3\u017cnione przez to przypisanie. Zobacz tak\u017ce funkcj\u0119 <em>resetDbo<\/em>, kt\u00f3ra resetuje pole dodatkowe do jego warto\u015bci domy\u015blnej lub pierwotnej.<\/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>dboString<\/em><em>, <\/em><em>dboListString<\/em><em>, <\/em><em>setDboString<\/em><em>, <\/em><em>setDboListString<\/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.validateDboString<\/em> sprawdza, czy warto\u015b\u0107 mo\u017ce zosta\u0107 przypisana do innego pola typu <em>Text, Email address <\/em>lub<em> Uniform Resource Locator (URL).<\/em><\/p>\n<p>function create()<\/p>\n<p>{<\/p>\n<p>\u00a0 var p_name := parameters.NAME;<\/p>\n<p>\u00a0 var p_partner := loadPartner(parameters.PARTNER);<\/p>\n<p>\u00a0 var testValue := parameters.TEXT;<\/p>\n<p>\u00a0 var dboSuccess := false;<\/p>\n<p>\u00a0 dboSuccess := validateDboString(&#8222;EXTPartner&#8221;, p_partner, p_name, testValue);<\/p>\n<p>\u00a0 result.IS_NULL := isNull(dboSuccess);<\/p>\n<p>\u00a0 result.IS_SUCCESS := cast(Boolean, first(dboSuccess, false));<\/p>\n<p>}<\/div><\/section>\n<h6 id=\"validatedbotimestamp\" ><span class=\"ez-toc-section\" id=\"validateDboTimestamp\"><\/span><strong>validateDboTimestamp<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h6>\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>validateDboTimestamp<\/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>validateDboTimestamp <\/em>sprawdza, czy warto\u015b\u0107 mo\u017ce zosta\u0107 przypisana do innego pola typu <em>Date and 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>Podpisy<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Boolean validateDboTimestamp(String schemaName, CisObject object, String attributeName, Timestamp time)<\/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>schemaName<\/em> identyfikuje drugie pole. Nazwa schematu zaczyna si\u0119 od <em>EXT<\/em>, po kt\u00f3rym nast\u0119puje nazwa obiektu biznesowego bez jego przestrzeni nazw. Je\u015bli obiekt biznesowy znajduje si\u0119 w przestrzeni nazw innej ni\u017c <em>com.cisag<\/em>, druga cz\u0119\u015b\u0107 przestrzeni nazw jest wstawiana wielkimi literami mi\u0119dzy <em>EXT<\/em> a nazw\u0105 obiektu biznesowego. Przyk\u0142adami nazw schemat\u00f3w s\u0105<\/p>\n<p><em>EXTItem<\/em> dla obiektu biznesowego <em>com.cisag.app.general.obj.Item<\/em><\/p>\n<p><em>EXTPurchaseItem<\/em> dla obiektu biznesowego <em>com.cisag.app.purchasing.obj.PurchaseItem<\/em><\/p>\n<p><em>EXTSEMObjectAccount<\/em> dla obiektu biznesowego <em>com.sem.ext.app.fin.financialaccounting.obj.ObjectAccount<\/em><\/p>\n<p><em>object <\/em>to instancja obiektu biznesowego.<\/p>\n<p><em>attributeName <\/em>to nazwa dodatkowego pola.<\/p>\n<p><em>time <\/em>to warto\u015b\u0107, 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 sprawdza, czy zdarzenie<em> time<\/em> mo\u017ce zosta\u0107 przypisane do dodatkowego pola.<\/p>\n<p>Je\u015bli sprawdzenie zako\u0144czy\u0142o si\u0119 pomy\u015blnie, funkcja zwraca warto\u015b\u0107 <em>true<\/em>. Je\u015bli ograniczenia s\u0105 zdefiniowane dla innego pola, a <em>time<\/em> nie jest dozwolone, funkcja 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>\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 schemat nie istnieje pod okre\u015blon\u0105 nazw\u0105 lub u\u017cywa typu pola, kt\u00f3ry nie pasuje do funkcji, 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>validateDboTimestamp(&#8222;EXTItem&#8221;, loadItem(&#8222;10010&#8221;), &#8222;LAST_DATE&#8221;, now())<\/em> sprawdza, czy aktualny czas jest prawid\u0142ow\u0105 warto\u015bci\u0105 dla dodatkowego pola.<\/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>OLTP<\/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>validateDboTimestamp(&#8222;EXTItem&#8221;, loadItem(&#8222;10010&#8221;), &#8222;MY_FIELD&#8221;, new(Timestamp))<\/em> sprawdza, czy warto\u015b\u0107 domy\u015blna <em>UNDEFINED_DATE<\/em> typu danych <em>Timestamp<\/em> jest dopuszczaln\u0105 warto\u015bci\u0105 dla pola dodatkowego, tj. czy pole dodatkowe mo\u017ce zosta\u0107 opr\u00f3\u017cnione przez to przypisanie. Nale\u017cy zweryfikowa\u0107 tak\u017ce funkcj\u0119 <em>resetDbo<\/em>, kt\u00f3ra resetuje pole dodatkowe do jego warto\u015bci domy\u015blnej lub pierwotnej.<\/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>dboTimestamp<\/em><em>, <\/em><em>dboListTimestamp<\/em><em>, <\/em><em>setDboTimestamp<\/em><em>, <\/em><em>setDboListTimestamp<\/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.validateDboTimestamp<\/em> sprawdza, czy aktualny czas mo\u017ce zosta\u0107 przypisany do innego pola typu <em>Date and time<\/em>.<\/p>\n<p>function create()<\/p>\n<p>{<\/p>\n<p>\u00a0 var p_name := parameters.NAME;<\/p>\n<p>\u00a0 var p_partner := loadPartner(parameters.PARTNER);<\/p>\n<p>\u00a0 var testValue := now();<\/p>\n<p>\u00a0 var dboSuccess := false;<\/p>\n<p>\u00a0 dboSuccess := validateDboCisDate(&#8222;EXTPartner&#8221;, p_partner, p_name, testValue);<\/p>\n<p>\u00a0 result.IS_NULL := isNull(dboSuccess);<\/p>\n<p>\u00a0 result.IS_SUCCESS := cast(Boolean, first(dboSuccess, false));<\/p>\n<p>}<\/div><\/section>\n<h6 id=\"validatedbovalueset\" ><span class=\"ez-toc-section\" id=\"validateDboValueSet\"><\/span><strong>validateDboValueSet<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h6>\n<table style=\"border-style: outset; border-color: #000000; background-color: #ffffff; width: 100%; height: 1647px;\">\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>validateDboValueSet<\/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>validateDboValueSet <\/em>sprawdza, czy liczba mo\u017ce zosta\u0107 przypisana do innego pola typu <em>selection field<\/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>Podpisy<\/p>\n<\/td>\n<td style=\"height: 100px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Boolean validateDboValueSet(String schemaName, CisObject object, String attributeName, Number id)<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 565px;\">\n<td style=\"height: 565px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Parametry<\/p>\n<\/td>\n<td style=\"height: 565px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>schemaName<\/em> identyfikuje drugie pole. Nazwa schematu zaczyna si\u0119 od <em>EXT<\/em>, po kt\u00f3rym nast\u0119puje nazwa obiektu biznesowego bez jego przestrzeni nazw. Je\u015bli obiekt biznesowy znajduje si\u0119 w przestrzeni nazw innej ni\u017c <em>com.cisag<\/em>, druga cz\u0119\u015b\u0107 przestrzeni nazw jest wstawiana wielkimi literami mi\u0119dzy <em>EXT <\/em>a nazw\u0105 obiektu biznesowego. Przyk\u0142ady nazw schemat\u00f3w to<\/p>\n<p><em>EXTItem <\/em>dla obiektu biznesowego <em>com.cisag.app.general.obj.Item<\/em><\/p>\n<p><em>EXTPurchaseItem<\/em> dla obiektu biznesowego <em>com.cisag.app.purchasing.obj.PurchaseItem<\/em><\/p>\n<p><em>EXTSEMObjectAccount<\/em> dla obiektu biznesowego <em>com.sem.ext.app.fin.financialaccounting.obj.ObjectAccount<\/em><\/p>\n<p><em>object<\/em> to instancja obiektu biznesowego.<\/p>\n<p><em>attributeName<\/em> to nazwa dodatkowego pola.<\/p>\n<p><em>id <\/em>to numeryczny identyfikator wyboru, kt\u00f3ry ma zosta\u0107 sprawdzony.<\/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>Wynik<\/p>\n<\/td>\n<td style=\"height: 183px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Funkcja sprawdza, czy <em>id <\/em>mo\u017cna przypisa\u0107 do dodatkowego pola.<\/p>\n<p>Je\u015bli sprawdzenie zako\u0144czy\u0142o si\u0119 pomy\u015blnie, funkcja zwraca warto\u015b\u0107 <em>true<\/em>. Je\u015bli ograniczenia s\u0105 zdefiniowane dla innego pola, a <em>object<\/em> nie jest dozwolone, funkcja zwraca <em>false<\/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>\u0179r\u00f3d\u0142a b\u0142\u0119d\u00f3w<\/p>\n<\/td>\n<td style=\"height: 100px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Je\u015bli schemat nie istnieje pod okre\u015blon\u0105 nazw\u0105 lub u\u017cywa typu pola, kt\u00f3ry nie pasuje do funkcji, zwracana jest warto\u015b\u0107 <em>null<\/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>Przyk\u0142ady<\/p>\n<\/td>\n<td style=\"height: 100px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>validateDboValueSet(&#8222;EXTItem&#8221;, loadItem(&#8222;10010&#8221;), &#8222;APPROVAL_STATUS&#8221;, 50)<\/em> sprawdza, czy 50 jest dopuszczaln\u0105 warto\u015bci\u0105 dla pola dodatkowego.<\/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>OLTP<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 198px;\">\n<td style=\"height: 198px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"132\">\n<p>Uwagi<\/p>\n<\/td>\n<td style=\"height: 198px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>validateDboValueSet(&#8222;EXTItem&#8221;, loadItem(&#8222;10010&#8221;), &#8222;MY_FIELD&#8221;, new(Number))<\/em> sprawdza, czy warto\u015b\u0107 domy\u015blna 0 typu danych <em>Number <\/em>jest dopuszczaln\u0105 warto\u015bci\u0105 dla pola dodatkowego, tj. czy pole dodatkowe mo\u017ce zosta\u0107 opr\u00f3\u017cnione przez to przypisanie. Nale\u017cy zweryfikowa\u0107 tak\u017ce funkcj\u0119 <em>resetDbo<\/em>, kt\u00f3ra resetuje pole dodatkowe do jego warto\u015bci domy\u015blnej lub pierwotnej.<\/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>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"height: 165px; border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>dboValueSet<\/em><em>, <\/em><em>dboValueSetDescription<\/em><em>, <\/em><em>dboValueSetName<\/em><em>, <\/em><em>dboListValueSet<\/em><em>, <\/em><em>dboListValueSetDescription<\/em><em>, <\/em><em>dboListValueSetName<\/em><em>, <\/em><em>setDboValueSet<\/em><em>, <\/em><em>setDboValueSetName<\/em><em>, <\/em><em>setDboListValueSet<\/em><em>, <\/em><em>setDboListValueSetName<\/em><em>, <\/em><em>validateDboValueSetName<\/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.validateDboValueSet<\/em> sprawdza, czy numeryczna identyfikacja wyboru mo\u017ce zosta\u0107 przypisana do innego pola typu <em>Selection field<\/em>.<\/p>\n<p>function create()<\/p>\n<p>{<\/p>\n<p>\u00a0 var p_name := parameters.NAME;<\/p>\n<p>\u00a0 var p_partner := loadPartner(parameters.PARTNER);<\/p>\n<p>\u00a0 var testValue := parameters.ID;<\/p>\n<p>\u00a0 var dboSuccess := false;<\/p>\n<p>\u00a0 dboSuccess := validateDboValueSet(&#8222;EXTPartner&#8221;, p_partner, p_name, testValue);<\/p>\n<p>\u00a0 result.IS_NULL := isNull(dboSuccess);<\/p>\n<p>\u00a0 result.IS_SUCCESS := cast(Boolean, first(dboSuccess, false));<\/p>\n<p>}<\/div><\/section>\n<h6 id=\"validatedbovaluesetname\" ><span class=\"ez-toc-section\" id=\"validateDboValueSetName\"><\/span><strong>validateDboValueSetName<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h6>\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>validateDboValueSetName<\/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>validateDboValueSetName<\/em> sprawdza, czy ci\u0105g znak\u00f3w mo\u017ce zosta\u0107 przypisany do innego pola typu <em>Selection field<\/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>Boolean validateDboValueSetName(String schemaName, CisObject object, String attributeName, String constant)<\/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>schemaName<\/em> identyfikuje drugie pole. Nazwa schematu zaczyna si\u0119 od <em>EXT<\/em>, po kt\u00f3rym nast\u0119puje nazwa obiektu biznesowego bez jego przestrzeni nazw. Je\u015bli obiekt biznesowy znajduje si\u0119 w przestrzeni nazw innej ni\u017c <em>com.cisag<\/em>, druga cz\u0119\u015b\u0107 przestrzeni nazw jest wstawiana wielkimi literami mi\u0119dzy <em>EXT<\/em> a nazw\u0105 obiektu biznesowego. Przyk\u0142adami nazw schemat\u00f3w s\u0105<\/p>\n<p><em>EXTItem<\/em> dla obiektu biznesowego <em>com.cisag.app.general.obj.Item<\/em><\/p>\n<p><em>EXTPurchaseItem<\/em> dla obiektu biznesowego <em>com.cisag.app.purchasing.obj.PurchaseItem<\/em><\/p>\n<p><em>EXTSEMObjectAccount<\/em> dla obiektu biznesowego <em>com.sem.ext.app.fin.financialaccounting.obj.ObjectAccount<\/em><\/p>\n<p><em>object <\/em>to instancja obiektu biznesowego.<\/p>\n<p><em>attributeName<\/em> to nazwa dodatkowego pola.<\/p>\n<p><em>constant<\/em> to sta\u0142a nazwa zaznaczenia, kt\u00f3re ma zosta\u0107 sprawdzone.<\/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 sprawdza, czy do pola dodatkowego mo\u017cna przypisa\u0107 warto\u015b\u0107 <em>constant<\/em>.<\/p>\n<p>Je\u015bli sprawdzenie zako\u0144czy\u0142o si\u0119 pomy\u015blnie, funkcja zwraca warto\u015b\u0107 <em>true<\/em>. Je\u015bli ograniczenia s\u0105 zdefiniowane dla innego pola, a <em>object <\/em>nie jest dozwolone, funkcja 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>\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 schemat nie istnieje pod okre\u015blon\u0105 nazw\u0105 lub u\u017cywa typu pola, kt\u00f3ry nie pasuje do funkcji, 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>validateDboValueSetName(&#8222;EXTItem&#8221;, loadItem(&#8222;10010&#8221;), &#8222;APPROVAL_STATUS&#8221;, &#8222;APPROVED&#8221;)<\/em> sprawdza, czy <em>APPROVED<\/em> jest dopuszczaln\u0105 warto\u015bci\u0105 dla pola dodatkowego.<\/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>OLTP<\/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>validateDboValueSetName(&#8222;EXTItem&#8221;, loadItem(&#8222;10010&#8221;), &#8222;MY_FIELD&#8221;, new(String))<\/em> sprawdza, czy pusty ci\u0105g znak\u00f3w jako warto\u015b\u0107 domy\u015blna typu danych <em>String<\/em> jest dopuszczaln\u0105 warto\u015bci\u0105 dla pola dodatkowego, tj. czy pole dodatkowe mo\u017ce zosta\u0107 opr\u00f3\u017cnione przez to przypisanie. Nale\u017cy zweryfikowa\u0107 tak\u017ce funkcj\u0119 <em>resetDbo<\/em>, kt\u00f3ra resetuje pole dodatkowe do jego warto\u015bci domy\u015blnej lub pierwotnej.<\/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>dboValueSet<\/em><em>, <\/em><em>dboValueSetDescription<\/em><em>, <\/em><em>dboValueSetName<\/em><em>, <\/em><em>dboListValueSet<\/em><em>, <\/em><em>dboListValueSetDescription<\/em><em>, <\/em><em>dboListValueSetName<\/em><em>, <\/em><em>setDboValueSet<\/em><em>, <\/em><em>setDboValueSetName<\/em><em>, <\/em><em>setDboListValueSet<\/em><em>, <\/em><em>setDboListValueSetName<\/em><em>, <\/em><em>validateDboValueSet<\/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.validateDboValueSetName<\/em> sprawdza, kt\u00f3re elementy listy sta\u0142ych nazw mog\u0105 by\u0107 przypisane do kolejnego pola typu <em>selection field<\/em>.<\/p>\n<p>function create()<\/p>\n<p>{<\/p>\n<p>\u00a0 var p_name := parameters.NAME;<\/p>\n<p>\u00a0 var p_partner := loadPartner(parameters.PARTNER);<\/p>\n<p>\u00a0 var p_constantValues := parameters.CONSTANT_VALUES;<\/p>\n<p>\u00a0 var r_pass := &#8222;&#8221;;<\/p>\n<p>\u00a0 var r_fail := &#8222;&#8221;;<\/p>\n<p>\u00a0 \/*<\/p>\n<p>\u00a0 for (testValue : split(p_constantValues, &#8221; &#8222;))<\/p>\n<p>\u00a0\u00a0\u00a0 if (cast(Boolean, first(validateDboValueSetName(&#8222;EXTPartner&#8221;, p_partner, p_name, testValue), false))<\/p>\n<p>\u00a0\u00a0\u00a0\u00a0\u00a0 r_pass := r_pass + testValue + &#8221; &#8222;;<\/p>\n<p>\u00a0\u00a0 other<\/p>\n<p>\u00a0\u00a0\u00a0\u00a0\u00a0 r_fail := r_fail + testValue + &#8221; &#8222;;<\/p>\n<p>\u00a0 *\/<\/p>\n<p>\u00a0 result.PASS := r_pass;<\/p>\n<p>\u00a0 result.FAIL := r_fail;<\/p>\n<p>}<\/p>\n<p>\/* Dzieli <em>p_text <\/em>na tablic\u0119 przy ka\u017cdym wyst\u0105pieniu <em>p_separator<\/em> *\/<\/p>\n<p>function split(p_text as String, p_separator as String) as String[]<\/p>\n<p>{<\/p>\n<p>\u00a0 if (p_separator = &#8222;&#8221;)<\/p>\n<p>\u00a0\u00a0\u00a0 p_separator := &#8221; &#8222;;<\/p>\n<p>\u00a0 var increment := length(p_separator);<\/p>\n<p>\u00a0 var sep as String;<\/p>\n<p>\u00a0 var word as String;<\/p>\n<p>\u00a0 var r_wordList as String[];<\/p>\n<p>\u00a0 var i := 0;<\/p>\n<p>\u00a0 var startPos := 0;<\/p>\n<p>\u00a0 while (i + increment &#8211; 1 &lt; length(p_text)) {<\/p>\n<p>\u00a0\u00a0\u00a0 sep := substring(p_text, i, i + increment);<\/p>\n<p>\u00a0\u00a0\u00a0 if (sep = p_separator) {<\/p>\n<p>\u00a0\u00a0\u00a0\u00a0\u00a0 word := trim(substring(p_text, startPos, i));<\/p>\n<p>\u00a0\u00a0\u00a0\u00a0\u00a0 i := i + przyrost;<\/p>\n<p>\u00a0\u00a0\u00a0\u00a0\u00a0 startPos := i;<\/p>\n<p>\u00a0\u00a0\u00a0\u00a0\u00a0 if (word &lt;&gt; &#8222;&#8221; and word &lt;&gt; p_separator)<\/p>\n<p>\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 add(r_wordList, word);<\/p>\n<p>\u00a0\u00a0\u00a0 } else {<\/p>\n<p>\u00a0\u00a0\u00a0\u00a0\u00a0 i := i + 1;<\/p>\n<p>\u00a0\u00a0\u00a0 }<\/p>\n<p>\u00a0 }<\/p>\n<p>\u00a0 word := substring(p_text, startPos);<\/p>\n<p>\u00a0 if (word &lt;&gt; &#8222;&#8221; and word &lt;&gt; p_separator)<\/p>\n<p>\u00a0\u00a0\u00a0 add(r_wordList, word);<\/p>\n<p>\u00a0 return r_wordList;<\/p>\n<p>}<\/div><\/section>\n<h4 id=\"funkcje-dla-atrybutow-workflow-funkcje-atrybutow-workflow\" ><span class=\"ez-toc-section\" id=\"Funkcje_dla_atrybutow_workflow_Funkcje_atrybutow_workflow\"><\/span>Funkcje dla atrybut\u00f3w workflow (Funkcje atrybut\u00f3w workflow)\u00a0<span class=\"ez-toc-section-end\"><\/span><\/h4>\n<p>Atrybuty workflow mog\u0105 by\u0107 wprowadzane w systemie z poziomem wersjonowania 7 i u\u017cywane jako produkcyjny system testowy lub system produkcyjny. Nie jest do tego wymagana \u017cadna wiedza programistyczna. Podobnie jak atrybut zdefiniowany przez u\u017cytkownika, atrybut workflow jest r\u00f3wnie\u017c zapisywany przy u\u017cyciu obiektu biznesowego, kt\u00f3ry jest sklasyfikowany jako suplement zarz\u0105dzany.<\/p>\n<p>Suplement zarz\u0105dzany z atrybutami zdefiniowanymi przez u\u017cytkownika ma zastosowanie <em>Standard<\/em>, a suplement zarz\u0105dzany z atrybutami workflow ma zastosowanie <em>Workflow<\/em>. Mo\u017cna wprowadzi\u0107 dowoln\u0105 liczb\u0119 takich <em>suplement\u00f3w workflow<\/em>. Dystrybucja atrybut\u00f3w workflow w kilku suplementach workflow ma t\u0119 zalet\u0119, \u017ce gdy dzia\u0142anie zapisuje atrybuty workflow po raz pierwszy, a tym samym tworzy now\u0105 instancj\u0119 suplementu workflow, atrybuty workflow nale\u017c\u0105ce do innych suplement\u00f3w workflow nie s\u0105 wst\u0119pnie przypisane z warto\u015bciami domy\u015blnymi. Tworzenie zbyt wielu suplement\u00f3w workflow dla tego samego obiektu biznesowego mo\u017ce zmniejszy\u0107 wydajno\u015b\u0107 systemu, poniewa\u017c jego suplementy s\u0105 \u0142adowane z bazy danych wraz z obiektem biznesowym. Je\u015bli atrybuty workflow dla r\u00f3\u017cnych proces\u00f3w workflow s\u0105 rejestrowane w tym samym suplemencie workflow, korzystne jest, je\u015bli ka\u017cdy proces workflow ma atrybut workflow, kt\u00f3rego warto\u015b\u0107 domy\u015blna wskazuje, czy instancja procesu przypisa\u0142a warto\u015bci do atrybut\u00f3w workflow, czy nie.<\/p>\n<p>Przyk\u0142adem takiego atrybutu workflow jest status potwierdzenia zam\u00f3wienia. Pusty ci\u0105g znak\u00f3w oznacza, \u017ce proces potwierdzania zam\u00f3wienia nie zosta\u0142 jeszcze rozpocz\u0119ty. Je\u015bli u\u017cytkownik rozpocznie proces zatwierdzania, w\u0119ze\u0142 pocz\u0105tkowy powinien przypisa\u0107 atrybutowi workflow warto\u015b\u0107 inn\u0105 ni\u017c warto\u015b\u0107 domy\u015blna, tak\u0105 jak <em>W opracowaniu<\/em>. Zamiast ci\u0105gu znak\u00f3w, status zatwierdzenia mo\u017ce by\u0107 r\u00f3wnie\u017c mapowany za pomoc\u0105 warto\u015bci liczbowych. W tym przypadku warto\u015b\u0107 domy\u015blna 0 oznacza\u0142aby, \u017ce nie ma jeszcze procesu zatwierdzania zam\u00f3wienia, a warto\u015b\u0107 1 mog\u0142aby oznacza\u0107, \u017ce zam\u00f3wienie jest w opracowaniu.<\/p>\n<p>Atrybuty workflow mog\u0105 by\u0107 dodawane do dostosowywanych aplikacji i wy\u015bwietlane, pod warunkiem, \u017ce zarz\u0105dzany dodatek nale\u017cy do widoku obiektu aplikacji. W przeciwie\u0144stwie do niestandardowego atrybutu, atrybut workflow nie mo\u017ce by\u0107 edytowany ani w aplikacji, ani poprzez import. Tylko definicje dzia\u0142a\u0144 mog\u0105 przypisa\u0107 warto\u015b\u0107 do atrybut\u00f3w workflow. Istnieje zatem wyra\u017any podzia\u0142 odpowiedzialno\u015bci mi\u0119dzy atrybutami zdefiniowanymi przez u\u017cytkownika a atrybutami workflow.<\/p>\n<p>Funkcje atrybut\u00f3w workflow obejmuj\u0105:<\/p>\n<ul>\n<li>getOrCreateSupplement<\/li>\n<li>getSupplement<\/li>\n<li>putSupplement<\/li>\n<\/ul>\n<h5 id=\"getorcreatesupplement\" ><span class=\"ez-toc-section\" id=\"getOrCreateSupplement\"><\/span>getOrCreateSupplement<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>getOrCreateSupplement<\/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>getOrCreateSupplement<\/em> zwraca atrybuty suplementu jako tablic\u0119 mieszaj\u0105c\u0105 i ustawia tablic\u0119 mieszaj\u0105c\u0105 z 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>Podpisy<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>HashMap getOrCreateSupplement (CisObject object, supplement String)<\/p>\n<p>HashMap getOrCreateSupplement (CisObject object, supplement String, Boolean writeMode)<\/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>object<\/em> to instancja obiektu biznesowego.<\/p>\n<p><em>supplement<\/em> to techniczna nazwa dodatku przypisanego do obiektu biznesowego.<\/p>\n<p><em>writeMode<\/em> okre\u015bla, czy dodatek z zastosowaniem <em>Workflow<\/em> powinien by\u0107 zablokowany do zapisu.<\/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 atrybuty suplementu o nazwie technicznej <em>supplement<\/em> w postaci tablicy skr\u00f3t\u00f3w. Atrybuty og\u00f3lne, takie jak <em>updateInfo<\/em>, nie s\u0105 zawarte w tablicy skr\u00f3t\u00f3w. Ponadto tabela hash zawiera metadane suplementu, kt\u00f3rych nie wolno zmienia\u0107.<\/p>\n<p>Atrybuty workflow w tabeli hash maj\u0105 typ danych zgodny z definicj\u0105 atrybut\u00f3w zdefiniowanych przez u\u017cytkownika. Je\u015bli zdefiniowano atrybut workflow o nazwie <em>pickingTime<\/em> typu <em>Date + time<\/em>, tabela hash zawiera wpis o nazwie<em> pickingTime<\/em> typu danych <em>Timestamp<\/em>. Dla atrybutu workflow typu <em>Email<\/em> tabela hash zawiera wpis typu danych <em>String<\/em> itd. Atrybuty workflow typu z\u0142o\u017conego, dla kt\u00f3rych nie ma odpowiedniego typu danych w j\u0119zyku skryptowym, s\u0105 zwracane jako tabele hash. Na przyk\u0142ad atrybut workflow typu <em>amount<\/em> jest zwracany jako tablica skr\u00f3t\u00f3w z wpisem<em> amount<\/em> typu danych <em>Number<\/em> i wpisem<em> uom <\/em>typu danych <em>Guid<\/em>.<\/p>\n<p>Je\u015bli \u017cadna instancja suplementu nie zosta\u0142a jeszcze utworzona dla okre\u015blonego obiektu biznesowego, zwracana jest tablica hash z domy\u015blnymi warto\u015bciami atrybut\u00f3w. Suplement jest jednak tworzony tylko wtedy, gdy wywo\u0142ywana jest funkcja <em>putSupplement.<\/em><\/p>\n<p>Je\u015bli parametr <em>writeMode<\/em> jest ustawiony, a suplement ma zastosowanie <em>Workflow,<\/em> suplement workflow jest otwierany z blokad\u0105 zapisu. Blokada zapisu uniemo\u017cliwia innym dzia\u0142aniom zmian\u0119 atrybut\u00f3w workflow.<\/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 dla obiektu biznesowego nie utworzono suplementu o nazwie technicznej <em>supplement<\/em>, zwracana jest warto\u015b\u0107 <em>null<\/em>.<\/p>\n<p>Je\u015bli parametr <em>writeMode <\/em>ma warto\u015b\u0107 <em>true<\/em>, a suplement nie jest typu <em>Managed Supplement<\/em> i nie ma zastosowania <em>Workflow<\/em>, zwracana jest warto\u015b\u0107 <em>null<\/em>. Warto\u015b\u0107 <em>null<\/em> jest r\u00f3wnie\u017c zwracana, je\u015bli suplement workflow nie mo\u017ce zosta\u0107 otwarty do zapisu, np. poniewa\u017c inne dzia\u0142anie ju\u017c otworzy\u0142o suplement workflow z blokad\u0105 zapisu.<\/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>getOrCreateSupplement(loadPartner(&#8222;70010&#8221;), &#8222;com.cisag.app.general.obj.ItemWorkflowSupplement&#8221;)<\/em> zwraca tablic\u0119 hash z warto\u015bciami atrybut\u00f3w dla partnera 70010.<\/p>\n<p><em>getOrCreateSupplement(parameters.object, &#8222;com.cisag.app.sales.obj.SalesOrderApproval&#8221;, true)<\/em> zwraca tablic\u0119 hash z warto\u015bciami atrybut\u00f3w workflow dla obiektu biznesowego w <em>parameters.object<\/em> i \u017c\u0105da blokady zapisu dla suplementu 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>OLTP<\/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>R\u00f3\u017cnica mi\u0119dzy funkcjami <em>getSupplement<\/em> i <em>getOrCreateSupplement<\/em> polega na tym, \u017ce <em>getSupplement<\/em> zwraca warto\u015b\u0107 <em>null,<\/em> je\u015bli \u017cadna instancja suplementu nie zosta\u0142a jeszcze utworzona dla okre\u015blonego obiektu biznesowego, a <em>getOrCreateSupplement<\/em> zwraca tabel\u0119 hash z warto\u015bciami domy\u015blnymi dla atrybut\u00f3w suplementu w tym przypadku.<\/p>\n<p>Do otwarcia suplementu mo\u017cna r\u00f3wnie\u017c u\u017cy\u0107 funkcji <em>getByPrimaryKey<\/em>. Funkcja ta nie pozwala jednak na ustawienie blokady zapisu dla suplementu.<\/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>getSupplement<\/em><em>, <\/em><em>putSupplement<\/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.getOrCreateSupplement<\/em> otwiera suplement dla partnera bez blokady zapisu i zwraca warto\u015b\u0107 atrybutu workflow.<\/p>\n<p>function create()<\/p>\n<p>{<\/p>\n<p>\u00a0 var p_partner := loadPartner(parameters.PARTNER);<\/p>\n<p>\u00a0 var p_supplement := parameters.SUPPLEMENT;<\/p>\n<p>\u00a0 var p_attribute := parameters.ATTRIBUTE;<\/p>\n<p>\u00a0 var workflowAttributes := getOrCreateSupplement(p_partner, p_supplement, false);<\/p>\n<p>\u00a0 result.IS_NULL := isNull(workflowAttributes);<\/p>\n<p>\u00a0 if (not isNull(workflowAttributes))<\/p>\n<p>\u00a0\u00a0\u00a0 result.VALUE := cast(String, workflowAttributes[p_attribute]);<\/p>\n<p>}<\/div><\/section>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\"><strong>Wprowadzanie atrybut\u00f3w workflow<\/strong><\/p>\n<p>Atrybuty workflow mog\u0105 by\u0107 dodawane do interfejsu dostosowywanych aplikacji. W przeciwie\u0144stwie do niestandardowego atrybutu, atrybut workflow mo\u017cna zmieni\u0107 tylko w dzia\u0142aniu workflow. Atrybut workflow nigdy nie jest gotowy do wprowadzenia w interfejsie u\u017cytkownika aplikacji.<\/p>\n<p>Wi\u0119cej informacji na temat atrybut\u00f3w zdefiniowanych przez u\u017cytkownika i zarz\u0105dzanych dodatk\u00f3w mo\u017cna znale\u017a\u0107 w dokumentacji Atrybuty zdefiniowane przez u\u017cytkownika.<\/p>\n<p><em>Otwarcie aplikacji Atrybuty niestandardowe<\/em><\/p>\n<p>Aby wprowadzi\u0107 atrybuty workflow, nale\u017cy najpierw otworzy\u0107 aplikacj\u0119 <em>Atrybuty niestandardowe<\/em>. Je\u015bli aplikacja nie jest wy\u015bwietlana w menu u\u017cytkownika, mo\u017cna zamiast tego otworzy\u0107 aplikacj\u0119 <em>Obiekty deweloperskie<\/em> i wyszuka\u0107 aplikacj\u0119 <em>Atrybuty niestandardowe<\/em> (<em>ManagedSupplementMaintenance<\/em>). Nast\u0119pnie wybra\u0107 przycisk [<strong>Otw\u00f3rz aplikacj\u0119<\/strong>], kt\u00f3ry znajduje si\u0119 na zak\u0142adce <em>Edytor<\/em>.<\/p>\n<p>W systemie klienta aplikacj\u0119 <em>Atrybuty niestandardowe<\/em> mo\u017cna r\u00f3wnie\u017c otworzy\u0107 w trybie projektowania aplikacji konfigurowalnej. Najpierw nale\u017cy otworzy\u0107 dowoln\u0105 konfigurowaln\u0105 aplikacj\u0119 i aktywowa\u0107 tryb projektowania. W dokowanym oknie trybu projektowania nale\u017cy wybra\u0107 zak\u0142adk\u0119 <em>Atrybuty<\/em> i wybra\u0107 dowolny obiekt biznesowy w widoku obiektu aplikacji. Nie musi to by\u0107 obiekt biznesowy, dla kt\u00f3rego u\u017cytkownik chce wprowadzi\u0107 atrybuty workflow. Nast\u0119pnie wybra\u0107 przycisk atrybut\u00f3w niestandardowych w nag\u0142\u00f3wku zak\u0142adki.<\/p>\n<p>W przypadku otwarcia aplikacji <em>Atrybuty niestandardowe<\/em> w trybie projektowania dostosowywanej aplikacji, pola s\u0105 wst\u0119pnie przypisane. Wst\u0119pne przypisanie nie ma znaczenia przy wprowadzaniu atrybut\u00f3w workflow.<\/p>\n<p><em>Tworzenie dodatku workflow<\/em><\/p>\n<p>W aplikacji <em>Atrybuty niestandardowe<\/em> wybra\u0107 przycisk [<strong>Nowy<\/strong>]. W oknie dialogowym akcji generowania atrybut\u00f3w niestandardowych nale\u017cy wprowadzi\u0107 obiekt biznesowy, dla kt\u00f3rego u\u017cytkownik chce utworzy\u0107 atrybuty workflow. Wybra\u0107 <em>Workflow<\/em> jako zastosowanie. Pola atrybutu niestandardowego i oznaczenia maj\u0105 wst\u0119pnie przypisane warto\u015bci domy\u015blne. Mo\u017cna zmieni\u0107 warto\u015bci domy\u015blne, np. je\u015bli u\u017cytkownik chce zapisa\u0107 atrybuty workflow, kt\u00f3re s\u0105 u\u017cywane przez definicj\u0119 procesu lub zestaw definicji procesu w osobnym suplemencie. Je\u015bli u\u017cytkownik okre\u015bli istniej\u0105cy suplement workflow, nowe atrybuty workflow zostan\u0105 do niego dodane.<\/p>\n<p>Je\u015bli u\u017cytkownik potwierdzi wprowadzone dane przyciskiem [<strong>OK<\/strong>], zadanie deweloperskie zostanie utworzone automatycznie. Obiekt biznesowy i widok obiektu suplementu workflow s\u0105 tworzone w razie potrzeby i przypisywane do zadania deweloperskiego. Identyfikacja (numer) zadania deweloperskiego jest wy\u015bwietlana na pasku narz\u0119dzi aplikacji <em>Atrybuty niestandardowe<\/em>.<\/p>\n<p>Dop\u00f3ki nie aktywowano zadania deweloperskiego, mo\u017cna anulowa\u0107 i cofn\u0105\u0107 przechwytywanie. W tym celu nale\u017cy otworzy\u0107 zadanie deweloperskie i wy\u015bwietli\u0107 przypisane obiekty deweloperskie na zak\u0142adce <em>Obiekty deweloperskie<\/em>. Najpierw otworzy\u0107 widok obiektu. W aplikacji <em>Obiekty deweloperskie<\/em> usun\u0105\u0107 widok obiektu z zadania. Nast\u0119pnie otworzy\u0107 obiekt biznesowy wy\u015bwietlany w zadaniu deweloperskim i usun\u0105\u0107 go z zadania deweloperskiego. Od\u015bwie\u017cy\u0107 wy\u015bwietlanie obiekt\u00f3w deweloperskich w aplikacji <em>Zadania deweloperskie<\/em>. Po usuni\u0119ciu wszystkich obiekt\u00f3w deweloperskich z zadania usun\u0105\u0107 zadanie deweloperskie.<\/p>\n<p><em>Wprowadzanie atrybut\u00f3w workflow<\/em><\/p>\n<p>Po potwierdzeniu wpis\u00f3w przyciskiem [<strong>OK]<\/strong> w oknie dialogowym akcji generowania atrybutu niestandardowego nale\u017cy wprowadzi\u0107 nowe atrybuty workflow za pomoc\u0105 edytora pozycji.<\/p>\n<p>Wi\u0119cej informacji na temat atrybut\u00f3w niestandardowych i obs\u0142ugiwanych typ\u00f3w danych mo\u017cna znale\u017a\u0107 w dokumentacji <em>Atrybuty niestandardowe<\/em>.<\/p>\n<p><em>Aktywacja zadania deweloperskiego<\/em><\/p>\n<p>Po wprowadzeniu wszystkich atrybut\u00f3w workflow nale\u017cy otworzy\u0107 aplikacj\u0119 <em>Lista: Obiekty deweloperskie systemu produkcyjnego <\/em>i wy\u015bwietli\u0107 zablokowane zadania deweloperskie. Nast\u0119pnie aktywowa\u0107 wybrane zadania deweloperskie. Gdy w oknie dialogowym akcji zostanie wy\u015bwietlone zadanie deweloperskie z suplementem workflow i atrybutami workflow, wybra\u0107 przycisk [<strong>Natychmiast<\/strong>].<\/p>\n<p>Akcja ta uruchamia dwa kolejne restarty systemu w celu zainstalowania nowych atrybut\u00f3w workflow.<\/p>\n<p>Po instalacji atrybuty workflow s\u0105 dost\u0119pne bez ogranicze\u0144 i mog\u0105 by\u0107 u\u017cywane na przyk\u0142ad w definicjach dzia\u0142a\u0144.<\/p>\n<p>Wi\u0119cej informacji na temat aktywowania zadania deweloperskiego oraz transportowania i instalowania dodatku workflow w systemie docelowym (systemie produkcyjnym klienta) mo\u017cna znale\u017a\u0107 w dokumentacji <em>Lista: Obiekty deweloperskie systemu produkcyjnego.<\/em><\/div><\/section>\n<h5 id=\"getsupplement\" ><span class=\"ez-toc-section\" id=\"getSupplement\"><\/span>getSupplement<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>getSupplement<\/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>getSupplement<\/em> zwraca atrybuty suplementu w postaci tabeli hash bez wst\u0119pnego ustawiania tabeli hash z 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>Podpisy<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>HashMap getSupplement (CisObject object, supplement String)<\/p>\n<p>HashMap getSupplement (CisObject object, supplement String, Boolean writeMode)<\/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>object <\/em>to instancja obiektu biznesowego.<\/p>\n<p><em>supplement<\/em> to techniczna nazwa dodatku przypisanego do obiektu biznesowego.<\/p>\n<p><em>writeMode <\/em>okre\u015bla, czy dodatek powinien by\u0107 zablokowany do zapisu z zastosowaniem <em>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>Wynik<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p>Funkcja zwraca atrybuty suplementu o nazwie technicznej <em>supplement<\/em> w postaci tablicy skr\u00f3t\u00f3w. Atrybuty og\u00f3lne, takie jak <em>updateInfo<\/em>, nie s\u0105 zawarte w tablicy skr\u00f3t\u00f3w. Ponadto tabela hash zawiera metadane suplementu, kt\u00f3rych nie wolno zmienia\u0107.<\/p>\n<p>Atrybuty workflow w tabeli hash maj\u0105 typ danych zgodny z definicj\u0105 w aplikacji <em>Atrybuty niestandardowe<\/em>. Je\u015bli zdefiniowano atrybut workflow o nazwie <em>pickingTime<\/em> typu <em>Date + time<\/em>, tabela hash zawiera wpis o nazwie <em>pickingTime<\/em> typu danych <em>Timestamp<\/em>. Dla atrybutu workflow typu<em> Email<\/em> tabela hash zawiera wpis typu danych <em>String<\/em> itd. Atrybuty workflow typu z\u0142o\u017conego, dla kt\u00f3rych nie ma odpowiedniego typu danych w j\u0119zyku skryptowym, s\u0105 zwracane jako tabele hash. Na przyk\u0142ad atrybut workflow typu<em> amount<\/em> jest zwracany jako tablica skr\u00f3t\u00f3w z wpisem <em>amount<\/em> typu danych <em>Number<\/em> i wpisem <em>uom<\/em> typu danych <em>Guid<\/em>.<\/p>\n<p>Je\u015bli \u017cadna instancja suplementu nie zosta\u0142a jeszcze utworzona dla okre\u015blonego obiektu biznesowego, zwracana jest warto\u015b\u0107 <em>null<\/em>.<\/p>\n<p>Je\u015bli parametr <em>writeMode<\/em> jest ustawiony, a suplement ma zastosowanie <em>Workflow<\/em>, suplement workflow jest otwierany z blokad\u0105 zapisu. Blokada zapisu uniemo\u017cliwia innym dzia\u0142aniom zmian\u0119 atrybut\u00f3w workflow.<\/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 dla obiektu biznesowego nie utworzono suplementu o nazwie technicznej <em>supplement<\/em>, zwracana jest warto\u015b\u0107 <em>null<\/em>.<\/p>\n<p>Je\u015bli parametr <em>writeMode<\/em> ma warto\u015b\u0107<em> true<\/em>, a suplement nie jest typu <em>Managed Supplement<\/em> i nie jest typu <em>Workflow<\/em>, zwracana jest warto\u015b\u0107 <em>null<\/em>. Warto\u015b\u0107 <em>null<\/em> jest r\u00f3wnie\u017c zwracana, je\u015bli suplementu nie mo\u017cna otworzy\u0107 do zapisu, poniewa\u017c na przyk\u0142ad inne dzia\u0142anie ju\u017c otworzy\u0142o suplement z blokad\u0105 zapisu.<\/p>\n<p>Je\u015bli \u017cadna instancja suplementu nie zosta\u0142a jeszcze utworzona dla okre\u015blonego obiektu biznesowego, 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>getSupplement(loadPartner(&#8222;70010&#8221;), &#8222;com.cisag.app.general.obj.ItemWorkflowSupplement&#8221;)<\/em> zwraca tablic\u0119 hash z warto\u015bciami atrybut\u00f3w dla partnera 70010.<\/p>\n<p><em>getSupplement(parameters.object, &#8222;com.cisag.app.sales.obj.SalesOrderApproval&#8221;, true)<\/em> zwraca tablic\u0119 hash z warto\u015bciami atrybut\u00f3w workflow dla obiektu biznesowego w <em>parameters.object<\/em> i \u017c\u0105da blokady zapisu dla suplementu 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>OLTP<\/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>R\u00f3\u017cnica mi\u0119dzy funkcjami <em>getSupplement<\/em> i<em> getOrCreateSupplement<\/em> polega na tym, \u017ce <em>getSupplement<\/em> zwraca warto\u015b\u0107 <em>null<\/em>, je\u015bli \u017cadna instancja suplementu nie zosta\u0142a jeszcze utworzona dla okre\u015blonego obiektu biznesowego, a <em>getOrCreateSupplement <\/em>zwraca tabel\u0119 hash z warto\u015bciami domy\u015blnymi dla atrybut\u00f3w suplementu w tym przypadku.<\/p>\n<p>Do otwarcia suplementu mo\u017cna r\u00f3wnie\u017c u\u017cy\u0107 funkcji <em>getByPrimaryKey<\/em>. Funkcja ta nie pozwala jednak na ustawienie blokady zapisu dla suplementu.<\/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>getOrCreateSupplement<\/em><em>, <\/em><em>putSupplement<\/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.getSupplement<\/em> otwiera suplement dla partnera i zwraca warto\u015b\u0107 atrybutu workflow. Je\u015bli dla obiektu biznesowego nie istnieje \u017caden suplement, zwracana jest warto\u015b\u0107 <em>null<\/em>.<\/p>\n<p>function create()<\/p>\n<p>{<\/p>\n<p>\u00a0 var p_partner := loadPartner(parameters.PARTNER);<\/p>\n<p>\u00a0 var p_supplement := parameters.SUPPLEMENT;<\/p>\n<p>\u00a0 var p_attribute := parameters.ATTRIBUTE;<\/p>\n<p>\u00a0 var workflowAttributes := getSupplement(p_partner, p_supplement, false);<\/p>\n<p>\u00a0 result.IS_NULL := isNull(workflowAttributes);<\/p>\n<p>\u00a0 if (not isNull(workflowAttributes))<\/p>\n<p>\u00a0\u00a0\u00a0 result.VALUE := cast(String, workflowAttributes[p_attribute]);<\/p>\n<p>}<\/div><\/section>\n<h5 id=\"putsupplement\" ><span class=\"ez-toc-section\" id=\"putSupplement\"><\/span>putSupplement<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>putSupplement<\/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>putSupplement<\/em> przypisuje warto\u015bci do atrybut\u00f3w workflow suplementu workflow dla obiektu biznesowego zgodnie z tabel\u0105 hash.<\/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>Boolean putSupplement(HashMap values)<\/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>values<\/em> jest tablic\u0105 hash z atrybutami workflow suplementu workflow z poprzedniego wywo\u0142ania funkcji <em>getSupplement<\/em> lub <em>getOrCreateSupplement<\/em>. Obie funkcje zapisuj\u0105 r\u00f3wnie\u017c metadane dotycz\u0105ce suplementu workflow i obiektu biznesowego w zwr\u00f3conej tabeli hash. W zwi\u0105zku z tym w funkcji <em>putSupplement <\/em>nie s\u0105 wymagane \u017cadne dodatkowe parametry.<\/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>putSupplement <\/em>przypisuje warto\u015bci do atrybut\u00f3w workflow suplementu workflow dla obiektu biznesowego zgodnie z tabel\u0105 hash. Je\u015bli dla obiektu biznesowego nie istnieje \u017caden suplement, automatycznie tworzona jest nowa instancja suplementu. Nie ma znaczenia, czy tablica hash z atrybutami workflow zosta\u0142a zwr\u00f3cona za pomoc\u0105 <em>getSupplement <\/em>lub <em>getOrCreateSupplement<\/em>. Nie ma r\u00f3wnie\u017c znaczenia, czy podczas wywo\u0142ywania tych dw\u00f3ch funkcji za\u017c\u0105dano blokady zapisu dla suplementu workflow.<\/p>\n<p>Funkcja zwraca warto\u015b\u0107 <em>true<\/em>, je\u015bli przypisanie powiod\u0142o si\u0119 i <em>false<\/em>, je\u015bli ograniczenie lub walidacja w definicjach atrybut\u00f3w lub w interfejsie programistycznym dodatku workflow uniemo\u017cliwia przypisanie.<\/p>\n<p>Je\u015bli przypisanie zosta\u0142o uniemo\u017cliwione z innych powod\u00f3w, 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>\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 obiekt biznesowy nie ma dodatku workflow, kt\u00f3ry pasuje do metadanych w tabeli hash <em>values<\/em>, zwracana jest warto\u015b\u0107 <em>null<\/em>.<\/p>\n<p>Je\u015bli suplement nie jest typu <em>Managed Supplement<\/em> lub nie ma zastosowania <em>Workflow<\/em>, zwracana jest warto\u015b\u0107 <em>null<\/em>. Warto\u015b\u0107 <em>null<\/em> jest r\u00f3wnie\u017c zwracana, je\u015bli suplement workflow nie mo\u017ce zosta\u0107 otwarty do zapisu, np. poniewa\u017c inne dzia\u0142anie zablokowa\u0142o suplement workflow do zapisu. Je\u015bli blokada zapisu zosta\u0142a za\u017c\u0105dana przez wywo\u0142anie funkcji<em> getSupplement<\/em> lub <em>getOrCreateSupplement<\/em> w tym samym dzia\u0142aniu, blokada nie uniemo\u017cliwia przypisania przy u\u017cyciu funkcji <em>putSupplement<\/em>. Tylko dzia\u0142anie, kt\u00f3re pomy\u015blnie ustawi\u0142o blokad\u0119 zapisu, mo\u017ce zmieni\u0107 suplement workflow i jego atrybuty workflow.<\/p>\n<p>Warto\u015b\u0107 <em>null<\/em> jest zwracana, je\u015bli do tabeli zosta\u0142 dodany parametr, kt\u00f3ry nie jest atrybutem suplementu lub ma typ danych, kt\u00f3rego nie mo\u017cna przekonwertowa\u0107 na typ danych atrybutu workflow.<\/p>\n<p>Je\u015bli uzupe\u0142nienie workflow ma atrybut workflow, kt\u00f3ry nie jest zawarty w tabeli skr\u00f3t\u00f3w, nie prowadzi to do b\u0142\u0119du. Tylko warto\u015b\u0107 tego atrybutu workflow nie ulega zmianie. Oznacza to, \u017ce kolejne atrybuty workflow mog\u0105 by\u0107 dodawane do suplementu workflow bez negatywnego wp\u0142ywu na istniej\u0105ce dzia\u0142ania workflow, kt\u00f3re nie zosta\u0142y jeszcze zako\u0144czone.<\/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>putSupplement(workflowAttributes)<\/em> przypisuje warto\u015bci do atrybut\u00f3w workflow suplementu workflow, do kt\u00f3rego odwo\u0142uj\u0105 si\u0119 metadane tabeli <em>workflowAttributes<\/em> zgodnie z tabel\u0105 skr\u00f3t\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>OLTP<\/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 nie zmienia obiektu biznesowego, do kt\u00f3rego nale\u017cy suplement workflow. Je\u015bli na przyk\u0142ad atrybuty workflow partnera zostan\u0105 zapisane, atrybut <em>updateInfo<\/em> partnera nie ulegnie zmianie. Pozwala to na utworzenie definicji dzia\u0142ania, kt\u00f3ra dodaje dalsze informacje do partnera, gdy jest on zapisywany, na przyk\u0142ad bez wyzwalania nowego zdarzenia obiektu biznesowego, co mog\u0142oby doprowadzi\u0107 do ponownego przypisania atrybut\u00f3w workflow.<\/p>\n<p>Fakt, \u017ce funkcja<em> putSupplement <\/em>nie zmienia obiektu biznesowego oznacza r\u00f3wnie\u017c, \u017ce interaktywna aplikacja, kt\u00f3ra ma otwarty obiekt biznesowy w momencie zmiany, nie wydaje komunikatu ostrzegawczego podczas zapisywania, je\u015bli atrybuty workflow uleg\u0142y zmianie.<\/p>\n<p>Poniewa\u017c tylko dzia\u0142ania mog\u0105 zmienia\u0107 atrybuty workflow, mo\u017ce by\u0107 konieczne ponowne otwarcie atrybut\u00f3w workflow w poszczeg\u00f3lnych kontrolach (np. za pomoc\u0105 funkcji <em>getByPrimaryKey<\/em>), poniewa\u017c warto\u015bci atrybut\u00f3w workflow zawarte w widoku obiektu mog\u0105 by\u0107 ju\u017c nieaktualne.<\/p>\n<p>Funkcja <em>putSupplement<\/em> nie wywo\u0142uje indywidualnych kontroli przed zapisaniem. Nale\u017cy zatem sprawdzi\u0107, czy nowe warto\u015bci s\u0105 dozwolone przed przypisaniem ich do 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>Zobacz tak\u017ce<\/p>\n<\/td>\n<td style=\"border-style: outset; border-color: #000000; background-color: #ffffff;\" width=\"406\">\n<p><em>getOrCreateSupplement<\/em><em>, <\/em><em>getSupplement<\/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.putSupplement<\/em> otwiera atrybuty workflow partnera i zmienia warto\u015b\u0107 atrybutu.<\/p>\n<p>function create()<\/p>\n<p>{<\/p>\n<p>\u00a0 var p_partner := loadPartner(parameters.PARTNER);<\/p>\n<p>\u00a0 var p_supplement := parameters.SUPPLEMENT;<\/p>\n<p>\u00a0 var p_attribute := parameters.ATTRIBUTE;<\/p>\n<p>\u00a0 var r_putSupplement := false;<\/p>\n<p>\u00a0 var workflowAttributes := getOrCreateSupplement(p_partner, p_supplement, true);<\/p>\n<p>\u00a0 result.IS_NULL_GET := isNull(workflowAttributes);<\/p>\n<p>\u00a0 if (cast(Boolean, first(workflowAttributes, false)))<\/p>\n<p>\u00a0 {<\/p>\n<p>\u00a0\u00a0\u00a0 var attributeValue := cast(String, workflowAttributes[p_attribute]);<\/p>\n<p>\u00a0\u00a0\u00a0 result.OLD_VALUE := attributeValue;<\/p>\n<p>\u00a0\u00a0\u00a0 workflowAttributes[p_attribute] := parameters.VALUE;<\/p>\n<p>\u00a0\u00a0\u00a0 r_putSupplement := putSupplement(workflowAttributes);<\/p>\n<p>\u00a0\u00a0\u00a0 result.IS_NULL_SET := isNull(r_putSupplement);<\/p>\n<p>\u00a0\u00a0\u00a0 workflowAttributes := getSupplement(p_partner, p_supplement);<\/p>\n<p>\u00a0\u00a0\u00a0 result.NEW_VALUE := cast(String, workflowAttributes[p_attribute]);<\/p>\n<p>\u00a0 }<\/p>\n<p>}<\/div><\/section>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\"><strong>Atrybuty workflow w procesach zatwierdzania<\/strong><\/p>\n<p><em>Zapisywanie statusu zatwierdzenia w atrybucie workflow<\/em><\/p>\n<p>Procesy zatwierdzania s\u0105 wa\u017cnym obszarem zada\u0144 dla atrybut\u00f3w workflow. Je\u015bli bie\u017c\u0105cy status zatwierdzenia nie jest przechowywany w atrybucie workflow, indywidualna walidacja, kt\u00f3ra zapobiega zwolnieniu niezatwierdzonego zam\u00f3wienia, jest bardzo z\u0142o\u017cona i czasoch\u0142onna do wprowadzenia. Je\u015bli status zatwierdzenia jest zapisany w atrybucie workflow, prosto zaprojektowany proces zatwierdzania musi sprawdza\u0107 tylko ten pojedynczy status.<\/p>\n<p>W zale\u017cno\u015bci od charakteru procesu zatwierdzania mo\u017cliwe s\u0105 dalsze warunki, takie jak uwzgl\u0119dnienie centr\u00f3w koszt\u00f3w i warto\u015bci progowych zwi\u0105zanych z okresem (kt\u00f3re mog\u0105 by\u0107 r\u00f3wnie\u017c mapowane jako atrybuty workflow).<\/p>\n<p>Ze wzgl\u0119du na prostot\u0119 i przejrzysto\u015b\u0107, niniejszy przyk\u0142ad nie zawiera bardziej szczeg\u00f3\u0142owych informacji na temat takich wymaga\u0144 specyficznych dla organizacji. Zamiast tego rejestrowany jest prosty proces zatwierdzania z nast\u0119puj\u0105cymi warto\u015bciami statusu zatwierdzenia, kt\u00f3re s\u0105 zapisywane w atrybucie workflow <em>status<\/em>:<\/p>\n<ul>\n<li><strong>Pusty ci\u0105g znak\u00f3w (warto\u015b\u0107 domy\u015blna)<\/strong> \u2013 proces autoryzacji nie zosta\u0142 jeszcze rozpocz\u0119ty<\/li>\n<li><strong>NIE ZATWIERDZONO<\/strong> \u2013 rozpocz\u0119to proces zatwierdzania, kt\u00f3ry nie zosta\u0142 jeszcze zako\u0144czony lub kt\u00f3rego wynik nie jest jeszcze dost\u0119pny<\/li>\n<li><strong>ZATWIERDZONO<\/strong> \u2013 zam\u00f3wienie zosta\u0142o zatwierdzone w ostatecznym procesie zatwierdzania<\/li>\n<li><strong>ODRZUCONO<\/strong> \u2013 zam\u00f3wienie zosta\u0142o odrzucone w ostatnim procesie zatwierdzania<\/li>\n<li><strong>WYCOFANO<\/strong> \u2013 wnioskodawca (inicjator) wycofa\u0142 si\u0119 z procesu autoryzacji<\/li>\n<li><strong>NIEPRAWID\u0141OWY<\/strong> \u2013 ostatni proces testowy zako\u0144czy\u0142 si\u0119 b\u0142\u0119dem<\/li>\n<\/ul>\n<p><em>Zapobieganie wydawaniu nieautoryzowanych zam\u00f3wie\u0144 zakupu<\/em><\/p>\n<p>Kontrola indywidualna powinna uniemo\u017cliwi\u0107 zwolnienie zam\u00f3wienia w nast\u0119puj\u0105cych przypadkach:<\/p>\n<ul>\n<li>Zam\u00f3wienie wykorzystuje rodzaj ze statusem otwarcia <em>W opracowaniu<\/em> (je\u015bli status otwarcia to <em>Zwolniony<\/em>, i tak nie by\u0142oby mo\u017cliwe zapobie\u017cenie zwolnieniu)<\/li>\n<li>Kwota netto przekracza 1 000 jednostek w pierwszej walucie wewn\u0119trznej, a zam\u00f3wienie nie ma statusu zatwierdzenia <em>ZATWIERDZONE<\/em><\/li>\n<\/ul>\n<p>Po pierwsze, nale\u017cy wprowadzi\u0107 indywidualn\u0105 kontrol\u0119 dla kontraktow hook zam\u00f3wienia (<em>com.cisag.app.purchasing.order.hook.log.PurchaseOrder<\/em>), kt\u00f3ra zapobiega zwolnieniu nieautoryzowanych zam\u00f3wie\u0144. Widok obiektu <em>persistent<\/em> zawiera warto\u015bci zam\u00f3wienia przechowywane na sta\u0142e w bazie danych. Widok obiektu <em>current <\/em>zawiera warto\u015bci do sprawdzenia.<\/p>\n<p>Aby dowiedzie\u0107 si\u0119, kt\u00f3re atrybuty mo\u017cna sprawdzi\u0107, nale\u017cy otworzy\u0107 widok obiektu dla zam\u00f3wienia (<em>com.cisag.app.purchasing.order.model.PurchaseOrder<\/em>) w aplikacji <em>Prezentacja schematu obiektu<\/em>. Zak\u0142adka <em>Atrybuty<\/em> pokazuje atrybuty, a zak\u0142adka<em> Relacje<\/em> pokazuje relacje widoku obiektu. Je\u015bli relacja jest typu <em>Widok obiektu<\/em>, mo\u017cna og\u00f3lnie sprawdzi\u0107 atrybuty przechowywane niepersystentnie w odwo\u0142uj\u0105cym si\u0119 widoku obiektu. Jednak oznaczenie typu <em>Jednostka biznesowa<\/em> wskazuje na trwale przechowywan\u0105 jednostk\u0119 biznesow\u0105.<\/p>\n<p>Nast\u0119pnie nale\u017cy wprowadzi\u0107 nast\u0119puj\u0105c\u0105 walidacj\u0119 indywidualn\u0105:<\/p>\n<p>const Status as valueSet(com.cisag.app.general.OrderStatus);<\/p>\n<p>const Reason as valueSet(com.cisag.app.general.InvalidOrderReason);<\/p>\n<p>function validateHeader(<\/p>\n<p>\u00a0\u00a0\u00a0 persistent as DataView(com.cisag.app.purchasing.order.model.PurchaseOrder),<\/p>\n<p>\u00a0\u00a0\u00a0 current as DataView(com.cisag.app.purchasing.order.model.PurchaseOrder))<\/p>\n<p>{<\/p>\n<p>\u00a0 \/* nie zatwierdzaj PO w trybie tworzenia *\/<\/p>\n<p>\u00a0 if (isNull(persistent))<\/p>\n<p>\u00a0\u00a0\u00a0 powr\u00f3t;<\/p>\n<p>\u00a0 \/* nie weryfikuj PO, kt\u00f3ry zosta\u0142 zwolniony przy tworzeniu *\/<\/p>\n<p>\u00a0 if (current-&gt;Type:creationStatus &lt;&gt; Status.ORDER_ENTERED)<\/p>\n<p>\u00a0\u00a0\u00a0 powr\u00f3t;<\/p>\n<p>\u00a0 \/* nie zatwierdzaj PO, chyba \u017ce warto\u015b\u0107 netto przekracza pr\u00f3g *\/<\/p>\n<p>\u00a0 if (current:totalValues.netValueDomestic.amount1 &lt;= 1000)<\/p>\n<p>\u00a0\u00a0\u00a0 powr\u00f3t;<\/p>\n<p>\u00a0 \/* pobierz uzupe\u0142nienie przep\u0142ywu pracy z atrybutami zatwierdzenia *\/<\/p>\n<p>\u00a0 var approval := getByPrimaryKey(CisObject(com.cisag.app.purchasing.obj.PurchaseOrderWorkflowApproval), current:guid);<\/p>\n<p>\u00a0 \/* uniemo\u017cliwi\u0107 zwolnienie PO bez zatwierdzenia *\/<\/p>\n<p>\u00a0 if (approval.status &lt;&gt; &#8222;APPROVED&#8221; and (persistent:status = Status.ORDER_ENTERED and current:status = Status.ORDER_RELEASED))<\/p>\n<p>\u00a0\u00a0\u00a0 sendMessage(current:number, &#8222;PUR001&#8221;, list(current-&gt;Type:code, current:number));<\/p>\n<p>Pierwszy warunek umo\u017cliwia u\u017cytkownikowi zapisanie nowego zam\u00f3wienia bez kontroli. Drugi warunek zezwala na wszelkie zmiany i zmiany statusu dla zam\u00f3wie\u0144, kt\u00f3re u\u017cywaj\u0105 typu ze statusem otwarcia <em>Zwolnione<\/em>. Trzeci warunek zezwala na zmiany i zmiany statusu, je\u015bli ca\u0142kowita kwota netto nie przekracza 1000 jednostek walutowych w pierwszej walucie wewn\u0119trznej.<\/p>\n<p>Suplement workflow jest nast\u0119pnie otwierany za pomoc\u0105 funkcji <em>getByPrimaryKey<\/em>. Poniewa\u017c suplement ma ten sam klucz podstawowy co obiekt biznesowy, nale\u017cy otworzy\u0107 suplement workflow za pomoc\u0105 identyfikatora <em>Guid <\/em>zam\u00f3wienia.<\/p>\n<p>Poni\u017cszy warunek sprawdza, czy zam\u00f3wienie zosta\u0142o przeniesione ze statusu <em>W opracowaniu <\/em>do statusu <em>Zwolnione<\/em>. Je\u015bli tak jest, a zam\u00f3wienie nie ma statusu zatwierdzenia <em>ZATWIERDZONE<\/em>, zwolnienie jest uniemo\u017cliwione i wy\u015bwietlany jest komunikat o b\u0142\u0119dzie <em>PUR001<\/em>.<\/p>\n<p>Zam\u00f3wienie posiada atrybut o nazwie <em>statusBackup<\/em>. Atrybut ten jest u\u017cywany, je\u015bli zam\u00f3wienie ma wi\u0119cej pozycji ni\u017c mo\u017cna zapisa\u0107 w transakcji bazy danych, tj. je\u015bli liczba pozycji przekracza rozmiar bloku. Takie zam\u00f3wienie musi by\u0107 zwalniane blok po bloku. Gdy pozycje pierwszego bloku zostan\u0105 zwolnione, zam\u00f3wienie zostanie przeniesione do statusu <em>Nieprawid\u0142owe<\/em>. Przysz\u0142y status jest rejestrowany w atrybucie <em>statusBackup<\/em>, a pow\u00f3d niewa\u017cnego statusu jest rejestrowany w atrybucie <em>invalidOrderReason<\/em>. Zam\u00f3wienie jest przenoszone do statusu docelowego <em>Zwolnione<\/em> tylko wtedy, gdy pozycje w ostatnim bloku zostan\u0105 zwolnione. Aby upewni\u0107 si\u0119, \u017ce \u017cadna lub wszystkie pozycje nie zostan\u0105 zwolnione, a zam\u00f3wienie nie otrzyma statusu <em>Nieprawid\u0142owe<\/em> po pr\u00f3bie zwolnienia, nale\u017cy doda\u0107 kolejny warunek do indywidualnej kontroli:<\/p>\n<p>\u00a0 \/* zapobiega zwolnieniu PO, chyba \u017ce zostanie zatwierdzone (przekroczono rozmiar bloku) *\/<\/p>\n<p>\u00a0 if (approval.status &lt;&gt; &#8222;APPROVED&#8221; and (persistent:status = Status.ORDER_ENTERED and current:status = Status.ORDER_INVALID and current:statusBackup = Status.ORDER_RELEASED and current:invalidReason = Reason.CHANGE_HEADER_STATUS))<\/p>\n<p>\u00a0\u00a0\u00a0 sendMessage(current:number, &#8222;PUR001&#8221;, list(current-&gt;Type:code, current:number));<\/p>\n<p>}<\/p>\n<p>Taki warunek jest wymagany tylko dla typ\u00f3w dokument\u00f3w, kt\u00f3re maj\u0105 atrybut o nazwie <em>statusBackup<\/em>.<\/p>\n<p><em>Rozpocz\u0119cie procesu zatwierdzania za pomoc\u0105 menu kontekstowego<\/em><\/p>\n<p>Aby m\u00f3c uruchomi\u0107 proces zatwierdzania poprzez menu kontekstowe zam\u00f3wienia, nale\u017cy wprowadzi\u0107 zdarzenie typu <em>Zdarzenie u\u017cytkownika<\/em> dla zam\u00f3wienia (<em>com.cisag.app.purchasing.obj.PurchaseOrder<\/em>) w w\u0119\u017ale startowym procesu zatwierdzania.<\/p>\n<p>Je\u015bli proces autoryzacji nie zostanie natychmiast wy\u015bwietlony w menu kontekstowym w sekcji <em>Rozpocznij proces<\/em>, nalezy wylogowa\u0107 si\u0119 z systemu i zalogowa\u0107 ponownie.<\/p>\n<p>Aby zapobiec rozpocz\u0119ciu procesu zatwierdzania dla zam\u00f3wienia, kt\u00f3re mo\u017ce zosta\u0107 zwolnione bez zatwierdzenia, nale\u017cy wprowadzi\u0107 podobny warunek przej\u015bcia, jak w przypadku kontroli indywidualnej. Je\u015bli warunek przej\u015bcia nie jest spe\u0142niony, procesu nie mo\u017cna wybra\u0107 w menu kontekstowym. Nale\u017cy u\u017cy\u0107 funkcji <em>indexOf<\/em>, aby upewni\u0107 si\u0119, \u017ce proces zatwierdzania mo\u017ce zosta\u0107 uruchomiony tylko dla zam\u00f3wie\u0144 ze statusem zatwierdzenia <em>ODRZUCONE, WYCOFANE<\/em> lub <em>NIEWA\u017bNE<\/em>. Proces zatwierdzania mo\u017cna r\u00f3wnie\u017c uruchomi\u0107, je\u015bli status zatwierdzenia ma warto\u015b\u0107 domy\u015bln\u0105 (pusty ci\u0105g znak\u00f3w), poniewa\u017c w tym przypadku funkcja <em>indexOf<\/em> zwraca warto\u015b\u0107 0, a nie -1.<\/p>\n<p>parameters.object-&gt;Type:creationStatus = 1 \/* ORDER_ENTERED *\/ and parameters.object:totalValues.netValueDomestic.amount1 &gt; 1000 and indexOf(&#8222;REJECTED|WITHDRAWN|INVALID&#8221;, getByPrimaryKey(CisObject(com.cisag.app.purchasing.obj.PurchaseOrderWorkflowApproval), parameters.object:guid):status) &gt;= 0<\/p>\n<p>W w\u0119\u017ale startowym nale\u017cy u\u017cy\u0107 funkcji <em>putSupplement<\/em>, aby zmieni\u0107 status zatwierdzenia zam\u00f3wienia na <em>NIE ZATWIERDZONO<\/em>. Oznacza to, \u017ce nie mo\u017cna uruchomi\u0107 dalszych proces\u00f3w zatwierdzania. Je\u015bli nie mo\u017cna zmieni\u0107 statusu zatwierdzenia, nale\u017cy u\u017cy\u0107 polecenia <em>abortProcess<\/em>, aby anulowa\u0107 tworzenie procesu. Zam\u00f3wienie zostanie r\u00f3wnie\u017c zapisane w zmiennej procesu <em>po<\/em>, dzi\u0119ki czemu b\u0119dzie mo\u017cna je przeanalizowa\u0107 w kolejnych krokach procesu.<\/p>\n<p>function create()<\/p>\n<p>{<\/p>\n<p>\u00a0 var putOK := false;<\/p>\n<p>\u00a0 var approval := getOrCreateSupplement(parameters.object, &#8222;com.cisag.app.purchasing.obj.PurchaseOrderWorkflowApproval&#8221;);<\/p>\n<p>\u00a0 if (not isNull(approval))<\/p>\n<p>\u00a0 {<\/p>\n<p>\u00a0\u00a0\u00a0 approval.status := &#8222;IN_APPROVAL&#8221;;<\/p>\n<p>\u00a0\u00a0\u00a0 var putOK := putSupplement(approval);<\/p>\n<p>\u00a0 }<\/p>\n<p>\u00a0 if (not cast(Boolean, first(putOK, false)))<\/p>\n<p>\u00a0 { \/* obs\u0142uga awaryjna, je\u015bli aktualizacja statusu zatwierdzenia nie powiod\u0142a si\u0119 *\/<\/p>\n<p>\u00a0\u00a0\u00a0 abortProcess();<\/p>\n<p>\u00a0 }<\/p>\n<p>\u00a0 process.po := parameters.object;<\/p>\n<p>}<\/p>\n<p>Nazwa u\u017cytkownika, kt\u00f3ry uruchamia proces, jest automatycznie zapisywana w <em>process.Initiator<\/em> podczas akcji u\u017cytkownika. Zam\u00f3wienie jest r\u00f3wnie\u017c automatycznie przypisywane do w\u0119z\u0142a pocz\u0105tkowego (a tym samym do procesu), dzi\u0119ki czemu wszystkie procesy zatwierdzania zam\u00f3wienia mog\u0105 by\u0107 wyszukiwane za pomoc\u0105 menu kontekstowego.<\/p>\n<p><em>Ka\u017cdorazowe zezwolenie na zwolnienie za specjaln\u0105 zgod\u0105<\/em><\/p>\n<p>Mo\u017cna zezwoli\u0107 na zwolnienie niezatwierdzonego zam\u00f3wienia dla u\u017cytkownik\u00f3w ze specjalnymi uprawnieniami. Opcja ta jest przydatna na przyk\u0142ad, gdy zam\u00f3wienie ma zosta\u0107 zwolnione w kr\u00f3tkim czasie, a proces zatwierdzania trwa\u0142by zbyt d\u0142ugo lub gdy b\u0142\u0105d w procesie zatwierdzania uniemo\u017cliwia zar\u00f3wno zatwierdzenie, jak i zwolnienie. Najprostszym sposobem na wdro\u017cenie tego wymogu jest utworzenie roli workflow <em>Kierownik Zakupu<\/em> i zawsze zezwalanie w\u0142a\u015bcicielowi tej roli na zwolnienie zam\u00f3wienia. W tym celu nale\u017cy doda\u0107 nast\u0119puj\u0105cy warunek do indywidualnego sprawdzenia przed otwarciem suplementu workflow:<\/p>\n<p>\u00a0 \/* nie zatwierdzaj PO dla superu\u017cytkownik\u00f3w *\/<\/p>\n<p>\u00a0 if (contains(resolveRole(&#8222;HEAD_OF_PROCUREMENT&#8221;), environment.userGuid)<\/p>\n<p>\u00a0\u00a0\u00a0 powr\u00f3t;<\/p>\n<p><em>Ochrona zam\u00f3wienia podczas audytu<\/em><\/p>\n<p>Aby zapobiec zmianie kolejno\u015bci zam\u00f3wie\u0144 podczas kontroli, nale\u017cy wprowadzi\u0107 dodatkowy warunek w indywidualnej kontroli.<\/p>\n<p>\u00a0 \/* zapobieganie zmianom w PO podczas zatwierdzania *\/<\/p>\n<p>\u00a0 if (approval.status = &#8222;IN_APPROVAL&#8221;)<\/p>\n<p>\u00a0\u00a0\u00a0 sendMessage(current:number, &#8222;PUR002&#8221;, list(current-&gt;Type:code, current:number));<\/p>\n<p>Aby umo\u017cliwi\u0107 inspektorom zmian\u0119 zam\u00f3wienia ze statusem zatwierdzenia <em>NIE ZATWIERDZONO<\/em> np. w celu dostosowania ilo\u015bci, usuni\u0119cia pozycji lub dodania nowych pozycji, nale\u017cy wprowadzi\u0107 dodatkowy atrybut workflow <em>process<\/em>, kt\u00f3ry zawiera identyfikator ostatniego procesu zatwierdzania. W definicji dzia\u0142ania dla w\u0119z\u0142a pocz\u0105tkowego nale\u017cy przypisa\u0107 identyfikator bie\u017c\u0105cego procesu do atrybutu workflow:<\/p>\n<p>\u00a0\u00a0\u00a0 approval.process := activity-&gt;Process:code;<\/p>\n<p>Uzupe\u0142nij poprzedni warunek w nast\u0119puj\u0105cy spos\u00f3b:<\/p>\n<p>\u00a0 \/* zapobieganie zmianom w PO podczas zatwierdzania (z wyj\u0105tkiem zmian dokonywanych przez redaktor\u00f3w) *\/<\/p>\n<p>\u00a0 if (approval.status = &#8222;IN_APPROVAL&#8221; and not isEditor(approval.process, environment.userGuid)<\/p>\n<p>\u00a0\u00a0\u00a0 sendMessage(current:number, &#8222;PUR002&#8221;, list(current-&gt;Type:code, current:number));<\/p>\n<p>Funkcja zdefiniowana przez u\u017cytkownika <em>isEditor<\/em> wykorzystuje zapytanie OQL w celu ustalenia, czy u\u017cytkownik, dla kt\u00f3rego zam\u00f3wienie jest aktualnie sprawdzane, ma otwarte zadanie typu w\u0119ze\u0142 decyzyjny w powi\u0105zanym procesie zatwierdzania. Je\u015bli tak jest, funkcja zwraca warto\u015b\u0107 <em>true<\/em>, w przeciwnym razie <em>false.<\/em><\/p>\n<p>function isEditor(processId as String, userGuid as Guid) as Boolean<\/p>\n<p>{<\/p>\n<p>\u00a0 \/* Zwraca warto\u015b\u0107 true, je\u015bli userGuid ma otwarty w\u0119ze\u0142 decyzyjny nale\u017c\u0105cy do processId *\/<\/p>\n<p>\u00a0 var proc as CisObject(com.cisag.sys.workflow.obj.Process);<\/p>\n<p>\u00a0 var OQL := &#8222;SELECT COUNT(*) FROM com.cisag.sys.workflow.obj.Workitem task JOIN com.cisag.sys.workflow.obj.Activity ON task:activityGuid = activity:guid JOIN com.cisag.sys.workflow.obj.Process ON activity:process = process:guid WHERE task:userGuid = ? AND process:code = ? AND activity:type = 15 AND task:state in (20, 30, 40, 70)&#8221;;<\/p>\n<p>\u00a0 var params as Unknown[];<\/p>\n<p>\u00a0 add(params, processId);<\/p>\n<p>\u00a0 add(params, userGuid);<\/p>\n<p>\u00a0 return cast(Number, getResultList(OQL, params, 1)[0][0]) &gt; 0;<\/p>\n<p>}<\/p>\n<p>Alternatywnym rozwi\u0105zaniem by\u0142oby wywo\u0142anie funkcji <em>putSupplement<\/em> w funkcji <em>create <\/em>w\u0119z\u0142a decyzyjnego w celu zapisania nazw u\u017cytkownik\u00f3w operator\u00f3w w nowym atrybucie workflow. Jednak w przypadku tego rozwi\u0105zania recenzenci, kt\u00f3rzy otrzymali swoje zadanie poprzez przekierowanie lub dzia\u0142anie nast\u0119pcze w przypadku przekroczenia limitu czasu, nie byliby w stanie zmieni\u0107 kolejno\u015bci zam\u00f3wie\u0144.<\/p>\n<p><em>Zapisywanie wyniku zatwierdzenia w atrybutach workflow<\/em><\/p>\n<p>W procesie zatwierdzania zam\u00f3wienie jest zatwierdzane lub odrzucane. Jest to zatem decyzja z dwiema opcjami. W\u0119ze\u0142 decyzyjny zosta\u0142 zaimplementowany dla tego przypadku u\u017cycia. W\u0119ze\u0142 decyzyjny interpretuje status <em>Zrealizowane<\/em> jako decyzj\u0119 pozytywn\u0105 (zatwierdzon\u0105), a status <em>Zako\u0144czone bez opracowania<\/em> jako decyzj\u0119 negatywn\u0105 (odrzucon\u0105). Je\u015bli w definicji dzia\u0142ania wybrano regu\u0142\u0119 decyzyjn\u0105 <em>Konsensus<\/em>, dzia\u0142anie ko\u0144czy si\u0119, gdy tylko co najmniej jeden operator (recenzent) uko\u0144czy zadanie bez jego przetwarzania, tj. odrzuci zam\u00f3wienie.<\/p>\n<p>Je\u015bli wybrana zostanie zasada wi\u0119kszo\u015bci, dzia\u0142anie ko\u0144czy si\u0119, gdy tylko ponad po\u0142owa operator\u00f3w zako\u0144czy zadanie lub pozostawi je nieprzetworzone. W przypadku impasu, zam\u00f3wienie jest uznawane za zatwierdzone. Je\u015bli definicja procesu wykorzystuje w\u0119ze\u0142 zdarze\u0144, nie jest konieczne ani przydatne tworzenie oddzielnego dzia\u0142ania dla ka\u017cdego recenzenta. Kolejn\u0105 zalet\u0105 w\u0119z\u0142a decyzyjnego jest to, \u017ce decyzja jest automatycznie wprowadzana jako wynik dzia\u0142ania lub procesu. Dlatego w definicji dzia\u0142ania w\u0119z\u0142a pocz\u0105tkowego nale\u017cy wpisa\u0107 <em>ZATWIERDZONY<\/em> jako wynik decyzji pozytywnej i <em>ODRZUCONY<\/em> jako wynik decyzji negatywnej. Nale\u017cy wybra\u0107 tak\u017ce opcj\u0119 <em>Proces i dzia\u0142anie<\/em> w polu <em>Automatyczne wprowadzanie wynik\u00f3w<\/em>.<\/p>\n<p>W definicji dzia\u0142ania dla w\u0119z\u0142a decyzyjnego nale\u017cy zapisa\u0107 wynik zatwierdzenia w atrybucie workflow <em>status<\/em>. Aby zwi\u0119kszy\u0107 identyfikowalno\u015b\u0107 procesu zatwierdzania, nale\u017cy r\u00f3wnie\u017c zapisa\u0107 dodatkowe atrybuty workflow, aby zarejestrowa\u0107 czas zatwierdzenia i nazw\u0119 u\u017cytkownika, kt\u00f3ry zatwierdzi\u0142 lub odrzuci\u0142 zam\u00f3wienie. Zatwierdzaj\u0105cym lub odrzucaj\u0105cym jest u\u017cytkownik, kt\u00f3ry r\u00f3wnie\u017c zako\u0144czy\u0142 dzia\u0142anie poprzez wykonanie zadania. U\u017cytkownik ten znajduje si\u0119 w atrybucie <em>completeUser <\/em>dzia\u0142ania i mo\u017cna go sprawdzi\u0107 w funkcji <em>close<\/em>. Tego u\u017cytkownika mo\u017cna r\u00f3wnie\u017c okre\u015bli\u0107 w nast\u0119puj\u0105cym w\u0119\u017ale przy u\u017cyciu nast\u0119puj\u0105cego wyra\u017cenia:<\/p>\n<p><em>process.previousStep:completeUser<\/em><\/p>\n<p>Je\u015bli kolejny w\u0119ze\u0142 ma wi\u0119cej ni\u017c jedn\u0105 przychodz\u0105c\u0105 kraw\u0119d\u017a, w\u00f3wczas <em>previousStep<\/em> zawiera list\u0119 dzia\u0142a\u0144 poprzedzaj\u0105cych. Je\u015bli w\u0119ze\u0142 decyzyjny jest pierwszym dzia\u0142aniem poprzedzaj\u0105cym, u\u017cytkownika mo\u017cna okre\u015bli\u0107 w nast\u0119puj\u0105cy spos\u00f3b:<\/p>\n<p><em>process.previousStep[0]:completeUser<\/em><\/p>\n<p>W atrybucie workflow zapisywana jest r\u00f3wnie\u017c bie\u017c\u0105ca kwota netto w momencie zatwierdzenia lub odrzucenia.<\/p>\n<p>function close(state as Number)<\/p>\n<p>{<\/p>\n<p>\u00a0 var putOK := false;<\/p>\n<p>\u00a0 var approval := getOrCreateSupplement(process.po, &#8222;com.cisag.app.purchasing.obj.PurchaseOrderWorkflowApproval&#8221;);<\/p>\n<p>\u00a0\u00a0\u00a0 if (not isNull(approval))<\/p>\n<p>\u00a0\u00a0\u00a0 {<\/p>\n<p>\u00a0\u00a0\u00a0\u00a0\u00a0 var po := getByPrimaryKey(CisObject(com.cisag.app.purchasing.obj.PurchaseOrder), process.po);<\/p>\n<p>\u00a0\u00a0\u00a0\u00a0\u00a0 approval.date := now();<\/p>\n<p>\u00a0\u00a0\u00a0\u00a0\u00a0 approval.status := process.Result;<\/p>\n<p>\u00a0\u00a0\u00a0\u00a0\u00a0 approval.amount := po:totalValues.netValueDomestic.amount1;<\/p>\n<p>\u00a0\u00a0\u00a0\u00a0\u00a0 approval.approver := userName(activity:completeUser);<\/p>\n<p>\u00a0\u00a0\u00a0\u00a0\u00a0 var putOK := putSupplement(approval);<\/p>\n<p>\u00a0\u00a0\u00a0 }<\/p>\n<p>\u00a0 }<\/p>\n<p>\u00a0 if (not cast(Boolean, first(putOK, false)))<\/p>\n<p>\u00a0 { \/* obs\u0142uga awaryjna, je\u015bli aktualizacja zatwierdzenia nie powiod\u0142a si\u0119 *\/<\/p>\n<p>\u00a0 }<\/p>\n<p>}<\/p>\n<p><em>Wycofanie wniosku o zatwierdzenie<\/em><\/p>\n<p>Aby umo\u017cliwi\u0107 wnioskodawcy anulowanie przes\u0142anego wniosku o zatwierdzenie, nale\u017cy wybra\u0107 funkcj\u0119 <em>Rozszerzony<\/em> dla inicjatora na karcie <em>Og\u00f3lne<\/em> definicji procesu. Ta funkcja umo\u017cliwia inicjatorowi otwarcie procesu i wykonanie akcji zako\u0144czenia nieprzetworzonego zam\u00f3wienia. Ta akcja r\u00f3wnie\u017c ko\u0144czy proces i wszystkie otwarte dzia\u0142ania i zadania bez przetwarzania.<\/p>\n<p>Aby upewni\u0107 si\u0119, \u017ce status zatwierdzenia nie zachowa warto\u015bci <em>W TRAKCIE ZATWIERDZANIA<\/em> zako\u0144czeniu procesu, nale\u017cy sprawdzi\u0107 w w\u0119\u017ale ko\u0144cowym, czy istnieje wynik sprawdzenia dla procesu. Je\u015bli w <em>process.Result<\/em> nie wprowadzono \u017cadnego wyniku, nale\u017cy wywo\u0142a\u0107 <em>putSupplement<\/em>, aby przypisa\u0107 pusty ci\u0105g znak\u00f3w lub warto\u015b\u0107 <em>WITHDRAWN<\/em> do statusu zatwierdzenia zam\u00f3wienia.<\/p>\n<p>function create()<\/p>\n<p>{<\/p>\n<p>\u00a0 if (process.Result = &#8222;&#8221;)<\/p>\n<p>\u00a0 {<\/p>\n<p>\u00a0\u00a0\u00a0 var putOK := false;<\/p>\n<p>\u00a0\u00a0\u00a0 var approval := getOrCreateSupplement(process.po, &#8222;com.cisag.app.purchasing.obj.PurchaseOrderWorkflowApproval&#8221;);<\/p>\n<p>\u00a0\u00a0\u00a0 if (not isNull(approval))<\/p>\n<p>\u00a0\u00a0\u00a0 {<\/p>\n<p>\u00a0\u00a0\u00a0\u00a0\u00a0 approval.status := &#8222;WITHDRAWN&#8221;;<\/p>\n<p>\u00a0\u00a0\u00a0\u00a0\u00a0 var putOK := putSupplement(approval);<\/p>\n<p>\u00a0\u00a0\u00a0 }<\/p>\n<p>\u00a0 }<\/p>\n<p>\u00a0 if (not cast(Boolean, first(putOK, false)))<\/p>\n<p>\u00a0 { \/* obs\u0142uga awaryjna, je\u015bli aktualizacja statusu zatwierdzenia nie powiod\u0142a si\u0119 *\/<\/p>\n<p>\u00a0 }<\/p>\n<p>}<\/p>\n<p><em>Obs\u0142uga b\u0142\u0119d\u00f3w procesu<\/em><\/p>\n<p>Je\u015bli w procesie wyst\u0105pi b\u0142\u0105d, proces zostanie zako\u0144czony za po\u015brednictwem w\u0119z\u0142a b\u0142\u0119du. Aby upewni\u0107 si\u0119, \u017ce status zatwierdzenia nie zachowa warto\u015bci <em>W TRAKCIE ZATWIERDZANIA <\/em>po b\u0142\u0119dzie procesu, nale\u017cy wywo\u0142a\u0107 <em>putSupplement<\/em> w w\u0119\u017ale b\u0142\u0119du, aby przypisa\u0107 warto\u015b\u0107 <em>INVALID <\/em>do statusu zatwierdzenia zam\u00f3wienia.<\/p>\n<p>function create()<\/p>\n<p>{<\/p>\n<p>\u00a0 var putOK := false;<\/p>\n<p>\u00a0 var approval := getOrCreateSupplement(process.po, &#8222;com.cisag.app.purchasing.obj.PurchaseOrderWorkflowApproval&#8221;);<\/p>\n<p>\u00a0 if (not isNull(approval))<\/p>\n<p>\u00a0 {<\/p>\n<p>\u00a0\u00a0\u00a0 approval.status := &#8222;INVALID&#8221;;<\/p>\n<p>\u00a0\u00a0\u00a0 var putOK := putSupplement(approval);<\/p>\n<p>\u00a0 }<\/p>\n<p>\u00a0 if (not cast(Boolean, first(putOK, false)))<\/p>\n<p>\u00a0 { \/* obs\u0142uga awaryjna, je\u015bli aktualizacja statusu zatwierdzenia nie powiod\u0142a si\u0119 *\/<\/p>\n<p>\u00a0 }<\/p>\n<p>}<\/p>\n<p><em>Zwolnienie zatwierdzonego zam\u00f3wienia<\/em><\/p>\n<p>Kontrola indywidualna umo\u017cliwia ka\u017cdemu u\u017cytkownikowi zwolnienie zatwierdzonego zam\u00f3wienia. Mo\u017cna r\u00f3wnie\u017c doda\u0107 w\u0119ze\u0142 us\u0142ugi do definicji procesu, kt\u00f3ry automatycznie zwalnia w\u0119ze\u0142 us\u0142ugi, gdy tylko zostanie podj\u0119ta pozytywna decyzja. W tym celu nale\u017cy utworzy\u0107 nowy w\u0119ze\u0142 us\u0142ugi po w\u0119\u017ale decyzji. W definicji dzia\u0142ania dla w\u0119z\u0142a decyzyjnego nale\u017cy wprowadzi\u0107 nast\u0119puj\u0105cy warunek przej\u015bcia dla kraw\u0119dzi do w\u0119z\u0142a us\u0142ugi:<\/p>\n<p><em>process.Result = &#8222;ZATWIERDZONY&#8221;<\/em><\/p>\n<p>W definicji dzia\u0142ania dla w\u0119z\u0142a us\u0142ugi nale\u017cy zdefiniowa\u0107 aplikacj\u0119 dzia\u0142aj\u0105c\u0105 w tle <em>Zwolnij zam\u00f3wienie zakupu<\/em> (<em>com.cisag.app.purchasing.order.log.ReleaseOrders<\/em>). Wprowadzi\u0107 nast\u0119puj\u0105ce wyra\u017cenie jako parametr aplikacji <em>ConfirmWarnings<\/em>:<\/p>\n<p><em>true<\/em><\/p>\n<p>W polu wyra\u017cenia dla parametru aplikacji <em>Orderkeys<\/em> wprowadzi\u0107 nast\u0119puj\u0105ce warto\u015bci:<\/p>\n<p><em>list(createOrderKey(process.po:guid, ZERO_GUID))<\/em><\/p>\n<p>W deklaracjach nale\u017cy u\u017cy\u0107 polecenia <em>setJobQueue<\/em>, aby okre\u015bli\u0107 kolejk\u0119, chyba \u017ce u\u017cywana jest standardowa kolejka przechowywana w funkcji konfiguracyjnej <em>Workflow management<\/em>. Aplikacja dzia\u0142aj\u0105ca w tle powinna by\u0107 wykonywana w imieniu u\u017cytkownika, kt\u00f3ry jest upowa\u017cniony do zwolnienia zam\u00f3wienia. Je\u015bli ka\u017cdy u\u017cytkownik jest upowa\u017cniony do zwolnienia zam\u00f3wienia, a kontrola indywidualna tego nie uniemo\u017cliwia, mo\u017cna u\u017cy\u0107 inicjatora (wyzwalacza).<\/p>\n<p>function create()<\/p>\n<p>{<\/p>\n<p>\u00a0 setJobUser(process.Initiator);<\/p>\n<p>}<\/p>\n<p><em>Zmiana zatwierdzonego i wydanego zam\u00f3wienia<\/em><\/p>\n<p>Z jednej strony musi istnie\u0107 mo\u017cliwo\u015b\u0107 zmiany zwolnionego zam\u00f3wienia, np. w celu odnotowania drobnych zmian cen lub dodatkowych pozycji koszt\u00f3w dla ewentualnej dostawy. Z drugiej strony, zwolnione zam\u00f3wienie nie mo\u017ce by\u0107 dowolnie zmieniane. Aby spe\u0142ni\u0107 oba te wymagania, nale\u017cy wprowadzi\u0107 atrybut workflow dla ca\u0142kowitej kwoty netto w momencie zatwierdzenia. Zmiany w zatwierdzonym i zwolnionym zam\u00f3wieniu s\u0105 dozwolone w ramach progu tolerancji zdefiniowanego w indywidualnej kontroli.<\/p>\n<p>\u00a0 \/* zapobieganie zmianom w zatwierdzonym PO (powy\u017cej warto\u015bci progowej) *\/<\/p>\n<p>\u00a0 if (approval.status = &#8222;APPROVED&#8221; and approval.amount &gt; 0)<\/p>\n<p>\u00a0\u00a0\u00a0 if ((current:totalValues.netValueDomestic.amount1 &#8211; approval.amount) \/ approval.amount &gt; 1.05) \/* pr\u00f3g 5% *\/<\/p>\n<p>\u00a0\u00a0\u00a0\u00a0\u00a0 sendMessage(current:number, &#8222;PUR003&#8221;, list(current-&gt;Header-&gt;Type:code, current-&gt;Header:number));<\/p>\n<p>W funkcji <em>validateDetail <\/em>mo\u017cna r\u00f3wnie\u017c wprowadzi\u0107 kontrole, kt\u00f3re uniemo\u017cliwiaj\u0105 dodawanie nowych pozycji do zatwierdzonego zam\u00f3wienia.<\/p>\n<p>function validateDetail(<\/p>\n<p>\u00a0\u00a0\u00a0 persistent as DataView(com.cisag.app.purchasing.order.model.PurchaseOrderDetail),<\/p>\n<p>\u00a0\u00a0\u00a0 current as DataView(com.cisag.app.purchasing.order.model.PurchaseOrderDetail))<\/p>\n<p>{<\/p>\n<p>\u00a0 \/* pobierz uzupe\u0142nienie przep\u0142ywu pracy z atrybutami zatwierdzenia *\/<\/p>\n<p>\u00a0 var approval := getByPrimaryKey(CisObject(com.cisag.app.purchasing.obj.PurchaseOrderWorkflowApproval), current:header);<\/p>\n<p>\u00a0 \/* zapobieganie wprowadzaniu nowych pozycji zatwierdzonego PO *\/<\/p>\n<p>\u00a0 if (approval.status = &#8222;APPROVED&#8221; and isNull(persistent))<\/p>\n<p>\u00a0\u00a0\u00a0 sendMessage(current:number, &#8222;PUR004&#8221;, list(current-&gt;Header-&gt;Type:code, current-&gt;Header:number));<\/p>\n<p>}<\/p>\n<p>W razie potrzeby mo\u017cna zezwoli\u0107 na wprowadzanie nowych pozycji dla okre\u015blonych artyku\u0142\u00f3w lub grup artyku\u0142\u00f3w, takich jak artyku\u0142y rozliczeniowe.<\/p>\n<p>Mo\u017cna r\u00f3wnie\u017c zapobiec zmianom ilo\u015bci w funkcji <em>validateDetail<\/em>. Poni\u017cszy warunek zapobiega zwi\u0119kszeniu ilo\u015bci:<\/p>\n<p>\u00a0 \/* zapobiec zwi\u0119kszeniu ilo\u015bci zatwierdzonego PO *\/<\/p>\n<p>\u00a0 if (approval.status = &#8222;APPROVED&#8221; and not isNull(persistent))<\/p>\n<p>\u00a0\u00a0\u00a0 if (current:totalQuantity.amount &gt; persistent:totalQuantity.amount)<\/p>\n<p>\u00a0\u00a0\u00a0\u00a0\u00a0 sendMessage(current:number, &#8222;PUR005&#8221;, list(current-&gt;Header-&gt;Type:code, current-&gt;Header:number));<\/p>\n<p><em>Blok zatwierdzonych i zwolnionych zam\u00f3wie\u0144<\/em><\/p>\n<p>Aby m\u00f3c dokonywa\u0107 wi\u0119kszych zmian w zatwierdzonym i zwolnionym zam\u00f3wieniu, u\u017cytkownik musi najpierw zablokowa\u0107 zam\u00f3wienie. Wszelkie zmiany powinny by\u0107 dozwolone w statusie <em>Zablokowane<\/em>. Aby wymusi\u0107 nowe zatwierdzenie zablokowanego zam\u00f3wienia, nale\u017cy doda\u0107 zmian\u0119 statusu z <em>Zablokowane<\/em> na <em>Zwolnione<\/em> do warunku w indywidualnej kontroli.<\/p>\n<p>\u00a0 \/* uniemo\u017cliwi\u0107 zwolnienie PO bez zatwierdzenia *\/<\/p>\n<p>\u00a0 if (approval.status &lt;&gt; &#8222;APPROVED&#8221; and ((persistent:status = Status.ORDER_ENTERED or persistent:status = Status.ORDER_HELD) and current:status = Status.ORDER_RELEASED))<\/p>\n<p>\u00a0\u00a0\u00a0 sendMessage(current:number, &#8222;PUR001&#8221;, list(current-&gt;Type:code, current:number));<\/p>\n<p>\u00a0 \/* zapobiega zwolnieniu zablokowanego PO, chyba \u017ce zostanie zatwierdzone *\/<\/p>\n<p>\u00a0 if (approval.status &lt;&gt; &#8222;APPROVED&#8221; and ((persistent:status = Status.ORDER_HELD or persistent:status = Status.ORDER_HELD) and current:status = Status.ORDER_INVALID and current:statusBackup = Status.ORDER_RELEASED and current:invalidReason = Reason.CHANGE_HEADER_STATUS))<\/p>\n<p>\u00a0\u00a0\u00a0 sendMessage(current:number, &#8222;PUR001&#8221;, list(current-&gt;Type:code, current:number));<\/p>\n<p>W ten sam spos\u00f3b mo\u017cna r\u00f3wnie\u017c sprawdzi\u0107 i zapobiec zmianie statusu z <em>Anulowane<\/em> na <em>Zwolnione<\/em>.<\/p>\n<p>Je\u015bli zatwierdzone i zwolnione zam\u00f3wienie zosta\u0142o zablokowane, przed zwolnieniem zablokowanego zam\u00f3wienia nale\u017cy rozpocz\u0105\u0107 nowy proces zatwierdzania i zatwierdzi\u0107 zam\u00f3wienie. W zwi\u0105zku z tym nale\u017cy rozszerzy\u0107 warunek przej\u015bcia w w\u0119\u017ale startowym, aby proces zatwierdzania mo\u017cna by\u0142o r\u00f3wnie\u017c uruchomi\u0107 dla zablokowanych zam\u00f3wie\u0144 za po\u015brednictwem menu tekstowego w\u0119z\u0142a.<\/p>\n<p>parameters.object-&gt;Type:creationStatus = 1 \/* ORDER_ENTERED *\/ and parameters.object:totalValues.netValueDomestic.amount1 &gt; 1000 and (indexOf(&#8222;REJECTED|WITHDRAWN|INVALID&#8221;, getByPrimaryKey(CisObject(com.cisag.app.purchasing.obj.PurchaseOrderWorkflowApproval), parameters.object:guid):status) &gt;= 0 lub parameters.object:status = ORDER_HELD)<\/div><\/section>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\"><strong>Atrybuty workflow i eksploracja proces\u00f3w<\/strong><\/p>\n<p>Innym przyk\u0142adem funkcjonalnego wykorzystania atrybut\u00f3w workflow jest eksploracja proces\u00f3w. Atrybuty workflow zosta\u0142y zaprojektowane tak, aby umo\u017cliwi\u0107 dodawanie dalszych informacji podczas wprowadzania i zmiany obiekt\u00f3w biznesowych, kt\u00f3re mog\u0105 by\u0107 wykorzystywane do oceny w aplikacjach typu lista, a tak\u017ce do eksploracji proces\u00f3w w Comarch ERP Enterprise lub w systemach zewn\u0119trznych.<\/p>\n<p>Jednym z przyk\u0142ad\u00f3w atrybut\u00f3w workflow, kt\u00f3re dodaj\u0105 dalsze informacje do obiektu biznesowego, s\u0105 czasy odpowiedzi i rozwi\u0105zania \u017c\u0105da\u0144 pomocy technicznej. Poniewa\u017c zarz\u0105dzane dodatki obiektu biznesowego s\u0105 automatycznie dodawane do widoku obiektu w wielu kontekstach, atrybuty workflow mog\u0105 by\u0107 analizowane bez ogranicze\u0144 w aplikacjach typu lista, np. w celu monitorowania zgodno\u015bci z umowami o poziomie us\u0142ug.<\/p>\n<p>Najpierw nale\u017cy wprowadzi\u0107 nast\u0119puj\u0105ce atrybuty workflow typu <em>Liczba dziesi\u0119tna<\/em>:<\/p>\n<ul>\n<li>reactionTime<\/li>\n<li>resolveTime<\/li>\n<\/ul>\n<p>Czas reakcji definiuje si\u0119 jako liczb\u0119 godzin mi\u0119dzy wprowadzeniem zg\u0142oszenia do pomocy technicznej a pierwszym zewn\u0119trznie widocznym tekstem wprowadzonym przez pracownika pomocy technicznej. Czas rozwi\u0105zania (<em>Resolve time<\/em>) definiuje si\u0119 jako liczb\u0119 dni mi\u0119dzy wprowadzeniem zg\u0142oszenia do pomocy technicznej a jego rozpatrzeniem. Okresy poza godzinami otwarcia centrum wsparcia nie powinny by\u0107 uwzgl\u0119dniane w obliczeniach. Na przyk\u0142ad, je\u015bli centrum wsparcia jest otwarte od 9:00 do 18:00 w dni robocze, a pracownik pomocy technicznej wprowadzi pierwszy widoczny z zewn\u0105trz tekst w poniedzia\u0142ek o 10:00 dla zg\u0142oszenia wprowadzonego w poprzedni pi\u0105tek o 17:00, w\u00f3wczas nale\u017cy obliczy\u0107 czas odpowiedzi wynosz\u0105cy 2,00 godziny.<\/p>\n<p>Najpierw tworzona jest definicja dzia\u0142ania typu <em>Pojedynczem dzia\u0142anie<\/em> w celu obliczenia czasu reakcji i zapisania go w atrybucie workflow <em>reactionTime<\/em>. Definicja dzia\u0142ania tworzy dzia\u0142anie dla operatora <em>System<\/em>, gdy pracownik wewn\u0119trzny wprowadza tekst widoczny z zewn\u0105trz lub zmienia widoczno\u015b\u0107 istniej\u0105cego tekstu z wewn\u0119trznego na zewn\u0119trzny. Na zak\u0142adce <em>Zdarzenia<\/em> nale\u017cy zapisa\u0107 definicj\u0119 dzia\u0142ania dla zdarzenia <em>Jednostka biznesowa<\/em> zale\u017cnego od <em>com.cisag.app.internal.obj.SupportRequestText<\/em>. Nale\u017cy wprowadzi\u0107 nast\u0119puj\u0105cy warunek przej\u015bcia dla podtypu<em> Insert<\/em>:<\/p>\n<p>parameters.newObject:visibility = 3 \/* PUBLIC *\/ and getByPrimaryKey(CisObject(com.cisag.app.general.obj.Partner), parameters.newObject:creator):type = 1 \/* INTERNAL *\/<\/p>\n<p>Wprowadzi\u0107 nast\u0119puj\u0105cy warunek przej\u015bcia dla podtypu <em>Zmiana<\/em>:<\/p>\n<p>(parameters.newObject:visibility = 3 and parameters.oldObject:visibility &lt;&gt; 3) and getByPrimaryKey(CisObject(com.cisag.app.general.obj.Partner), parameters.object:creator):type = 1 \/* INTERNAL *\/<\/p>\n<p>W funkcji <em>create<\/em> na karcie <em>Deklaracje<\/em> wywo\u0142a\u0107 funkcj\u0119<em> getOrCreateSupplement<\/em>, aby zapyta\u0107 o atrybuty workflow suplementu workflow <em>com.pt.app.internal.obj.SupportRequestWorkflowSupplement.<\/em> W tym przyk\u0142adzie raczej nie ma znaczenia, czy inne dzia\u0142ania zmieniaj\u0105 atrybuty workflow, poniewa\u017c ka\u017cde dzia\u0142anie obliczy\u0142oby ten sam czas odpowiedzi, nie nale\u017cy wymaga\u0107 blokady zapisu. Nast\u0119pnie nale\u017cy obliczy\u0107 czas reakcji (je\u015bli nie zosta\u0142 obliczony) i przypisa\u0107 go do atrybutu workflow <em>reactionTime<\/em> w tabeli hash. Na koniec wywo\u0142a\u0107<em> putSupplement<\/em>, aby zapisa\u0107 czas reakcji w suplemencie workflow.<\/p>\n<p>function create()<\/p>\n<p>{<\/p>\n<p>\u00a0 var workflowAttributes := getOrCreateSupplement(parameters.entity, &#8222;com.pt.app.internal.obj.SupportRequestWorkflowSupplement&#8221;, false);<\/p>\n<p>\u00a0 if (not isNull(workflowAttributes))<\/p>\n<p>\u00a0 {<\/p>\n<p>\u00a0\u00a0\u00a0 if (cast(Number, workflowAttributes.reactionTime) = 0)<\/p>\n<p>\u00a0\u00a0\u00a0\u00a0\u00a0 workflowAttributes.reactionTime := supportHours(parameters.entity:updateInfo.createTime, parameters.newObject:create);<\/p>\n<p>\u00a0\u00a0\u00a0 var success := putSupplement(workflowAttributes);<\/p>\n<p>\u00a0 }<\/p>\n<p>}<\/p>\n<p>function supportHours(from as Timestamp, until as Timestamp) as Number<\/p>\n<p>{<\/p>\n<p>\u00a0 \/* Niestandardowy algorytm obliczania czasu reakcji *\/<\/p>\n<p>\u00a0 return hours(from, until);<\/p>\n<p>}<\/p>\n<p>W funkcji <em>supportHours <\/em>mo\u017cna przechowywa\u0107 logik\u0119, aby od czasu odpowiedzi odj\u0105\u0107 czas, w kt\u00f3rym centrum wsparcia by\u0142o zamkni\u0119te. Mo\u017cna na przyk\u0142ad utworzy\u0107 kalendarz prac dla centrum pomocy technicznej i u\u017cy\u0107 funkcji <em>workingDays <\/em>lub wywo\u0142a\u0107 odpowiedni\u0105 metod\u0119 Java (w JavaScript).<\/p>\n<p>Druga definicja dzia\u0142ania jest r\u00f3wnie\u017c typu <em>Pojedyncze dzia\u0142anie<\/em>. Oblicza i zapisuje czas rozwi\u0105zania, gdy \u017c\u0105danie wsparcia jest zako\u0144czone. Na przyk\u0142ad mo\u017cna utworzy\u0107 definicj\u0119 zdarzenia typu <em>Zmiana<\/em> dla jednostki biznesowej <em>com.cisag.app.internal.obj.SupportRequest<\/em>:<\/p>\n<p>parameters.newObject:status = 6 and parameters.oldObject:status &lt;&gt; 6 \/* COMPLETED *\/<\/p>\n<p>W funkcji<em> create<\/em> na karcie<em> Deklaracje<\/em> nale\u017cy wywo\u0142a\u0107 te same funkcje <em>getOrCreateSupplement<\/em> i <em>putSupplements<\/em>, co w poprzedniej definicji dzia\u0142ania, aby obliczy\u0107 czas rozwi\u0105zania i zapisa\u0107 go w atrybucie workflow<em> resolveTime<\/em>:<\/p>\n<p>function create()<\/p>\n<p>{<\/p>\n<p>\u00a0 var workflowAttributes := getOrCreateSupplement(parameters.entity, &#8222;com.pt.app.internal.obj.SupportRequestWorkflowSupplement&#8221;, false);<\/p>\n<p>\u00a0 if (not isNull(workflowAttributes))<\/p>\n<p>\u00a0 {<\/p>\n<p>\u00a0\u00a0\u00a0 if (cast(Number, workflowAttributes.resolveTime) = 0)<\/p>\n<p>\u00a0\u00a0\u00a0\u00a0\u00a0 workflowAttributes.resolveTime := supportDays(parameters.obje:updateInfo.createTime, now());<\/p>\n<p>\u00a0\u00a0\u00a0 var success := putSupplement(workflowAttributes);<\/p>\n<p>\u00a0 }<\/p>\n<p>}<\/p>\n<p>function supportDays(from as Timestamp, until as Timestamp) as Number<\/p>\n<p>{<\/p>\n<p>\u00a0 \/* Niestandardowy algorytm obliczania czasu rozwi\u0105zania *\/<\/p>\n<p>\u00a0 return days(from, until);<\/p>\n<p>}<\/p>\n<p><\/div><\/section>\n\n\n<p><\/p>\n","protected":false},"author":27,"comment_status":"closed","ping_status":"closed","template":"","format":"standard","meta":{"footnotes":""},"class_list":["post-10706","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\/10706","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\/27"}],"replies":[{"embeddable":true,"href":"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/wp-json\/wp\/v2\/comments?post=10706"}],"version-history":[{"count":16,"href":"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/wp-json\/wp\/v2\/ht_kb\/10706\/revisions"}],"predecessor-version":[{"id":32101,"href":"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/wp-json\/wp\/v2\/ht_kb\/10706\/revisions\/32101"}],"wp:attachment":[{"href":"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/wp-json\/wp\/v2\/media?parent=10706"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}