Razmjena kroz univerzalni format. Izgled i karakteristike korištenja univerzalne razmjene podataka 1c sinkronizacija podataka putem proizvoda univerzalnog formata

Prilikom razvoja 1C 8 pravila razmjene široko se koristi mogućnost programskog redefiniranja ponašanja pravila razmjene - mehanizam rukovanja. Obrađivači događaja značajno proširuju funkcionalnost i nezamjenjiv su alat za postavljanje pravila razmjene u slučajevima kada mogućnosti interaktivne konfiguracije nisu dovoljne.

Rukovaoci i algoritmi su napisani na jeziku platforme na kojoj će se izvršavati tokom razmene.

Ako je ovo platforma 1C: Enterprise 7.7, tada je kod za rukovanje integriran u kod za obradu prijenosa ili preuzimanja. Shodno tome, svaki rukovalac ili algoritam je odvojen u posebnu funkciju i dostupan je za otklanjanje grešaka tokom razmene.

Ako se otpremanje ili preuzimanje dogodi na platformi 1C: Enterprise 8, tada se kod rukovatelja ne integrira u kod za obradu razmjene podataka, već se učitava u datoteku pravila razmjene. Tokom procesa razmjene podataka, kod rukovatelja ili algoritama se uzima iz datoteke pravila i izvršava se direktno u kontekstu naredbe “Run”. Da biste otklonili greške kod rukovaoca i algoritama, možete koristiti obradu „Universal XML Data Interchange“.

Automatski kontrolni sistemi se u većini slučajeva sastoje od zasebnih baza podataka i često imaju geografski raspoređenu strukturu. Istovremeno, pravilno sprovedena razmena podataka je neophodan uslov za efikasan rad ovakvih sistema.

Početno postavljanje berze može zahtevati niz radnji, ne samo u smislu programiranja, već i konsaltinga, čak i ako imamo posla sa homogenim izvorima, kao što je slučaj sa proizvodima na platformi 1C:Enterprise. Zašto postavljanje 1C razmjene (ili, kako se još naziva, sinkronizacija podataka u 1C 8.3) može postati najzahtjevniji i najskuplji zadatak projekta integracije, razmotrit ćemo u ovom članku.

Razmjena podataka u 1C okruženju omogućava vam da:

  • Eliminisati dvostruki unos dokumenata;
  • Automatizirati povezane poslovne procese;
  • Optimizirajte interakciju između distribuiranih odjela;
  • Ažurno ažurirati podatke za rad stručnjaka iz različitih odjela;
  • “Razlikujte” između različitih vrsta računovodstva.*

*U slučajevima kada se podaci jedne vrste računovodstva značajno razlikuju od druge, potrebno je osigurati povjerljivost informacija i „ograničiti“ tokove informacija. Na primjer, razmjena podataka između 1C UT i 1C Accounting ne zahtijeva učitavanje upravljačkih podataka u regulatornu računovodstvenu bazu podataka, tj. sinhronizacija u 1C ovdje će biti nepotpuna.

Ako zamislimo standardni proces implementacije primarne razmjene podataka, kada je barem jedan od njegovih objekata 1C proizvod, onda možemo razlikovati sljedeće faze:

  • Koordinacija sastava razmjene;
  • Definicija transporta (protokoli razmjene);
  • Postavljanje pravila;
  • Planiranje.

Identifikacija sastava 1C razmjene

Objekti razmjene mogu se podijeliti na „izvor“ i „primalac“. Istovremeno mogu obavljati dvije uloge u isto vrijeme, što će se zvati dvosmjerna razmjena. Izvor i odredište se određuju logično u zavisnosti od potrebe ili funkcionalnosti sistema.*

*Na primjer, kada se integrira “WA: Financier” - rješenje za vođenje finansijskog računovodstva i upravljanja trezorskim procesima, razvijeno na bazi “1C:Enterprise”, stručnjaci WiseAdvice-a ga preporučuju kao master sistem. To je zbog dostupnosti kontrolnih alata za usklađivanje s pravilima politike aplikacije i, shodno tome, kako bi se osigurala učinkovitost rješenja.

Zatim se na osnovu primljenih i evidentiranih zahtjeva korisnika kreira lista podataka za razmjenu, utvrđuje njen obim, zahtjevi za učestalost razmjene, te propisuje proces rada sa greškama i postupanja u vanrednim situacijama (kolizijama).

