Računovodstvo preduzeća 1c 8.3 kako napraviti rebro. Distribuirana baza informacija: Osnove. Podešavanje sinhronizacije u perifernoj bazi podataka

25. oktobra 2016

Nema velike razlike između postavljanja i podrške RIB-a za 2 čvora i za 10, ali kada broj udaljenih tačaka pređe stotinu, moraju se rješavati potpuno različiti problemi

Početni podaci:

Konfiguracija: Maloprodaja 2.2
Platforma 1C: 8.3.7.1970



Trajanje projekta: jedna godina.




Arhitektura:

Prvo smo se odlučili za RIB šemu. Odlučeno je da se fokusira na šemu „zvijezda“ što je duže moguće; kada se dostignu tehnološka ograničenja - pahulja.





Ograničenja:
- 2 GB RAM-a
- 1 fizički procesor


Od svega navedenog, glavna iritantna stvar je ograničenje maksimalne veličine baze podataka.

Ali to samo znači da morate pažljivo organizirati proceduru čišćenja od zastarjelih podataka na licu mjesta.

Za 1C i MS SQL server je dodijeljen poseban fizički server. Ona će snositi glavni teret razmjena i dugoročnih operacija.
Krajnji klijentski računari se ne zamjenjuju, jer će raditi sa tankim klijentom i opterećenje na njima će biti minimalno.
.


osnovna podešavanja

Od vremena UT 10.3, tokom kojeg sam imao svoj prvi projekat implementacije RIB-a za 60 čvorova, naravno, „ispod mosta je prošlo dosta vode“.

1C nije stajao mirno. Retail 2.2 sada uzima u obzir potrebu za selektivnim učitavanjem podataka.
Samo informacije koje su relevantne za njega bit će učitane u bazu podataka trgovine:
- Sve referentne knjige (osim specijalizovanih)
- Dokumenti za ovu radnju

Drugo pitanje je da na ovaj ili onaj način, dodavanje čvora u bazu podataka znači dodavanje još jednog unosa u tablicu registracije za svaki zajednički element kada je napisan.





1) Potrebno je podijeliti u zasebne scenarije sinhronizacije za učitavanje i preuzimanje
Poenta je da istovar traje dugo i uključuje blokiranje, dok je utovar prilično bez problema. Istovremeno, često se dešava da podatke moramo brzo primiti iz maloprodajnih objekata, a da ih dajemo samo nekoliko puta dnevno.

2) Identifikujte skladišta problema i uklonite ih iz opšteg scenarija sinhronizacije. Na njima može doći do velikih opterećenja - to će usporiti cijelu razmjenu, uključujući i druge čvorove. Nakon što su problemi riješeni, oni se vraćaju.

3) Kreirajte nekoliko skripti za slanje i primanje podataka. Ali glavna stvar ovdje je uhvatiti pravu ravnotežu njihove količine.
(od verzije 8.1).
Shodno tome, paralelizam u rasterećenju RIB-a je ograničen. U praksi se ispostavilo da se paralelno pokreću 2-3 skripte.


Šta je trebalo poboljšati

Najvažniji problem u standardnoj logici 1C RIB-a su ažuriranja





Drugi problem razmjene su registri informacija. Učitavanje svakog zapisa registra informacija u XML stvara poseban XML čvor sa elementima usluge, itd. Osim toga, funkcija “SelectChanges()” za registar informacija u kojem se nalazi 100 zapisa će dobiti rezultujuću tabelu od 100 redova, na u isto vrijeme, ako će ovaj A direktorij sa 100 redova imati samo jedan unos odabran u svom tabelarnom dijelu. A ovo je vrijeme ekskluzivnog blokiranja. Dakle, ako u PC-u postoji puno zapisa koji se redovno registruju za razmjenu drugim trgovinama, onda je naravno ispravnije to predstaviti u obliku imenika sa tabelarnim dijelom, koji, u ekstremnim slučajevima, prilikom snimanja , može formirati redove istog registra. u svakom slučaju, .

Još jedan važan detalj - Za što? Već postoji blizu 3 miliona diskontnih kartica, a za rad sa njima koristi se eksterni onlajn sistem. Ako nastavite da prenosite diskontne kartice u sve trgovine, to će značajno povećati razmjene, a može dovesti i do toga da baza premaši volumen od 10 GB.

Neki od mehanizama implementiraju se online kontaktiranjem centralne baze podataka: stanja u drugim trgovinama, vraćanje računa iz druge trgovine, provjera valjanosti poklon bonova.


Replikacija


Kreiranje početnog RIB čvora na regularan način bi u principu onemogućilo replikaciju.
Stoga se novi čvor kreira na sljedeći način
:


2) Ova baza podataka razmjenjuje sve opšte podatke u RIB-u, ali ne prima specijalizirane (dokumente)


5) Podloga za trgovinu je spremna.

Na server se postavlja gotov softverski paket, tako da ne oduzima mnogo vremena. Zatim se novostvorena baza podataka učitava na server i spremna je za slanje u prodavnicu.


Prednosti tankog klijenta

Dve značajne prednosti Retail 2.2 (Thin Client) koje su „grejale dušu“:








Podrška i ažuriranja




1) Ručno ažuriranje iz trgovina (nije baš ispravno, promjene možda neće biti primljene, bit će poziva i problema) - to je bio slučaj prije

3) Napišite *.cmd ili 1C skriptu za ažuriranje ili uzmite gotovu. Kao što praksa pokazuje, takvo rješenje je uvijek polovično (nestabilno) i u njega će biti moguće ugraditi malo funkcionalnosti.

Šta su bili naši zadaci:


2) Prilikom ažuriranja moguća je interaktivna interakcija sa korisnikom (poruke, potvrde, traka napretka).








Glavne funkcije:




4) Provjera statusa agenata
5) Ažuriranje izvještaja
6) backup

















Na primjer, ovako izgleda poruka o grešci nakon ažuriranja:








Dakle, projekat je imao dobre šanse da bude uspešno završen. Najmanje na pola leta let je normalan.

Ako dođemo do nekih drugih rješenja koja mogu izgledati interesantno, pisaću posebno

P.S. i što je najvažnije: Pravilno planiranje dalje podrške jedan je od ključnih faktora za dalji uspjeh ovakvih projekata. :)

25. oktobra 2016

Nema velike razlike između postavljanja i podrške RIB-a za 2 čvora i za 10, ali kada broj udaljenih tačaka pređe stotinu, moraju se rješavati potpuno različiti problemi.

Dakle, početni podaci:

