{"id":9388,"date":"2025-12-22T07:38:52","date_gmt":"2025-12-22T06:38:52","guid":{"rendered":"https:\/\/pomoc.comarch.pl\/cee\/?post_type=ht_kb&#038;p=9388"},"modified":"2025-12-22T07:39:00","modified_gmt":"2025-12-22T06:39:00","slug":"rozszerzenie-wyrazenia-regularne","status":"publish","type":"ht_kb","link":"https:\/\/pomoc.comarch.pl\/cee\/index.php\/documentation\/rozszerzenie-wyrazenia-regularne\/","title":{"rendered":"Rozszerzenie: Wyra\u017cenia regularne"},"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\/index.php\/documentation\/rozszerzenie-wyrazenia-regularne\/#Wprowadzenie\" >Wprowadzenie<\/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\/index.php\/documentation\/rozszerzenie-wyrazenia-regularne\/#Rozszerzenie_dla_wyrazen_regularnych\" >Rozszerzenie dla wyra\u017ce\u0144 regularnych<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-3\" href=\"https:\/\/pomoc.comarch.pl\/cee\/index.php\/documentation\/rozszerzenie-wyrazenia-regularne\/#Ustawienia\" >Ustawienia<\/a><ul class='ez-toc-list-level-4' ><li class='ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-4\" href=\"https:\/\/pomoc.comarch.pl\/cee\/index.php\/documentation\/rozszerzenie-wyrazenia-regularne\/#Slowa_kluczowe\" >S\u0142owa kluczowe<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-5\" href=\"https:\/\/pomoc.comarch.pl\/cee\/index.php\/documentation\/rozszerzenie-wyrazenia-regularne\/#Definicje_ksiegowan\" >Definicje ksi\u0119gowa\u0144<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-6\" href=\"https:\/\/pomoc.comarch.pl\/cee\/index.php\/documentation\/rozszerzenie-wyrazenia-regularne\/#Przyporzadkowania_klucza_zewnetrznego_rozrachunku\" >Przyporz\u0105dkowania klucza zewn\u0119trznego rozrachunku<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-7\" href=\"https:\/\/pomoc.comarch.pl\/cee\/index.php\/documentation\/rozszerzenie-wyrazenia-regularne\/#Dialog_ksiegowania\" >Dialog ksi\u0119gowania<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-8\" href=\"https:\/\/pomoc.comarch.pl\/cee\/index.php\/documentation\/rozszerzenie-wyrazenia-regularne\/#Lista_Rozrachunki\" >Lista: Rozrachunki<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-9\" href=\"https:\/\/pomoc.comarch.pl\/cee\/index.php\/documentation\/rozszerzenie-wyrazenia-regularne\/#Zastosowanie_wyrazen_regularnych\" >Zastosowanie wyra\u017ce\u0144 regularnych<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-10\" href=\"https:\/\/pomoc.comarch.pl\/cee\/index.php\/documentation\/rozszerzenie-wyrazenia-regularne\/#Przyklady_wyrazen_regularnych\" >Przyk\u0142ady wyra\u017ce\u0144 regularnych<\/a><\/li><\/ul><\/nav><\/div>\n<h3 id=\"wprowadzenie\" ><span class=\"ez-toc-section\" id=\"Wprowadzenie\"><\/span>Wprowadzenie<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>W niekt\u00f3rych obszarach ksi\u0119gowo\u015bci finansowej funkcje wyszukiwania i przypisywania s\u0105 wspierane poprzez zastosowanie wyra\u017ce\u0144 regularnych, na przyk\u0142ad przy wyszukiwaniu i przypisywaniu partner\u00f3w oraz rozrachunk\u00f3w w automatycznym ksi\u0119gowaniu wyci\u0105g\u00f3w. Poprzez podanie poj\u0119\u0107 wyszukiwania, kt\u00f3re stanowi\u0105 wyra\u017cenie regularne, analizowane s\u0105 zawarto\u015bci danych, a warto\u015bci s\u0105 wyodr\u0119bniane z ci\u0105gu danych. Jako wynik zwracany jest ci\u0105g znak\u00f3w odpowiadaj\u0105cy ca\u0142emu wyra\u017ceniu regularnemu. Prowadzi to do problem\u00f3w zawsze wtedy, gdy wyszukiwany termin mo\u017ce zosta\u0107 odnaleziony jedynie w kontek\u015bcie otaczaj\u0105cych go znak\u00f3w.<\/p>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\">W ci\u0105gu znak\u00f3w (np. tytu\u0142 przelewu bankowego) nale\u017cy znale\u017a\u0107 pi\u0119ciocyfrowy numer faktury, aby na jego podstawie przypisa\u0107 w\u0142a\u015bciwy rozrachunek. Dane w tytule przelewu mog\u0105 wygl\u0105da\u0107 na przyk\u0142ad nast\u0119puj\u0105co:<\/p>\n<p>KNR<span style=\"color: #339966;\">22025<\/span><span style=\"color: #ff00ff;\">48710<\/span> RNR<span style=\"color: #0000ff;\">22545<\/span> DT<span style=\"color: #ff9900;\">20220<\/span>815<\/p>\n<p>Z tych danych nale\u017cy odnale\u017a\u0107 numer faktury 22545.<br \/>\nProste wyszukiwanie pi\u0119ciocyfrowego poj\u0119cia numerycznego mo\u017ce zosta\u0107 zdefiniowane jako wyra\u017cenie regularne w nast\u0119puj\u0105cy spos\u00f3b:<br \/>\n[0-9]{5}<br \/>\nTo wyra\u017cenie regularne zwraca cztery wyniki, a tym samym jednoznaczna identyfikacja numeru faktury nie jest mo\u017cliwa:<\/p>\n<p>KNR2202548710 <span style=\"color: #0000ff;\">RNR22545<\/span> DT20220815<\/p>\n<p>Z tego powodu do definicji wyra\u017cenia regularnego dodatkowo uwzgl\u0119dniany jest kontekst danych, kt\u00f3re je otaczaj\u0105. Oznacza to, \u017ce nale\u017cy znale\u017a\u0107 wy\u0142\u0105cznie pi\u0119ciocyfrow\u0105 warto\u015b\u0107 numeryczn\u0105, przed kt\u00f3r\u0105 wyst\u0119puje ci\u0105g znak\u00f3w RNR. Wyra\u017cenie regularne dla tej definicji mo\u017ce wygl\u0105da\u0107 na przyk\u0142ad nast\u0119puj\u0105co:<\/p>\n<p>RNR[0-9]{5}<\/p>\n<p>To wyra\u017cenie regularne identyfikuje w\u00f3wczas faktycznie tylko jeden ci\u0105g znak\u00f3w:<\/p>\n<p>KNR2202548710 RNR22545 DT20220815<\/div><\/section>\n<p>Przy tej definicji wyra\u017cenia regularnego opr\u00f3cz faktycznie poszukiwanego numeru faktury zwracane s\u0105 jednak r\u00f3wnie\u017c dane kontekstowe, kt\u00f3re musz\u0105 zosta\u0107 uwzgl\u0119dnione w zapytaniu. W rezultacie wynik zamiast po\u017c\u0105danej pi\u0119ciocyfrowej liczby 22545 zawiera o\u015bmioznakowy ci\u0105g RNR22545 i przypisanie otwartej pozycji nie mo\u017ce zosta\u0107 wykonane.<\/p>\n<h3 id=\"rozszerzenie-dla-wyrazen-regularnych\" ><span class=\"ez-toc-section\" id=\"Rozszerzenie_dla_wyrazen_regularnych\"><\/span>Rozszerzenie dla wyra\u017ce\u0144 regularnych<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Dzi\u0119ki standardowym funkcjom wyra\u017cenia regularne oferuj\u0105 rozwi\u0105zanie dla opisanego przypadku. Poprzez rozszerzenia funkcji ksi\u0119gowo\u015bci finansowej mo\u017cliwe jest definiowanie wyra\u017ce\u0144 regularnych w taki spos\u00f3b, aby zwracany przez nie wynik m\u00f3g\u0142 zosta\u0107 optymalnie przetworzony.<br \/>\nOznacza to, \u017ce ci\u0105g wynikowy mo\u017ce zosta\u0107 podzielony na pojedyncze elementy, kt\u00f3re nast\u0119pnie mog\u0105 by\u0107 oceniane oddzielnie. W zapisie wyra\u017ce\u0144 regularnych takie elementy wyniku s\u0105 oznaczane za pomoc\u0105 nawias\u00f3w okr\u0105g\u0142ych. W odniesieniu do wcze\u015bniej opisanego przyk\u0142adu wyra\u017cenie regularne przyjmuje w\u00f3wczas nast\u0119puj\u0105c\u0105 posta\u0107:<\/p>\n<p>(RNR)([0-9]{5})<\/p>\n<p>Wyra\u017cenie to zwraca nast\u0119puj\u0105ce wyniki:<\/p>\n<ul>\n<li>Element1 \u2013 <span style=\"color: #339966;\">RNR<\/span> oraz<\/li>\n<li>Element2 \u2013 <span style=\"color: #0000ff;\">22545<\/span><\/li>\n<\/ul>\n<p>Konieczny do uwzgl\u0119dnienia kontekst danych jest wi\u0119c zwracany w osobnym elemencie.<br \/>\nStandardowo elementy wynikowe wyra\u017ce\u0144 regularnych s\u0105 numerowane, dzi\u0119ki czemu mog\u0105 by\u0107 wywo\u0142ywane na podstawie numeru elementu. Odbywa si\u0119 to poprzez podanie znaku dolara, po kt\u00f3rym nast\u0119puje numer elementu, na przyk\u0142ad:<\/p>\n<ul>\n<li>$1 zwraca <span style=\"color: #339966;\">RNR<\/span> (wynik z elementu 1)<\/li>\n<li>$2 zwraca <span style=\"color: #0000ff;\">22545<\/span> (wynik z elementu 2)<\/li>\n<\/ul>\n<p>Alternatywnie istnieje r\u00f3wnie\u017c mo\u017cliwo\u015b\u0107 nadania nazw poszczeg\u00f3lnym elementom. Sk\u0142adnia wyra\u017cenia regularnego dla takiego pobierania danych wygl\u0105da nast\u0119puj\u0105co:<\/p>\n<p>(?&lt;Kontekst&gt;RNR)(?&lt;Numer&gt;[0-9]{5})<\/p>\n<p>Elementy w wyra\u017ceniu regularnym u\u017cywanym do przetwarzania danych mog\u0105 by\u0107 nast\u0119pnie wywo\u0142ywane na podstawie ich nazw:<\/p>\n<ul>\n<li>${Kontekst} zwraca wynik z elementu ?&lt;Kontekst&gt;, czyli RNR<\/li>\n<li>${Numer} zwraca wynik z elementu ?&lt;Numer&gt;, czyli 22545<\/li>\n<\/ul>\n<p>Aby wykorzystywa\u0107 takie definicje do przetwarzania ca\u0142kowitego wyniku zapytania, opr\u00f3cz pola s\u0142u\u017c\u0105cego do w\u0142a\u015bciwej definicji zapytania (poj\u0119cia wyszukiwania) dost\u0119pne jest dodatkowe pole do przetwarzania wyniku zapytania.<\/p>\n<p>Kolejn\u0105 istotn\u0105 funkcj\u0105 w zastosowaniu wyra\u017ce\u0144 regularnych s\u0105 ustawienia parametr\u00f3w wyra\u017ce\u0144 regularnych w wyra\u017ceniu zapytania. Parametry te steruj\u0105 og\u00f3lnym zachowaniem wyra\u017cenia regularnego. Mo\u017cna na przyk\u0142ad okre\u015bli\u0107, czy ma zosta\u0107 zwr\u00f3cony tylko pierwszy znaleziony wynik, czy wszystkie znalezione wyniki. Mo\u017ce to mie\u0107 istotne znaczenie.<\/p>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\">Przeszukiwany ci\u0105g danych zawiera kilka numer\u00f3w faktur, kt\u00f3re wszystkie maj\u0105 zosta\u0107 przygotowane do dalszego przetwarzania.<br \/>\nKNR2202548710 RNR22545 DT20220815 RNR22601 DT20220901 RNR22646 DT20220917<br \/>\nW tym celu definiowany jest nast\u0119puj\u0105cy wyra\u017cenie zapytania:<br \/>\n(?&lt;Kontekst&gt;RNR)(?&lt;Numer&gt;[0-9]{5})<br \/>\noraz dodatkowo wyra\u017cenie do przetwarzania ${Numer}.<\/p>\n<p>Bez ustawienia dodatkowych parametr\u00f3w wyra\u017cenie regularne identyfikuje jednak tylko pierwszy wynik z ci\u0105gu danych:<br \/>\nKNR2202548710 RNR<span style=\"color: #0000ff;\">22545<\/span> DT20220815 RNR22601 DT20220901 RNR22646 DT20220917<br \/>\nPrzetworzony wynik ma w\u00f3wczas posta\u0107 <span style=\"color: #0000ff;\">22545<\/span>.<br \/>\nJe\u017celi jednak zostanie ustawiony parametr <em>global<\/em> dla wielu wynik\u00f3w, w\u00f3wczas identyfikowane s\u0105 wszystkie pasuj\u0105ce ci\u0105gi wynikowe:<br \/>\nKNR2202548710 RNR<span style=\"color: #0000ff;\">22545<\/span> DT20220815 RNR<span style=\"color: #0000ff;\">22601<\/span> DT20220901 RNR<span style=\"color: #0000ff;\">22646<\/span> DT20220917<br \/>\nPrzetworzony wynik ma w\u00f3wczas posta\u0107 <span style=\"color: #0000ff;\">22545;22601;22646;<\/span><br \/>\n<\/div><\/section>\n<section class=\"document-alert-box indicator\"><div class=\"document-alert-title\">Wskaz\u00f3wka<\/div><div class=\"document-alert-content\">\u015arednik jest wyprowadzany jako sta\u0142a warto\u015b\u0107 wyra\u017cenia przetwarzania.<\/div><\/section>\n<h3 id=\"ustawienia\" ><span class=\"ez-toc-section\" id=\"Ustawienia\"><\/span>Ustawienia<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Do stosowania wyra\u017ce\u0144 regularnych, na przyk\u0142ad w funkcjach wyszukiwania i przypisywania w automatycznym ksi\u0119gowaniu wyci\u0105g\u00f3w, w poni\u017cszych aplikacjach dost\u0119pne s\u0105 dodatkowe dane i informacje.<\/p>\n<h4 id=\"slowa-kluczowe\" ><span class=\"ez-toc-section\" id=\"Slowa_kluczowe\"><\/span>S\u0142owa kluczowe<span class=\"ez-toc-section-end\"><\/span><\/h4>\n<p>W aplikacji <em>S\u0142owa kluczowe<\/em> dla poj\u0119\u0107 wyszukiwania typu wzorzec wyszukiwania dost\u0119pne s\u0105 dodatkowe pola s\u0142u\u017c\u0105ce do sterowania funkcjami wyszukiwania i przypisywania za pomoc\u0105 wyra\u017ce\u0144 regularnych.<br \/>\nS\u0105 to nast\u0119puj\u0105ce pola:<\/p>\n<ul>\n<li><em>Przygotowanie<\/em><\/li>\n<li><em>Opcje realizacji<\/em><\/li>\n<li><em>Poka\u017c tylko warto\u015bci wynik\u00f3w<\/em><\/li>\n<\/ul>\n<p>Szczeg\u00f3\u0142owy opis aplikacji oraz jej p\u00f3l znajduje si\u0119 w artykule <a href=\"https:\/\/pomoc.comarch.pl\/cee\/index.php\/documentation\/slowa-kluczowe\/\"><em>S\u0142owa kluczowe<\/em><\/a>.<\/p>\n<h4 id=\"definicje-ksiegowan\" ><span class=\"ez-toc-section\" id=\"Definicje_ksiegowan\"><\/span>Definicje ksi\u0119gowa\u0144<span class=\"ez-toc-section-end\"><\/span><\/h4>\n<p>W nag\u0142\u00f3wku aplikacji <em>Definicje ksi\u0119gowa\u0144<\/em> w polu <em>S\u0142owo kluczowe<\/em> do przygotowania tytu\u0142u p\u0142atno\u015bci mo\u017cna wskaza\u0107 s\u0142owo kluczowe s\u0142u\u017c\u0105ce do przetwarzania. S\u0142owo to s\u0142u\u017cy do tymczasowego przetwarzania tytu\u0142\u00f3w przelew\u00f3w w dialogu ksi\u0119gowania.<br \/>\nW edytorze pozycji aplikacji, na zak\u0142adkach <em>Numery i teksty<\/em> oraz <em>Wyszukiwanie konta<\/em>, dost\u0119pne s\u0105 dodatkowe pola i opcje wyboru do wyszukiwania i przypisywania. Mo\u017cna tam wskaza\u0107 s\u0142owa kluczowe oraz wybra\u0107 dane, do kt\u00f3rych s\u0142owa te maj\u0105 zosta\u0107 zastosowane.<br \/>\nDodatkowo dost\u0119pna jest zak\u0142adka <em>Przyporz\u0105dkuj klucz zewn\u0119trzny rozrachunku<\/em>. Na tej zak\u0142adce mo\u017cna okre\u015bli\u0107 dane s\u0142u\u017c\u0105ce do ustalania zawarto\u015bci p\u00f3l klucza obcego w rozrachunku. Kluczowi obcemu mo\u017cna r\u00f3wnie\u017c przypisa\u0107 s\u0142owo kluczowe w celu przetwarzania zawarto\u015bci pola klucza obcego.<br \/>\nSzczeg\u00f3\u0142owy opis aplikacji oraz jej p\u00f3l znajduje si\u0119 w artykule <em>Definicje ksi\u0119gowa\u0144<\/em>.<\/p>\n<h4 id=\"przyporzadkowania-klucza-zewnetrznego-rozrachunku\" ><span class=\"ez-toc-section\" id=\"Przyporzadkowania_klucza_zewnetrznego_rozrachunku\"><\/span>Przyporz\u0105dkowania klucza zewn\u0119trznego rozrachunku<span class=\"ez-toc-section-end\"><\/span><\/h4>\n<p>W aplikacji <em>Przyporz\u0105dkowania klucza zewn\u0119trznego rozrachunku<\/em> dost\u0119pne s\u0105 pola do analizy danych za pomoc\u0105 wyra\u017ce\u0144 regularnych. Za pomoc\u0105 s\u0142owa kluczowego mo\u017cna zdefiniowa\u0107 wyra\u017cenie regularne, na podstawie kt\u00f3rego zawarto\u015b\u0107 pola klucza obcego ma zosta\u0107 przeanalizowana lub przetworzona.<br \/>\nSzczeg\u00f3\u0142owy opis aplikacji oraz jej p\u00f3l znajduje si\u0119 w artykule <em><a href=\"https:\/\/pomoc.comarch.pl\/cee\/index.php\/documentation\/przyporzadkowania-klucza-zewnetrznego-rozrachunku\/\">Przyporz\u0105dkowania klucza zewn\u0119trznego rozrachunku<\/a><\/em>.<\/p>\n<h4 id=\"dialog-ksiegowania\" ><span class=\"ez-toc-section\" id=\"Dialog_ksiegowania\"><\/span>Dialog ksi\u0119gowania<span class=\"ez-toc-section-end\"><\/span><\/h4>\n<p>W dialogu ksi\u0119gowania, na zak\u0142adce A<em>utomatyczne ksi\u0119gowanie wyci\u0105g\u00f3w<\/em>, wy\u015bwietlane s\u0105 tytu\u0142y przelew\u00f3w. Sprawdzane jest przy tym, czy w u\u017cywanej definicji ksi\u0119gowania wskazano s\u0142owo kluczowe do przetwarzania tytu\u0142\u00f3w przelew\u00f3w. Je\u017celi tak, wy\u015bwietlenie danych tytu\u0142u przelewu nast\u0119puje po zastosowaniu wyra\u017ce\u0144 regularnych zdefiniowanych w s\u0142owie kluczowym do ca\u0142ego ci\u0105gu danych tytu\u0142u przelewu. Oznacza to, \u017ce dane w tytule przelewu s\u0105 prezentowane w formie przetworzonej, tak aby by\u0142y czytelne i mo\u017cliwe by\u0142o rozr\u00f3\u017cnienie poszczeg\u00f3lnych komponent\u00f3w.<br \/>\nJe\u017celi natomiast nie zdefiniowano s\u0142owa kluczowego do przetwarzania danych tytu\u0142u przelewu, wy\u015bwietlane s\u0105 dane oryginalne.<\/p>\n<h4 id=\"lista-rozrachunki\" ><span class=\"ez-toc-section\" id=\"Lista_Rozrachunki\"><\/span>Lista: Rozrachunki<span class=\"ez-toc-section-end\"><\/span><\/h4>\n<p>Do wy\u015bwietlania rozrachunk\u00f3w w zestawie kolumn dost\u0119pne s\u0105 kolumny <em>Klucz zewn\u0119trzny 1 \u2013 10<\/em>. Je\u017celi dla takiego klucza zdefiniowano wyra\u017cenie regularne do przetwarzania danych, zawarto\u015b\u0107 pola danego klucza obcego jest prezentowana w tych kolumnach w formie przetworzonej.<br \/>\nPrzetworzone dane s\u0105 r\u00f3wnie\u017c wy\u015bwietlane w widoku szczeg\u00f3\u0142owym aplikacji <em>Rozrachunki<\/em>, na zak\u0142adce <em>Przyporz\u0105dkuj klucz zewn\u0119trzny rozrachunku<\/em>.<\/p>\n<h3 id=\"zastosowanie-wyrazen-regularnych\" ><span class=\"ez-toc-section\" id=\"Zastosowanie_wyrazen_regularnych\"><\/span>Zastosowanie wyra\u017ce\u0144 regularnych<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Podczas stosowania wyra\u017ce\u0144 regularnych, na przyk\u0142ad do wyszukiwania i przypisywania partner\u00f3w oraz rozrachunk\u00f3w w automatycznym ksi\u0119gowaniu wyci\u0105g\u00f3w, mo\u017cna okre\u015bli\u0107 do czterech informacji merytorycznych. S\u0105 to dane dotycz\u0105ce poj\u0119\u0107 wyszukiwania, przetwarzania, opcji wykonania oraz warto\u015bci wynikowych, kt\u00f3re s\u0105 zarz\u0105dzane w aplikacji <em>S\u0142owa kluczowe<\/em>.<\/p>\n<p><strong>Match-Pattern<\/strong> \u2013 wzorzec dopasowania jest reprezentowany przez pole poj\u0119cie wyszukiwania. Zawiera on wzorzec wyszukiwania, czyli definicj\u0119 wyra\u017cenia regularnego s\u0142u\u017c\u0105cego do odnajdywania okre\u015blonych tre\u015bci tekstowych w ci\u0105gu wyszukiwania.<\/p>\n<p><strong>Replace-Pattern<\/strong> \u2013 wzorzec zast\u0119powania jest odwzorowany przez pole przetwarzanie. Okre\u015bla on, jakimi warto\u015bciami maj\u0105 zosta\u0107 zast\u0105pione warto\u015bci znalezione na podstawie wzorca dopasowania. W <em>Replace-Pattern<\/em> mo\u017cliwe jest odwo\u0142ywanie si\u0119 do poszczeg\u00f3lnych grup danych zdefiniowanych we wzorcu dopasowania oraz ich dowolne porz\u0105dkowanie. Daje to mo\u017cliwo\u015b\u0107, aby nie wszystkie elementy poj\u0119cia wyszukiwania musia\u0142y by\u0107 cz\u0119\u015bci\u0105 wyniku. Dodatkowo do <em>Replace-Pattern<\/em> mog\u0105 zosta\u0107 dodane sta\u0142e tekstowe, dzi\u0119ki czemu poszczeg\u00f3lne grupy wynik\u00f3w mog\u0105 by\u0107, w razie potrzeby, prezentowane z w\u0142asnym opisem lub oddzielone separatorami.<\/p>\n<p><strong>Opcja realizacji<\/strong> \u2013 dla zastosowania wyra\u017ce\u0144 regularnych do ci\u0105gu danych mo\u017cna okre\u015bli\u0107 r\u00f3\u017cne ustawienia. Najwa\u017cniejszym z nich jest opcja globalna. Je\u017celi opcja globalna jest aktywna, zwracane s\u0105 wszystkie wyniki uzyskane na podstawie wzorca dopasowania. Je\u017celi opcja globalna nie jest aktywna, zwracany jest tylko pierwszy wynik znaleziony w ci\u0105gu wyszukiwania.<br \/>\nWariant wyniku \u2013 wariant wyniku umo\u017cliwia wyb\u00f3r, jaki wynik ma zosta\u0107 zwr\u00f3cony. Rozr\u00f3\u017cnia si\u0119 nast\u0119puj\u0105ce warianty:<\/p>\n<ul>\n<li>Wariant A (pole <em>Poka\u017c tylko warto\u015bci wynik\u00f3w<\/em> jest aktywne) \u2013 zwracane s\u0105 wy\u0142\u0105cznie dane okre\u015blone w Replace-Pattern. Pozosta\u0142e dane pierwotnie przeszukiwanego ci\u0105gu nie s\u0105 uwzgl\u0119dniane w wyniku.<\/li>\n<li>Wariant B (pole <em>Poka\u017c tylko warto\u015bci wynik\u00f3w<\/em> jest nieaktywne) \u2013 zwracany jest kompletny pierwotny ci\u0105g wyszukiwania, przy czym dane zidentyfikowane przez Match-Pattern s\u0105 zast\u0119powane danymi okre\u015blonymi w Replace-Pattern.<\/li>\n<\/ul>\n<h3 id=\"przyklady-wyrazen-regularnych\" ><span class=\"ez-toc-section\" id=\"Przyklady_wyrazen_regularnych\"><\/span>Przyk\u0142ady wyra\u017ce\u0144 regularnych<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Na podstawie r\u00f3\u017cnych przyk\u0142ad\u00f3w zostanie przedstawione zastosowanie wyra\u017ce\u0144 regularnych.<\/p>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\">Nast\u0119puj\u0105cy ci\u0105g danych ma zosta\u0107 przeanalizowany, a z niego okre\u015blone numery maj\u0105 zosta\u0107 przeniesione jako numery rozrachunku do tekstu rozrachunku:<br \/>\nREG-01.04.2023 FIL00033 KNR2202548710 RNR2254522 DT20220815 GNR-22601 DT20220901 RNR 22646 DT20220917 GNR\/22646RNR 999988 DT20220917<br \/>\nJako numer rozrachunku maj\u0105 zosta\u0107 zidentyfikowane wy\u0142\u0105cznie numery:<\/p>\n<ul>\n<li><strong><span style=\"color: #0000ff;\">A<\/span> <\/strong>\u2013 kt\u00f3re s\u0105 numeryczne o d\u0142ugo\u015bci 5\u20138<\/li>\n<li><span style=\"color: #ff00ff;\"><strong>B<\/strong><\/span> \u2013 kt\u00f3rym poprzedza oznaczenie RNR lub GNR<\/li>\n<li><span style=\"color: #339966;\"><strong>C<\/strong><\/span> \u2013 pomi\u0119dzy oznaczeniem a numerem mo\u017ce wyst\u0105pi\u0107 od 0 do maksymalnie trzech znak\u00f3w nienumerycznych<\/li>\n<li><span style=\"color: #ff9900;\"><strong>D<\/strong><\/span> \u2013 po numerze wyst\u0119puje co najmniej jeden znak nienumeryczny<br \/>\nWyra\u017cenie regularne do analizy ci\u0105gu danych ma w\u00f3wczas nast\u0119puj\u0105c\u0105 posta\u0107:<\/li>\n<\/ul>\n<p><span style=\"color: #ff00ff;\">(?&lt;KontoRozrachunku&gt;RNR|GNR)<\/span><span style=\"color: #339966;\">([\\D]{0,3})<\/span><span style=\"color: #0000ff;\">(?&lt;NumerRozrachunku&gt;[0-9]{5,8})<\/span><span style=\"color: #ff9900;\">([\\D]{1,1})<\/span><\/p>\n<p>Wynik analizy jest zilustrowany w ci\u0105gu danych.<br \/>\nREG-01.04.2023 FIL00033 KNR2202548710<span style=\"color: #ff00ff;\"> RNR<\/span><span style=\"color: #0000ff;\">2254522<\/span>.DT20220815 <span style=\"color: #ff00ff;\">GNR<\/span><span style=\"color: #0000ff;\">\u201322601<\/span>.DT20220901 <span style=\"color: #ff00ff;\">RNR<\/span>.<span style=\"color: #0000ff;\">22646<\/span>.DT20220917 <span style=\"color: #ff00ff;\">GNR<\/span>\/<span style=\"color: #0000ff;\">22646<\/span><span style=\"color: #ff9900;\">R<\/span>NR 999988 DT20220917<br \/>\nWynikiem ma by\u0107 lista wszystkich znalezionych numer\u00f3w rozrachunku rozdzielona \u015brednikami. Numery rozrachunku maj\u0105 zosta\u0107 oczyszczone z ewentualnych separator\u00f3w wyst\u0119puj\u0105cych pomi\u0119dzy oznaczeniem a numerem.<br \/>\nWyra\u017cenie regularne do przetwarzania znalezionych numer\u00f3w rozrachunku ma posta\u0107:<br \/>\n<span style=\"color: #ff00ff;\">${KontoRozrachunku}<\/span><span style=\"color: #0000ff;\">${NumerRozrachunku};<\/span><br \/>\ni zwraca nast\u0119puj\u0105cy ci\u0105g wynikowy, je\u017celi pole Poka\u017c tylko warto\u015bci wynik\u00f3w jest aktywne.<br \/>\n<span style=\"color: #ff00ff;\">RNR<\/span><span style=\"color: #0000ff;\">2254522<\/span>;<span style=\"color: #ff00ff;\">GNR<\/span><span style=\"color: #0000ff;\">22601<\/span>;<span style=\"color: #ff00ff;\">RNR<\/span><span style=\"color: #0000ff;\">22646<\/span>;<span style=\"color: #ff00ff;\">GNR<\/span><span style=\"color: #0000ff;\">22646<\/span>;<br \/>\nJe\u017celi pole jest nieaktywne, jako wynik zwracany jest kompletny ci\u0105g wyszukiwania.<br \/>\n<section class=\"document-alert-box warning\"><div class=\"document-alert-title\">Uwaga<\/div><div class=\"document-alert-content\"><br \/>\nWszystkie numery rozrachunku s\u0105 zwracane tylko wtedy, gdy dla opcji wykonania ustawiono parametr g (global). Je\u017celi parametr nie zostanie ustawiony, zwracany jest tylko pierwszy znaleziony numer rozrachunku.<\/div><\/section><br \/>\nKomentarz do przyk\u0142adu:<br \/>\nNumer RNR 999988 zawarty w ci\u0105gu danych nie zosta\u0142 odnaleziony, poniewa\u017c pomi\u0119dzy nim a poprzednim numerem rozrachunku GNR\/22646 nie wyst\u0119puje znak nienumeryczny, zgodnie z wymaganiem D. Je\u017celi w wyra\u017ceniu regularnym zostanie usuni\u0119ta definicja warunku D, w\u00f3wczas zostanie znaleziony r\u00f3wnie\u017c numer rozrachunku RNR 999988.<br \/>\nGrupy analizy dla warunk\u00f3w C oraz D nie zosta\u0142y oznaczone nazw\u0105 ?, poniewa\u017c nie s\u0105 wykorzystywane w przetwarzaniu. Dzi\u0119ki temu ca\u0142e wyra\u017cenie analizy jest kr\u00f3tsze i bardziej przejrzyste.<br \/>\nDla tego przyk\u0142adu wprowadzanie danych w polach edytora pozycji aplikacji S\u0142owa kluczowe wygl\u0105da nast\u0119puj\u0105co.<\/div><\/section>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\">W celu przeniesienia do klucza obcego nale\u017cy zidentyfikowa\u0107 z ci\u0105gu danych z przyk\u0142adu 1 numer filii oraz dat\u0119 regulacji. Jako numer filii maj\u0105 zosta\u0107 zidentyfikowane wy\u0142\u0105cznie poj\u0119cia:<\/p>\n<ul>\n<li><strong><span style=\"color: #0000ff;\">A<\/span><\/strong> \u2013 kt\u00f3re s\u0105 numeryczne o d\u0142ugo\u015bci 5<\/li>\n<li><span style=\"color: #ff00ff;\"><strong>B<\/strong><\/span> \u2013 kt\u00f3rym poprzedza oznaczenie FIL<\/li>\n<\/ul>\n<p>Jako data regulacji maj\u0105 zosta\u0107 zidentyfikowane poj\u0119cia,<\/p>\n<ul>\n<li><strong><span style=\"color: #339966;\">C<\/span><\/strong> \u2013 kt\u00f3re przedstawiaj\u0105 grup\u0119 cyfr w formacie 99.99.9999<\/li>\n<li><span style=\"color: #ff9900;\"><strong>D<\/strong><\/span> \u2013 kt\u00f3rym poprzedza oznaczenie REG<\/li>\n<li><strong><span style=\"color: #00ccff;\">E<\/span><\/strong> \u2013 pomi\u0119dzy oznaczeniem a numerem nie mo\u017ce wyst\u0105pi\u0107 wi\u0119cej ni\u017c trzy znaki nienumeryczne (od 0 do maksymalnie 3)<\/li>\n<\/ul>\n<p>Ponadto obowi\u0105zuje:<\/p>\n<ul>\n<li><span style=\"color: #993366;\"><strong>F<\/strong><\/span> \u2013 numer filii zawsze wyst\u0119puje po dacie regulacji. Pomi\u0119dzy dat\u0105 regulacji a numerem filii mo\u017ce wyst\u0105pi\u0107 dowolna liczba znak\u00f3w.<br \/>\nWyra\u017cenie regularne do analizy ci\u0105gu danych w tym przyk\u0142adzie ma w\u00f3wczas nast\u0119puj\u0105c\u0105 posta\u0107:<\/li>\n<\/ul>\n<p><span style=\"color: #ff9900;\">(?&lt;DatKont&gt;REG)<\/span><span style=\"color: #339966;\"><span style=\"color: #00ccff;\">([\\D]{0,3})<\/span>(?&lt;RegDat&gt;(?&lt;RegTT&gt;[0-9]{1,2})(\\.)(?&lt;RegMM&gt;[0-9]{1,2})(\\.)(?&lt;RegJJ&gt;[0-9]{1,4}))<\/span><span style=\"color: #993366;\">(.*)<\/span><span style=\"color: #ff00ff;\">(?&lt;FiKont&gt;FIL)<\/span><span style=\"color: #0000ff;\">(?&lt;FiNum&gt;[0-9]{5,5})<\/span><\/p>\n<p>Wynik analizy jest zilustrowany w poni\u017cszym ci\u0105gu danych.<br \/>\n<span style=\"color: #ff9900;\">REG<\/span>\u2013<span style=\"color: #339966;\">01.04.2023<\/span>.<span style=\"color: #ff00ff;\">FIL<\/span><span style=\"color: #0000ff;\">00033<\/span> KNR2202548710 RNR2254522 DT20220815 GNR-22601 DT20220901 RNR 22646 DT20220917 GNR\/22646RNR 999988 DT20220917<br \/>\nJako wynik do przeniesienia do klucza obcego numer filii oraz data regulacji maj\u0105 zosta\u0107 po\u0142\u0105czone z tytu\u0142u przelewu. Data regulacji ma zosta\u0107 do\u0142\u0105czona do pi\u0119ciocyfrowego numeru filii w formacie RRRMMDD.<br \/>\nWyra\u017cenie regularne do przetwarzania ma tutaj posta\u0107:<\/p>\n<p><span style=\"color: #0000ff;\">${FiNum}<\/span><span style=\"color: #339966;\">${RegJJ}${RegMM}${RegTT}<\/span><\/p>\n<p>i zwraca nast\u0119puj\u0105cy ci\u0105g wynikowy, je\u017celi pole Poka\u017c tylko warto\u015bci wynik\u00f3w jest aktywne.<br \/>\n<span style=\"color: #0000ff;\">00033<span style=\"color: #339966;\">20230401<\/span><\/span><br \/>\nJe\u017celi pole jest nieaktywne, jako wynik zwracany jest kompletny ci\u0105g wyszukiwania.<\/div><\/section>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\">W celu wy\u015bwietlenia kodu p\u0142atno\u015bci QR z poni\u017cszego ci\u0105gu danych maj\u0105 zosta\u0107 odnalezione poszczeg\u00f3lne komponenty oraz zaprezentowane w przetworzonej formie.<br \/>\n000092942226862915011821290000<br \/>\nPoszukiwana jest kombinacja danych znajduj\u0105ca si\u0119 na pocz\u0105tku tytu\u0142u przelewu i sk\u0142adaj\u0105ca si\u0119 z nast\u0119puj\u0105cych element\u00f3w:<\/p>\n<ul>\n<li><strong><span style=\"color: #0000ff;\">A<\/span><\/strong> \u2013 numer rachunku bankowego, 10 znak\u00f3w alfanumerycznych<\/li>\n<li><strong><span style=\"color: #ff00ff;\">B<\/span><\/strong> \u2013 numer partnera, 6 znak\u00f3w numerycznych<\/li>\n<li><span style=\"color: #339966;\"><strong>C<\/strong><\/span> \u2013 rodzaj zlecenia faktury, 3 znaki alfanumeryczne<\/li>\n<li><span style=\"color: #ff9900;\"><strong>D<\/strong><\/span> \u2013 numer faktury, 7 znak\u00f3w alfanumerycznych<\/li>\n<\/ul>\n<p>Wyra\u017cenie regularne do analizy ci\u0105gu danych w tym przyk\u0142adzie ma nast\u0119puj\u0105c\u0105 posta\u0107:<\/p>\n<p><span style=\"color: #0000ff;\">(?&lt;BkNr&gt;[0-9a-zzA-Z]{10})<\/span><span style=\"color: #ff00ff;\">(?&lt;PtNr&gt;[0-9]{6})<\/span><span style=\"color: #339966;\">(?&lt;AuAr&gt;[0-9a-zA-Z]{3})<\/span><span style=\"color: #ff9900;\">(?&lt;RgNr&gt;[0-9a-zA-Z]{7})<\/span><\/p>\n<p>Wyra\u017cenie regularne do przetwarzania ma posta\u0107:<\/p>\n<p>Klient: <span style=\"color: #ff00ff;\">?{PtNr}<\/span> Faktura: <span style=\"color: #339966;\">?{AuAr}<\/span>\u2013<span style=\"color: #ff9900;\">?{RgNr}<\/span> KontoBankowe: <span style=\"color: #0000ff;\">?{BkNr}<\/span>|<\/p>\n<p>Je\u017celi pole Poka\u017c tylko warto\u015bci wynik\u00f3w jest aktywne, zwracany jest nast\u0119puj\u0105cy wynik:<\/p>\n<p>Klient: <span style=\"color: #ff00ff;\">268629<\/span> Faktura: <span style=\"color: #339966;\">150<\/span>\u2013<span style=\"color: #ff9900;\">1182129<\/span> Bank: <span style=\"color: #0000ff;\">0000929422|<\/span><\/div><\/section>\n<section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\"><br \/>\nCi\u0105g danych 000092942226862915011821290 udost\u0119pniony w polu klucza obcego ma zosta\u0107 przeanalizowany i przetworzony.<br \/>\nWyra\u017cenie regularne zdefiniowane dla klucza obcego (wyra\u017cenie analizy) ma w tym przypadku nast\u0119puj\u0105c\u0105 posta\u0107:<\/p>\n<p><span style=\"color: #0000ff;\">^(?&lt;BkNr&gt;[0-9a-zzA-Z]{10})<\/span><span style=\"color: #ff9900;\">(?&lt;PtNr&gt;[0-9]{6})<\/span><span style=\"color: #339966;\">(?&lt;AuAr&gt;[0-9a-zA-Z]{3})<\/span>(<span style=\"color: #ff00ff;\">?&lt;RgNr&gt;[0-9a-zA-Z]{7})(?&lt;rest&gt;.*$)<\/span><\/p>\n<p>Wynik analizy jest zilustrowany w poni\u017cszym ci\u0105gu danych:<br \/>\n0000929422268629<span style=\"color: #339966;\">150<\/span>11821290<br \/>\nPoszczeg\u00f3lne elementy s\u0105 przy tym zapisywane lub zwracane w nast\u0119puj\u0105cych zmiennych tekstowych:<br \/>\n?&lt;BkNr&gt; = <span style=\"color: #0000ff;\">0000929422<\/span><br \/>\n?&lt;PtNr&gt; = <span style=\"color: #ff9900;\">268629<\/span><br \/>\n?&lt;AuAr&gt; = <span style=\"color: #339966;\">150<\/span><br \/>\n?&lt;RgNr&gt; = <span style=\"color: #ff00ff;\">1182129<\/span><br \/>\n?&lt;Rest&gt; = 0<br \/>\nDo przetwarzania mo\u017cliwe jest \u0142\u0105czenie sta\u0142ych tekst\u00f3w ze zmiennymi tekstowymi zdefiniowanymi w powy\u017cszym wyra\u017ceniu analizy. Mo\u017ce to wygl\u0105da\u0107 na przyk\u0142ad nast\u0119puj\u0105co:<br \/>\nKlient: <span style=\"color: #ff9900;\">${PtNr}<\/span> Faktura: <span style=\"color: #339966;\">${AuAr}<\/span> \u2013 <span style=\"color: #ff00ff;\">${RgNr}<\/span> KontoBankowe:<span style=\"color: #0000ff;\"> ${BkNr}<\/span><br \/>\nW odniesieniu do powy\u017cszego przyk\u0142adu jako wynik przetwarzania otrzymane zostan\u0105 nast\u0119puj\u0105ce dane:<br \/>\nKlient: <span style=\"color: #ff9900;\">268629<\/span> Faktura: <span style=\"color: #339966;\">150<\/span> \u2013 <span style=\"color: #ff00ff;\">1182129<\/span> Bank: <span style=\"color: #0000ff;\">0000929422<\/span><\/div><\/section>\n","protected":false},"author":27,"comment_status":"closed","ping_status":"closed","template":"","format":"standard","meta":{"footnotes":""},"class_list":["post-9388","ht_kb","type-ht_kb","status-publish","format-standard","hentry","ht_kb_category-automatyczne-ksiegowania-bankowe"],"_links":{"self":[{"href":"https:\/\/pomoc.comarch.pl\/cee\/index.php\/wp-json\/wp\/v2\/ht_kb\/9388","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/pomoc.comarch.pl\/cee\/index.php\/wp-json\/wp\/v2\/ht_kb"}],"about":[{"href":"https:\/\/pomoc.comarch.pl\/cee\/index.php\/wp-json\/wp\/v2\/types\/ht_kb"}],"author":[{"embeddable":true,"href":"https:\/\/pomoc.comarch.pl\/cee\/index.php\/wp-json\/wp\/v2\/users\/27"}],"replies":[{"embeddable":true,"href":"https:\/\/pomoc.comarch.pl\/cee\/index.php\/wp-json\/wp\/v2\/comments?post=9388"}],"version-history":[{"count":6,"href":"https:\/\/pomoc.comarch.pl\/cee\/index.php\/wp-json\/wp\/v2\/ht_kb\/9388\/revisions"}],"predecessor-version":[{"id":41549,"href":"https:\/\/pomoc.comarch.pl\/cee\/index.php\/wp-json\/wp\/v2\/ht_kb\/9388\/revisions\/41549"}],"wp:attachment":[{"href":"https:\/\/pomoc.comarch.pl\/cee\/index.php\/wp-json\/wp\/v2\/media?parent=9388"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}