U istoj fazi, u zavisnosti od flote postojećih sistema i strukture preduzeća, određuje se format razmene:

Distribuirana baza podataka

  • RIB podrazumijeva razmjenu između identičnih 1C konfiguracija baze podataka, sa jasnom kontrolnom strukturom “master-slave” za svaki par razmjene. Kao element tehnološke platforme, RIB, osim podataka, može prenositi promjene konfiguracije i administrativne informacije baze podataka (ali samo od master-a do slave-a).

Univerzalna razmjena podataka u 1C

  • Mehanizam koji vam omogućava da konfigurišete razmenu 1C baza podataka, kako sa konfiguracijama na platformi 1C:Enterprise tako i sa sistemima trećih strana. Razmjena se vrši prijenosom podataka u univerzalni xml format u skladu sa „Planovima razmjene“.

EnterpriseData

  • Najnoviji razvoj 1C, dizajniran za implementaciju razmjene podataka u xml formatu između proizvoda kreiranih na platformi 1C:Enterprise sa bilo kojim sustavom automatizacije. Upotreba EnterpriseData pojednostavljuje modifikacije povezane sa razmjenom. Ranije, kada je nova konfiguracija uključena u sistem, bilo je potrebno implementirati mehanizam za uvoz i izvoz podataka, kako za njega tako i za postojeće sisteme. Sada sistemi koji podržavaju EnterpriseData ne trebaju nikakve modifikacije, jer imaju samo jednu ulazno-izlaznu tačku.

Definicija transporta (protokoli razmjene)

Za sistem na platformi 1C:Enterprise 8 pruža se širok spektar mogućnosti za organizovanje razmene sa bilo kojim informacionim resursima koristeći opšte prihvaćene univerzalne standarde (xml, tekstualne datoteke, Excel, ADO veza, itd.). Stoga, prilikom određivanja transporta za razmjenu podataka, trebali biste se osloniti na mogućnosti baze podataka sistema treće strane.

Sinhronizacija imenika

Osnovni princip efikasne sinhronizacije imenika je prisustvo jedne ulazne tačke. Ali ako govorimo o radu sa direktorijumima koji su se kroz istoriju popunjavali po različitim pravilima, potrebno je jasno definisati polja za sinhronizaciju kako bi se razmena dovela do „zajedničkog nazivnika“.*

*U ovoj fazi, možda će biti potrebno izvršiti rad na normalizaciji referentnih podataka na strani izvora podataka. U zavisnosti od stanja imenika i njihovog obima, proces poređenja elemenata, prepoznavanja, identifikacije grešaka i duplikata, kao i popunjavanje nedostajućih polja i dodeljivanje polja za sinhronizaciju, može zahtevati rad čitave grupe stručnjaka, kako na dio integratora (vlasnik tehnike normalizacije master podataka) i sa strane korisnika.

Postavljanje pravila

Mogućnost prikaza podataka iz izvornih sistema u prijemnicima zavisi od ispravno definisanih pravila razmene. Pravila, predstavljena u xml formatu, regulišu korespondenciju ključnih detalja objekata izvor-primalac. Rješenje 1C:Data Conversion je dizajnirano da automatizira kreiranje pravila za implementaciju jednokratnih i trajnih razmjena.

Garantuje da nema gubitka podataka tokom plana razmene. Ovo je sastavni dio bilo koje konfiguracije na platformi 1C:Enterprise, koja u potpunosti opisuje postupak 1C razmjene: sastav podataka (dokumenti sa „identifikujućim“ detaljima) i čvorovi (baze informacija prijemnik-predajnik), kao i aktiviranje RIB-a za odabrani pravci razmene.

Svaka promena podataka unesenih u Plan razmene se evidentira i dobija znak „promenjeno“. Dok se promijenjeni podaci ne poklapaju jedni s drugima u čvorovima prijemnik-predajnik, znak se neće resetirati, a sistem će poslati kontrolne poruke na oba čvora. Nakon učitavanja podataka i potvrde njihove potpune usklađenosti u oba sistema, znak se resetuje.

Raspored razmjene u 1C