Konfiguracija: Maloprodaja 2.2
Platforma 1C: 8.3.7.1970
Procijenjeni broj čvorova na kraju projekta: 200
Resursi opreme u centru: bez značajnih ograničenja
Oprema na mjestu: pitanje o kojem se raspravlja.
Trajanje projekta: jedna godina.

Arhitektura:

Prvo smo se odlučili za RIB šemu. Odlučeno je da se prije fokusira na šemu "zvijezda".
U maloprodajnim objektima koristi se klijent-server verzija rada, sa namenskim serverom koji radi pod operativnim sistemom Windows.
Server 1C će se koristiti u verziji "Server 1C MINI" https://1c.ru/news/info.jsp?id=17577
DBMS server - MS SQL Express 2008 R2.

SQL Express 2008 R2 je trenutna najnovija verzija ove linije SQL Servera.
Ograničenja:

2 GB RAM-a
- 1 fizički procesor
- 10 GB maksimalna veličina baze podataka

Od svega navedenog, najneugodnija stvar je, naravno, ograničenje maksimalne veličine baze podataka. Ali u stvari, to samo znači da će biti potrebno pažljivo organizirati postupak čišćenja od zastarjelih podataka na licu mjesta.

Za 1C i MS SQL server je dodijeljen poseban server. On će snositi glavni teret razmjena i transakcija.
Krajnji klijentski računari se ne mijenjaju, jer će raditi sa tankim klijentom i opterećenje na dnu će biti minimalno.
Server u prodavnici je jednostavno moćan PC. Ali preduvjet je prisustvo SSD diska - na kojem se nalaze MS SQL baze podataka.
Server će takođe pružiti mogućnost obavljanja rutinskih operacija noću i pristup bazi podataka prodavnice bez prekida u radu.

osnovna podešavanja

Od vremena UT 10.3, tokom kojeg sam imao svoj prvi projekat implementacije RIB-a za 60 čvorova, naravno, „puno vode je proletelo ispod mosta“. 1C nije stajao mirno. Retail 2.2 sada uzima u obzir potrebu za selektivnim učitavanjem podataka.
Samo informacije koje su relevantne za trgovinu bit će učitane u bazu podataka trgovine:
- Svi direktoriji (osim nekih)
- Dokumenti za ovu radnju
Registracija podataka se odvija prema pravilima registracije, sve što se može keširati. Nema značajnijih usporavanja prilikom registracije.
Drugo pitanje je da na ovaj ili onaj način, dodavanje čvora bazi podataka znači dodavanje drugog zapisa za svaki zajednički element za sve baze podataka.

Nema ništa posebno u podešavanju samog uploada. Postoje neke nijanse prilikom postavljanja scenarija sinhronizacije:

1) Potrebno je odvojiti slanje i učitavanje u zasebne scenarije sinhronizacije
Poenta je da istovar traje dugo i uključuje blokiranje, dok je utovar prilično bez problema. Istovremeno, često se dešava da podatke moramo brzo primiti iz maloprodajnih objekata, a da ih dajemo samo nekoliko puta dnevno.

2) Identifikujte skladišta problema i uklonite ih iz opšteg scenarija sinhronizacije. Na njima može biti velikih opterećenja - to će usporiti cijelu razmjenu, uključujući i druge čvorove

3) Kreirajte neke skripte za slanje i primanje podataka za slanje i primanje podataka. Ali glavna stvar je ravnoteža.
Neke stvari u 1C se ne mijenjaju. Ista metoda "SelectChanges" može se izvršiti samo sekvencijalno(od verzije 8.1).
Shodno tome, paralelizam u rasterećenju RIB-a je ograničen. U praksi, na kraju uploadujete 2-3 skripte odjednom.
Što se tiče scenarija prijema, tu je, naravno, moguć mnogo veći paralelizam, naravno.

Šta je trebalo poboljšati

Naravno da je tužno i tužno, ali morao sam temeljno da se mešam u BSP. Najvažniji problem u standardnoj logici 1C su ažuriranja. Nakon ažuriranja pojavljuje se prozor sličan ovome:

Sve se to dešava u monopolskom režimu. Između ostalog, sistem će i dalje pokušati izvršiti razmjenu nakon ažuriranja u ekskluzivnom načinu. Nije teško pogoditi kuda sve ovo vodi.
Tokom čitavog ovog perioda, prodavnica ne može da radi, kupaca ima na blagajni, a kompanija gubi novac.

Drugi problem razmjene su registri informacija. Učitavanje svakog unosa registra informacija u XML stvara poseban XML čvor sa elementima usluge i svime što slijedi. Osim toga, funkcija “odaberi izmjene” za registar informacija u kojem se nalazi 100 zapisa, rezultirajuća tablica će sadržavati 100 redova, au isto vrijeme, ako je ovo direktorij sa 100 redova, samo jedan zapis će biti odabran u tabela sekcija. Dakle, ako u PC-u postoji puno zapisa koji se redovno registruju za razmjenu drugim trgovinama, onda je naravno ispravnije to predstaviti u obliku imenika sa tabelarnim dijelom, koji, u ekstremnim slučajevima, prilikom snimanja , može generirati zapise istog registra. u svakom slučaju, registri informacija u razmjeni su zli.

Još jedan važan detalj - Diskontne kartice su potpuno isključene iz razmjene, a iz razmjene su isključeni samo zaposlenici određene radnje. Za što? Već postoji blizu 3 miliona diskontnih kartica, a za rad sa njima koristi se eksterni onlajn sistem. Ako nastavite da prenosite diskontne kartice u sve trgovine, to će značajno povećati razmjene, a osim toga može dovesti do toga da baza premaši volumen od 3GB.

Neki od mehanizama implementiraju se online kontaktiranjem centralne baze podataka: stanja u drugim trgovinama, vraćanje računa iz druge trgovine, provjera valjanosti poklon bonova.

Replikacija

Naravno, replikacija se odvija ubrzanim tempom.
Kreiranje početnog RIB čvora na standardni način bi, naravno, onemogućilo replikaciju.
Stoga se novi čvor kreira na sljedeći način:

1) Postoji zasebna baza podataka sa lažnom radnjom
2) Ova baza podataka razmjenjuje sve opšte podatke u RIB-u, ali ne prima specijalizirane
3) Kada želimo da kreiramo novu bazu podataka, jednostavno kopiramo ovu
4) Zatim postavljamo postavke - skladište, prefiks itd.
5) Podloga za trgovinu je spremna.

