Apmaiņas organizēšana ar filiāles (mazumtirdzniecības veikala) bāzi tirdzniecības tīklā, izmantojot XML (universālā birža). Plānotā apmaiņa, izmantojot standarta 1C 8.3 rīkus, apmaiņas plāna izveides piemērs

Automatizētās sistēmas Vairumā gadījumu pārvaldības sistēmas sastāv no atsevišķām datu bāzēm un bieži vien tām ir ģeogrāfiski sadalīta struktūra. Tajā pašā laikā pareizi īstenota datu apmaiņa ir nepieciešams nosacījums efektīvs darbsšādas sistēmas.

Sākotnējai apmaiņas iestatīšanai var būt nepieciešamas vairākas darbības ne tikai programmēšanas, bet arī konsultāciju ziņā, pat ja mums ir darīšana ar viendabīgiem avotiem, kā tas ir ar produktiem platformā 1C:Enterprise. Kāpēc 1C apmaiņas iestatīšana (vai, kā to sauc arī, datu sinhronizācija 1C 8.3) var kļūt par laikietilpīgāko un dārgāko integrācijas projekta uzdevumu, mēs apsvērsim šajā rakstā.

Datu apmaiņa 1C vidē ļauj:

  • Novērst divkāršu dokumentu ievadīšanu;
  • Automatizēt saistītos biznesa procesus;
  • Optimizēt mijiedarbību starp sadalītajām nodaļām;
  • Operatīvi atjaunināt datus dažādu nodaļu speciālistu darbam;
  • "Robežot" dažādi veidi grāmatvedība.*

*Gadījumos, kad viena grāmatvedības veida dati būtiski atšķiras no cita, nepieciešams nodrošināt informācijas konfidencialitāti un “ierobežot” informācijas plūsmas. Piemēram, datu apmaiņai starp 1C UT un 1C Accounting nav nepieciešams augšupielādēt pārvaldības datus regulējošās grāmatvedības datubāzē, t.i. sinhronizācija 1C šeit būs nepilnīga.

Ja iedomājamies standarta primārās datu apmaiņas ieviešanas procesu, kad vismaz viens no tā objektiem ir 1C produkts, tad mēs varam atšķirt šādus posmus:

  • Biržas sastāva saskaņošana;
  • Transporta definīcija (apmaiņas protokoli);
  • Noteikumu iestatīšana;
  • Plānošana.

1C apmaiņas sastāva identificēšana

Apmaiņas objektus var iedalīt “avotā” un “uztvērējā”. Tajā pašā laikā viņi var vienlaikus pildīt divas lomas, kas tiks saukta par divvirzienu apmaiņu. Avota un galamērķa noteikšana notiek loģiskā veidā, atkarībā no nepieciešamības vai nepieciešamības funkcionalitāte sistēmas.*

*Piemēram, integrējot “WA: Financier” - risinājumu finanšu uzskaites uzturēšanai un kases procesu vadīšanai, kas izstrādāts uz “1C:Enterprise” bāzes, WiseAdvice eksperti iesaka to kā galveno sistēmu. Tas ir saistīts ar kontroles rīku klātbūtni, lai ievērotu pieteikšanās politikas noteikumus un attiecīgi nodrošinātu risinājuma efektivitāti.

Tālāk, pamatojoties uz saņemtajām un reģistrētajām prasībām no lietotājiem, tiek izveidots apmaiņas datu saraksts, noteikts tā apjoms, prasības apmaiņas biežumam, kā arī noteikts darba ar kļūdām un ārkārtas situāciju (sadursmju) risināšanas process.

Tajā pašā posmā atkarībā no esošo sistēmu flotes un uzņēmuma struktūras tiek noteikts apmaiņas formāts:

Izplatīts informācijas bāze

  • RIB nozīmē apmaiņu starp identiskas konfigurācijas 1C datu bāzes ar skaidru "galveno un vergu" pārvaldības struktūru katram apmaiņas pārim. Kā tehnoloģiskās platformas elements RIB papildus datiem var pārsūtīt datu bāzes konfigurācijas izmaiņas un administratīvo informāciju (bet tikai no galvenā uz vergu).

Universāla datu apmaiņa 1C

  • Mehānisms, kas ļauj konfigurēt 1C datu bāzu apmaiņu gan ar konfigurācijām platformā 1C:Enterprise, gan ar trešo pušu sistēmām. Apmaiņa tiek veikta, pārsūtot datus universālā xml formātā saskaņā ar “Apmaiņas plāniem”.

EnterpriseData

  • Jaunākā 1C izstrāde, kas izstrādāta, lai īstenotu datu apmaiņu xml formātā starp produktiem, kas izveidoti platformā 1C:Enterprise ar jebkuru automatizācijas sistēmu. EnterpriseData izmantošana vienkāršo ar apmaiņu saistītās modifikācijas. Iepriekš, kad sistēmā tika iekļauta jauna konfigurācija, bija nepieciešams ieviest datu importēšanas un eksportēšanas mehānismu gan tai, gan esošajām sistēmām. Tagad sistēmām, kas atbalsta EnterpriseData, nekādas modifikācijas nav vajadzīgas, jo tām ir tikai viens ieejas-izejas punkts.

Transporta definīcija (apmaiņas protokoli)

Sistēma platformā 1C:Enterprise 8 nodrošina plašas iespējas organizēt apmaiņu ar jebkuru informācijas resursi caur vispārpieņemtu universālie standarti(xml, teksta faili, Excel, ADO savienojums utt.). Tāpēc, nosakot datu apmaiņas transportu, jums jāpaļaujas uz trešās puses sistēmas datu bāzes iespējām.