Za automatizaciju redovne razmjene, podešena je učestalost slanja podataka. Učestalost razmene zavisi od potreba i tehničkih mogućnosti. Također, konfiguracije na platformi 1C:Enterprise omogućavaju vam da konfigurirate razmjenu podataka kada dođe do nekog događaja.

Uzimajući u obzir standardni proces implementacije razmjene, obratimo pažnju na faktore koji će zahtijevati poboljšanja u različitim fazama:

  • Nestandardne, visoko modificirane konfiguracije baze podataka;
  • Različite verzije platforme 1C:Enterprise;
  • Verzije konfiguracije koje nisu ažurirane dugo vremena;
  • Predmeti razmjene koji su prethodno pretrpjeli modifikacije;
  • Potreba za nestandardnim pravilima razmjene;
  • Veoma drugačiji skup i sastav detalja u postojećim referencama.

Budući da čak i standardne radnje za implementaciju primarne razmjene podataka zahtijevaju stručno znanje, preporučuje se da se izvode uz učešće stručnjaka 1C. Tek nakon dovršetka svih gore opisanih koraka treba da pređete na postavljanje centrale u konfiguraciji. Pogledajmo integraciju baza podataka na primjeru 1C:UPP i 1C:Retail (razmjena sa 1C:UT se postavlja po istoj shemi). U standardnu ​​sinhronizaciju uključena je i SCP - SCP razmjena, koja je tipična za velike automatizacijske sisteme u najvećim industrijskim preduzećima.

U podmeniju „Usluga“ izaberite „Razmjena podataka sa proizvodima na platformi...“ (odabirom direktne razmjene sa „Maloprodajom“ često dolazi do grešaka na nivou COM objekta). Obratite pažnju na servisnu poruku "Ova funkcija nije dostupna."


Da biste riješili ovaj problem, morate odabrati "Konfiguriraj komunikaciju"


...i označite polje. Zatim zanemarite poruku o grešci.


U postavkama sinhronizacije podataka odaberite “Kreiraj razmjenu sa “Maloprodajom”...



Prije konfiguriranja postavki veze putem lokalnog ili mrežnog direktorija, trebali biste provjeriti ima li prostora na disku za direktorij. Iako u pravilu ne zauzima više od 30-50 MB, u izuzetnim slučajevima može zahtijevati i do 600 MB. Možete kreirati potreban direktorij direktno iz konfiguratora.



Kada se povezujemo preko mrežnog imenika, zanemarujemo ponudu da konfigurišemo vezu preko FTP adrese i putem e-pošte klikom na „Dalje“.


U postavkama ručno unosimo prefikse - simbole baza podataka (obično BP, UPP, RO), postavljamo pravila i datum početka za upload podataka. Prefiks će biti naznačen u nazivu dokumenata kako bi se označila baza podataka u kojoj su kreirani. Ako se pravila za otpremanje ne uređuju, podaci će biti postavljeni prema zadanim postavkama prema svim dostupnim parametrima.



Kreiramo datoteku postavki razmjene za "Maloprodaju" kako ne bismo ponavljali naše radnje. Ako trebate odmah poslati podatke odmah nakon podešavanja sinhronizacije, označite polje.


Da biste automatizirali proces razmjene, potrebno je postaviti raspored.


Meni "Maloprodaja".


Označite okvir i odaberite "Sinhronizacija".


Izvodimo „obrnutu“ postavku odabirom Upravljanje proizvodnim poduzećem.




Učitajte datoteku postavki kreiranu u UPP-u.


Stavimo kvačicu, sistem automatski preuzima adresu.





Ponašamo se na isti način kao u UPP-u.









Poređenje podataka verifikacije (Ručno poređenje podataka se preporučuje da se uradi u pripremnoj fazi, jer ovaj posao može postati radno najintenzivniji u procesu implementacije razmjene). Dvostrukim klikom miša otvara se prozor za poređenje.



U slučaju greške u sinhronizaciji, “Detalji...” će biti zamijenjeno sa “Nikad...”.


“Detalji...” otvara dnevnik sa ažuriranim informacijama o razmjeni.


Spreman.

