{"id":36968,"date":"2019-10-31T22:15:01","date_gmt":"2019-10-31T19:15:01","guid":{"rendered":"https:\/\/prohoster.info\/blog\/sposoby-integratsii-s-1s\/"},"modified":"2019-10-31T22:15:01","modified_gmt":"2019-10-31T19:15:01","slug":"sposoby-integratsii-s-1s","status":"publish","type":"post","link":"https:\/\/prohoster.info\/hr\/blog\/administrirovanie\/sposoby-integratsii-s-1s","title":{"rendered":"Metode integracije s 1C","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Koji su najva\u017eniji zahtjevi za poslovne aplikacije? Me\u0111u najva\u017enijima su sljede\u0107i zadaci:<\/p>\n<ul>\n<li>Lako\u0107a promjene\/adaptacije logike rada aplikacije uz promjenjive poslovne zadatke.<\/li>\n<li>Lako\u0107a integracije s drugim aplikacijama.<\/li>\n<\/ul>\n<p>\nNa\u010din na koji se u 1C rje\u0161ava prvi zadatak kratko je opisan u odjeljku \u201ePrilagodba i podr\u0161ka\u201c <noindex><a rel=\"nofollow\" href=\"https:\/\/habrahabr.ru\/company\/1c\/blog\/267321\/\">ovog \u010dlanka<\/a><\/noindex>; ponovno \u0107emo se vratiti na ovu zanimljivu temu u jednom od budu\u0107ih \u010dlanaka. Danas \u0107emo govoriti o drugom zadatku, integraciji.<br \/>\n<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<h3>Integracijski zadaci<\/h3>\n<p>\nIntegracijski zadaci mogu biti razli\u010diti. Za neke je dovoljno jednostavno interaktivno razmjenjivanje podataka \u2013 na primjer, za slanje popisa zaposlenika banci za izdavanje pla\u0107anjskih kartica. Za slo\u017eenije zadatke mo\u017ee biti potreban potpuno automatiziran prijenos podataka, mogu\u0107e uz pozivanje poslovne logike vanjskog sustava. Postoje zadaci specijalizirane prirode, kao \u0161to je integracija s vanjskom opremom (na primjer, trgovinskom opremom, mobilnim skenerima itd.) ili s naslije\u0111enim ili specijaliziranim sustavima (na primjer, sa sustavima prepoznavanja RFID oznaka). Izuzetno je va\u017eno za svaki zadatak odabrati najprikladniji mehanizam integracije.<\/p>\n<h3>Mogu\u0107nosti integracije s 1C<\/h3>\n<p>\nPostoje razli\u010diti pristupi za ostvarenja integracije s 1C aplikacijama, a koji od njih odabrati ovisi o zahtjevima zadatka.<\/p>\n<ol>\n<li>Implementacija temeljem <noindex><a rel=\"nofollow\" href=\"http:\/\/v8.1c.ru\/overview\/Term_000000581.htm\">mehanizama integracije<\/a><\/noindex>, koje pru\u017ea platforma, ili vlastitog specijaliziranog API-ja sa strane aplikacije 1C (na primjer, skupa Web- ili HTTP-servisa koji \u0107e pozivati vanjske aplikacije za razmjenu podataka s aplikacijom 1C). Prednost ovog pristupa je otpornost API-ja na promjene implementacije sa strane aplikacije 1C. Osobina pristupa je da je potrebno mijenjati izvorni kod tipi\u010dnog rje\u0161enja 1C, \u0161to potencijalno mo\u017ee zahtijevati napore prilikom spajanja izvornih kodova pri prelasku na novu verziju konfiguracije. U tom slu\u010daju mo\u017ee pomo\u0107i nova progresivna funkcionalnost \u2014 <noindex><a rel=\"nofollow\" href=\"http:\/\/v8.1c.ru\/overview\/Term_000000883.htm\">pro\u0161irenja konfiguracije<\/a><\/noindex>. Ekstenzije su, u su\u0161tini, mehanizam dodataka koji omogu\u0107ava stvaranje dodataka aplikacijskim re\u0161enjima bez promene samih aplikacijskih re\u0161enja. Izdvajanje integracijskog API-ja u ekstenziju konfiguracije omogu\u0107ava izbegavanje slo\u017eenosti prilikom spajanja konfiguracija prilikom prelaska na novu verziju standardnog re\u0161enja.\n<\/li>\n<li>Kori\u0161\u0107enje mehanizama integracije platforme, koji omogu\u0107avaju spolja\u0161nji pristup objektnoj modelu aplikacije i ne zahtevaju doradu aplikacije ili kreiranje ekstenzije. Prednost ovog pristupa je to \u0161to nije potrebno menjati aplikaciju 1C. Nedostatak je \u0161to, ako je aplikacija 1C doradjena, mo\u017eda \u0107e biti potrebne dorade u integriranoj aplikaciji. Primer ovog pristupa je kori\u0161\u0107enje OData protokola za integraciju, koji je implementiran na strani platforme 1C:Preduze\u0107e (vi\u0161e o tome u nastavku).\n<\/li>\n<li>Kori\u0161\u0107enje gotovih aplikativnih protokola, implementiranih u standardnim re\u0161enjima 1C. Mnoge standardne solucije od 1C i partnera implementiraju, na osnovu mehanizama integracije koje pru\u017ea platforma, sopstvene aplikativne protokole usmerene ka specifi\u010dnim zadacima. Kada se koriste ovi mehanizmi, nije potrebno pisanje koda sa strane aplikacije 1C, jer se koriste ugra\u0111ene mogu\u0107nosti aplikativnog re\u0161enja. Na strani aplikacije 1C potrebno je samo izvr\u0161iti odre\u0111ene postavke.<\/li>\n<\/ol>\n<p><\/p>\n<h3>Mehanizmi integracije u platformi 1C:Preduze\u0107e<\/h3>\n<p><\/p>\n<h4>Uvoz\/izvoz fajlova<\/h4>\n<p>\nPretpostavimo da imamo zadatak dvosmerne razmene podataka izme\u0111u aplikacije 1C i proizvoljne aplikacije. Na primer, potrebno je uskladiti spisak proizvoda (referentni okvir Nomenklatura) izme\u0111u aplikacije 1C i proizvoljne aplikacije.<\/p>\n<p><img decoding=\"async\" alt=\"Metode integracije s 1C\" src=\"\/wp-content\/uploads\/2019\/08\/9678f09dfcf7f70de100ed74ada6019c.jpeg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\nZa re\u0161avanje ovog zadatka mo\u017ee se napisati ekstenzija koja izvozi referentni okvir Nomenklatura u fajl odre\u0111enog formata (tekstualni, XML, JSON, \u2026) i koja mo\u017ee da \u010dita ovaj format. <\/p>\n<p>Platforma ima implementiran mehanizam za serializaciju aplikativnih objekata u XML, kako direktno, putem metoda globalnog konteksta ZapisatiXML\/\u010citatiXML, tako i pomo\u0107u pomo\u0107nog objekta XDTO (XML Data Transfer Objects).<\/p>\n<p>Svaki objekat u sistemu 1C:Preduze\u0107e mo\u017ee biti serializovan u XML reprezentaciju i obrnuto. <\/p>\n<p>Ova funkcija \u0107e vratiti reprezentaciju objekta u obliku XML:<\/p>\n<pre><code class=\"1c\">Funkcija Objekat_U_XML(Objekat)\n    ZapisXML = Novi ZapisXML();\n    ZapisXML.PostaviNiz();\n    Zapi\u0161iXML(ZapisXML, Objekat);\n    Vrati ZapisXML.Zatvori();\nKrajFunkcije\n<\/code><\/pre>\n<p>\novako \u0107e izgledati eksport biblioteke Nomenklatura u XML pomo\u0107u XDTO:<\/p>\n<pre><code class=\"1c\">&amp;NaServeru\nProcedura EksportXMLNaServeru()\t\n\tNoviSeraializatorXDTO  = SeraializatorXDTO;\n\tNovaZapisXML = Novi ZapisXML();\n\tNovaZapisXML.OtvoriDatoteku(\"C:DataNomenklatura.xml\", \"UTF-8\");\n\t\n\tNovaZapisXML.Zapi\u0161iObjavuXML();\n\tNovaZapisXML.Zapi\u0161iPo\u010detakElementa(\"BibliotekaNomenklatura\");\n\t\n\tSelekcija = Biblioteke.Nomenklatura.Izaberi();\n\t\n\tDok Selekcija.Slede\u0107i() Ciklus \n\t\tObjekatNomenklatura = Selekcija.Pru\u017eiObjekat();\n\t\tNoviSeraializatorXDTO.Zapi\u0161iXML(NovaZapisXML, ObjekatNomenklatura, NamenaTipaXML.Jasno);\n\tKrajCiklusa;\n\t\n\tNovaZapisXML.Zapi\u0161iKrajElementa();\n\tNovaZapisXML.Zatvori();\t\nKrajProcedure\n<\/code><\/pre>\n<p>\nJednostavnom modifikacijom koda izvezemo biblioteku u JSON. Proizvodi \u0107e biti zapisani u niz; kao raznovrsni primer, da\u0107emo englesku varijantu sintakse:<\/p>\n<pre><code class=\"1c\">&amp;NaServeru\nProcedura EksportJSONNaServeru()\n\tNoviXDTOSeraializator  = XDTOSeraializator;\n\tNoviJSONPisac = Novi JSONPisac();\n\tNoviJSONPisac.OtvoriDatoteku(\"C:DataNomenklatura.json\", \"UTF-8\");\n\t\n\tNoviJSONPisac.Zapi\u0161iPo\u010detakObjekta();\n\tNoviJSONPisac.Zapi\u0161iImenskiDeo(\"BibliotekaNomenklatura\");\n\tNoviJSONPisac.Zapi\u0161iPo\u010detakNiza();\n\t\n\tSelekcija = Biblioteke.Nomenklatura.Izaberi();\t\n\t\n\tDok Selekcija.Slede\u0107i() Uradi \n\t\tObjekatNomenklatura = Selekcija.Pru\u017eiObjekat();\n\t\t\n\t\tNoviJSONPisac.Zapi\u0161iPo\u010detakObjekta();\n\t\t\n\t\tNoviJSONPisac.Zapi\u0161iImenskiDeo(\"Nomenklatura\");\n\t\tNoviXDTOSeraializator.Zapi\u0161iJSON(NoviJSONPisac, ObjekatNomenklatura, XMLTipNabavke.Implicit);\n\t\t\n\t\tNoviJSONPisac.Zapi\u0161iKrajObjekta();\n\tKrajUradi;\n\t\n\tNoviJSONPisac.Zapi\u0161iKrajNiza();\n\tNoviJSONPisac.Zapi\u0161iKrajObjekta();\n\tNoviJSONPisac.Zatvori();\t\nKrajProcedure\n<\/code><\/pre>\n<p>\nNakon toga ostaje samo da se podaci prenesu krajnjem korisniku. Platforma 1C:Preduze\u0107e podr\u017eava osnovne internet protokole HTTP, FTP, POP3, SMTP, IMAP, uklju\u010duju\u0107i njihove sigurnosne verzije. Tako\u0111e se za prenos podataka mo\u017ee koristiti HTTP i\/ili Web-servisi.<\/p>\n<h4>HTTP i web-servisi<\/h4>\n<p>\n<img decoding=\"async\" alt=\"Metode integracije s 1C\" src=\"\/wp-content\/uploads\/2019\/08\/1d4797d9298f793e19ee637fd26473b2.jpeg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p>Aplikacije 1C mogu implementirati svoje HTTP i web-servise, kao i pozivati HTTP i web-servise implementirane od strane drugih aplikacija. <\/p>\n<h4>REST interfejs i protokol OData<\/h4>\n<p>\nPo\u010dev\u0161i od verzije 8.3.5, platforma 1C:Preduze\u0107e mo\u017ee automatski <noindex><a rel=\"nofollow\" href=\"https:\/\/wonderland.v8.1c.ru\/blog\/avtomaticheskiy-rest-interfeys-prikladnykh-resheniy\/\">formirati REST interfejs<\/a><\/noindex> za cela aplikativna re\u0161enja. Bilo koji objekat konfiguracije (biblioteka, dokument, registar informacija itd.) mo\u017ee biti dostupan za dobijanje i modifikaciju podataka putem REST interfejsa. Kao protokol pristupa platforma koristi protokol <noindex><a rel=\"nofollow\" href=\"https:\/\/ru.wikipedia.org\/wiki\/Open_Data_Protocol\">OData<\/a><\/noindex> verzije 3.0. Objavljivanje OData servisa vr\u0161i se iz menija Konfiguratora \u201eAdministracija -&gt; Objavljivanje na web-serveru\u201c, opcija \u201eObjaviti standardno OData su\u010delje\u201c mora biti ozna\u010dena. Podr\u017eani su formati atom\/XML i JSON. Nakon \u0161to je aplikativno re\u0161enje objavljeno na web-serveru, vanjski sistemi mogu mu pristupiti putem REST su\u010delja koriste\u0107i HTTP zahteve. Za rad s aplikacijom 1C putem OData protokola programiranje na strani 1C nije potrebno.<\/p>\n<p>Tako, URL oblik <u>http:\/\/\/\/odata\/standard.odata\/Catalog_\u041d\u043e\u043c\u0435\u043d\u043a\u043b\u0430\u0442\u0443\u0440\u0430<\/u> vratiti \u0107e nam sadr\u017eaj kataloga Nomenklatura u XML formatu \u2014 kolekcija elemenata entry (naslov poruke je izostavljen zbog sa\u017eetosti):<\/p>\n<pre><code class=\"xml\">http:\/\/server\/Config\/odata\/standard.odata\/Catalog_\u041d\u043e\u043c\u0435\u043d\u043a\u043b\u0430\u0442\u0443\u0440\u0430(guid'35d1f6e4-289b-11e6-8ba4-e03f49b16074')\n\t\n\t<title \/>\n\t2016-06-06T16:42:17\n\t\n\t<summary \/>\n\t\n\t\n\t\t\n\t\t\t35d1f6e4-289b-11e6-8ba4-e03f49b16074\n\t\t\tAAAAAgAAAAA=\n\t\t\tfalse\n\t\t\t000000001\n\t\t\tKlima ure\u0111aj Mitsubishi\n\t\t\tMo\u0107 2,5 kW, radni re\u017eimi: toplota\/hladno\u0107a\n\t\t\n\t\n\n\n\thttp:\/\/server\/Config\/odata\/standard.odata\/Catalog_\u041d\u043e\u043c\u0435\u043d\u043a\u043b\u0430\u0442\u0443\u0440\u0430(guid'35d1f6e5-289b-11e6-8ba4-e03f49b16074')\n\t\n...\n<\/code><\/pre>\n<p>\nDodaju\u0107i na URL string \u201e?$format=application\/json\u201c, dobijamo sadr\u017eaj kataloga Nomenklatura u JSON formatu (URL oblik <u>http:\/\/\/\/odata\/standard.odata\/Catalog_\u041d\u043e\u043c\u0435\u043d\u043a\u043b\u0430\u0442\u0443\u0440\u0430?$format=application\/json<\/u> ):<\/p>\n<pre><code>{\n\"odata.metadata\": \"http:\/\/server\/Config\/odata\/standard.odata\/$metadata#Catalog_\u041d\u043e\u043c\u0435\u043d\u043a\u043b\u0430\u0442\u0443\u0440\u0430\",\n\"value\": [{\n\"Ref_Key\": \"35d1f6e4-289b-11e6-8ba4-e03f49b16074\",\n\"DataVersion\": \"AAAAAgAAAAA=\",\n\"DeletionMark\": false,\n\"Code\": \"000000001\",\n\"Description\": \"Klima ure\u0111aj Mitsubishi\",\n\"Opis\": \"Mo\u0107 2,5 kW, radni re\u017eimi: toplota\/hladno\u0107a\"\n},{\n\"Ref_Key\": \"35d1f6e5-289b-11e6-8ba4-e03f49b16074\",\n\"DataVersion\": \"AAAAAwAAAAA=\",\n\"DeletionMark\": false,\n\"Code\": \"000000002\",\n\"Description\": \"Klima ure\u0111aj Daikin\",\n\"Opis\": \"Mo\u0107 3 kW, radni re\u017eimi: toplota\/hladno\u0107a\"\n}, \u2026\n<\/code><\/pre>\n<p><\/p>\n<h4>Vanjski izvori podataka<\/h4>\n<p>\n<img decoding=\"async\" alt=\"Metode integracije s 1C\" src=\"\/wp-content\/uploads\/2019\/08\/1663b53846f3a6a8a03f386f1f6cd311.jpeg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\nU nekim slu\u010dajevima razmena podataka putem <noindex><a rel=\"nofollow\" href=\"http:\/\/v8.1c.ru\/overview\/Term_000000795.htm\">vanjskih izvora podataka<\/a><\/noindex> mo\u017ee biti optimalno rje\u0161enje. Vanjski izvori podataka su aplikativni objekt konfiguracije 1C koji omogu\u0107uje interakciju s bilo kojom ODBC-compatible bazom podataka, kako za \u010ditanje, tako i za pisanje. Vanjski izvori podataka dostupni su i na Windows-u i na Linux-u.<\/p>\n<h4>Mehanizam razmjene podataka<\/h4>\n<p>\n<noindex><a rel=\"nofollow\" href=\"http:\/\/v8.1c.ru\/overview\/Term_000000269.htm\">Mehanizam razmjene podataka<\/a><\/noindex> namijenjen je za izradu teritorijalno distribuiranih sustava temeljenih na 1C:Poduze\u0107u, kao i za organizaciju razmjene podataka s drugim informacijskim sustavima koji se ne temelje na 1C:Poduze\u0107u.<\/p>\n<p>Ovaj mehanizam se aktivno koristi u implementacijama 1C, a spektar zadataka koje rje\u0161ava je vrlo \u0161irok. To uklju\u010duje razmjenu podataka izme\u0111u aplikacija 1C instaliranih u podru\u017enicama organizacije, razmjenu izme\u0111u aplikacije 1C i web stranice internet trgovine, te razmjenu podataka izme\u0111u poslu\u017eiteljske aplikacije 1C i mobilnog klijenta (izra\u0111enog s pomo\u0107u mobilne platforme 1C:Poduze\u0107e), i jo\u0161 mnogo toga.<\/p>\n<p>Jedna od klju\u010dnih pojmova u mehanizmu razmjene podataka je plan razmjene. Plan razmjene je poseban tip objekta aplikativne platforme 1C koji odre\u0111uje, izme\u0111u ostalog, sastav podataka koji \u0107e sudjelovati u razmjeni (koji to\u010dno registri, dokumenti, evidencije itd.). Plan razmjene tako\u0111er sadr\u017ei informacije o sudionicima razmjene (tzv. \u010dvorovima razmjene).<br \/>\nDruga komponenta mehanizma razmjene podataka je mehanizam registracije promjena. Ovaj mehanizam automatski prati promjene podataka u sustavu koje trebaju biti prenesene krajnjim korisnicima u okviru plana razmjene. Uz pomo\u0107 ovog mehanizma platforma prati promjene koje su se dogodile od posljednje sinkronizacije te omogu\u0107uje minimiziranje volumena podataka koji se prenose tijekom sljede\u0107e sesije sinkronizacije.<\/p>\n<p>Razmjena podataka odvija se putem XML poruka odre\u0111ene strukture. Poruka sadr\u017ei podatke koji su se promijenili od posljednje sinkronizacije s \u010dvorom, kao i neku pomo\u0107nu informaciju. Struktura poruka podr\u017eava numeraciju poruka i omogu\u0107ava dobivanje potvrda od \u010dvora primaoca o prijemu poruka. Takva potvrda sadr\u017eana je u svakoj poruci koja dolazi od \u010dvora primaoca u obliku broja posljednje prihva\u0107ene poruke. Numeracija poruka omogu\u0107ava platformi da razumije koji su podaci ve\u0107 uspje\u0161no poslani \u010dvoru primaocu i spre\u010dava ponovnu prijenos, \u0161alju\u0107i samo podatke koji su promijenjeni od trenutka prijema posljednje poruke s potvrdom od \u010dvora primaoca. Ovakva shema rada osigurava pouzdanu dostavu \u010dak i pri nepouzdanim kanalima prijenosa i gubitku poruka.<\/p>\n<h4>Vanjske komponente<\/h4>\n<p>\nU odre\u0111enim slu\u010dajevima, prilikom rje\u0161avanja integracijskih zadataka, suo\u010davamo se sa specifi\u010dnim zahtjevima, na primjer, protokolima interakcije, formatima podataka koji nisu predvi\u0111eni u platformi 1C:Enterprise. Za takve zadatke platforma predvi\u0111a <noindex><a rel=\"nofollow\" href=\"http:\/\/v8.1c.ru\/overview\/Term_000000545.htm\">tehnologiju vanjskih komponenti<\/a><\/noindex>, koja omogu\u0107ava kreiranje dinami\u010dki priklju\u010denih modula koji pro\u0161iruju funkcionalnost 1C:Enterprise. <\/p>\n<p>Tipi\u010dan primjer zadatka s takvim zahtjevima mo\u017ee biti integracija aplikativnog rje\u0161enja 1C s trgovinskom opremom, po\u010dev\u0161i od vaga do blagajni\u010dkih aparata i skenera barkodova. Vanjske komponente mogu se povezati kako na strani servera 1C:Enterprise, tako i na klijentskoj strani (uklju\u010duju\u0107i, izme\u0111u ostalog, i web klijenta, kao i <noindex><a rel=\"nofollow\" href=\"https:\/\/wonderland.v8.1c.ru\/blog\/vneshnie-komponenty-v-mobilnom-prilozhenii\/\">sljede\u0107u verziju mobilne platforme<\/a><\/noindex> 1C:Enterprise). Tehnologija vanjskih komponenti predvi\u0111a dovoljno jednostavno i razumljivo programsko (C++) su\u010delje interakcije komponente s platformom 1C:Enterprise, koje treba implementirati programer.<\/p>\n<p>Mogu\u0107nosti koje se otvaraju kori\u0161tenjem vanjskih komponenti su vrlo \u0161iroke. Mo\u017ee se realizirati interakcija prema specifi\u010dnom protokolu razmjene podataka s vanjskim ure\u0111ajima i sustavima, integrirati specifi\u010dni algoritmi obrade podataka i formate podataka itd.<\/p>\n<h4>Zastarjeli mehanizmi integracije<\/h4>\n<p>\nNa platformi su dostupni mehanizmi integracije koje se ne preporu\u010duje koristiti u novim rje\u0161enjima; ostavljeni su iz razloga povratne kompatibilnosti, kao i u slu\u010daju da druga strana ne mo\u017ee raditi s modernijim protokolima. Jedan od njih je rad s datotekama formata DBF (podr\u017eano u ugra\u0111enom jeziku pomo\u0107u objekta XBase).<\/p>\n<p>Drugi zastarjeli mehanizam integracije je kori\u0161tenje tehnologije COM (dostupno samo na platformi Windows). Platforma 1C:Enterprise pru\u017ea dva na\u010dina integracije za Windows koriste\u0107i tehnologiju COM: Automation-server i Vanjsko povezivanje. Oni su vrlo sli\u010dni, ali jedna od glavnih razlika je u tome \u0161to se u slu\u010daju Automation-servera pokre\u0107e potpuno klijentska aplikacija 1C:Enterprise 8, dok se u slu\u010daju vanjskog povezivanja pokre\u0107e relativno mali unutarprocesni COM-server. To jest, u slu\u010daju rada putem Automation servera mo\u017ee se iskoristiti funkcionalnost klijentske aplikacije, izvr\u0161avati radnje sli\u010dne interaktivnim radnjama korisnika. Pri kori\u0161tenju vanjskog povezivanja mo\u017ee se koristiti samo funkcije poslovne logike, a te se mogu izvr\u0161avati kako na klijentskoj strani povezivanja, gdje se stvara unutarprocesni COM-server, tako i pozivati poslovnu logiku na strani servera 1C:Enterprise.<\/p>\n<p>Tako\u0111er, tehnologiju COM mogu\u0107e je koristiti za pristup vanjskim sustavima iz koda aplikacije na platformi 1C:Enterprise. U ovom slu\u010daju aplikacija 1C djeluje kao COM-klijent. No, treba napomenuti da \u0107e ti mehanizmi raditi samo u slu\u010daju da server 1C funkcionira u Windows okru\u017eenju.<\/p>\n<h3>Mehanizmi integracije implementirani u standardnim konfiguracijama<\/h3>\n<p><\/p>\n<h4>Format EnterpriseData<\/h4>\n<p>\n<img decoding=\"async\" alt=\"Metode integracije s 1C\" src=\"\/wp-content\/uploads\/2019\/08\/8930091e53309b9b808a719b747a6226.jpeg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\nU nizu konfiguracija 1C (popis u nastavku) na temelju gore opisanog platformskog mehanizma razmjene podataka implementiran je gotov mehanizam razmjene podataka s vanjskim aplikacijama, koji ne zahtijeva promjenu izvornog koda konfiguracija (priprema za razmjenu podacima se vr\u0161i u postavkama primjenjivih rje\u0161enja):<\/p>\n<ul>\n<li>\u00ab1C:ERP Upravljanje poduze\u0107em 2.0\u00bb <\/li>\n<li>\u00abKompleksna automatizacija 2\u00bb <\/li>\n<li>\u00abRa\u010dunovodstvo poduze\u0107a\u00bb, izdanje 3.0 <\/li>\n<li>\u00abRa\u010dunovodstvo poduze\u0107a KORP\u00bb, izdanje 3.0 <\/li>\n<li>\u00abMaloprodaja\u00bb, izdanje 2.0 <\/li>\n<li>\u201eUpravljanje trgovinom osnovno\u201c, izdanje 11 <\/li>\n<li>\u201eUpravljanje trgovinom\u201c, izdanje 11<\/li>\n<li>\u201ePla\u0107e i upravljanje osobljem KORP\u201c, izdanje 3<\/li>\n<\/ul>\n<p>\nZa razmjenu podataka koristi se format <noindex><a rel=\"nofollow\" href=\"http:\/\/v8.1c.ru\/edi\/edi_app\/enterprisedata\/\">EnterpriseData<\/a><\/noindex>, temeljen na XML-u. Format je poslovno orijentiran \u2013 opisi u njemu odgovaraju poslovnim entitetima (dokumenti i elementi referentnih lista) prikazanim u programima 1C, na primjer: akt o izvr\u0161enim radovima, primitak blagajni\u010dkog naloga, partner, asortiman itd.<\/p>\n<p>Razmjena podataka izme\u0111u aplikacije 1C i vanjske aplikacije mo\u017ee se odvijati:<\/p>\n<ul>\n<li>kroz posebnu datote\u010dnu mapu <\/li>\n<li>kroz FTP mapu <\/li>\n<li>kroz web uslugu, implementiranu na strani aplikacije 1C. Datoteka s podacima se predaje kao parametar web metoda<\/li>\n<li>kroz elektroni\u010dku po\u0161tu<\/li>\n<\/ul>\n<p>\nU slu\u010daju razmjene putem web usluge, vanjska aplikacija \u0107e pokrenuti sesiju razmjene podataka pozivom odgovaraju\u0107ih web metoda aplikacije 1C. U ostalim slu\u010dajevima, inicijator sesije razmjene bit \u0107e aplikacija 1C (stavljanjem datoteke s podacima u odgovaraju\u0107u mapu ili slanjem datoteke s podacima na postavljenu email adresu).<br \/>\nTako\u0111er, na strani 1C se postavlja koja \u0107e se frekvencija sinhronizacije odvijati (za opcije s razmjenom datoteka kroz mapu i elektroni\u010dkom po\u0161tom):<\/p>\n<ul>\n<li>prema rasporedu (s odre\u0111enom frekvencijom) <\/li>\n<li>ru\u010dno; korisnik \u0107e ru\u010dno pokretati sinhronizaciju svaki put kada to zatreba<\/li>\n<\/ul>\n<p><\/p>\n<h5>Potvrda poruka<\/h5>\n<p>\nAplikacije 1C vode evidenciju poslanih i primljenih poruka sinhronizacije i o\u010dekuju isto od vanjskih aplikacija. To omogu\u0107ava kori\u0161tenje mehanizma numeracije poruka, opisanog prethodno u odjeljku \u201eMehanizam razmjene podataka\u201c.<\/p>\n<p>Aplikacije 1C tijekom sinkronizacije \u0161alju samo informacije o promjenama koje su se dogodile s poslovnim entitetima od posljednje sinkronizacije (kako bi se smanjila koli\u010dina prenesenih informacija). Prilikom prve sinkronizacije aplikacija 1C \u0107e izvesti sve poslovne entitete (npr. stavke iz imenika robe) u formatu EnterpriseData u XML datoteku (budu\u0107i da su svi oni \"novi\" za vanjsku aplikaciju). Vanjska aplikacija mora obraditi informacije iz pristigle XML datoteke od 1C i prilikom sljede\u0107e sesije sinkronizacije smjestiti u datoteku koja se \u0161alje u 1C, u posebnom dijelu XML-a, informaciju da je poruka od 1C pod odre\u0111enim brojem uspje\u0161no prihva\u0107ena. Potvrda je aplikaciji 1C signal da su svi poslovni entiteti uspje\u0161no obra\u0111eni od strane vanjske aplikacije i da informacije o njima vi\u0161e ne treba slati. Osim potvrde, XML datoteka od vanjske aplikacije tako\u0111er mo\u017ee sadr\u017eavati podatke za sinkronizaciju s strane aplikacije (npr. dokumente o prodaji proizvoda i usluga).<\/p>\n<p>Nakon primanja potvrde, aplikacija 1C ozna\u010dava sve promjene poslane u prethodnoj poruci kao uspje\u0161no sinkronizirane. Samo nesinkronizirane promjene u poslovnim entitetima (stvaranje novih entiteta, promjena i brisanje postoje\u0107ih) bit \u0107e poslane u vanjsku aplikaciju pri sljede\u0107oj sesiji sinkronizacije.<\/p>\n<p><img decoding=\"async\" alt=\"Metode integracije s 1C\" src=\"\/wp-content\/uploads\/2019\/08\/b0d5509a53909e38886a15c2e03e7131.jpeg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\nPri prijenosu podataka iz vanjske aplikacije u aplikaciju 1C slika se mijenja u suprotnu. Vanjska aplikacija mora ispuniti sekciju potvrde u XML datoteci na odgovaraju\u0107i na\u010din i smjestiti poslovne podatke za sinkronizaciju s vlastite strane u formatu EnterpriseData.<\/p>\n<p><img decoding=\"async\" alt=\"Metode integracije s 1C\" src=\"\/wp-content\/uploads\/2019\/08\/d34b96efb7591770133b363b369c0019.jpeg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<h5>P pojednostavljeni prijenos podataka bez potvrde<\/h5>\n<p>\nZa slu\u010dajeve jednostavne integracije, kada je dovoljno samo prenositi informacije iz vanjske aplikacije u aplikaciju 1C i povratni prijenos podataka iz aplikacije 1C u vanjsku aplikaciju nije potreban (npr. integracija online trgovine koja prenosi informacije o prodaji u \"1C:Ra\u010dunovodstvo\"), postoji pojednostavljeni na\u010din rada putem web servisa (bez potvrde), koji ne zahtijeva postavke sa strane aplikacije 1C.<\/p>\n<h4>Specijalizirana integracijska rje\u0161enja<\/h4>\n<p>\nPostoji tipi\u010dno rje\u0161enje \u201e1C: Konverzija podataka\u201c, koje koristi mehanizme platforme za konverziju i razmjenu podataka izme\u0111u tipi\u010dnih konfiguracija 1C, ali se mo\u017ee koristiti i za integraciju s vanjskim aplikacijama.<\/p>\n<h5>Integracija s bankovnim rje\u0161enjima<\/h5>\n<p>\nStandard <noindex><a rel=\"nofollow\" href=\"http:\/\/v8.1c.ru\/edi\/edi_stnd\/100\/index.htm\">\u201eKlijent banka\u201c<\/a><\/noindex>, razvijen od strane stru\u010dnjaka 1C prije vi\u0161e od 10 godina, zapravo je postao standard u industriji u Rusiji. Sljede\u0107i korak u tom smjeru je tehnologija <noindex><a rel=\"nofollow\" href=\"http:\/\/directbank.1c.ru\/\">DirectBank<\/a><\/noindex>, koja omogu\u0107ava slanje platnih dokumenata u banku i primanje izvoda iz banke izravno iz programa sustava \u201e1C: Poduze\u0107e\u201c dodirom jednog gumba u programu \u201e1C\u201c; pritom nije potrebna instalacija i pokretanje dodatnih programa na klijentskom ra\u010dunalu. <\/p>\n<p>Postoji tako\u0111er <noindex><a rel=\"nofollow\" href=\"http:\/\/v8.1c.ru\/edi\/edi_stnd\/109\/\">standard za razmjenu podataka u projektima pla\u0107a<\/a><\/noindex>.<\/p>\n<h5>Ostalo<\/h5>\n<p>\nZaslu\u017euju spomenuti <noindex><a rel=\"nofollow\" href=\"http:\/\/v8.1c.ru\/edi\/edi_stnd\/131\/\">protokol razmjene izme\u0111u sustava 1C: Poduze\u0107e i web stranice<\/a><\/noindex>, standard razmjene komercijalnih informacija <noindex><a rel=\"nofollow\" href=\"http:\/\/v8.1c.ru\/edi\/edi_stnd\/90\/\">CommerceML<\/a><\/noindex> (razvijen u suradnji s Microsoftom, Intela, Price.ru i drugim tvrtkama), <noindex><a rel=\"nofollow\" href=\"http:\/\/v8.1c.ru\/edi\/edi_stnd\/111\/\">standard razmjene podataka o transakcijama akvaira<\/a><\/noindex>.<br \/>\n<br \/>Izvor: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/1c\/blog\/308420\/\">habr.com<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041a\u0430\u043a\u0438\u0435 \u0432\u0430\u0436\u043d\u0435\u0439\u0448\u0438\u0435 \u0442\u0440\u0435\u0431\u043e\u0432\u0430\u043d\u0438\u044f \u043f\u0440\u0435\u0434\u044a\u044f\u0432\u043b\u044f\u044e\u0442\u0441\u044f \u043a \u0431\u0438\u0437\u043d\u0435\u0441-\u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f\u043c? \u041e\u0434\u043d\u0438\u043c\u0438 \u0438\u0437 \u0441\u0430\u043c\u044b\u0445 \u0433\u043b\u0430\u0432\u043d\u044b\u0445 \u044f\u0432\u043b\u044f\u044e\u0442\u0441\u044f \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0435 \u0437\u0430\u0434\u0430\u0447\u0438: \u041b\u0435\u0433\u043a\u043e\u0441\u0442\u044c \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044f\/\u0430\u0434\u0430\u043f\u0442\u0430\u0446\u0438\u0438 \u043b\u043e\u0433\u0438\u043a\u0438 \u0440\u0430\u0431\u043e\u0442\u044b \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u043a \u043c\u0435\u043d\u044f\u044e\u0449\u0438\u043c\u0441\u044f \u0431\u0438\u0437\u043d\u0435\u0441-\u0437\u0430\u0434\u0430\u0447\u0430\u043c. \u041b\u0435\u0433\u043a\u043e\u0441\u0442\u044c \u0438\u043d\u0442\u0435\u0433\u0440\u0430\u0446\u0438\u0438 \u0441 \u0434\u0440\u0443\u0433\u0438\u043c\u0438 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f\u043c\u0438. \u0422\u043e, \u043a\u0430\u043a \u0440\u0435\u0448\u0430\u0435\u0442\u0441\u044f \u0432 1\u0421 \u043f\u0435\u0440\u0432\u0430\u044f \u0437\u0430\u0434\u0430\u0447\u0430, \u0431\u044b\u043b\u043e \u043a\u0440\u0430\u0442\u043a\u043e \u043e\u043f\u0438\u0441\u0430\u043d\u043e \u0432 \u0440\u0430\u0437\u0434\u0435\u043b\u0435 \u00ab\u041a\u0430\u0441\u0442\u043e\u043c\u0438\u0437\u0430\u0446\u0438\u044f \u0438 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430\u00bb \u044d\u0442\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0438; \u043c\u044b \u0435\u0449\u0435 \u0432\u0435\u0440\u043d\u0435\u043c\u0441\u044f \u043a \u044d\u0442\u043e\u0439 \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u043d\u043e\u0439 \u0442\u0435\u043c\u0435 \u0432 \u043e\u0434\u043d\u043e\u0439 \u0438\u0437 \u0431\u0443\u0434\u0443\u0449\u0438\u0445 \u0441\u0442\u0430\u0442\u0435\u0439. [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":27703,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-36968","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-administrirovanie"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.5 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u041a\u0430\u043a\u0438\u0435 \u0432\u0430\u0436\u043d\u0435\u0439\u0448\u0438\u0435 \u0442\u0440\u0435\u0431\u043e\u0432\u0430\u043d\u0438\u044f \u043f\u0440\u0435\u0434\u044a\u044f\u0432\u043b\u044f\u044e\u0442\u0441\u044f \u043a \u0431\u0438\u0437\u043d\u0435\u0441-\u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f\u043c?\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/hr\/blog\/administrirovanie\/sposoby-integratsii-s-1s\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.5\" \/>\n\t\t<meta property=\"og:locale\" content=\"hr_HR\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u0421\u043f\u043e\u0441\u043e\u0431\u044b \u0438\u043d\u0442\u0435\u0433\u0440\u0430\u0446\u0438\u0438 \u0441 1\u0421 | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041a\u0430\u043a\u0438\u0435 \u0432\u0430\u0436\u043d\u0435\u0439\u0448\u0438\u0435 \u0442\u0440\u0435\u0431\u043e\u0432\u0430\u043d\u0438\u044f \u043f\u0440\u0435\u0434\u044a\u044f\u0432\u043b\u044f\u044e\u0442\u0441\u044f \u043a \u0431\u0438\u0437\u043d\u0435\u0441-\u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f\u043c?\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/hr\/blog\/administrirovanie\/sposoby-integratsii-s-1s\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2019-10-31T19:15:01+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2019-10-31T19:15:01+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47 Na\u010dini integracije s 1C | ProHoster","description":"Koji su najva\u017eniji zahtjevi postavljeni pred poslovne aplikacije?","canonical_url":"https:\/\/prohoster.info\/hr\/blog\/administrirovanie\/sposoby-integratsii-s-1s","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"hr_HR","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u0421\u043f\u043e\u0441\u043e\u0431\u044b \u0438\u043d\u0442\u0435\u0433\u0440\u0430\u0446\u0438\u0438 \u0441 1\u0421 | ProHoster","og:description":"\u041a\u0430\u043a\u0438\u0435 \u0432\u0430\u0436\u043d\u0435\u0439\u0448\u0438\u0435 \u0442\u0440\u0435\u0431\u043e\u0432\u0430\u043d\u0438\u044f \u043f\u0440\u0435\u0434\u044a\u044f\u0432\u043b\u044f\u044e\u0442\u0441\u044f \u043a \u0431\u0438\u0437\u043d\u0435\u0441-\u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f\u043c?","og:url":"https:\/\/prohoster.info\/hr\/blog\/administrirovanie\/sposoby-integratsii-s-1s","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2019-10-31T19:15:01+00:00","article:modified_time":"2019-10-31T19:15:01+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"36968","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":"2026-01-22 05:33:19","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-03-01 01:35:27","updated":"2026-01-22 05:33:19","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/hr\/wp-json\/wp\/v2\/posts\/36968","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/hr\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/hr\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/hr\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/hr\/wp-json\/wp\/v2\/comments?post=36968"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/hr\/wp-json\/wp\/v2\/posts\/36968\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/hr\/wp-json\/wp\/v2\/media\/27703"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/hr\/wp-json\/wp\/v2\/media?parent=36968"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/hr\/wp-json\/wp\/v2\/categories?post=36968"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/hr\/wp-json\/wp\/v2\/tags?post=36968"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}