Direktoriju sinhronizācija

Katalogu efektīvas sinhronizācijas pamatprincips ir viena ieejas punkta klātbūtne. Bet, ja mēs runājam par darbu ar direktorijiem, kas vēsturiski ir aizpildīti saskaņā ar dažādiem noteikumiem, ir skaidri jādefinē sinhronizācijas lauki, lai apmaiņa nonāktu pie “kopsaucēja”.*

*Šajā posmā var būt nepieciešams veikt darbu, lai normalizētu atsauces datus datu avota pusē. Atkarībā no direktoriju stāvokļa un to apjoma elementu salīdzināšanas, kļūdu un dublikātu atpazīšanas, identificēšanas, kā arī trūkstošo lauku aizpildīšanas un sinhronizācijas lauku piešķiršanas process var prasīt veselas ekspertu grupas darbu gan daļa no integratora (pamatdatu normalizācijas tehnikas īpašnieks) un no klienta puses.

Noteikumu iestatīšana

Iespēja attēlot datus no avota sistēmām uztvērējos ir atkarīga no pareizi definētiem apmaiņas noteikumiem. Noteikumi, kas iesniegti xml formātā, regulē avota-uztvērēja objektu galveno detaļu atbilstību. 1C:Data Conversion risinājums ir paredzēts, lai automatizētu noteikumu izveidi gan vienreizējas, gan pastāvīgas apmaiņas ieviešanai.

Garantē, ka apmaiņas apmaiņas plāna laikā netiks zaudēti dati. Šī ir jebkuras platformas 1C:Enterprise konfigurācijas neatņemama sastāvdaļa, kas pilnībā apraksta 1C apmaiņas procedūru: datu sastāvu (dokumenti ar “identificējošām” detaļām) un mezglus (uztvērēja-raidītāja informācijas bāzes), kā arī RIB aktivizēšanu izvēlētie maiņas virzieni.

Jebkuras izmaiņas apmaiņas plānā ievadītajos datos tiek reģistrētas un saņem zīmi “mainīts”. Kamēr mainītie dati nesakrīt viens ar otru uztvērēja-raidītāja mezglos, zīme netiks atiestatīta, un sistēma nosūtīs kontroles ziņojumus abiem mezgliem. Pēc datu augšupielādes un to pilnīgas atbilstības apstiprināšanas abās sistēmās zīme tiek atiestatīta.

Apmaiņas grafiks 1C

Lai automatizētu regulāru apmaiņu, tiek iestatīts datu augšupielādes biežums. Apmaiņas biežums ir atkarīgs no nepieciešamības un tehniskajām iespējām. Turklāt platformas 1C:Enterprise konfigurācijas ļauj konfigurēt datu apmaiņu, kad notiek notikums.

Ņemot vērā standarta apmaiņas ieviešanas procesu, pievērsīsim uzmanību faktoriem, kuriem būs nepieciešami uzlabojumi dažādos posmos:

  • Nestandarta, ļoti modificētas datu bāzes konfigurācijas;
  • dažādas platformas 1C:Enterprise versijas;
  • Nav atjaunināts ilgu laiku, nē pašreizējās versijas konfigurācijas;
  • Apmaiņas objekti, kas iepriekš ir tikuši modificēti;
  • Nepieciešamība pēc nestandarta maiņas noteikumiem;
  • Ļoti atšķirīgs detaļu komplekts un sastāvs esošajās uzziņu grāmatās.

Tā kā pat standarta darbībām primāro datu apmaiņas ieviešanai ir nepieciešamas ekspertu zināšanas, tās ieteicams veikt, piedaloties 1C speciālistiem. Tikai pēc visu iepriekš aprakstīto darbību veikšanas jums vajadzētu turpināt apmaiņas iestatīšanu konfigurācijā. Apskatīsim datu bāzu integrāciju, izmantojot piemēru 1C:UPP un 1C:Retail (apmaiņa ar 1C:UT tiek iestatīta, izmantojot to pašu shēmu). Standarta sinhronizācijā ir iekļauta arī SCP - SCP apmaiņa, kas raksturīga liela mēroga automatizācijas sistēmām lielākajos rūpniecības uzņēmumos.

Apakšizvēlnē “Pakalpojums” atlasiet “Datu apmaiņa ar produktiem platformā...” (izvēloties tiešo apmaiņu ar “Mazumtirdzniecība”, bieži rodas kļūdas COM objekta līmenī). Pievērsīsim uzmanību dienesta ziņojumam" Šī iespēja nav pieejams."


Lai atrisinātu šo problēmu, jums jāizvēlas "Konfigurēt sakarus"


...un atzīmējiet izvēles rūtiņu. Pēc tam ignorējiet kļūdas ziņojumu.


Datu sinhronizācijas iestatījumos atlasiet “Izveidot apmaiņu ar “Mazumtirdzniecību”...



Pirms savienojuma iestatījumu konfigurēšanas, izmantojot vietējo vai tīkla direktoriju Pārliecinieties, vai diskā ir vieta direktorijai. Lai gan parasti tas neaizņem vairāk par 30-50 MB, izņēmuma gadījumos tas var prasīt līdz 600 MB. Nepieciešamo direktoriju var izveidot tieši no konfiguratora.



Veidojot savienojumu, izmantojot tīkla direktoriju, mēs ignorējam piedāvājumu konfigurēt savienojumu, izmantojot FTP adresi un e-pastu, noklikšķinot uz “Tālāk”.