Na server se postavlja gotov softverski paket, tako da ne oduzima mnogo vremena. Zatim se novostvorena baza podataka prodavnica postavlja na server i spremna je za slanje u prodavnicu.

Prednosti tankog klijenta

dve značajne prednosti koje su „grejale dušu“.

1) Nema potrebe mijenjati cijeli kompjuterski park na maloprodajnim mjestima. 90% operacija se obavlja na serveru, a server se tamo dovodi sa "relativno moćnim računarom"

2) Oprema ima mogućnost odbijanja rada, a to se posebno često dešava kod novoinstalirane ili već dotrajale opreme.
U ovom slučaju, radnje su sada krajnje jednostavne - prodavnica se prebacuje na rad u centralnoj bazi podataka.
Ovaj proces ne traje više od 5-10 minuta, tako da se trgovanje ne prekida čak i ako postoje značajni problemi sa opremom.

Podrška i ažuriranja

Konačno smo došli do najzanimljivije tačke - kako sve ovo održavati i ažurirati?
Za nas, ažuriranja su takođe dugo bila dilema:

1) Ručno ažuriranje iz trgovina (nije baš ispravno, promjene možda neće biti primljene, bit će poziva i problema)
2) Ažurirajte koristeći tehničku podršku (nema toliko resursa)
3) Napišite *.cmd za ažuriranje ili uzmite gotov. Kao što pokazuje praksa, takvo rješenje je uvijek polovično (nestabilno), a u njemu je malo funkcionalnosti.

Šta su bili naši zadaci:

1) Ažuriranje se mora odvijati u nekoliko načina i njime se upravlja centralno
2) Prilikom ažuriranja moguća je interaktivna interakcija sa korisnikom.
3) Izvještaji o statusu ažuriranja i greškama moraju biti primljeni
4) Mora postojati rezervna kopija
5) Sistem ažuriranja bi trebao biti u mogućnosti da se sam ažurira bez problema.
6) Sistem bi trebao biti proširiv bez ikakvih problema.

Naravno, problemi su nadilazili listu onih koji se mogu riješiti jednostavnim metodama. Jer ne možemo bez automatizacije sa toliko krajnjih tačaka, a nismo našli ništa više ili manje gotovo sa sličnom funkcionalnošću
Morao sam da počnem da razvijam softver, koji je na kraju dobio ime MU (MagicUpdater).

Glavne funkcije:

1) Dinamičko ažuriranje baze podataka (naredba ili planirano)
2) Statičko ažuriranje baze podataka (naredba ili planirano)
3) automatski agenti na krajnjim računarima kada su modifikovani
4) Provjera statusa agenata
5) Ažuriranje izvještaja
6) backup
7) Administrativne radnje sa 1C serverom i MS SQL-om
8) Zatvaranje svih 1C klijentskih aplikacija na mrežnim računarima
9) Statičko ažuriranje sa prihvatanjem na glavnoj blagajni
10) Prikaz opisa izmjena nakon ažuriranja
11) Određivanje redosleda radnji
12) Izvršite sve ove radnje prema rasporedu

Približne šeme interakcije:


Gdje je MU Agent servis koji je instaliran i konfiguriran u trgovini. Zapravo, ona dobija komandu iz centra da izvrši određene zadatke.
MU Server - Server koji prima sve zahtjeve prema sistemu.
MU monitor – ono što vide obični zaposlenici tehničke podrške – koristi se za pregled dnevnika i postavljanje zadataka za ažuriranje ili druge.

Ispalo je sasvim dobro, po mom mišljenju. Sada se ažuriranja odvijaju gotovo automatski.
Ovako, na primjer, izgleda poruka o grešci nakon ažuriranja; sve ostaje u centru i čeka.

I ovako šaljemo komande klijentskim računarima

Aplikacije sigurno nisu 1C, ali sa prilično pristojnim skupom mogućnosti interfejsa. Na primjer, ovako izgleda odabir po datumu:

Sada su spremni za dalju replikaciju. Pravilno planiranje dalje podrške jedan je od ključnih faktora za dalji uspjeh ovakvih projekata.


Ključne riječi: distribuirano, URDB, XML, registracija, čvor, čvor, automatska registracija, inicijal, slika, POP3, SMTP, MailMessage, periferija, centralno, replikacija, razmjena

Odricanje od odgovornosti i uslovi korišćenja

Svi zaštitni znakovi koji su slučajno spomenuti u ovom članku pripadaju njihovim odgovarajućim vlasnicima.
Ovaj članak je objavljen pod licencom Creative Commons Attribution-Share Alike 3.0 Unported.
http://creativecommons.org/licenses/by-sa/3.0/

Odmah da napomenem da se sve od navedenog odnosi na izdanje platforme 8.0.7.36 i novije.

Korak 1: Kreirajte plan razmjene

U konfiguraciji kreiramo plan razmjene. Nazovimo ga, na primjer, "DistributedBase". Obavezno u
U svojstvima plana razmjene označite polje za potvrdu "Distribuirana baza podataka".

Na kartici „Ostalo“, kliknite na dugme „Kompozicija“ da odredite koji će objekti biti uključeni u razmenu. By
Podrazumevano možete omogućiti sve objekte ("Radnje" - "Omogući sve"). Važna tačka je parametar
"Automatska registracija". Općenito, treba ga omogućiti za sve objekte.

Napomena: prilikom dodavanja novih objekata u konfiguraciju, oni nisu uključeni u plan razmjene. One. poslije
Da biste dodali objekat, on se mora dodati u plan razmene.

Ako želite da neki objekti ne učestvuju u razmjeni, jednostavno ih isključite sa liste
plan razmene. Ali tada kontrola referentnog integriteta ostaje u potpunosti na vašoj savjesti. Ako, do
na primjer, određeni dokument nije uključen u plan razmjene, ali je uključen registar po kojem vrši kretanje,
tada je u prijemnoj bazi podataka sasvim moguće primiti kretanje registra bez dokumenta registratora, koji
Slažem se, nije dobro.

U principu, ove radnje su dovoljne da RDB radi u "ručnom" režimu. Da bismo to uradili pokrećemo
Enterprise, otvorite naš plan zamjene kroz meni "Operacije". Što se tiče razmene, ona je uvek prisutna
unapred definisani čvor "sa tačkom". Ovo je opis trenutnog čvora. Treba ga otvoriti i napuniti. U našem
U tom slučaju će biti dostupna polja „Šifra“ i „Naziv“. Dodijelimo kod "AA" našem čvoru i nazovemo ga
"Centralni". Dodajmo jedan čvor u plan razmjene. Dodijelimo mu šifru "BB" i nazovimo ga "Periferija".