Nerijetko se u radu velikih preduzeća i maloprodajnih lanaca javlja potreba za razmjenom podataka između baza podataka. Svaki programer i administrator rješava ovaj problem drugačije. Neki pišu učitavanja i preuzimanja kroz datoteke međutablica, drugi koriste način COM veze za povezivanje s izvornom bazom podataka. Međutim, nedavno je 1C-ov vlastiti mehanizam pod nazivom „Univerzalna razmjena podataka u XML formatu“ postao sve popularniji.

Izgled obrade

U punom interfejsu možete otvoriti obradu u Servis->Ostale razmjene podataka->Univerzalna razmjena podataka u XML formatu.

Obrazac za obradu (slika 1) sadrži četiri kartice:

  • Dodatne postavke;
  • Brisanje podataka.
  • Interfejs svake od kartica je jako opterećen elementima i stoga zahtijeva odvojeno razmatranje.

    Učitavanje podataka

    Na samom vrhu kartice nalazi se polje za odabir datoteke s pravilima razmjene. Za nestandardne baze podataka i razmjene, morat ćete sami kreirati datoteku za razmjenu.

    U sljedećem redu obrasca nalaze se dva radio gumba:

    1. Učitavanje u datoteku za razmjenu (slika 2);
    2. Povezivanje i učitavanje podataka u informacijsku sigurnost (Sl. 3).

    Kao što možete vidjeti iz gornjih slika, izgled forme se razlikuje ovisno o prekidaču. Ako je odabrana opcija dijeljenja datoteka, od korisnika se traži da odabere lokaciju datoteke na koju će biti postavljena i mogućnost komprimiranja radi uštede prostora i zaštite lozinkom.

    Opcija direktne veze sa prijemnom bazom podržava i fajl i klijent-server način rada. U tom slučaju, moraćete da unesete adresu baze podataka i popunite polja „Korisnik“ i „Lozinka“. Prije nego počnete s razmjenom podataka, preporučljivo je da testirate vezu.

    Tablični odjeljak u nastavku vam omogućava da konfigurirate odabire i druge parametre istovara.

    Za otklanjanje grešaka u algoritmima i ispravljanje grešaka, možete koristiti mehanizam ugrađen u obradu razmjene. Aktivira se tako što se označi odgovarajući kvadratić na dnu obrasca. Klikom na dugme “Debugging settings…” otvara se prozor (slika 4).

    Fig.4

    Posebnost ovog obrasca je informativna pomoć na lijevoj strani izgleda, koja opisuje svaki od tri moguća načina otklanjanja grešaka. Bilo koja datoteka u epf formatu može poslužiti kao eksterna datoteka za obradu modula.

    Klikom na dugme „Završi“ provjerava se ispravnost i potpunost popunjenih podataka.

    Za razliku od “Upload”, ova kartica (Sl. 5) nema tabelarni dio, ali ima mnogo više checkbox-a koji vam omogućavaju podešavanje parametara za snimanje novih i izmijenjenih objekata.

    Fig.5

    Prije svega, trebate odabrati datoteku koja će služiti kao izvor informacija. Ovo se može uraditi u polju za unos „Ime datoteke za otpremanje“. Ako su podaci učitani u arhivu zaštićenu lozinkom, potrebno ih je unijeti u odgovarajuće polje.

    Odgovarajući potvrdni okviri vam omogućavaju da konfigurirate:

    • Transakcija prilikom pisanja objekata (ovo ponekad ubrzava proces);
    • Učitavanje podataka u režimu razmene (u ovom slučaju, sve provere platforme, izuzev provere prilikom slanja dokumenata, biće zanemarene prilikom snimanja);
    • Prepisivanje promijenjenih elemenata;
    • Postavljanje oznake za brisanje preuzetih stavki;
    • Način upisivanja novih podataka u registar (jedan po jedan ili u skupu);
    • Sjecanje beznačajnih znakova (razmaka i tabulatora) za vrijednosti niza.

    Dodatne postavke

    Kao što naziv oznake implicira, sadrži alate, čija upotreba vam omogućava da preciznije prilagodite proces razmjene. posebno:

    1. Omogućuje način otklanjanja grešaka;
    2. Omogućava korištenje transakcije tokom procesa istovara;
    3. Optimizira razmjenu između baza podataka verzije 8 1C;
    4. Učitajte samo one objekte koji su dozvoljeni za korištenje od strane trenutnog korisnika;
    5. Omogućite evidentiranje procesa razmjene između baza podataka.

    Ove i neke druge funkcije su omogućene označavanjem odgovarajućih kvadratića na obrascu (slika 6).

    Fig.6

    Brisanje podataka

    Ovu karticu koriste samo programeri u načinu za otklanjanje grešaka. Omogućava vam da uklonite nepotrebne objekte iz baze podataka.

    Ukratko o postavljanju pravila razmjene

    Upotreba standardnog rukovaoca uveliko pojednostavljuje život programerima. Istovremeno, jedan od najtežih trenutaka za nekoga ko se prvi put susreo sa „univerzalnom razmjenom podataka u XML formatu“ je pitanje: „Gdje mogu dobiti datoteku s pravilima razmjene?“

    Prije svega, da biste samostalno kreirali pravila razmjene, potrebna vam je posebna konfiguracija pod nazivom "Konverzija podataka". Sadrži nekoliko zanimljivih datoteka koje vam omogućavaju da konfigurirate gotovo svaku razmjenu između različitih 1C baza podataka 7 i 8 verzija:

    1. epf – potreban za preuzimanje strukture metapodataka za 1C 8 baze podataka;
    2. epf – ako je konfiguracija 1C 8 samopisna ili nije standardna, možda neće imati obradu „Univerzalne razmjene podataka“, ova datoteka je ova obrada;
    3. ert – datoteka sadrži kod za preuzimanje strukture metapodataka konfiguracija 1C verzije 7.7;
    4. ert – datoteka za obradu podataka za upload i preuzimanje za sedam.

    Nakon pokretanja odgovarajuće obrade, potrebno je rasteretiti strukture metapodataka za izvornu i odredišnu bazu podataka. Zatim, u konfiguraciji “Konverzija”, trebate unijeti informacije o izvornoj i odredišnoj konfiguraciji u direktorij “Konfiguracije”.

    Zatim se kreira element u direktoriju konverzije koji sadrži informacije o smjeru razmjene podataka. Možete postaviti Exchange pravila za to.

    U ovom članku ću opisati svoje, do sada malo iskustvo u organizaciji razmjene podataka kroz univerzalni EnterpriseData format.

    U mom slučaju, razmjena je konfigurisana između konfiguracija „Upravljanje trgovinom 11.2” (u daljem tekstu UT) i „Enterprise Accounting 3.0.43” (u daljem tekstu BP). Razmjena je jednosmjerna, od UT do BP. Prije nadogradnje Trade Management 11.1 na 11.2, razmjena podataka je konfigurirana korištenjem konfiguracije Data Conversion 2.0. Međutim, nakon prelaska na “11.2”, pojavile su se greške u “Upravljanje trgovinom” za korisnike. Provedena je procedura ažuriranja pravila razmjene, ali nije dala rezultate. Debager je pokazao da je problem u razmjeni podataka. Odlučeno je ukloniti postavku razmjene podataka u obje konfiguracije i ponovo je konfigurirati.

    I „Upravljanje trgovinom“ i „Računovodstvo preduzeća“ rade u verziji klijent-server. Počeo sam da podešavam sinhronizaciju sa UT. Izveo sam to na način da su podaci iz UT-a učitani u datoteku. Odnosno, sinhronizacija preko mrežnog imenika. U BP-u sam konfigurirao razmjenu na takav način da se podaci ne preuzimaju sa BP-a.

    Greška pri pozivanju metode konteksta (Provjeri): greška pri provjeravanju podataka XDTO:
    Struktura objekta "/Counterparty Bank Account/Bank" ne odgovara tipu: (http://v8.1c.ru/edi/edi_stnd/EnterpriseData/1.1)KeyPropertiesBank
    Provjera svojstva "BIK":
    oblik: Element
    naziv: (http://v8.1c.ru/edi/edi_stnd/EnterpriseData/1.1)BIK
    tip:
    Nedostaje potrebna imovina
    Predmet: Ugovor sa drugom stranom br. ...

    Da analiziram grešku, kliknuo sam na ikonicu „Sastav poslanih podataka“ i u listi ugovorenih ugovora registrovanih za slanje našao sam ugovor za koji se greška pojavila. Otvorio sam ugovor i zapamtio bankovni račun druge strane koji je naveden u ugovoru. Zatim sam prešao na bankovne račune registrovane za otpremu. Ispostavilo se da traženi račun nije na listi registrovanih. Popravio sam problematični bankovni račun i ugovor. Nakon toga sam ručno registrovao traženi bankovni račun.

    Pokušao sam ponovo da sinhronizujem podatke sa UT. Ovaj put podaci su uspješno učitani. XML datoteka je generirana u mrežnom folderu koji sadrži podatke za prijenos sa UT na BP.

    Sljedeći korak je učitavanje podataka iz datoteke u odjel računovodstva poduzeća. U konfiguraciji "Enterprise Accounting", kliknuo sam na dugme "Sinhroniziraj", otvorio se obrazac za obradu s porukom "Analiza podataka je u toku". Nešto kasnije poruka se promijenila u "Učitavanje podataka je u toku." Istovremeno, indikator i brojač su pokazali da se više od 80 hiljada objekata istovaruje iz jedinice za napajanje. To me je zbunilo, jer sam u postavkama naznačio da se ništa ne smije isprazniti iz napajanja. Obrada je trajala dosta vremena i završila se greškom:

    Događaj: Razmjena podataka
    (GeneralModule.Long-runningOperations.Module(371)): Proces pozadinskog posla radnika prekinut je nenormalno
    RaiseException(ErrorText);

    Da lokalizujem grešku, pokušao sam da promenim podešavanja sinhronizacije i opcije rada baze napajanja. Kao rezultat toga, kada sam konvertovao bazu podataka u verziju fajla, sistem je radio adekvatno: otvoren je obrazac za poređenje dve baze podataka. Nakon uparivanja objekata, početna sinhronizacija je bila uspješna. Zatim sam ponovo prebacio bazu podataka na verziju klijent-server.

    Daljnjim testiranjem sinhronizacije bilo je potrebno napraviti neke izmjene u pravilima za konverziju objekata. Vrijeme je da koristite konfiguraciju Data Conversion 3.0. Ugrađena pomoć za konfiguraciju opisuje kako funkcionira. Članci na web stranici ITS-a su također pomogli.

    Kao rezultat toga, učitao sam sljedeće podatke u "Konverzija podataka 3.0":

    • Tekstovi opšteg modula "Menadžer razmene podataka kroz univerzalni format" iz dve baze podataka
    • Raspored obje baze
    • Opis formata EnterpriseData (iz bilo koje baze podataka)
    • Pravila konverzije

    Nakon preuzimanja, otvorio sam pravila za pretvaranje podataka, objekata i svojstava u “Konverzija podataka 3.0”. Napravio sam promjene koje su mi bile potrebne. Zatim sam koristio dugme "Unload exchange manager modul". Tekst modula je kopiran u međuspremnik. Ostaje samo da ga umetnete u konfiguraciju.

    Eksperimentirajući sa postavljanjem pravila u "Data Conversion 3.0", za sebe sam zaključio da je u slučaju kada su promjene beznačajne lakše postaviti pravila direktno u UT i BP konfiguracijama, u općem modulu "Upravitelj razmjene podataka kroz univerzalni format". Ako su izmjene ozbiljne, kao što je, na primjer, dodavanje novog objekta u razmjenu, tada biste trebali koristiti konfiguraciju " Konverzija podataka 3.0".

    Izvršio sam zadatak dodavanja dokumenta "Narudžba dobavljaču" u plan zamjene koristeći " Konverzija podataka 3.0". U standardnoj verziji UT - BP ovaj dokument nije uključen u plan razmjene.

    Podsjetimo da su pravila za registraciju objekata za upload još uvijek konfigurirana u konfiguraciji "Konverzija podataka 2.0".

    Ovo su prvi utisci o sinhronizaciji podataka kroz univerzalni EnterpriseData format.

    P.S. Ako imate pitanja ili svoja zapažanja o razmjeni podataka putem univerzalnog formata i konfiguracija" Konverzija podataka 3.0", napišite u komentarima. Razmijenićemo iskustva.

    • Sinhronizacija podataka
    • Univerzalni format EntepriseData
    • Konverzija podataka 3.0
    • Konverzija podataka 2.0
    • Upravljanje trgovinom
    • Računovodstvo preduzeća