Iestatījumos mēs manuāli ievadām prefiksus - simboliem datubāzēm (parasti BP, UPP, RO), mēs nosakām noteikumus un datu lejupielādes sākuma datumu. Prefikss tiks norādīts dokumentu nosaukumā, lai norādītu datubāzi, kurā tie izveidoti. Ja augšupielādes noteikumi netiek rediģēti, dati tiks augšupielādēti pēc noklusējuma atbilstoši visiem pieejamajiem parametriem.



Mēs izveidojam apmaiņas iestatījumu failu “Mazumtirdzniecībai”, lai neatkārtotu mūsu darbības. Ja pēc sinhronizācijas iestatīšanas nekavējoties jānosūta dati, atzīmējiet izvēles rūtiņu.


Lai automatizētu apmaiņas procesu, jums ir jāiestata grafiks.


Izvēlne "Mazumtirdzniecība".


Atzīmējiet izvēles rūtiņu un atlasiet “Sinhronizācija”.


Mēs veicam “apgriezto” iestatīšanu, atlasot Ražošanas uzņēmuma pārvaldību.




Ielādējiet UPP izveidoto iestatījumu failu.


Ieliekam ķeksīti, sistēma adresi paņem automātiski.





Mēs rīkojamies tāpat kā UPP.









Testa datu salīdzināšana (ieteicams veikt manuālu datu salīdzināšanu sagatavošanās posms, jo šie darbi var kļūt par darbietilpīgākajiem apmaiņas ieviešanas procesā). Salīdzināšanas logs tiek atvērts līdz veiciet dubultklikšķi pelēm.



Sinhronizācijas kļūdas gadījumā “Detaļas...” tiks aizstāts ar “Nekad...”.


“Detaļas...” atver žurnālu ar atjauninātu informāciju par apmaiņu.


Gatavs.

Apmaiņas plāni 1C 8.3 ir konfigurācijas metadatu objekts, ko izmanto datu sinhronizācijas ieviešanai 1C 8 sistēmā.

Apmaiņas plānu var salīdzināt ar direktoriju, kur elementi ir informācijas bāzes mezgli. Tomēr darbā ar apmaiņas plāniem ir daudz nianšu, par kurām mēs runāsim tālāk.

Parasti apmaiņa 1C tiek veidota, izmantojot īpašus apmaiņas noteikumus, kas tiek veidoti, izmantojot konfigurāciju.

Kā jau minēts iepriekš, apmaiņas plāns ir ļoti līdzīgs parastajam, tāpēc mēs apskatīsim tikai galvenās atšķirības starp apmaiņu.

Kā strādāt ar apmaiņas plānu

Apmaiņas plānā var saglabāt informāciju un izmaiņas apmaiņas plāna elementos, kā arī saglabāt informāciju par numuru pašreizējā ziņa. Kopumā darba shēma ir šāda:

  1. Mēs mainām datus (direktorijus, dokumentus utt.) datu bāzē - apmaiņas plāns atceras izmaiņas. Vai nu pēc automātiskās reģistrācijas, vai pēc programmas koda (piemēram, Exchange Plans.RegisterChanges metode).
  2. Kad pienāks laiks, mēs iegūstam mainīto elementu sarakstu - metodi ReadChanges() un augšupielādējam šos datus.
  3. Augšupielādējot/lejupielādējot, lai izvairītos no sadursmēm, mēs pārbaudām ziņojumu numurus pret apmaiņas plānu. Ja nesakrīt, datu apmaiņu pārtraucam, izmaiņu reģistrāciju atceļam un ziņojuma numuru palielinām.

Saņemiet 267 video nodarbības 1C bez maksas:

Izplatītā informācijas bāze

Ja iestatījumos ir iestatīts šis karodziņš, tad šis apmaiņas plāns ir izplatīta informācijas bāze (RIB).

— ģeogrāfiski sadalīta sistēma, kuras pamatā ir tā pati 1C 8.3 konfigurācija. Papildus datu izmaiņām RIB var arī pārsūtīt konfigurācijas izmaiņas, kas ir ļoti ērti, piemēram, atjauninot konfigurācijas laidienu.

Apmaiņas plāna sastāvs

Iestatījums, ar kuru izstrādātājs pārvalda apmaiņas objektu kopu:

Apmaiņas plānā var būt 3 objekta stāvokļi:

  1. Nav iekļauts apmaiņas plānā- attiecīgi šādam objektam nekādi nevarēsiet konfigurēt datu apmaiņu pēc šī apmaiņas plāna.
  2. Automātiskā reģistrācija noraidīt- tas nozīmē, ka ir nepieciešams reģistrēt izmaiņas konkrētam mezglam, tikai izmantojot programmas kodu saskaņā ar kādu nosacījumu, kā likums, . Tiek izmantota metode Exchange Plans.RegisterChanges().
  3. Automātiskā reģistrācija Atļaut— ja šī izvēles rūtiņa ir atzīmēta, visas elementa izmaiņas automātiski parādīsies apmaiņas plāna izmaiņu sarakstā.

Apmaiņas plāni un 1C veiktspēja

Ņemot vērā apmaiņas plānu īstenošanas sistēmiskās iezīmes, nav ieteicams ļaunprātīgi izmantot izmaiņu augšupielādi saskaņā ar apmaiņas plāniem. Fakts ir tāds, ka, lasot izmaiņas, visas izmaiņu tabulas tiek bloķētas. Tie. Izkraušanas laikā apmaiņas plāns neļauj reģistrēt jaunas izmaiņas, tāpēc bloķē pašus elementus - direktorijus, dokumentus utt.