Sada možemo kreirati sliku periferne baze. To se radi klikom na dugme "Kreiraj početni".
slika". Periferna baza mora biti odabrana na listi čvorova. Slika baze podataka se kreira u obliku gotove informacione sigurnosti
u katalogu ili na serveru 1C:Enterprise. (za razliku od 7.7, gdje je slika sigurnosti informacija kreirana kao datoteka
istovar). Zatim se kreirana baza podataka može premjestiti na željenu lokaciju jednostavnim kopiranjem datoteke 1CV8.1CD
(za verziju datoteke) ili putem konfiguratora putem učitavanja i preuzimanja podataka.

Ako otvorite plan razmjene u sistemu periferne informacione sigurnosti, vidjet ćete da je čvor „sa tačkom“, tj. struja
“Periferni” čvor je postao čvor, a ikona “Centralnog” čvora je postala crvena, tj. čvor
"Centralni" je glavni čvor u odnosu na trenutni.

Razmjena u "ručnom" načinu rada može se izvršiti pomoću dugmadi "Upiši izmjene" i "Čitanje".
promjene". U prvom slučaju, od vas će biti zatraženo da odaberete datoteku u koju će promjene biti upisane, u drugom
- fajl iz kojeg će se čitati promjene. Razmjena se vrši u xml formatu. Promjene se bilježe za
odabrani čvor.

Korak 2: Učitajte promjene u XML datoteku i pošaljite putem e-pošte

Tako smo napravili plan razmjene, kreirali periferni sistem sigurnosti informacija, pa čak i naučili kako prenositi podatke između njih
baze. Sada je naš zadatak da naučimo baze podataka da se razmjenjuju putem e-pošte.

Planu razmjene dodajemo dva detalja: adresu e-pošte tipa "string" i tipa "izvrši razmjenu"
"boolean". U E-mail adresu ćemo pohraniti email adresu čvora, tj. adresu na kojoj ćemo biti
slati poruke za razmjenu. Props ExecuteExchange je potreban za brzo onemogućavanje automatskog
slanje-slanje poruka.

Učinimo proceduru za rad sa emailom univerzalnom, tj. hajde da to omogućimo
korištenje oba MAPI (slanje-primanje putem e-mail klijenta, na primjer, MS Outlook) i
direktan pristup SMTP/POP3 serverima.

Dodajmo nekoliko konstanti u konfiguraciju:

Negdje u općem obliku pružamo uređivanje vrijednosti ovih konstanti.

Hajde da dodamo zajednički modul, nazovimo ga "rbDistributedBase". U njemu pišemo:

Procedura rbSendExchangeMessages() Izvoz UseSMTP = Constants.UseSMTPExchange.Receive(); //Prvo kreiramo Mail objekat, koji će, u zavisnosti od podešavanja, biti tipa InternetMail, //ako se koristi direktan pristup serverima ili Mail ako se koristi MAPI. Ako Koristi SMTP Onda //Za objekt tipa InternetMail, kreirajte i popunite mail profil. MailProfile = Novi InternetMailProfile; MailProfile.SMTPServerAddress = Constants.SMTPExchangeServerAddress.Get(); MailProfile.SMTPPort = Constants.SMTPExchangeServerPort.Receive(); MailProfile.SMTPUser = Constants.SMTPExchangeServerUser.Receive(); MailProfile.SMTP Password = Constants.SMTPExchangeUserPassword.Receive(); MailProfile.WaitTime = Constants.ServerWaitTime.Get(); Mail = Nova InternetMail(); Pokušaj Mail.Connect(MailProfile); Izvještaj o izuzetku (" RAZMJENA: Greška pri povezivanju sa mail profilom! Razmjena nije uspjela!" + ErrorDescription(), MessageStatus.VeryImportant); Povratak; EndAttempt; Inače Mail = Nova pošta(); Pokušaj Mail.Connect(); Izvještaj o izuzetku("" + ErrorDescription(), MessageStatus.VeryImportant); Povratak; EndAttempt; EndIf ; //Dalje, izaberite sve čvorove iz plana razmene, osim trenutnog, //koji imaju postavljen atribut Perform Exchange. SelectionNodes = ExchangePlans.DistributedBase.Select(); Dok SelectNodes.Next() Loop If Not SelectNodes.PerformExchange then Continue; endIf; Ako SelectionNodes.Link = ExchangePlans.DistributedBase.ThisNode() Onda nastavi; endIf; Elektronska adresa = AbbrLP(Čvorovi odabira.Elektronska adresa); Ako je EmailAddress = "" Onda Nastavi; endIf; //Koristeći objekte XML Record i Message Record, bilježimo promjene //za odabrani čvor u xml datoteci.Čvor = SelectionNodes.Link; XMLRecord = NewXMLRecord(); MessageFileName = TemporaryFileDirectory() + "Message_" + SkraćeniLP(ExchangePlans.DistributedBase.ThisNode().Code) + "_ " + Skraćeni LP(Node.Code) + ".xml "; EntryXML.OpenFile(MessageFileName); MessageRecord = ExchangePlans.CreateMessageRecord(); MessageRecord.StartRecord(XMLRecord, Čvor); ExchangePlans.WriteChanges(WriteMessage); WriteMessage.FinishRecord(); WriteXML.Close(); //Tada kreiramo novo slovo, priložimo mu rezultirajuću xml datoteku i //pošalji na adresu navedenu u adresi e-pošte čvora. Fajl = Nova datoteka(MessageFileName); Predmet poruke = "1C:Exchange" + Abbr.LP(ExchangePlans.DistributedBase.ThisNode().Code) + "_" + Abbr.LP(Node.Code); Ako UseSMTP onda MailMessage = Nova InternetMailMessage; MailMessage.Subject = MessageSubject; MailMessage.Attachments.Add(MessageFileName, File.Name); MailMessage.Recipients.Add(EmailAddress); Mail.Send(MailMessage); Else MailMessage = nova MailMessage; MailMessage.Subject = MessageSubject; MailMessage.Attachments.Add(MessageFileName); MailMessage.Recipients.Add(EmailAddress); Mail.Send(MailMessage, False); endIf; Ako Constants.OutputExchangeMessages.Get() Onda Report(" RAZMJENA: Razmjena poruke za čvor" + Node.Name + " poslano! ", MessageStatus.Information); EndIf; DeleteFiles(MessageFileName); EndCycle; Mail.Disconnect(); EndProcedure

