{"id":9739,"date":"2025-06-03T11:01:53","date_gmt":"2025-06-03T09:01:53","guid":{"rendered":"https:\/\/pomoc.comarch.pl\/cee\/640\/?post_type=ht_kb&#038;p=9739"},"modified":"2025-06-03T11:03:22","modified_gmt":"2025-06-03T09:03:22","slug":"definicja-hook-contract-transakcje-magazynowe","status":"publish","type":"ht_kb","link":"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/definicja-hook-contract-transakcje-magazynowe\/","title":{"rendered":"Definicja Hook Contract: Transakcje magazynowe"},"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\/definicja-hook-contract-transakcje-magazynowe\/#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\/640\/index.php\/documentation\/definicja-hook-contract-transakcje-magazynowe\/#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-3\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/definicja-hook-contract-transakcje-magazynowe\/#Opis\" >Opis<\/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\/640\/index.php\/documentation\/definicja-hook-contract-transakcje-magazynowe\/#Rozszerzenia\" >Rozszerzenia<\/a><ul class='ez-toc-list-level-5' ><li class='ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-5\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/definicja-hook-contract-transakcje-magazynowe\/#Przygotowanie_transakcji_magazynowej\" >Przygotowanie transakcji magazynowej<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-6\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/definicja-hook-contract-transakcje-magazynowe\/#Dodatkowe_walidacje\" >Dodatkowe walidacje<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-7\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/definicja-hook-contract-transakcje-magazynowe\/#Aktualizacja_transakcji_magazynowej\" >Aktualizacja transakcji magazynowej<\/a><\/li><\/ul><\/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\/640\/index.php\/documentation\/definicja-hook-contract-transakcje-magazynowe\/#Ograniczenia\" >Ograniczenia<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-9\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/definicja-hook-contract-transakcje-magazynowe\/#Szczegolne_przypadki\" >Szczeg\u00f3lne przypadki<\/a><ul class='ez-toc-list-level-5' ><li class='ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-10\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/definicja-hook-contract-transakcje-magazynowe\/#Transakcje_magazynowe_z_procesow_biznesowych\" >Transakcje magazynowe z proces\u00f3w biznesowych<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-11\" href=\"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/documentation\/definicja-hook-contract-transakcje-magazynowe\/#Transakcje_magazynowe_z_inwentaryzacji_i_wyceny_inwentaryzacji\" >Transakcje magazynowe z inwentaryzacji i wyceny inwentaryzacji<\/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\/definicja-hook-contract-transakcje-magazynowe\/#Reczne_i_importowane_transakcje_magazynowe_oraz_transakcje_z_aplikacji_NalozPodziel_specyfikacje\" >R\u0119czne i importowane transakcje magazynowe oraz transakcje z aplikacji Na\u0142\u00f3\u017c\/Podziel specyfikacje<\/a><\/li><\/ul><\/li><\/ul><\/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 data-start=\"266\" data-end=\"506\">Definicja hook contract transakcje magazynowe\u00a0s\u0142u\u017cy do rozszerzenia procesu zapisu transakcji magazynowych. Umo\u017cliwia to na przyk\u0142ad dodanie dodatkowych walidacji danych transakcji, je\u015bli dane te zosta\u0142y rozszerzone o nowe atrybuty.<\/p>\n<p data-start=\"508\" data-end=\"682\">W artykule opisano, jakie rozszerzenia mo\u017cna wdro\u017cy\u0107 za pomoc\u0105 definicji hook contract oraz jakie ograniczenia i szczeg\u00f3lne przypadki nale\u017cy wzi\u0105\u0107 pod uwag\u0119.<\/p>\n<p data-start=\"684\" data-end=\"779\">Opis interfejsu znajduje si\u0119 w odpowiadaj\u0105cym mu obiekcie deweloperskim typu <em>Hook contract<\/em>:<\/p>\n<p data-start=\"781\" data-end=\"840\"><strong data-start=\"781\" data-end=\"840\"><code data-start=\"783\" data-end=\"838\">com.cisag.app.inventory.hook.log.InventoryTransaction<\/code><\/strong><\/p>\n<p data-start=\"842\" data-end=\"951\">Szczeg\u00f3\u0142owe informacje na temat metod zadeklarowanych w interfejsie znajduj\u0105 si\u0119 w odpowiednich klasach Java.<\/p>\n<p>Informacje dotycz\u0105ce infrastruktury hook\u00f3w mo\u017cna znale\u017a\u0107 w artykule\u00a0<em><a href=\"https:\/\/pomoc.comarch.pl\/cee\/index.php\/documentation\/hook-contracts\/\">Hook Contracts<\/a><\/em>.<\/p>\n<h3 id=\"grupa-docelowa\" id=\"grupa-docelowa\" ><span class=\"ez-toc-section\" id=\"Grupa_docelowa\"><\/span>Grupa docelowa<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<ul>\n<li>Programi\u015bci<\/li>\n<\/ul>\n<h3 id=\"opis\" ><span class=\"ez-toc-section\" id=\"Opis\"><\/span>Opis<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<h4 id=\"rozszerzenia\" ><span class=\"ez-toc-section\" id=\"Rozszerzenia\"><\/span>Rozszerzenia<span class=\"ez-toc-section-end\"><\/span><\/h4>\n<p data-start=\"197\" data-end=\"305\">Za pomoc\u0105 definicji hook contract do zapisu transakcji magazynowych mo\u017cliwe s\u0105 nast\u0119puj\u0105ce rozszerzenia<\/p>\n<h5 data-start=\"307\" data-end=\"357\" id=\"przygotowanie-transakcji-magazynowej\" ><span class=\"ez-toc-section\" id=\"Przygotowanie_transakcji_magazynowej\"><\/span><strong data-start=\"311\" data-end=\"357\">Przygotowanie transakcji magazynowej<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h5>\n<p data-start=\"359\" data-end=\"640\">Transakcja magazynowa przeznaczona do zapisania mo\u017ce zosta\u0107 rozszerzona o dodatkowe dane przy u\u017cyciu implementacji hooka, np. z kontenera <em>PostTransactionData<\/em>. W szczeg\u00f3lno\u015bci mo\u017cna przetwarza\u0107 nowo dodane atrybuty transakcji magazynowej \u2014 m.in. w celu ich p\u00f3\u017aniejszej walidacji.<\/p>\n<p data-start=\"642\" data-end=\"919\">Przygotowanie odbywa si\u0119 jeszcze przed w\u0142a\u015bciw\u0105 walidacj\u0105 transakcji. Oznacza to, \u017ce w przypadku przeksi\u0119gowa\u0144 i przeszacowa\u0144, transakcja magazynowa nie zosta\u0142a jeszcze podzielona na dwa osobne wpisy (atrybuty \u017ar\u00f3d\u0142owe i docelowe nadal znajduj\u0105 si\u0119 w jednej transakcji).<\/p>\n<h5 data-start=\"926\" data-end=\"959\" id=\"dodatkowe-walidacje\" ><span class=\"ez-toc-section\" id=\"Dodatkowe_walidacje\"><\/span><strong data-start=\"930\" data-end=\"959\">Dodatkowe walidacje<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h5>\n<p data-start=\"961\" data-end=\"1194\">Dla transakcji magazynowej, kt\u00f3ra ma zosta\u0107 zapisana, mo\u017cna przeprowadzi\u0107 dodatkowe walidacje za pomoc\u0105 implementacji hooka. W szczeg\u00f3lno\u015bci nale\u017cy sprawdzi\u0107 dane przygotowane wcze\u015bniej \u2014 zw\u0142aszcza te wynikaj\u0105ce z dodanych atrybut\u00f3w.<\/p>\n<p data-start=\"1196\" data-end=\"1370\">Podobnie jak w poprzednim kroku, te walidacje maj\u0105 miejsce przed w\u0142a\u015bciw\u0105 kontrol\u0105 transakcji magazynowej, a wi\u0119c nadal nie wyst\u0119puje podzia\u0142 na wpis \u017ar\u00f3d\u0142owy i docelowy.<\/p>\n<section class=\"document-alert-box warning\"><div class=\"document-alert-title\">Uwaga<\/div><div class=\"document-alert-content\">Nie wolno u\u017cywa\u0107 ostrze\u017ce\u0144 w ramach tych dodatkowych walidacji, poniewa\u017c w przypadku transakcji wynikaj\u0105cych z proces\u00f3w biznesowych nie ma mo\u017cliwo\u015bci ich potwierdzenia. Mo\u017ce to prowadzi\u0107 do zachowania identycznego jak w przypadku b\u0142\u0119du.<\/div><\/section>\n<h5 data-start=\"1643\" data-end=\"1692\" id=\"aktualizacja-transakcji-magazynowej\" ><span class=\"ez-toc-section\" id=\"Aktualizacja_transakcji_magazynowej\"><\/span><strong data-start=\"1647\" data-end=\"1692\">Aktualizacja transakcji magazynowej<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h5>\n<p data-start=\"1694\" data-end=\"2065\">Atrybuty ustawione podczas przygotowania transakcji magazynowej mog\u0105 zosta\u0107 zaktualizowane w momencie zapisu \u2014 jeszcze przed zapisaniem do bazy danych. Jest to szczeg\u00f3lnie przydatne przy przeksi\u0119gowaniach i przeszacowaniach, gdy nowe atrybuty musz\u0105 mie\u0107 r\u00f3\u017cne warto\u015bci w ksi\u0119gowaniu g\u0142\u00f3wnym i przeciwstawnym, a rozdzielenie ich podczas przygotowania nie by\u0142o mo\u017cliwe.<\/p>\n<section class=\"document-alert-box warning\"><div class=\"document-alert-title\">Uwaga<\/div><div class=\"document-alert-content\">Po tym kroku nie s\u0105 wykonywane ju\u017c \u017cadne dodatkowe walidacje transakcji, wi\u0119c potencjalne b\u0142\u0119dy nie zostan\u0105 wykryte.<\/p>\n<p>W momencie wywo\u0142ania hooka znaki ilo\u015bci, cen i warto\u015bci mog\u0105 by\u0107 odwr\u00f3cone, zgodnie z logik\u0105 procesu. Nale\u017cy to wzi\u0105\u0107 pod uwag\u0119 przy dalszych obliczeniach.<\/div><\/section>\n<h4 data-start=\"98\" data-end=\"117\" id=\"ograniczenia\" ><span class=\"ez-toc-section\" id=\"Ograniczenia\"><\/span><strong data-start=\"101\" data-end=\"117\">Ograniczenia<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h4>\n<p data-start=\"119\" data-end=\"280\">Wszystkie wywo\u0142ania hook\u00f3w w ramach definicji hook contract transakcje magazynowe\u00a0ograniczaj\u0105 si\u0119 wy\u0142\u0105cznie do momentu zapisu transakcji magazynowej.<\/p>\n<p data-start=\"282\" data-end=\"397\">Podczas dalszego przetwarzania transakcji magazynowej (np. w toku procesu biznesowego) hooki nie s\u0105 wywo\u0142ywane.<\/p>\n<h4 id=\"szczegolne-przypadki\" ><span class=\"ez-toc-section\" id=\"Szczegolne_przypadki\"><\/span>Szczeg\u00f3lne przypadki<span class=\"ez-toc-section-end\"><\/span><\/h4>\n<p>Podczas ksi\u0119gowania jednostek \u0142adunkowych, <code class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">InventoryTransactionPrepareHook<\/code> i\u00a0 <code class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">InventoryTransactionValidateHook<\/code> s\u0105 wywo\u0142ywane zar\u00f3wno dla ksi\u0119gowania materia\u0142u dla samej jednostki \u0142adunkowej, jak i dla ksi\u0119gowania materia\u0142u dla zawarto\u015bci jednostki \u0142adunkowej. <code class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">InventoryTransactionUpdateHook<\/code> jest wywo\u0142ywany tylko dla zawarto\u015bci jednostki \u0142adunkowej.<\/p>\n<p data-start=\"552\" data-end=\"998\">W przypadku ksi\u0119gowania w aplikacji <em>Transakcje magazynowe<\/em> lub poprzez import, hooki <code class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">InventoryTransactionPrepareHook<\/code> i <code class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">InventoryTransactionValidateHook<\/code> s\u0105 wywo\u0142ywane ju\u017c w samej aplikacji lub logice importu, poniewa\u017c w obu przypadkach walidacja transakcji odbywa si\u0119 przed przekazaniem danych do w\u0142a\u015bciwej logiki ksi\u0119gowania (<em data-start=\"895\" data-end=\"917\">InventoryOnhandLogic<\/em>). Mo\u017ce to prowadzi\u0107 do sytuacji, w kt\u00f3rej te hooki s\u0105 wywo\u0142ywane dwukrotnie.<\/p>\n<p data-start=\"1000\" data-end=\"1155\">Definicja hook contract dla zapisu transakcji magazynowych pracuje z opcjonalnymi ograniczeniami (restrykcjami), kt\u00f3rych struktura jak ni\u017cej<\/p>\n<h5 data-start=\"1162\" data-end=\"1220\" id=\"transakcje-magazynowe-z-procesow-biznesowych\" ><span class=\"ez-toc-section\" id=\"Transakcje_magazynowe_z_procesow_biznesowych\"><\/span><strong data-start=\"1166\" data-end=\"1220\">Transakcje magazynowe z proces\u00f3w biznesowych<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h5>\n<p data-start=\"1222\" data-end=\"1442\">Transakcje magazynowe pochodz\u0105ce z proces\u00f3w biznesowych u\u017cywaj\u0105 typu restrykcji <em>businessObject\u00a0<\/em>z identyfikatorem <em>source<\/em>, gdzie jako <em>Business Object<\/em> wykorzystywana jest klasa nag\u0142\u00f3wka zlecenia ksi\u0119gowania.<\/p>\n<p data-start=\"1444\" data-end=\"1669\"><section class=\"document-alert-box example\"><div class=\"document-alert-title\">Przyk\u0142ad<\/div><div class=\"document-alert-content\">W przypadku ko\u0144cowego ksi\u0119gowania zlecenia dostawy, sam zlecenie dostawy s\u0142u\u017cy jako zlecenie ksi\u0119gowania. W takim przypadku jako klasa nag\u0142\u00f3wka u\u017cywana jest:<br data-start=\"1617\" data-end=\"1620\" \/><strong data-start=\"1620\" data-end=\"1669\"><code data-start=\"1622\" data-end=\"1667\">com.cisag.app.sales.obj.ShippingOrder.class<\/code><\/strong><\/div><\/section><\/p>\n<p data-start=\"1673\" data-end=\"1880\"><section class=\"document-alert-box warning\"><div class=\"document-alert-title\">Uwaga<\/div><div class=\"document-alert-content\">Transakcje magazynowe z proces\u00f3w biznesowych, dla kt\u00f3rych nie mo\u017cna jednoznacznie ustali\u0107 zlecenia ksi\u0119gowania (np. z powodu b\u0142\u0119dnych danych), s\u0105 traktowane tak samo jak transakcje r\u0119czne.<\/div><\/section><\/p>\n<h5 data-start=\"1887\" data-end=\"1963\" id=\"transakcje-magazynowe-z-inwentaryzacji-i-wyceny-inwentaryzacji\" ><span class=\"ez-toc-section\" id=\"Transakcje_magazynowe_z_inwentaryzacji_i_wyceny_inwentaryzacji\"><\/span><strong data-start=\"1891\" data-end=\"1963\">Transakcje magazynowe z inwentaryzacji i wyceny inwentaryzacji<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h5>\n<p data-start=\"1965\" data-end=\"2133\">Inwentaryzacja oraz jej wycena nie s\u0105 formalnie zleceniami, r\u00f3wnie\u017c w ich przypadku stosuje si\u0119 typ restrykcji <em>businessObject <\/em>z identyfikatorem <em>source<\/em>.<\/p>\n<ul data-start=\"2135\" data-end=\"2338\">\n<li data-start=\"2135\" data-end=\"2227\">\n<p data-start=\"2137\" data-end=\"2227\">Dla inwentaryzacji:<br data-start=\"2156\" data-end=\"2159\" \/><strong data-start=\"2161\" data-end=\"2227\"><code data-start=\"2163\" data-end=\"2225\">com.cisag.app.inventory.physical.obj.PhysicalInventory.class<\/code><\/strong><\/p>\n<\/li>\n<li data-start=\"2229\" data-end=\"2338\">\n<p data-start=\"2231\" data-end=\"2338\">Dla wyceny inwentaryzacji:<br data-start=\"2257\" data-end=\"2260\" \/><strong data-start=\"2262\" data-end=\"2338\"><code data-start=\"2264\" data-end=\"2336\">com.cisag.app.inventory.obj.PhysicalInventoryValuationParameters.class<\/code><\/strong><\/p>\n<\/li>\n<\/ul>\n<h5 data-start=\"2345\" data-end=\"2465\" id=\"reczne-i-importowane-transakcje-magazynowe-oraz-transakcje-z-aplikacji-naloz-podziel-specyfikacje\" ><span class=\"ez-toc-section\" id=\"Reczne_i_importowane_transakcje_magazynowe_oraz_transakcje_z_aplikacji_NalozPodziel_specyfikacje\"><\/span><strong data-start=\"2349\" data-end=\"2465\">R\u0119czne i importowane transakcje magazynowe oraz transakcje z aplikacji <em>Na\u0142\u00f3\u017c\/Podziel specyfikacje<\/em><\/strong><span class=\"ez-toc-section-end\"><\/span><\/h5>\n<p data-start=\"2467\" data-end=\"2499\">Wszystkie transakcje magazynowe:<\/p>\n<ul data-start=\"2501\" data-end=\"2635\">\n<li data-start=\"2501\" data-end=\"2512\">\n<p data-start=\"2503\" data-end=\"2512\">r\u0119czne<\/p>\n<\/li>\n<li data-start=\"2513\" data-end=\"2529\">\n<p data-start=\"2515\" data-end=\"2529\">importowane<\/p>\n<\/li>\n<li data-start=\"2530\" data-end=\"2635\">\n<p data-start=\"2532\" data-end=\"2635\">utworzone w aplikacji <em>Na\u0142\u00f3\u017c\/Podziel specyfikacje<\/em><\/p>\n<\/li>\n<\/ul>\n<p data-start=\"2637\" data-end=\"2819\">stosuj\u0105 typ restrykcji <em>businessObject <\/em>z identyfikatorem <em>source<\/em>, a jako klas\u0119 <em>Business Object<\/em> przyjmuj\u0105:<br data-start=\"2756\" data-end=\"2759\" \/><strong data-start=\"2759\" data-end=\"2819\"><code data-start=\"2761\" data-end=\"2817\">com.cisag.app.inventory.obj.InventoryTransaction.class<\/code><\/strong><\/p>\n","protected":false},"author":28,"comment_status":"closed","ping_status":"closed","template":"","format":"standard","meta":{"footnotes":""},"class_list":["post-9739","ht_kb","type-ht_kb","status-publish","format-standard","hentry","ht_kb_category-definicje-hook-contract"],"_links":{"self":[{"href":"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/wp-json\/wp\/v2\/ht_kb\/9739","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/wp-json\/wp\/v2\/ht_kb"}],"about":[{"href":"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/wp-json\/wp\/v2\/types\/ht_kb"}],"author":[{"embeddable":true,"href":"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/wp-json\/wp\/v2\/users\/28"}],"replies":[{"embeddable":true,"href":"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/wp-json\/wp\/v2\/comments?post=9739"}],"version-history":[{"count":3,"href":"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/wp-json\/wp\/v2\/ht_kb\/9739\/revisions"}],"predecessor-version":[{"id":32346,"href":"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/wp-json\/wp\/v2\/ht_kb\/9739\/revisions\/32346"}],"wp:attachment":[{"href":"https:\/\/pomoc.comarch.pl\/cee\/640\/index.php\/wp-json\/wp\/v2\/media?parent=9739"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}