Atslēgvārdi: izplatīts, URDB, XML, reģistrācija, mezgls, mezgls, automātiskā reģistrācija, sākotnējais, attēls, POP3, SMTP, MailMessage, perifērijas ierīce, centrālā, replikācija, apmaiņa

Atruna un lietošanas noteikumi

Visas šajā rakstā nejauši pieminētās preču zīmes pieder to attiecīgajiem īpašniekiem.
Šis raksts ir publicēts saskaņā ar Creative Commons Attribution-Share Alike 3.0 Unported licenci.
http://creativecommons.org/licenses/by-sa/3.0/

Ļaujiet man nekavējoties atzīmēt, ka viss tālāk minētais attiecas uz platformas 8.0.7.36 un jaunākas versijas izlaišanu.

1. darbība. Izveidojiet apmaiņas plānu

Konfigurācijā veidojam apmaiņas plānu. Sauksim to, piemēram, "DistributedBase". Nepieciešams
Apmaiņas plāna rekvizītos atzīmējiet izvēles rūtiņu "Izplatītā informācijas bāze".

Cilnē "Cits" noklikšķiniet uz pogas "Sastāvs", lai noteiktu, kuri objekti tiks iekļauti apmaiņā. Autors
Pēc noklusējuma jūs varat iespējot visus objektus ("Darbības" - "Iespējot visu"). Svarīgs punkts ir parametrs
"Automātiskā reģistrācija". Kopumā tas ir jāiespējo visiem objektiem.

Piezīme: pievienojot konfigurācijai jaunus objektus, tie netiek iekļauti apmaiņas plānā. Tie. pēc
Lai pievienotu objektu, tas jāpievieno apmaiņas plānam.

Ja vēlaties, lai daži objekti nepiedalītos apmaiņā, vienkārši izslēdziet tos no saraksta
apmaiņas plāns. Bet tad atsauces integritātes kontrole pilnībā paliek uz jūsu sirdsapziņas. Ja, lai
piemēram, apmaiņas plānā nav iekļauts noteikts dokuments, bet ir iekļauts reģistrs, kurā tas veic kustības,
tad saņemošajā datubāzē pilnīgi iespējams saņemt reģistra kustības bez reģistratora dokumenta, kas
Piekrītu, tas nav labi.

Principā ar šīm darbībām pietiek, lai RDB darbotos “manuālā” režīmā. Lai to izdarītu, mēs palaižam
Uzņēmums, atveriet mūsu apmaiņas plānu, izmantojot izvēlni "Operācijas". Apmaiņas ziņā tas vienmēr ir klāt
iepriekš definēts mezgls "ar punktu". Šis ir pašreizējā mezgla apraksts. Tas ir jāatver un jāaizpilda. Mūsu
Šajā gadījumā būs pieejami lauki “Kods” un “Vārds”. Piešķirsim savam mezglam kodu "AA" un nosauksim to
"Centrālā". Pievienosim apmaiņas plānam vienu mezglu. Piešķirsim tam kodu "BB" un nosauksim to par "Perifēro".

Tagad mēs varam izveidot perifērijas bāzes attēlu. To var izdarīt, noklikšķinot uz pogas "Izveidot sākotnējo".
attēls". Mezglu sarakstā ir jāizvēlas perifērā bāze. Datu bāzes attēls tiek izveidots gatavas informācijas drošības formā
katalogā vai serverī 1C:Enterprise. (atšķirībā no 7.7, kur informācijas drošības attēls tika izveidots kā fails
izkraušana). Tālāk izveidoto datu bāzi var pārvietot uz vēlamo vietu, vienkārši nokopējot failu 1CV8.1CD
(faila versijai) vai izmantojot konfiguratoru, augšupielādējot un lejupielādējot datus.

Atverot apmaiņas plānu perifērijas informācijas drošības sistēmā, redzēsiet, ka mezgls ir “ar punktu”, t.i. strāva
mezgls “Perifērais” kļuva par mezglu, bet “Centrālā” mezgla ikona kļuva sarkana, t.i. mezgls
"Centrālais" ir galvenais mezgls attiecībā pret pašreizējo.

Apmaiņu “manuālajā” režīmā var veikt, izmantojot pogas “Rakstīt izmaiņas” un “Lasīt”.
izmaiņas". Pirmajā gadījumā jums tiks lūgts izvēlēties failu, kurā tiks ierakstītas izmaiņas, otrajā gadījumā
- fails, no kura tiks nolasītas izmaiņas. Apmaiņa tiek veikta xml formātā. Izmaiņas tiek reģistrētas
atlasītais mezgls.

2. darbība. Augšupielādējiet izmaiņas XML failā un nosūtiet pa e-pastu

Tāpēc mēs izveidojām apmaiņas plānu, izveidojām perifērijas informācijas drošības sistēmu un pat uzzinājām, kā pārsūtīt datus starp
bāzes. Tagad mūsu uzdevums ir iemācīt bāzes apmainīties pa e-pastu.

Mēs pievienojam apmaiņas plānam divas detaļas: "virknes" tipa e-pasta adrese un tipa "Izpildīt apmaiņu".
"būla". E-pasta adresē mēs saglabāsim mezgla e-pasta adresi, t.i. adrese, uz kuru mēs tiksim
sūtīt apmaiņas ziņas. Props ExecuteExchange ir nepieciešams, lai ātri atspējotu automātisko
ziņu sūtīšana-sūtīšana.