Preporučujem da dodate dodatni panel u interfejs, na čijem jednom od tastera možete da pozovete ovo
procedure. Sada ostaje samo da pokrenete Enterprise, konfigurišete email adresu periferne informacione sigurnosti,
označite polje "Exchange", kliknite na dugme procedure na panelu i pokrenite da primate poštu za
naveden email adrese. Trebali biste dobiti pismo sa temom "1C:Exchange AA_BB" i priloženom datotekom
"Message_AA_BB.xml".

Dakle, pola posla je obavljeno: naučili smo G8 da šalje RDB poruke za razmjenu putem e-pošte
mail.

Korak 3. Primajte ažuriranja putem e-pošte i zabilježite ih u informacijskoj sigurnosti

Sada napravimo obrnuti postupak: primanje ažuriranja putem e-pošte i njihovo snimanje u informacijskoj sigurnosti.

Parametrima sesije dodajte parametar „Razmjena distribuirane baze podataka u toku” Booleovog tipa. Objasniću to u nastavku
zakazivanje.

Dodajmo sljedeću proceduru zajedničkom modulu rbDistributedBase:

Procedura rbGetExchangeMessages() Izvoz UseSMTP = Constants.UseSMTPExchange.Receive(); //baš kao u proceduri rbSendExchangeMessages(), prvo kreirajte objekat Mail Ako koristite SMTP onda MailProfile = Novi InternetMailProfile; MailProfile.POP3ServerAddress = Constants.POP3ExchangeServerAddress.Get(); MailProfile.POP3Port = Constants.POP3ExchangeServerPort.Get(); MailProfile.User = Constants.POP3ExchangeServerUser.Get(); MailProfile.Password = Constants.UserPasswordPOP3Exchange.Receive(); MailProfile.WaitTime = Constants.ServerWaitTime.Get(); Mail = Nova InternetMail(); Pokušaj Mail.Connect(MailProfile); Izvještaj o izuzetku (" RAZMJENA: Greška pri povezivanju sa mail profilom! |Razmjena nije uspjela!", MessageStatus.VeryImportant); Povratak; EndAttempt; Inače Mail = Nova pošta(); Pokušaj Mail.Connect(); Izvještaj o izuzetku(" RAZMJENA: Greška pri povezivanju na profil e-pošte korisnika! |Razmjena nije uspjela!", MessageStatus.VeryImportant); Return; EndAttempt; EndIf; MessageArray = New Array; Ako UseSMTP onda AllMessages = Mail.Select(False); Inače AllMessages = Mail.Select(False, False); EndIf; //Izaberite među svim slovima ona koja imaju naslov “1C:Exchange”. //Mala, ali važna napomena: // vjerujemo da su sva primljena pisma sa temom "1C:Exchange" namijenjena //tačno za trenutni čvor, //these. da različiti čvorovi u smislu razmjene imaju RAZLIČITE adrese e-pošte. Za svaku poruku iz svih poruka ciklus Ako Leo (Poruka. Predmet, 8 )<>"1C:Exchange" Zatim Nastavite; endIf; TryMessageArray.Add(Message); //Spremite prilog e-pošte na disk. //Za sada ćemo pažljivu provjeru priloga ostaviti iza scene. Prilog = Poruka.Prilozi; MessageFileName = TemporaryFileDirectory() + Attachment.Name; ExchangeData = Attachment.Data; ExchangeData.Write(MessageFileName); //Upotrebom objekata XMLReader i MessageReader čitamo podatke //ažuriranja iz sačuvane datoteke. Prije snimanja ažuriranja u informacijskoj sigurnosti //postavimo parametar sesije Distributed Database Exchange in Progress na True. //Onda čitamo promjene u informacijskoj sigurnosti: Exchange Plans.ReadChanges(ReadMessage). //U isto vrijeme, spremamo poruke u niz tako da ih kasnije možemo izbrisati sve odjednom. ReadXML = novi ReadXML(); ReadXML.OpenFile(MessageFileName); MessageReader = ExchangePlans.CreateMessageReader(); ReadMessage.StartReading(ReadingXML); SessionParameters.DistributedBaseExchange u toku = Tačno; ExchangePlans.ReadChanges(ReadMessage); ReadMessage.FinishReading(); ReadXML.Close(); Ako Constants.OutputExchangeMessages.Get() Onda Report(" RAZMJENA: Podaci o razmjeni prihvaćeni",MessageStatus.Information); EndIf; Izvještaj o izuzetku(" RAZMJENA: Greška prilikom prijema podataka razmjene:" + ErrorDescription(), MessageStatus.VeryImportant); EndAttempt; //Nakon što je čitanje podataka o razmjeni završeno, vratite se //parametar sesije DistributedBase Exchange je u toku je postavljen na False. SessionParameters.DistributedBaseExchange u toku = False; Pokušaj brisanja datoteka(MessageFileName); Izuzetak //ako ne uspije, dobro EndAttempt; EndCycle; Ako koristite SMTP onda Mail.DeleteMessages(MessageArray); endIf; Mail.Disconnect(); Kraj procedure

Sada o tome za šta je potreban parametar sesije Distributed Database Exchange In Progress.
Činjenica je da se prilikom čitanja podataka pomoću metode ExchangePlans.ReadChanges() vrši poziv
procedure rukovanja za događaj BeforeWrite() modificiranih/dodanih objekata. I ako prilikom snimanja
bilo kojeg objekta u proceduri rukovaoca, parametar Odbacivanje će tada biti postavljen na Tačno
prilikom izvršavanja ExchangePlans.ReadChanges() doći će do izuzetka i, shodno tome, razmjena
neće biti izvršena. Vrijednost parametra sesije DistributedBase Exchange u toku može biti
analizirati u procedurama rukovaoca kako bi se izbjegla takva situacija.
S izdavanjem 12. izdanja (iako možda griješim u vezi sa verzijama), relevantnost ove metode je donekle
deprecatedA, budući da objekti sada imaju svojstvo Opcije razmjene, od koga, u svom. Ovo svojstvo je postavljeno na True kada
čuvanje podataka putem plana dijeljenja.

Sada u interfejs na našem panelu dodajemo još jedno dugme na koje visimo poziv za ovo
procedure. Pokrenimo Enterprise i uživajmo.
Gotovo sve je urađeno, ostalo je samo malo: da se naše procedure pokrenu automatski.
Korak 4. Podešavanje automatske razmene

Dakle, skoro smo blizu cilja naše priče. Ostao je samo jedan korak: lansiranje
obavljanje postupaka razmjene automatski. Hajde da počnemo.