Padarīsim procedūru darbam ar e-pastu universālu, t.i. padarīsim to iespējamu
izmantot kā MAPI (sūtīt-saņemt, izmantojot pasta klients, piemēram, MS Outlook) un
tieša piekļuve SMTP/POP3 serveriem.

Konfigurācijai pievienosim vairākas konstantes:

Kaut kur vispārīgā formā mēs piedāvājam šo konstantu vērtību rediģēšanu.

Pievienosim kopīgu moduli, sauksim to par "rbDistributedBase". Mēs tajā rakstām:

Procedūra rbSendExchangeMessages() Eksportēt UseSMTP = Constants.UseSMTPExchange.Receive(); //Vispirms izveidojam Mail objektu, kas atkarībā no iestatījumiem būs InternetMail tipa, //ja tiek izmantota tieša piekļuve serveriem, vai pasts, ja tiek izmantots MAPI. Ja izmantojiet SMTP, tad //InternetMail tipa objektam izveidojiet un aizpildiet pasta profilu. MailProfile = jauns 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 = jauns interneta pasts(); Mēģināt Mail.Connect(MailProfile); Izņēmuma ziņojums (" EXCHANGE: kļūda, veidojot savienojumu ar pasta profils ! Apmaiņa neizdevās!" + ErrorDescription(), MessageStatus.VeryImportant); Atgriezties; EndAttempt; Citādi Mail = Jauns pasts (); Fails = Jauns fails(Ziņojuma faila nosaukums); Ziņojuma tēma = "1C:Exchange" + Abbr.LP(ExchangePlans.DistributedBase.ThisNode().Code) + "_" + Abbr.LP(Node.Code); Ja UseSMTP, tad MailMessage = New InternetMailMessage;

MailMessage.Subject = MessageSubject; MailMessage.Attachments.Add(Ziņojuma faila nosaukums, faila nosaukums); Pasta ziņa.Saņēmēji.Pievienot(E-pasta adrese);
Pasts.Sūtīt(Pasta ziņojums); Else MailMessage = jauns pasta ziņojums; MailMessage.Subject = MessageSubject;
PastaZiņojums.Pielikumi.Pievienot(Ziņojuma faila nosaukums);
Pasta ziņa.Saņēmēji.Pievienot(E-pasta adrese);
Pasts.Sūtīt (pasta ziņojums, viltus);

endIf;
Ja Constants.OutputExchangeMessages.Get() then Report("

APMAIŅA: apmaiņa ar ziņojumu mezglam

" + Node.Name + " nosūtīts! ", MessageStatus.Information); EndIf; DeleteFiles(MessageFileName); EndCycle; Mail.Disconnect(); EndProcedure

Es iesaku to pievienot interfeisam
papildu panelis

, uz vienas no pogām zvans uz šo

procedūras. Tagad atliek tikai palaist Enterprise, konfigurēt e-pasta adrese Pasts, ja izmanto SMTP, tad MailProfile = jauns interneta pasta profils; 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 = jauns interneta pasts(); Mēģināt Mail.Connect(MailProfile); Izņēmuma ziņojums (" APMAIŅA: izveidojot savienojumu ar pasta profilu, radās kļūda!|Maiņa neizdevās!<>", MessageStatus.VeryImportant); Return; EndAttempt; Citādi Mail = New Mail (); Mēģināt Mail.Connect (); Izņēmuma ziņojums (" APMAIŅA: izveidojot savienojumu ar lietotāja e-pasta profilu, radās kļūda! |Maiņa neizdevās!", MessageStatus.VeryImportant); Return; EndAttempt; EndIf; MessageArray = jauns masīvs; If UseSMTP then AllMessages = Mail.Select(False); Else AllMessages = Mail.Select(False, False); EndIf; //No visiem burtiem atlasiet tos, kuru tēma ir “1C:Exchange”. //Maza, bet svarīga piezīme: //uzskatām, ka visas saņemtās vēstules ar tēmu "1C:Exchange" ir paredzētas //tieši pašreizējam mezglam, //tie. ka dažādiem apmaiņas mezgliem ir DAŽĀDAS e-pasta adreses. ReadXML = new ReadXML(); ReadXML.OpenFile(MessageFileName); MessageReader = ExchangePlans.CreateMessageReader(); ReadMessage.StartReading(ReadingXML); SessionParameters.DistributedBaseExchange in progress = True; ExchangePlans.ReadChanges(ReadMessage); ReadMessage.FinishReading(); ReadXML.Close(); Ja Constants.OutputExchangeMessages.Get() then Report(" APMAIŅA: pieņemti apmaiņas dati

",Ziņojuma statuss.Informācija); EndIf; Izņēmuma ziņojums("
EXCHANGE: kļūda, saņemot apmaiņas datus:
" + ErrorDescription(), MessageStatus.VeryImportant); EndAttempt;
//Kad apmaiņas datu nolasīšana ir pabeigta, atgriezieties
//notiek sesijas parametrs DistributedBase Exchange ir iestatīts uz False.
SessionParameters.DistributedBaseExchange in progress = False;
Mēģinājums dzēst failus (MessageFileName);
Izņēmums
//ja tas neizdodas, labi EndAttempt; EndCycle;
Ja izmantojat SMTP, tad Mail.DeleteMessages(MessageArray);

endIf;
Pasts.Atvienot(); Procedūras beigas
Tagad par to, kam nepieciešams Distributed Database Exchange In Progress sesijas parametrs. Fakts ir tāds, ka, nolasot datus, izmantojot ExchangePlans.ReadChanges() metodi, tiek veikts izsaukums.
apdarinātāja procedūras modificēto/pievienoto objektu notikumam BeforeWrite(). Un ja ierakstot

jebkura objekta apdarinātāja procedūrā parametrs Noraidīšana tiks iestatīts uz True
izpildot ExchangePlans.ReadChanges(), notiks izņēmums un attiecīgi apmaiņa

netiks izpildīts. DistributedBase Exchange Notiek sesijas parametra vērtība var būt

Lietotāja iestatījumiem pievienosim parametru Perform Distributed Database Exchange. Konfigurācijai
"Tirdzniecības vadība" tiek veikta šādi:

* Raksturlielumu veidu plānā "Lietotāja iestatījumi" pievienosim iepriekš definētu
raksturlielums Veikt Būla tipa izplatīto datu bāzu apmaiņu.
* Kataloga vienuma "Lietotāji" formā mēs iestatām šī parametra izmaiņas (piemēram, šis
var izdarīt veidlapas modulī, pēc analoģijas ar citiem parametriem).

Pievienojiet procedūru rbDistributedBase modulim:

Procedūra rbPerformExchange(user) Export If npGetDefaultValue(user, "") Tad rbGetExchangeMessages();

rbSendExchangeMessages();

endIf; Procedūras beigas uz lietojumprogrammas moduli: Procedūra CheckConnectionAutoExchange() Eksportēt, ja npGetDefaultValue(chCurrentUser, " Izpildiet izplatīto datu bāzu apmaiņu") Un Constants.DistributedBaseAutoExchangeInterval.Get() > 0 Tad ConnectWaitHandler(" Izpildiet izplatīto datu bāzu apmaiņu Izpildiet automātisko apmaiņu Izpildiet izplatīto datu bāzu apmaiņu", Constants.DistributedBaseAutoExchangeInterval.Get()); Pretējā gadījumā DisableWaitHandler(" uz lietojumprogrammas moduli:"); EndIf; EndProcedure procedūra ExecuteAutoExchange() Eksportēt rbExchange(glCurrentUser); DisableWaitHandler(" Izpildiet izplatīto datu bāzu apmaiņu"); Ja npGetDefaultValue(chCurrentUser, " Izpildiet izplatīto datu bāzu apmaiņu") Un Constants.DistributedBaseAutoExchangeInterval.Get() > 0 Tad ConnectWaitHandler("

", Constants.DistributedBaseAutoExchangeInterval.Get()); EndIf; EndProcedure procedūra DisableAutoExchange() Eksportēt DisableWaitHandler("

"); Beigu procedūra
...
Lietojumprogrammas moduļa procedūrai WhenSystemStart() pievienojiet šādas rindas:

(pēc komerciālā aprīkojuma pievienošanas)
SessionParameters.DistributedBaseExchange in progress = False;

Pārbaudiet AutoExchangeConnection();

Pievienosim mūsu panelim vēl dažas pogas, lai kontrolētu procesu: pievienojiet procedūru vienai
CheckConnectAutoExchange(), no otras puses - DisableAutoExchange()
Mēs palaižam uzņēmumu, konfigurējam lietotāja rekvizītus un automātiskās apmaiņas intervālu, un viss!

Tagad, ievadot šī visvairāk konfigurētā lietotāja datu bāzi, tiks palaists apdarinātājs

gaida ExecuteAutoExchange(). Protams, jums ir arī jākonfigurē lietotājs perifērijas datu bāzē
maiņai.
tiks pieņemts, taču būs izņēmums. Šajā gadījumā tiks mainīta konfigurācija
ielādēts. Lai atjauninātu datu bāzes konfigurāciju, jums ir jāizslēdz visi lietotāji, dodieties uz
konfiguratoru un atjaunināt datu bāzes konfigurāciju (pirms šīs darbības ieteicams augšupielādēt datus). UZ
Diemžēl tas ir nepieciešams ļaunums. Jūs varat nedaudz atvieglot savu dzīvi, uzrakstot īsu sikspārņu failu
kaut kas līdzīgs šim:

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

Un vēl viena piezīme:

Diemžēl xml faili nav kompakti, bet, par laimi, tie ir lieliski saspiesti. Iespējams iekšā
ziņojumu nosūtīšanas un saņemšanas procedūras, pievienojiet failu iesaiņošanu un izpakošanu. COLOR="#666666">To var izdarīt, izmantojot ārēju arhivētāju vai VK, piemēram, Wheel.AddIn
(http://1c.proclub.ru/modules/mydownloads/personal.php?cid=81&lid=2714) .
Līdz ar 10. (šķiet) izdevuma iznākšanu iepriekšējais priekšlikums ir nedaudz novecojis, jo platforma
Bija iebūvēti failu saspiešanas rīki, izmantojot ZIP algoritmu. Tie. tagad ir iespējams saspiest failus
neizmantojot VK.

Izkliedēto informācijas bāzu (RIB) tehnoloģija ļauj izveidot ģeogrāfiski sadalītu sistēmu, kuras pamatā ir 1C Enterprise konfigurācijas. Tas ļauj jums iegūt kaut ko kopīgu informācijas telpa pat ar tām nodaļām, kurām nav uzticama saziņas kanāla, apvienojot augstu mezglu autonomiju ar iespēju ātri apmainīties ar informāciju. Savos rakstos mēs apskatīsim šī mehānisma funkcijas un praktisko ieviešanu platformā 8.2

Pirmkārt, pajautāsim sev: kāpēc notiek autoapmaiņa? Mūsdienu tehnoloģijas, apvienojumā ar lētu un ātrs internets, ļauj bez grūtībām organizēt attālināto darbu. Metožu izvēle ir tikpat plaša kā jebkad: LAP, plānie un tīmekļa klienti, tīklu apkopošana ar VPN palīdzība- ir par ko padomāt. Tomēr visām šīm metodēm ir viens būtisks trūkums - spēcīga atkarība no komunikācijas kanāla kvalitātes.

Pat ar ideālu vietējā pakalpojumu sniedzēja darbību nav iespējams garantēt 100% sakaru kanāla pieejamību. Problēmas ar mugurkaula nodrošinātāju, strāvas padeves trūkums, sakaru līnijas fiziski bojājumi un daudzi citi faktori padara šo uzdevumu nepārvaramu. Tajā pašā laikā informācijas bāzes nepieejamība attālā noliktavā vai mazumtirdzniecības veikalā rada diezgan būtiskus zaudējumus. Un visbeidzot, neaizmirsīsim, ka ir vietas (piemēram, industriālās zonas pilsētu nomalēs), kur kvalitatīva sakaru kanāla nodrošināšana ir dārga un/vai problemātiska.

RIB mehānisms ļauj atbrīvoties no šiem trūkumiem, katrai nodaļai ir sava informācijas bāzes kopija, ar kuru jūs varat strādāt autonomi pat tad, ja nav komunikācijas ar ārpasauli. Un nelielais pārraidītās informācijas apjoms ļauj apmaiņai izmantot jebkuru sakaru kanālu, tostarp mobilo internetu.

RIB platformā 8.2 nav kaut kas principiāli jauns, reprezentatīvs tālākai attīstībai URIB platforma 7.7, tikai tagad šī tehnoloģija ir kļuvusi pieejamāka un vienkāršāka. Atšķirībā no RIB komponentes, kas bija jāiegādājas atsevišķi, RIB ir daudzu neatņemama sastāvdaļa tipiskas konfigurācijas un pilnībā darbojas lietotāja režīmā, ļaujot iztikt bez konfiguratora pat iestatīšanas stadijā.

Šajā brīdī būtu laiks pāriet uz praktisko daļu, taču mums būs jāveic vēl viena atkāpe. Fakts ir tāds, ka pāreja uz 8.2 platformu, kas, šķiet, jau ir notikusi, faktiski noveda pie divu veidu konfigurāciju rašanās: pamatojoties uz pārvaldītu lietojumprogrammu, “native” platformai 8.2 un pielāgota no 8.1, turpinot izmantot novecojušas tehnoloģijas un mehānismus. Tā kā ievērojama daļa konfigurāciju (uzņēmuma uzskaite, algu un personāla vadība) ir adaptētas vai pārejas, tās nevar atlaist, tāpēc mūsu raksta pirmā daļa būs veltīta šīm konfigurācijām (būtībā 8.1 platformai), savukārt otrajā mēs pārbaudīsim automātiskās apmaiņas iestatīšanu konfigurācijām, kuru pamatā ir pārvaldīta lietojumprogramma (platforma 8.2).

Apskatīsim praktisku uzdevumu: automātiskās apmaiņas iestatīšana caur FTP Enterprise Accounting 2.0 konfigurācijai. Neskatoties uz to, ka RIB ļauj veikt apmaiņu, izmantojot e-pasts vai koplietoto failu resursus, mēs iesakām izmantot FTP kā visvienkāršāko un visvairāk uzticams veids komunikācijas. Varat lasīt, kā iestatīt savu FTP serveri, vai arī varat izmantot jebkura mitināšanas pakalpojumu sniedzēja FTP pakalpojumu.

Pirmkārt, mums ir jākonfigurē apmaiņas mezgli. Lai to izdarītu, palaidiet konfigurāciju ar administratora tiesībām un atlasiet Darījumi – maiņas plāni.

Parādītajā sarakstā atlasiet Pilns plāns vai Pēc organizācijas, ja vienā datubāzē tiek glabāta uzskaite par vairākiem uzņēmumiem un apmaiņa jāveic tikai vienam no tiem. Atvērtajā logā jau ir viens mezgls - centrālais, mums tas jārediģē, norādot kodu un nosaukumu.

Pēc tam izveidosim zaram citu mezglu, aizpildot to tādā pašā veidā (lai pievienotu, noklikšķiniet uz zaļā apļa ar plusu). Nākamais solis ir izveidot šim mezglam sākotnējo attēlu, kas ir gatava informācijas bāze faila režīmā. Lai to izdarītu, noklikšķiniet uz ar peles labo pogu noklikšķiniet novietojiet peli uz vajadzīgā mezgla un atlasiet nolaižamajā sarakstā Izveidojiet sākuma attēlu.

Tagad ejam tālāk Pakalpojums — izplatītās informācijas bāze (DIB) — RIB mezglu konfigurēšana.

Atvērtajā logā noklikšķiniet uz pogas Pievienot un konfigurēt jauna apmaiņa, norādot attālo resursdatoru, apmaiņas veidu (izmantojot FTP) un servera savienojuma parametrus.

Grāmatzīme Automātiska maiņaļauj iestatīt apmaiņas grafiku, apmaiņu pa notikumiem (darba sākums un beigas utt.), šie iestatījumi tiek veikti lietotājam, kura vārdā tiks veikta apmaiņa, tāpēc pārliecinieties, ka viņam ir tiesības apmainīties ar datiem.

Neaizmirstiet norādīt mezgla prefiksu dokumentu numerācijai (pretējā gadījumā jūs saņemsiet dažādus dokumentus ar vienādiem numuriem) sadaļā Rīki - Programmas iestatījumi šeit varat konfigurēt arī dažus citus apmaiņas parametrus; Tajā pašā cilnē jums vajadzētu atlasīt lietotāju, kas veiks apmaiņas uzdevumus, ja to nedarīsit, grafiks nedarbosies. Lūdzu, atcerieties, ka apmaiņa tiks veikta tikai tad, ja šis lietotājs pieteicies programmā.

Tas pabeidz centrālā mezgla konfigurāciju, tagad jums ir jāveic līdzīgi iestatījumi perifērijas mezglam, savienojot sākotnējo attēlu kā esošu informācijas drošības sistēmu. Pēc tam jūs varat sākt datu apmaiņu. Lai kontrolētu, jums vajadzētu izmantot Komunikācijas monitors, tas ļauj ne tikai uzraudzīt augšupielādes/lejupielādes panākumus, bet arī parāda visas radušās sadursmes vai aizkavētas kustības (ja lietotājam, kurš veica apmaiņu, nav pietiekamu tiesību datu bāzē veikt kādas darbības). Pieejamība no šī instrumentaļauj ātri un efektīvi atrisināt dažāda veida problēmas, kas rodas automātiskās apmaiņas laikā.

Šajā brīdī apmaiņas iestatīšanu var uzskatīt par pabeigtu, un jūs varat sākt strādāt izplatītajā režīmā. Ir vērts īpaši pakavēties pie konfigurācijas atjaunināšanas vai izmaiņu veikšanas. Šīs darbības ir pieejamas tikai centrālajā mezglā, visas veiktās izmaiņas nākamās apmaiņas laikā tiks automātiski pārsūtītas uz perifērijas mezgliem. Lai veiktu izmaiņas automātiski, perifērijas datu bāzei jābūt ekskluzīvajā režīmā, pretējā gadījumā jums būs jāpalaiž Konfigurators un izpildīt Datu bāzes konfigurācijas atjaunināšana manuāli.

Ja jūsu organizācijā strādā vairāk nekā 5 cilvēki, visticamāk, jūs izmantojat 1C produktus. Gandrīz vienmēr organizācijas instalē vairākas 1C datu bāzes, jo katra no tām atrisina noteiktu problēmu loku. Piemēram, uzņēmums nodarbojas ar mazumtirdzniecību un uztur grāmatvedību šādā situācijā klients parasti uzstāda UT (Trade Management) un BP (Enterprise Accounting). Pat vienkāršs individuālais uzņēmējs ar vairākiem darbiniekiem var darboties kā šāds uzņēmums!

Kāpēc man vajadzētu iestatīt datu apmaiņu?

Turpināsim izskatīt situāciju ar UT un BP. Iedomāsimies, ka šobrīd mūsu apmaiņa nav konfigurēta, kādas darbības mums jāveic, lai atspoguļotu grāmatvedības darījumus abās datu bāzēs? Tieši tā, vispirms mēs aizpildīsim datus UT, un tad mums būs jāievada tie paši dati BP, jo mēs nevaram, piemēram, ievadīt preču saņemšanu UT, bet mēs to nevaram izdarīt UT BP.

Pat ja jūs nolemjat izmantot standarta datu apmaiņu (standarta datu apmaiņas iestatīšana (1C sinhronizācija)), tas nenozīmē, ka to var konfigurēt jūsu datu bāzē. Problēmas rodas, ja, piemēram, ilgstoši neesat atjauninājis datubāzi (lai uzturētu standarta apmaiņu, jūsu datu bāzēm jābūt atjauninātām) vai objektus, kurus gatavojaties pārsūtīt no vienas datu bāzes uz citu. tiek modificētas (šajā gadījumā standarta apmaiņa nedarbosies pareizi), izņemot to visu, pat ja datu bāzes platformas versijas atšķiras (7.7 – 8.3), tad datu apmaiņa, visticamāk, arī būs jāpārveido vai jāattīsta no nulles.

Kam ir jāizmanto datu apmaiņa starp 1C datu bāzēm?

Ja tālāk minētie apgalvojumi jums attiecas, jums ir jākonfigurē apmaiņa starp jūsu konfigurācijām:

  • Jums ir vairāk nekā viena 1C datubāze
  • Nepieciešama ātra informācijas pārsūtīšana no vienas datu bāzes uz otru un otrādi
  • Nepieciešama automātiska apmaiņa vai reāllaika apmaiņa

Datu apmaiņas izstrāde un konfigurēšana starp 1C konfigurācijām

Pareizi izstrādāta datu apmaiņa ļaus jums:

  • Izlādējiet un ielādējiet objektus no vienas datu bāzes uz otru
  • Apmaiņa starp dažādas versijas 1C
  • Apmainieties ar datiem reāllaikā
  • Būtiski samazināt algas darbiniekiem, jo ​​tagad viņiem būs vairāk brīvā laika
  • Ietaupiet savu laiku un budžetu

Datu apmaiņas noteikumu izstrāde, izmantojot modificēto UT un BP datubāzu piemēru

Mums ir divas datu bāzes, kurās tiek mainīts dokuments “Preču un pakalpojumu saņemšana”, jo īpaši dokumentos un tabulas daļas Ir pievienotas jaunas detaļas, noņemtas dažas standarta detaļas, kā rezultātā standarta datu apmaiņa nedarbojas. Mēs izstrādājām jaunu apmaiņas kārtulu un ierakstījām to failā.