Dodajmo konstantu, DistributedBase Autoexchange Interval, tipa Broj(5,0).

Dodajmo parametar Izvrši razmjenu distribuirane baze podataka korisničkim postavkama. Za konfiguraciju
"Upravljanje trgovinom" se radi ovako:

* U plan karakteristika tipova "Korisničke postavke" dodaćemo unapred definisane
karakteristika Izvršite razmjenu distribuiranih baza podataka tipa Boolean.
* U obliku stavke direktorija "Korisnici" postavljamo promjenu ovog parametra (ovako
može se izvršiti u modulu forme, po analogiji sa ostalim parametrima).

Dodajte proceduru u modul rbDistributedBase:

Procedura rbPerformExchange(user) Izvoz Ako npGetDefaultValue(user, "") Onda rbGetExchangeMessages(); rbSendExchangeMessages(); endIf; Kraj procedure

na modul aplikacije:

Procedura CheckConnectionAutoExchange() Izvoz Ako je npGetDefaultValue(chCurrentUser, " Izvršiti razmjenu distribuiranih baza podataka") I Constants.DistributedBaseAutoExchangeInterval.Get() > 0 Zatim ConnectWaitHandler(" Izvršite automatsku razmjenu", Constants.DistributedBaseAutoExchangeInterval.Get()); U suprotnom, DisableWaitHandler(" Izvršite automatsku razmjenu"); EndIf; EndProcedure Procedure ExecuteAutoExchange() Izvezi rbExchange(glCurrentUser); DisableWaitHandler(" Izvršite automatsku razmjenu"); Ako je npGetDefaultValue(chCurrentUser, " Izvršiti razmjenu distribuiranih baza podataka") I Constants.DistributedBaseAutoExchangeInterval.Get() > 0 Zatim ConnectWaitHandler(" Izvršite automatsku razmjenu", Constants.DistributedBaseAutoExchangeInterval.Get()); EndIf; EndProcedure Procedure DisableAutoExchange() Izvoz DisableWaitHandler(" Izvršite automatsku razmjenu"); EndProcedure

Dodajte sljedeće linije u proceduru WhenSystemStart() aplikacijskog modula:

(nakon spajanja komercijalne opreme)
...
SessionParameters.DistributedBaseExchange u toku = False; CheckAutoExchangeConnection();

Dodajmo još nekoliko dugmadi na naš panel za kontrolu procesa: dodajte proceduru jednom
CheckConnectAutoExchange(), s druge strane - DisableAutoExchange()

Pokrećemo preduzeće, konfigurišemo korisnička svojstva i interval automatske razmene i to je to!

Sada, prilikom ulaska u bazu podataka pod ovim najviše konfigurisanim korisnikom, rukovalac će biti pokrenut
čeka ExecuteAutoExchange(). Naravno, također morate konfigurirati korisnika u perifernoj bazi podataka
za razmjenu.

Još jedna mala, ali važna napomena:

U svoj ljepoti koju smo stvorili, postoji jedan problem: promjena konfiguracije. At
Kada periferna baza primi poruku koja sadrži promjene konfiguracije, ona
će biti prihvaćeno, ali će se dogoditi izuzetak. U ovom slučaju, promijenjena konfiguracija će biti
napunjeno. Da ažurirate konfiguraciju baze podataka, morate izbaciti sve korisnike, idite na
konfigurator i ažurirajte konfiguraciju baze podataka (dobro je prenijeti podatke prije nego što to učinite). TO
Nažalost, ovo je nužno zlo. Možete malo olakšati svoj život pisanjem kratkog bat fajla
ovako nešto:

1cv8.exe CONFIG /F<путь к ИБ>/N<Пользователь>/P<Пароль>/UpdateIBCfg

I još jedna napomena:

Nažalost, xml datoteke nisu kompaktne, ali su, na sreću, savršeno komprimirane. Moguće u
procedure za slanje i primanje poruka, dodati pakovanje i raspakivanje fajlova. COLOR="#666666">Ovo se može uraditi ili sa eksternim arhivatorom, ili pomoću VK-a, na primjer Wheel.AddIn
(http://1c.proclub.ru/modules/mydownloads/personal.php?cid=81&lid=2714) .
Izlaskom 10. (izgleda) izdanja, prethodni prijedlog je pomalo zastario, budući da je platforma
Postojali su ugrađeni alati za kompresiju datoteka koristeći ZIP algoritam. One. sada je moguće komprimirati datoteke
bez korišćenja VK.

Često se javlja situacija kada organizacija ima nekoliko filijala ili maloprodajnih objekata koji su geografski udaljeni jedno od drugog. Međutim, ostaje potreba da se održavaju dosljedne evidencije u cijeloj organizaciji. Jedna od opcija za rješavanje ovog problema je stvaranje objedinjene mreže, koja će uključivati ​​automatizirane radne stanice svih filijala i hostirati 1C informacijsku bazu na javnom serveru. Ova metoda može biti tehnički složena i skupa. Osim toga, javlja se niz pitanja vezanih za sigurnost informacija.

Druga opcija je kreiranje distribuirane informacione baze (RIB). Distribuirana informacijska baza je hijerarhijska struktura koja se sastoji od zasebnih informacionih baza na platformi 1C:Enterprise, između kojih je organizirana razmjena podataka u svrhu sinhronizacije konfiguracije i podataka. Ove pojedinačne baze podataka nazivaju se RIB čvorovi.

Distribuirana baza podataka može se kreirati na osnovu različitih konfiguracija sistema 1C:Enterprise. Razmotrimo njegovo stvaranje na primjeru 1C: Upravljanje trgovinom 10.3.

Recimo da se u trgovačkoj organizaciji otvori dodatno maloprodajno mjesto gdje je potrebno imati pristup opštem sistemu trgovanja organizacije. Da biste kreirali RIB, morate izvršiti sljedeće korake:


Time je dovršeno stvaranje distribuirane baze podataka. Za razmjenu informacija potrebno je započeti razmjenu podataka u Centralnoj bazi podataka (preuzet će se promjene koje su se u njoj dogodile), zatim u prodavnici (preuzet će se promjene iz centralne baze i preuzeti promjene koje su se dogodile u trgovini ), i opet u centralnu bazu podataka (u nju će se preuzeti promjene, nastale u trgovini).

Distribuirane informacione baze imaju svoj vlastiti mehanizam za rješavanje kolizija. Dakle, ako se tokom razmjene pokaže da je bilo koji objekt (dokument, direktorij, itd.) promijenjen iu glavnoj iu podređenoj bazi podataka, tada će promjena napravljena u glavnoj bazi podataka imati prioritet.

Ako je potrebno promijeniti konfiguraciju distribuirane infobaze, to se mora učiniti u korijenskom čvoru (vidi prvu sliku članka), konfiguracije preostalih čvorova su zaključane. Nakon unošenja potrebnih izmjena, oni se mogu prenijeti na slave čvorove koristeći standardnu ​​proceduru za razmjenu podataka između RIB čvorova. Nakon što se razmjena izvrši u konfiguratoru slave čvora, potrebno je ažurirati konfiguraciju infobaze.

Ako imate problema s postavljanjem distribuirane baze podataka, naši stručnjaci će vam pomoći u postavljanju razmjene podataka i detaljno objasniti kako je koristiti.

Tehnologija distribuiranih informacionih baza (RIB) omogućava vam da kreirate geografski distribuiran sistem zasnovan na konfiguracijama 1C Enterprise. To vam omogućava da imate zajednički informacijski prostor čak i sa onim odjelima koji nemaju pouzdan komunikacijski kanal, kombinirajući visoku autonomiju čvorova sa mogućnošću brze razmjene informacija. U našim člancima ćemo pogledati karakteristike i praktičnu implementaciju ovog mehanizma na platformi 8.2

Prije svega, zapitajmo se: zašto autozamjena? Savremene tehnologije, u kombinaciji sa jeftinim i brzim internetom, omogućavaju organizaciju rada na daljinu bez ikakvih poteškoća. Izbor metoda je širok kao i uvijek: RDP, tanki i web klijenti, povezivanje mreža pomoću VPN-a - ima o čemu razmišljati. Međutim, sve ove metode imaju jedan značajan nedostatak - snažnu ovisnost o kvaliteti komunikacijskog kanala.

Čak i uz idealan rad lokalnog provajdera, nemoguće je garantirati 100% dostupnost komunikacijskog kanala. Problemi sa provajderom kičme, nedostatak napajanja, fizičko oštećenje komunikacijske linije i mnogi drugi faktori čine ovaj zadatak nepremostivim. Istovremeno, nedostupnost baze podataka u udaljenom skladištu ili maloprodaji dovodi do prilično značajnih gubitaka. I na kraju, ne zaboravimo da postoje mjesta (na primjer, industrijske zone na periferiji gradova) gdje je pružanje visokokvalitetnog komunikacijskog kanala skupo i/ili problematično.

Mehanizam RIB omogućava vam da se riješite ovih nedostataka; svako odjeljenje ima svoju kopiju baze podataka s kojom možete samostalno raditi čak iu potpunom odsustvu komunikacije sa vanjskim svijetom. A mala količina prenesenih informacija omogućava vam da koristite bilo koji komunikacijski kanal, uključujući mobilni internet, za razmjenu.

RIB na platformi 8.2 nije nešto suštinski novo, što predstavlja dalji razvoj RIB platforme 7.7, samo što je sada ova tehnologija postala pristupačnija i jednostavnija. Za razliku od RIB komponente, koja se morala kupiti zasebno, RIB je sastavni dio mnogih standardnih konfiguracija i radi u potpunosti u korisničkom modu, što vam omogućava da bez konfiguratora čak i u fazi postavljanja.

U ovom trenutku bi bilo vrijeme da pređemo na praktični dio, ali moramo napraviti još jednu digresiju. Činjenica je da je prelazak na platformu 8.2, koji se čini da se već dogodio, u stvari doveo do pojave dvije vrste konfiguracija: zasnovane na upravljanoj aplikaciji, „nativnoj“ za platformu 8.2 i prilagođenoj sa 8.1, nastavljajući se sa koristiti zastarjele tehnologije i mehanizme. Budući da je značajan dio konfiguracija (Enterprise Accounting, Payroll i HR Management) prilagođen ili prelazni, one se ne mogu odbaciti, pa će prvi dio našeg članka biti posvećen ovim konfiguracijama (u suštini platforma 8.1), dok će u drugom ispitaćemo podešavanje automatske razmene za konfiguracije zasnovane na upravljanoj aplikaciji (platforma 8.2).

Razmotrimo praktičan zadatak: postavljanje automatske razmjene putem FTP-a za konfiguraciju Enterprise Accounting 2.0. Unatoč činjenici da RIB omogućava razmjenu putem e-pošte ili dijeljenja datoteka, preporučujemo korištenje FTP-a kao najjednostavnijeg i najpouzdanijeg načina komunikacije. Možete pročitati kako postaviti vlastiti FTP server ili možete koristiti FTP uslugu bilo kojeg hosting provajdera.

Prije svega, moramo konfigurirati čvorove za razmjenu. Da biste to učinili, pokrenite konfiguraciju s administratorskim pravima i odaberite Transakcije - Planovi razmjene.

Na listi koja se pojavi odaberite Pun plan ili Po organizaciji, ako se u jednoj bazi podataka vodi evidencija za više preduzeća, a razmjenu je potrebno izvršiti samo za jedno od njih. U prozoru koji se otvori već postoji jedan čvor - centralni, trebamo ga urediti navođenjem koda i imena.

Zatim ćemo kreirati još jedan čvor za granu, ispunjavajući ga na isti način (da biste dodali, kliknite na zeleni krug sa plusom). Sljedeći korak je kreiranje početne slike za ovaj čvor, koji je gotova baza podataka u načinu rada datoteke. Da biste to uradili, kliknite desnim tasterom miša na željeni čvor i izaberite sa padajuće liste Kreirajte početnu sliku.

Sada idemo dalje Usluga - Distribuirana baza informacija (DIB) - Konfigurirajte RIB čvorove.

U prozoru koji se otvori kliknite na dugme Dodati i konfigurirajte novu razmjenu specificirajući udaljeni host, tip razmjene (preko FTP-a) i parametre veze sa serverom.

Bookmark Automatska razmjena omogućava postavljanje rasporeda razmjene, razmjene po događajima (početak i kraj rada itd.), ova podešavanja se vrše za korisnika u čije ime će se vršiti razmjena, pa se uvjerite da ima prava na razmjenu podataka.

Ne zaboravite da navedete prefiks čvora za numerisanje dokumenata (inače ćete dobiti različite dokumente sa istim brojevima) u Alati - Postavke programa; ovdje možete konfigurirati i neke druge parametre razmjene. Na istoj kartici treba da izaberete korisnika za obavljanje zadataka razmene; ako to ne uradite, raspored neće raditi. Zapamtite da će razmjena biti izvršena samo ako je korisnik prijavljen u program.

Ovim je završena konfiguracija centralnog čvora; sada morate napraviti slična podešavanja za periferni čvor, povezujući početnu sliku kao postojeći sistem zaštite informacija. Nakon toga možete početi s razmjenom podataka. Za kontrolu trebate koristiti Monitor komunikacije, omogućava vam ne samo praćenje uspješnosti upload-a/download-a, već i prikazuje sve nastale kolizije ili odložena kretanja (ako korisnik koji je izvršio razmjenu nema dovoljno prava da izvrši bilo koju radnju u bazi podataka). Prisutnost ovog alata omogućava vam da brzo i efikasno riješite različite vrste problema koji nastaju prilikom autorazmjene.

U ovom trenutku, podešavanje razmjene se može smatrati završenim i možete početi raditi u distribuiranom načinu. Vrijedi se posebno zadržati na ažuriranju ili izmjenama konfiguracije. Ove akcije su dostupne samo na centralnom čvoru; sve promjene će se automatski prenijeti na periferne čvorove tokom sljedeće razmjene. Da bi se izmjene izvršile automatski, periferna baza podataka mora biti u ekskluzivnom načinu, inače ćete morati pokrenuti Konfigurator i izvršiti Ažuriranje konfiguracije baze podataka ručno.

Da biste kreirali distribuiranu bazu podataka, morate ući u program u 1C: Enterprise modu. Da kreirate čvorove distribuirane baze podataka, izaberite iz menija: Operacije - Planovi razmene. Otvoriće se prozor “Odaberi objekat: Exchange plan”.


1. Razmotrite opciju sa „Punim“ planom razmene.

Razmjena će se vršiti u svim organizacijama koje se nalaze u distribuiranoj informacijskoj bazi.

Odaberimo "Puni" plan zamjene. Otvoriće se prozor „Pun plan razmene“.

Popunjavamo dva unosa:

Nazovimo prvi unos "Glavni čvor", označimo kod "GU",

Nazovimo drugi unos „Podređeni čvor“, naznačimo kod „PU“.

Kao što vidimo sa slike, prvi unos ima ikonu sa zelenim krugom; ovo je ikona „Glavni čvor“.


Da biste kreirali kopiju baze informacija „Glavni čvor“, kliknite na „Slave node“ i kliknite na ikonu „Kreiraj početnu sliku“. Ovo će biti baza informacija “Podređeni čvor”.


Otvorit će se prozor “Kreiranje početne slike sigurnosti informacija”, odaberite “Na ovom računaru ili na računaru na lokalnoj mreži”, kliknite “Dalje”.


U polju “Infobase Directory” izaberite lokaciju na kojoj će biti instalirana kopija “Glavnog čvora” i kliknite na “Finish”.


Nakon kreiranja infobaze “Podređeni čvor”, pojavit će se sljedeća poruka:


Kliknite na “OK”.

Dodajte informacijsku bazu „Podređeni čvor“ u „1C: Enterprise“. Idemo u podređenu bazu podataka u režimu "1C: Enterprise". Otvaramo: Operacije - Planovi razmjene. Otvoriće se prozor “Odaberi objekat: Exchange plan”. Odaberimo "Puni" plan zamjene. Otvoriće se prozor „Pun plan razmene“. Vidimo da je ikona “Glavni čvor” narandžasta, što znači da je ovaj čvor glavni čvor za informacijsku bazu u kojoj se nalazimo.


Izrađujemo sljedeće postavke i u Master i Slave čvoru:

1. Dodajte prefiks za distribuiranu bazu podataka.

To se radi kako ne bi došlo do sukoba u brojevima i šiframa dokumenata i imenika kreiranih u dvije baze podataka, pa u svakoj bazi naznačimo prefiks koji će se dodati brojevima dokumenata i šiframa imenika. Otvorite: Alati - Postavke programa - kartica “Razmjena podataka”. U polje “Prefiks čvora za distribuiranu infobazu:” unesite “PU” u podređenu bazu podataka i “GU” u glavnu bazu podataka.


2. Dodajte postavku za razmjenu podataka između čvorova:

Otvorite: Usluga - Distribuirana informacijska baza (DIB) - Konfigurirajte RIB čvorove. Otvoriće se prozor “Postavke razmjene podataka”.


Kliknite na “Dodaj” i otvoriće se prozor “Postavke razmjene podataka”. Unesite “Naziv” vaše postavke.


Čvor će se automatski pojaviti u polju “Čvor”, za “Master čvor” će postojati “Slave čvor”, za “Slave čvor” će postojati “Master čvor”.

U polju “Directory” odaberite folder u koji će se slati podaci razmjene; ​​najbolje je odrediti jedan direktorij za glavnu i slave bazu podataka.

U polju „Tip razmjene“ konfiguriramo prijenos podataka između baza podataka: putem datoteke ili FTP resursa. Odaberimo, na primjer, "dijeljenje putem resursa datoteke".

U preostalim poljima ne mijenjamo ništa.

Kliknite na “OK”. Vidimo da se pojavila postavka.

3. Za razmjenu podataka radimo sljedeće:

Prvo, u bazi podataka u kojoj su izvršene promjene kliknite na ikonu „Razmjena prema trenutnoj postavci“, kao što je prikazano na slici.


Nakon učitavanja, pojavit će se prozor rezultata otpremanja.


Zatim u bazi podataka u koju želite prenijeti promjene kliknite na ikonu “Razmjena prema trenutnoj postavci” i podaci će otići u željenu bazu podataka.

2. Razmotrite opciju sa planom razmene „Po organizaciji“.

Razmjena će se vršiti između odabranih organizacija koje se nalaze u distribuiranoj informacijskoj bazi.

Da kreirate čvorove distribuirane baze podataka, izaberite iz menija: Operacije - Planovi razmene. Otvoriće se prozor “Odaberi objekat: Exchange plan”.


Odaberimo plan razmjene “Po organizaciji”. Otvoriće se prozor “Plan razmjene po organizaciji”.

Popunjavamo dva unosa:

Nazovimo prvi unos “Glavni čvor”, označimo šifru “GU”, vidimo razliku u odnosu na “Plan razmjene: pun”, pojavila se tabela u kojoj označavamo organizacije za koje će se vršiti razmjena.

Nazovimo drugi unos "Podređeni čvor", označimo šifru "PU", označimo organizaciju.


U svim ostalim aspektima, postavka je potpuno ista kao kod „Plana razmjene: puna“.