„1C” oferă formatul EnterpriseData pentru schimbul de date de afaceri. „1C” oferă formatul EnterpriseData pentru schimbul de date de afaceri. Sincronizarea datelor 1C printr-un format universal

11.05.2020 Siguranță

Trimite acest articol pe e-mailul meu

Principalele motive pentru necesitatea implementării schimbului între bazele de date 1C sunt prezența sucursalelor și separarea tipurilor contabile, deoarece adesea companiile operează în mai multe baze de informare Oh. Configurarea schimbului 1C 8.3 vă permite să eliminați munca dublă - introducerea acelorași documente și directoare în două programe, precum și livrarea rapidă a obiectelor de sistem necesare pentru diferite ramuri și departamente.

În cazul în care este necesar un schimb între filiale, se utilizează RIB (Baza de Informații Distribuite). Acesta este un mecanism de schimb între configurații identice. Reprezintă un arbore cu cel mai important nod rădăcină deasupra, sub o pereche de noduri interconectate. Modificările pot fi făcute în orice nod al acestui sistem și vor fi transmise altor noduri conectate. De asemenea, distribuie nu numai date, ci și modificări de configurare de la nodul rădăcină la nodurile slave.

Dacă este necesară separarea tipurilor de contabilitate, de exemplu, menținerea celor operaționale în baza de date de tranzacționare și a celor reglementate în baza de date contabilă, sunt disponibile mecanisme de schimb universal cu setări flexibile de sincronizare a datelor.

Unul dintre ultimele evoluții 1C este formatul de schimb de date EnterpriseData. Este ușor de utilizat și este destinat schimbului în cadrul companiei atât între baze de date 1C, cât și programe terțe.

Implementarea schimbului de date într-o întreprindere poate fi reprezentată sub forma unor proceduri secvenţiale.

În primul rând, este necesar să se determine între ce baze de date ar trebui să existe un schimb; va fi un schimb cu două sensuri sau un singur sens; dacă unidirecțional, atunci ce bază de date va transmite informații și care va primi doar; dacă aceasta este o rețea complexă de sucursale, atunci este necesar să se înregistreze o schemă de construcție a bazei de date.

Apoi selectați formatul potrivit: RIB, format universal; schimbul conform regulilor de schimb; schimb fără reguli de schimb.

Următorul pas este să selectați un vehicul pentru a efectua schimbul. Este disponibilă o gamă largă de tehnologii, să le evidențiem pe cele principale: director (local sau de rețea), resursă FTP, conexiuni COM, serviciu web, e-mail.

Al patrulea pas va fi identificarea datelor: documente, cărți de referință și, dacă este necesar, detalierea acestora până la detaliile lor individuale care urmează să fie transferate.

Și în concluzie, este prescris un orar al frecvenței schimburilor

Fiecare opțiune pentru configurarea schimbului 1C 8.3 necesită o pregătire atentă. Implementarea sa depășește capacitățile fiecărui utilizator; este necesar să se țină cont de multe nuanțe și să se înțeleagă principiile schimbului. Va trebui acordată o atenție deosebită configurației dacă bazele de date: conțin modificări sau multe altele suplimentare. detalii, diferă în versiunile platformei sau sunt utilizate versiuni învechite configuratii, intreprinderea este mare si foloseste sistem automatizat, formată dintr-un număr mare de baze. Erorile sunt inacceptabile aici, deoarece... poate duce la consecințe ireparabile. Implementarea independentă a schimbului în 1C este recomandată numai dacă trebuie să configurați un transfer simplu de informații între configurațiile standard.

Dacă vă îndoiți de abilitățile dvs., este mai bine să nu economisiți, ci să contactați un specialist competent care vă va ajuta la rezolvarea problemei complexe a instalării schimburilor 1C 8.3.

Dacă totuși decideți să configurați schimburile 1C fără a implica experți, este recomandat să testați mai întâi copiile bazelor de date, iar înainte de a începe lucrul în bazele de date de lucru, încărcați configurațiile pentru a putea reveni la starea inițială în cazul unor erori.

Mai jos oferim un exemplu detaliat de configurare a schimbului 1C 8.3 unilateral între configurațiile standard Trade Management 11 (UT) și Enterprise Accounting 3.0 (BP). Exemplul este relevant pentru multe companii implicate în comerțul cu ridicata și cu amănuntul. În UT se menține contabilitatea de gestiune, în BP - reglementată, schimbul este necesar pentru a facilita munca utilizatorilor.

Acest algoritm este potrivit și pentru alte configurații standard pe platforma 1C 8.3

În primul rând, vom efectua lucrări pregătitoare pentru receptorul de informații, adică. pentru BP. Lansăm programul în modul Enterprise. Trebuie să setați constanta Sincronizare date (secțiunea Administrare → Sincronizare date).

Atenție la câmpul Prefix; aici trebuie să specificați o valoare care vă va permite ulterior să distingeți (după valoarea codului directorului sau a numărului documentului) în ce program au fost create inițial obiectele. În exemplul nostru unul obișnuit va face abreviere - BP și UT, dacă setarea schimbului 1C 8.3 este efectuată pentru schimburi complexe între o cantitate mare baze, precum și configurații identice, va trebui să introduceți fiecare bază cu propria sa denumire clară.

Deoarece unitatea de alimentare este doar un receptor de informații, trecem la configurarea UT.

Aici, la fel ca în BP, trebuie să activați sincronizarea și să specificați un prefix. Aceste informații sunt disponibile în secțiunea Date principale și administrare → Setări de sincronizare a datelor.

Selectați metoda de configurare: Specificați setările manual. Mai departe.

Să setăm o opțiune de conexiune directă, când ambele programe sunt situate într-unul singur retea locala, vom indica parametrii pentru conectarea la directorul de securitate a informațiilor din această rețea și vom completa și informațiile de autentificare despre utilizator (în baza de date BP). Mai departe.

Sistemul va verifica corectitudinea datelor specificate și, dacă rezultatul este pozitiv, va afișa fereastra de setări de schimb 1C 8.3.

Faceți clic pe linkul Schimbați regulile de încărcare a datelor pentru a accesa setările pentru schimb. Vom clarifica datele de bază - încărcați doar cele utilizate în documente, organizații selectate și opțiunea de a lucra cu contracte - fără referință, separarea documentelor pe depozit. Schimbul începe la 1 martie a anului curent.

Notăm regulile introduse și le închidem.

Deoarece exemplul este despre transmiterea unidirecțională a informațiilor, în următoarea fereastră de setări pentru a primi date de la alt program, ar trebui să setați valorile la Nu trimite. Înregistrați și închideți. Mai departe.

Acum trebuie să verificați parametrii introduși și dacă aceștia sunt corecti, faceți clic pe Următorul, altfel reveniți la pasul anterior făcând clic pe Înapoi.

Apoi vi se va solicita să vă sincronizați. Faceți clic pe Terminare.

Dacă este necesară corelarea obiectelor identice din două configurații, se va deschide o fereastră pentru compararea datelor. Efectuăm comparația și facem clic pe Următorul.

Când transferați obiecte, pot apărea situații problematice; puteți vizualiza rezultatele făcând clic pe linkul Avertismente în timpul sincronizării datelor.

După finalizarea sincronizării, va fi afișată o fereastră care confirmă finalizarea cu succes a acestui proces.

Aici, folosind comanda Configurare sau după, în scriptul de sincronizare, puteți configura programul execuție automată schimb valutar.

Trebuie să configurați schimbul de date?

PROGRAMAM 1C DE 15 ANI SI FACEM INSTRUCTIUNI VIDEO GRATUITE

Avem o echipă de programatori care au o vastă experiență în configurarea 1C exchange:

Între configurațiile 1C,

În configurarea schimbului 1C cu alte programe.

De ce ne alegeți pe noi?

Timp de răspuns de până la 2 ore pentru sarcini urgente, chiar și în weekend și sărbători.

Peste 40 de programatori cu normă întreagă cu experiență 1C de la 5 la 20 de ani.

Realizăm instrucțiuni video despre sarcinile finalizate.

Comunicare live prin orice mesageri convenabil pentru client.

99% din sarcini sunt finalizate prin acces de la distanță(TeamViewer sau RDP), care reduce semnificativ timpul de finalizare a sarcinilor.

Parteneri oficiali ai companiei 1C din 2006.

Experiență de automatizare de succes de la firme mici, către marile corporații.

99% dintre clienți sunt mulțumiți de rezultate, ceea ce este confirmat de scrisori de recunoștință.

Să ne uităm la un exemplu simplu din viata reala. Să presupunem că avem o companie care se ocupă cu comerțul cu ridicata și cu amănuntul, iar în această companie, ca în oricare alta, se face contabilitate. Întreprinderea are două baze de date standard, acestea sunt UT (managementul comerțului) și respectiv BP (contabilitatea întreprinderii), în fiecare dintre bazele de date se păstrează propriile evidențe, în UT există management care să reflecte toate tranzacțiile legate de comerț, în BP există contabilitate. Pentru a nu face muncă dublă, adică. nu creați aceleași documente în două baze de date (la urma urmei, mișcările ar trebui să fie în gestiune și contabilitate) Vom configura doar sincronizarea între aceste baze de date.

Vom configura schimbul de date într-un singur sens, din UT ---> BP. De asemenea, este posibil să se înființeze un schimb bidirecțional, dar în practică acest lucru nu este adesea necesar, așa că nu îl vom lua în considerare în exemplul nostru.

Etape pregătitoare pentru înființarea schimbului în BP

Să începem configurarea sincronizării, mai întâi mergem la baza de date 1C „Enterprise Accounting 3.0” (receptor), trebuie să verificăm dacă sincronizarea este activată pentru această bază de date, pentru a face acest lucru trebuie să mergem mai întâi la baza de date. De îndată ce baza de date se deschide, accesați fila „Administrare” ---> „Setări de sincronizare a datelor”


În fața noastră se deschide o filă nouă; aceasta trebuie completată în același mod ca în captura de ecran de mai jos, cu excepția prefixului de bază de informații. Prefixul trebuie să fie format din două litere, puteți seta oricare, dar conform standardului 1C este mai bine să setați prefixul după numele configurației, adică pentru „Contabilitatea întreprinderii” prefixul va fi „BP”. Dacă înființați schimburi complexe și există mai multe baze de date contabile, atunci prefixele ar trebui să difere clar unele de altele; aici puteți utiliza primele două litere ale numelui organizației ca abreviere.

Continuăm configurarea sincronizării datelor în UT


După ce am făcut toate acțiunile necesare în baza de date a receptorului (BP 3.0), pentru a continua configurarea schimbului de date trebuie să deschidem baza de date sursă (UT 11.1). Accesați fila „Administrare”, selectați „Setări de sincronizare a datelor” în meniul din stânga. Dacă sincronizarea nu este activată, atunci activați-o folosind caseta de selectare și nu uitați să specificați prefixul de bază sursă. După ce am finalizat toți pașii 1-4, așa cum se arată în imaginea de mai jos, trebuie să faceți clic pe hyperlinkul „Sincronizare datelor” (pasul 5).


În noua fereastră care apare, trebuie să faceți clic pe semnul verde plus (Configurați sincronizarea datelor), în meniul derulant selectați elementul „Enterprise Accounting 3.0”.

Stabilirea punctelor importante în schimbul de date între UT și BP


Acum vedem o fereastră cu setări pentru sincronizarea datelor în 1C, selectați „Specificați setările manual” și faceți clic pe „Următorul”.


Continuăm să setăm schimbul de date în 1C, în fila următoare trebuie să selectăm opțiunea de conectare la baza de informații a receptorului ( conexiune directa la program), parametrii de conectare (pornit acest calculator sau pe o rețea locală), directorul în care se află baza receptorului, precum și datele de autentificare necesare (nume de utilizator și parolă în bază).


Pe pagina următoare trebuie să completăm regulile pentru trimiterea și primirea datelor din configurația BP 3.0 (receptor). Faceți clic pe „modificați regulile de încărcare a datelor”.


În fața noastră s-a deschis fereastra „Reguli pentru trimiterea datelor”, în care setăm următorii parametri:

  • Ce date de referință vor fi trimise (în exemplul nostru, ne interesează doar documentele și datele de referință utilizate în acestea, așa că am selectat articolul corespunzător; dacă selectați primul articol „Trimiteți toate”, atunci toate cărțile de referință vor fi reîncărcate împreună cu documentele, de multe ori dacă informația nu este folosită în documente atunci este inutilă pentru destinatar, deoarece nu afectează în niciun fel contabilitatea)
  • De la ce dată trebuie trimise toate informațiile (nu vom lua în considerare sincronizarea manuală în acest articol)
  • Căreia sau către ce organizații să trimitem date (în exemplul nostru, am ales o singură organizație, IP „Antreprenor”)
  • Reguli pentru incheierea contractelor
  • Depozit generalizat
  • Ar trebui să derulez documentele după depozit?

După ce am făcut setările, faceți clic pe „Salvați și închideți”.


Deoarece în exemplul nostru am configurat și folosim schimbul unidirecțional, de la UT la BP, atunci setările pentru regulile de obținere a datelor din „Enterprise Accounting 3.0” nu ne interesează, așa că facem clic pe „Next”.


Într-o fereastră nouă, ni se cere să configuram reguli pentru baza receptorului (RB). La punctul 1, denumim baza noastră de date, îi dăm un prefix. PREFIX-ul trebuie să fie același cu cel pe care l-am setat în baza de date BP la începutul acestui articol; dacă prefixele sunt diferite, sincronizarea datelor în programul 1C nu va funcționa. După aceea, faceți clic pe punctul 2, apoi pe punctul 3.



La punctul 3, trebuie să permitem procesarea documentelor atunci când sunt încărcate în baza de date. Faceți clic pe „Salvați și închideți”.


Acum fereastra ar trebui să arate ceva ca cea prezentată mai jos, faceți clic pe „Următorul”.


Această fereastră conține informații de referință despre sincronizarea creată în 1C. Doar faceți clic pe butonul „Următorul”. Dacă programul a generat o eroare la configurarea sincronizării datelor, atunci trebuie să ne contactați pentru ca specialistul nostru 1C să vă ajute chiar acum!


Urmatorul pas programul va oferi sincronizarea imediat după crearea setărilor de schimb de date. Să fim de acord cu acest lucru și să facem clic pe „Terminat”.

În fața ta va apărea o fereastră în care vei vedea informații despre modul în care se desfășoară sincronizarea. Dacă baza receptorului nu este goală, de ex. înregistrările au fost deja păstrate în el, atunci utilizatorului din programul 1C i se va cere să facă manual o comparație a obiectelor. Compararea obiectelor din 1C la sincronizarea datelor este o comparație a obiectelor identice ale receptorului cu obiecte identice din sursă.

Să ne uităm la un exemplu, să presupunem că în UT există o contraparte cu numele „PharmGroup LLC” și TIN 1234567, iar în BP există și o contraparte cu TIN 1234567, dar denumirea „PharmGroup”, dacă nu le comparăm. două obiecte la compararea datelor în etapa de sincronizare, apoi după sincronizare în receptor (Enterprise Accounting 3.0), vom avea două contrapărți cu TIN 1234567 și două denumiri „PharmGroup LLC” și respectiv „PharmGroup”. Pentru a evita astfel de situații, a fost inventat un mecanism de comparare a obiectelor.


În exemplul nostru, baza de date a receptorului este goală și, prin urmare, fereastra de comparare a obiectelor nu s-a deschis. Dar după efectuarea unor operațiuni, sistemul va cere cu siguranță utilizatorului să adauge câteva date suplimentare și să afișeze următoarea fereastră. Nu trebuie să transferăm date suplimentare, am configurat deja tot ce avem nevoie mai devreme, așa că la acest pas selectăm „Nu adăugați documente la trimitere”. Faceți clic pe „Următorul”.

Etapa finală a schimbului de date între 1C


În etapa finală, programul va afișa următoarea fereastră, în care utilizatorul va fi informat că sincronizarea a avut succes, faceți clic pe „Finish”. În acest moment, sincronizarea între bazele de date într-un schimb unidirecțional de la „Trade Management 11.1” (UT) la „Enterprise Accounting 3.0” (BP) este finalizată.

Imprimare (Ctrl+P)

Schimb printr-un format universal

Subsistemul „Schimb de date” al bibliotecii de subsisteme standard conține 4 opțiuni (tehnologii) pentru schimbul de informații între diverse baze de informații:

  • baze de informații distribuite (RIB);
  • schimb de date printr-un format universal;
  • schimbul de date conform regulilor de schimb (regulile de schimb sunt create folosind configurația „Conversia datelor”, ediția 2.1);
  • schimb de date fără reguli de schimb.

Acest articol discută despre tehnologia schimbului de date prin format universal EnterpriseData. Această tehnologie este disponibilă în „Biblioteca de subsisteme standard” începând cu versiunea 2.3.1.62. lansat la începutul anului 2016. În prezent, cea mai recentă ediție a BSP 2.3 (pentru utilizarea cu platforma 1C:Enterprise 8.3 nu mai mică decât versiunea 8.3.8.1652 cu modul de compatibilitate dezactivat) are versiunea 2.3.6.17.

Orez. 1 Ultimele versiuni ale BSP 2.3

Printre fișierele de livrare pentru soluțiile de aplicație 1C se numără fisier text„Versiuni de bibliotecă”, unde este scris pe baza cărei versiuni a BSP a fost dezvoltată aplicația, de exemplu, pe baza soluției aplicației UT 11.3.3.231, s-a format BSP 2.3.5.65.

Vă rugăm să rețineți că pentru utilizarea cu versiunea platformei „1C:Enterprise 8.3” nu este mai mică 8.3.10.2168 ediția a fost lansată cu modul de compatibilitate dezactivat BSP 2.4.

Descrierea formatului EnterpriseData

Ce este formatul EnterpriseData?

Acesta este un format care vă permite să descrieți un obiect de bază de informații (contraparte, factură etc.) sau să raportați faptul că acest obiect a fost șters. Este de așteptat ca configurația care primește fișierul în format EnterpriseData va reacționa în consecință - va crea obiecte noi și le va șterge pe cele care sunt marcate ca șterse în fișier. Este destinat schimbului de informații între configurațiile UT, RT, UNF, BP. Formatul poate fi folosit și pentru a face schimb de informații cu oricare altul sisteme de informare: nu depinde de caracteristicile proprii software sau structuri de bază de informații care participă la schimb și nu conțin restricții explicite de utilizare.

Versiunea în format EnterpriseData

Datele de format sunt stocate în pachete XDTO în ramurile de configurare generală a bazei de date, așa cum se arată în Fig. 2

Fig. 2 Pachete cu format de date XDTO – EnterpriseData

În fig. 2 arată că există mai multe pachete XDTO. Acest versiuni diferite format. Numărul versiunii formatului este format din X.Y.Z, unde X.Y este versiunea, Z este versiunea minoră. Versiunea minoră este mărită în cazul remedierii erorilor și a altor modificări în care: funcționalitatea logicii de conversie a datelor bazată pe versiunea anterioara format (menținerea compatibilității cu înapoi a algoritmilor actuali de transfer de date prin format); Suportul pentru noile capacități de format pentru logica de conversie este voluntar. Un exemplu de astfel de modificări ar putea fi corectarea unei erori, modificarea proprietăților obiectelor de format, adăugarea de proprietăți a căror utilizare nu este obligatorie la conversia datelor. În alte cazuri, când se schimbă formatul, versiunea Major crește: X – în cazul restructurării globale, Y – în alte cazuri.
Formatul descrie reprezentarea obiectelor (documente sau elemente de director) sub formă de fișiere XML. Versiunea 1.0.1 conține o descriere a 94 de obiecte din diverse domenii (finanțe, producție, achiziții și vânzări, operațiuni de depozit). Numele tipurilor, de regulă, sunt bine înțelese și nu au nevoie de explicații suplimentare: de exemplu, „Document.Act de lucru finalizat” sau „Director.Contrapărți”. După cum puteți vedea, descrierea tipurilor de document începe cu prefixul „Documentar.”, iar elementul director începe cu prefixul „Director”. O descriere mai detaliată a formatului poate fi găsită
Cea mai recentă versiune este 1.3, cu toate acestea, cea mai frecvent utilizată versiune este 1.0. Nu există mare diferență între versiuni. Format EnterpriseDataExchange_1_0_1_1 utilizat la schimbul prin intermediul unui serviciu web.
Rețineți că cu care este utilizat pachetul de format de date EnterpriseData ExchangeMessage la crearea regulilor de conversie. Este acest pachet care conține obiectul tip Informații suplimentarecare poate avea orice tip de valoare și este utilizat la crearea unei reguli de conversie între obiectele de configurare. care nu sunt în formatul de date. Exact, multumesc Informații suplimentarePuteți adapta și personaliza regulile de schimb fără a modifica formatul datelor din pachetele XDTO.


Orez. 3 Structura pachetului XDTOExchangeMessage

Cum se fac schimb de date în format EnterpriseData?

Schimbul de date în format EnterpriseData cu configurație este un schimb de fișiere. Ca răspuns la primit de la aplicație externă fișierul de configurare îl va procesa și va crea un fișier de răspuns. Fișierele pot fi schimbate:

  • printr-un director de fișiere dedicat,
  • prin directorul FTP,
  • printr-un serviciu web implementat pe partea bazei de informații. Fișierul de date este transmis ca parametru metodelor web.

Notă. Pentru schimbul de date bidirecțional între o aplicație terță parte și configurația din partea bazei de informații, trebuie efectuate o serie de setări - aplicația terță parte trebuie să fie înregistrată în baza de informații, trebuie definit un canal de schimb pentru aceasta (prin un fișier sau un director FTP), etc. Dar pentru cazurile de integrare simplă, când este suficient să transferați doar informații de la aplicație terță parteîn baza de informații și transferul invers al datelor de la baza de date la o aplicație terță parte nu este necesar (de exemplu, integrarea unui magazin online care transferă informații despre vânzări către 1C: Contabilitate); există o versiune simplificată a lucrului printr-un serviciu web care nu necesită setări laterale.

La schimbul folosind planuri de schimb de configurații în timpul sincronizării, sunt transmise numai informații despre modificările care au avut loc de la ultima sincronizare (pentru a minimiza cantitatea de informații transferate). Prima dată când sincronizați, configurația va descărca toate obiectele formatate EnterpriseData într-un fișier XML (deoarece sunt toate „noi” pentru aplicația terță parte).

Următorul pas este pentru aplicația terță parte - trebuie să proceseze informațiile din fișierul XML și să le plaseze în secțiune în timpul următoarei sesiuni de sincronizare informație că un mesaj din configurație cu un anumit număr a fost primit cu succes (plasați numărul mesajului primit din configurație în câmpul ReceivedNo). Mesajul de primire este un semnal către configurație că toate obiectele au fost procesate cu succes de aplicația externă și nu mai este nevoie să transmiteți informații despre ele. Pe lângă chitanță, fișierul XML de la o aplicație terță poate conține și date pentru sincronizare (în secțiunea ).

După primirea mesajului de primire, configurația marchează toate modificările trimise către mesajul anterior, așa cum a fost sincronizat cu succes. Doar modificările nesincronizate ale obiectelor (crearea unora noi, modificarea și ștergerea celor existente) vor fi trimise la aplicația externă în timpul următoarei sesiuni de sincronizare.

Când transferați date dintr-o aplicație externă în configurație, imaginea este inversată. Aplicația trebuie să completeze secțiunea în consecință, și în secțiune plasați obiecte pentru a fi sincronizate în format EnterpriseData.

După procesarea fișierului, configurația va genera un fișier XML care va conține un mesaj de primire și date noi pentru sincronizare din partea de configurare (dacă există de la ultima sesiune de sincronizare).

Aflați mai multe despre schimbul de date cu solutii aplicative pe platforma 1C:Enterprise în format EnterpriseData puteți vizualiza

Modul general de „manager de schimb printr-un format universal”.

Procedurile și funcțiile care descriu complet regulile de descărcare a datelor din baza de informații în formatul de schimb și regulile de încărcare a datelor din formatul de schimb în baza de informații sunt dezvoltate într-un modul comun - modulul de gestionare a schimbului printr-un format universal.


Orez. 4 Structura modulului de manager de schimb printr-un format universal

Modulul este creat automat folosind configurația „Conversia datelor”, ediția 3.0, pe baza regulilor de schimb configurate, sau manual în configurator.

Modulul este format din mai multe secțiuni mari, fiecare dintre ele conține propriul său grup de proceduri și funcții.

  1. Un comentariu. Prima linie a modulului conține un comentariu cu numele conversiei. Această linie este necesară pentru a identifica modulul atunci când se utilizează comanda în programul Data Conversion, ediția 3.0, de exemplu. // Conversie UP2.2.3 din 06/01/2017 19:51:50
  2. Proceduri de conversie. Conține proceduri predefinite care sunt efectuate în diferite etape ale sincronizării datelor: înainte de conversie, după conversie, înainte de completare amânată.
  3. Reguli de prelucrare a datelor (DPR). Conține proceduri și funcții care descriu regulile de prelucrare a datelor.
  4. Reguli de conversie a obiectelor (OCR). Conține proceduri și funcții care descriu regulile de conversie a obiectelor, precum și regulile de conversie a proprietăților acestor obiecte.
  5. Reguli de conversie a datelor predefinite (PDC). Conține o procedură care completează regulile de conversie a datelor predefinite.
  6. Algoritmi. Conține algoritmi arbitrari care sunt apelați din alte reguli (POD sau PKO).
  7. Opțiuni. Conține logica pentru completarea parametrilor de conversie.
  8. Scop general. Conține proceduri și funcții care sunt utilizate pe scară largă în reguli și algoritmi.

Parametrii procedurilor și funcțiilor care sunt utilizați în mai multe tipuri de proceduri din modulul manager sunt descriși mai jos.

Schimb de componente. Tip - Structură. Conține parametri și reguli de schimb inițializate ca parte a sesiunii de schimb.

Direcția de schimb. Tip – șir. Fie „Trimite”, fie „Primește”.

date IB. Tip – DirectoryObject sau DocumentObject.

Proceduri legate de evenimentele de conversie

Există trei proceduri predefinite care sunt apelate în timpul procesului de conversie:

  • Înainte de Conversie. Apelat înainte de sincronizarea datelor. Această procedură găzduiește de obicei logica pentru inițializarea diferiților parametri de conversie, popularea valorilor implicite etc. Parametri: Schimb de componente.
  • DupăConversie. Apelat după finalizarea sincronizării datelor, dar înainte să se producă umplutura leneșă. Opțiuni: Schimb de componente.
  • Înainte de umplere întârziată. Apelat înainte să apară umplerea leneșă. Logica pentru sortarea sau ajustarea tabelului obiectelor supuse umplerii leneșe poate fi localizată aici. Opțiuni: Schimb de componente.

Proceduri AML

Completați Regulile de prelucrare a datelor. O procedură de export care conține logica pentru completarea regulilor de prelucrare a datelor. Conține apeluri la alte proceduri care adaugă o regulă pentru procesarea unui anumit obiect la tabelul de reguli (vezi procedurile de mai jos Adăugați AML). Opțiuni: Direcția de schimb, Reguli de prelucrare a datelor

Adăugați UNDER_<ИмяПОД>. Un set de proceduri care populează tabelul SUB regulile pentru anumite obiecte. Numărul de astfel de proceduri corespunde numărului de AML furnizat pentru această conversie în programul Data Conversion, versiunea 3.0. Opțiuni: Reguli de prelucrare a datelor(un tabel de valori inițializat ca parte a sesiunii de schimb).

SUB_<ИмяПОД>_Când se procesează. Procedura conține textul handlerului În timpul procesării pentru un anumit AML. Handler-ul este conceput pentru a implementa logica de conversie la nivel de obiect. De exemplu, atribuiți un anumit PQO unui anumit obiect în funcție de conținutul obiectului. Opțiuni:

  • InformațiiB date sau DataXDTO(în funcție de direcția schimbului):
  • la trimitere – obiect ( DirectoryObject,DocumentObject);
  • la primire - o structură cu o descriere a obiectului XDTO.
  • Utilizarea PKO. Tip - Structura. Cheia conține un șir cu numele PCO și valoarea tipului boolean (Adevărat– se folosește PKO, Minciună– PKO nu este utilizat).
  • Schimb de componente.

SUB_<ИмяПОД>_Eșantionarea datelor. Funcția conține textul de gestionare La Descărcare. Handler-ul este conceput pentru a implementa un algoritm arbitrar pentru selectarea obiectelor de descărcat. Valoare returnată: o matrice de obiecte de descărcat. Matricea poate conține atât link-uri către obiecte infobase, cât și o structură cu date pentru încărcare. Opțiuni: Schimb de componente.

Proceduri PKO

Completați Regulile de conversie a obiectelor. O procedură de export care conține logica pentru completarea regulilor de conversie a obiectelor. Conține apeluri către alte proceduri care adaugă o anumită regulă de conversie a obiectelor la tabelul de reguli (vezi procedurile de mai jos Adăugați PKO). Opțiuni: Direcția de schimb, Reguli de conversie(un tabel de valori inițializat ca parte a sesiunii de schimb).

AdaugăPKO_<ИмяПКО>. Un set de proceduri care populează tabelul PKO cu reguli pentru anumite obiecte. Numărul de astfel de proceduri corespunde numărului de PKO furnizate pentru această conversie în programul Data Conversion, versiunea 3.0. Opțiuni: Reguli de conversie(un tabel de valori inițializat ca parte a sesiunii de schimb).

PKO_<ИмяПКО>_WhenSendingData. Procedura conține textul handlerului La Trimitere pentru un anumit PKO. Handler-ul este folosit la încărcarea datelor. Proiectat pentru a implementa logica de conversie a datelor conținute într-un obiect de bază de informații într-o descriere a unui obiect XDTO. Opțiuni:

  • InformațiiB date. Tip - DirectoryObject, DocumentObject. Obiectul de bază de informații în curs de procesare.
  • DataXDTO. Tip - Structura. Proiectat pentru a accesa datele obiectului XDTO.
  • Schimb de componente.
  • StackUploads. Tip - Matrice. Conține link-uri către obiecte descărcate, ținând cont de imbricare.

PKO_<ИмяПКО>_La conversia datelor XDTO. Procedura conține textul handlerului Când convertiți DataXDTO pentru un anumit PKO. Handler-ul este folosit la încărcarea datelor. Proiectat pentru a implementa logica arbitrară de conversie a datelor XDTO. Opțiuni:

  • DataXDTO. Tip - Structura. Proprietățile obiectului XDTO au fost trecute pretratament pentru a simplifica accesul la acestea.
  • Date primite. Tip - DirectoryObject, DocumentObject. Un obiect de bază de informații format prin conversia datelor XDTO. Nu sunt înregistrate în baza de date cu informații.
  • Schimb de componente.

PKO_<ИмяПКО>_Înainte de înregistrarea datelor primite. Procedura conține textul handlerului Înainte de înregistrarea datelor primite pentru un anumit PKO. Handler-ul este folosit la încărcarea datelor. Proiectat pentru a implementa o logică suplimentară care trebuie efectuată înainte de înregistrarea unui obiect în baza de informații. De exemplu, dacă modificările sunt încărcate în datele de securitate a informațiilor existente sau ar trebui să fie încărcate ca date noi. Opțiuni:

  • Date primite. Tip - DirectoryObject, DocumentObject. Un element de date generat prin conversia datelor XDTO.

Înregistrate dacă aceste date sunt noi pentru baza de informații (parametrul InformațiiB date conţine valoarea Nedefinit).

In caz contrar Date primite a inlocui InformațiiB date(toate proprietățile de la Date primite Transferat către InformațiiB date).

Dacă nu este necesară înlocuirea standard a datelor de securitate a informațiilor cu datele primite, ar trebui să scrieți propria logică de transfer și apoi să setați parametrul Date primite sens Nedefinit:

  • InformațiiB date. Tip - DirectoryObject, DocumentObject. Un element de date din baza de informații care corespunde datelor primite. Dacă nu se găsesc date care să se potrivească, conține Nedefinit.
  • ConvertingProperties. Tip - Tabelul de valori. Conține reguli pentru conversia proprietăților obiectului curent, inițializate ca parte a sesiunii de schimb.
  • Schimb de componente.

Proceduri PCPD

Completați regulile de conversie a datelor predefinite. O procedură de export care conține logica pentru completarea regulilor de conversie a datelor predefinite. Opțiuni: Direcția de schimb, Reguli de conversie(un tabel de valori inițializat ca parte a sesiunii de schimb).

Algoritmi

În programul „Conversia datelor”, ediția 3.0, este posibil să se creeze algoritmi arbitrari care sunt apelați de la manipulatorii AML și PKPD. Numele, parametrii și conținutul algoritmilor sunt determinate la elaborarea regulilor.

Opțiuni

Completați ConversionParameters. O procedură de export în care se completează structura cu parametrii de conversie. Opțiuni: Opțiuni de conversie(tip - Structura).

Proceduri și funcții cu scop general

ExecuteManagerModuleProcedure. Opțiuni: ProcedureName(linia), Opțiuni(structura). O procedură de export, care are scopul de a apela o procedură de modul non-export, al cărei nume și parametri sunt primiți ca intrare. Vă permite să apelați o procedură sau o funcție pe o linie fără a utiliza o metodă A executa.

ExecuteManagerModuleFunction. Opțiuni: ProcedureName(linia), Opțiuni(structura). Funcție, scop similar ExecuteManagerModuleProcedure. Diferența este că apelează o funcție și returnează valoarea acesteia.

Pentru a facilita integrarea cu produse software Compania 1C a dezvoltat formatul de schimb de date EnterpriseData. Formatul se bazează pe XML și este orientat spre business - structurile de date descrise în acesta corespund entităților de afaceri (documente și elemente de director) prezentate în programele 1C, de exemplu: act de finalizare, ordin de primire numerar, contraparte, acord etc. Acest lucru face ca formatul să fie intuitiv și ușor de utilizat.

Formatul EnterpriseData este destinat schimbului de date în cadrul unei companii (inclusiv între sistemele informaționale eterogene și îndepărtate geografic) și este conceput pentru a acoperi toate domeniile activităților întreprinderii - finanțe, producție, achiziții și vânzări, operațiuni de depozitare etc.

Descrierea formatului

Versiunea 1.0.1 a formatului include o descriere a 94 de tipuri de entități de afaceri din diverse domenii de afaceri ( descriere detaliata format poate fi găsit). Formatul este extensibil - 1C va adăuga descrieri ale noilor entități de afaceri și va extinde entitățile existente cu noi câmpuri. Suportul pentru formatul în produsele 1C asigură compatibilitatea de jos în sus - toate programele terțe care fac schimb de date în formatul EnterpriseData cu produsele 1C vor continua să funcționeze corect atunci când vor fi lansate versiuni noi ale formatului.

Formatul este destinat schimbului de informații între orice sisteme informaționale: nu depinde de caracteristicile software-ului propriu sau de structurile bazelor de informații care participă la schimb și nu conține restricții evidente de utilizare.

Formatul este folosit pentru a sincroniza datele între produsele software ale companiei 1C însăși. Următoarele produse acceptă în prezent acest format:

  • „1C:ERP Enterprise Management 2.0”,
  • „Contabilitatea întreprinderii”, ediția 3.0,
  • „Contabilitatea unei întreprinderi KORP”, ediția 3.0,
  • „Retail”, ediția 2.0,
  • „Managementul de bază al comerțului”, ediția 11,
  • „Trade Management”, ediția 11,
  • „Salarii și managementul personalului CORP”, ediția a 3-a.

Posibilă opțiune de schimb de date

Schimb de date cu programe 1C

Pre-configurare pe partea 1C

Pentru a începe schimbul de date în format EnterpriseData între aplicația 1C și o aplicație terță parte, trebuie să configurați sincronizarea datelor pe partea 1C. În timpul configurării este indicat cod unic aplicația cu care va avea loc schimbul, precum și prin ce canal vor fi schimbate datele. Următoarele opțiuni sunt disponibile în prezent:

  • serviciu web,
  • schimb de fișiere prin director,
  • schimb de fișiere prin FTP,
  • schimb prin e-mail.

În cazul schimbului prin intermediul unui serviciu web, o aplicație terță parte va iniția o sesiune de schimb de date apelând metodele web corespunzătoare ale aplicației 1C. În alte cazuri, inițiatorul sesiunii de schimb va fi aplicația 1C.

De asemenea, pe partea „1C” puteți configura cât de des va avea loc sincronizarea (pentru opțiunile cu schimb de fișiere prin intermediul unui director și e-mail):

  • conform programului (cu o frecvență dată);
  • manual; utilizatorul va trebui să înceapă manual sincronizarea de fiecare dată când are nevoie de ea.

Format de fișier Exchange

În timpul sincronizării, aplicațiile 1C și aplicațiile terțe fac schimb de mesaje - fișiere XML cu o anumită structură. Aceste fișiere constau din două secțiuni −

Și . Secțiune
conține un mesaj de chitanță (mai multe despre ea mai jos) și – informații despre entitățile comerciale modificate în format EnterpriseData.

Exemplu de mesaj

Secțiune (chitanța) conține informații de serviciu (pentru simplitate, să presupunem că mesajul vine de la aplicația 1C către o aplicație terță parte):

Dacă mesajul merge în direcția opusă - de la o aplicație terță parte la aplicația 1C, aplicația terță parte trebuie să completeze secțiunea corespunzător .

Aplicațiile 1C păstrează înregistrări ale mesajelor de sincronizare trimise și primite și se așteaptă la același lucru de la aplicațiile terțe. De ce se face acest lucru este prezentat mai jos.

Mecanism de strângere de mână

În timpul sincronizării, aplicațiile 1C transmit doar informații despre modificările care au avut loc cu entitățile de afaceri de la ultima sincronizare (pentru a minimiza cantitatea de informații transferate). În timpul primei sincronizări, aplicația 1C va încărca toate entitățile de afaceri în format EnterpriseData într-un fișier XML (deoarece sunt toate „noi” pentru aplicația externă). Următorul pas este pentru aplicația terță parte - trebuie să proceseze informațiile din fișierul XML și să le plaseze în secțiune în timpul următoarei sesiuni de sincronizare informații că un mesaj de la 1C cu un anumit număr a fost primit cu succes (plasați numărul mesajului primit de la 1C în câmpul ReceivedNo). Mesajul de primire este un semnal către aplicația 1C că toate entitățile de afaceri au fost procesate cu succes de aplicația externă și că informațiile despre acestea nu mai trebuie transmise. Pe lângă chitanță, fișierul XML de la o aplicație terță poate conține și date pentru sincronizare (în secțiunea ).

După primirea mesajului de primire, aplicația 1C marchează toate modificările transmise în mesajul anterior ca fiind sincronizate cu succes. Doar modificările nesincronizate ale entităților comerciale (crearea altora noi, modificarea și ștergerea celor existente) vor fi trimise la aplicația externă în timpul următoarei sesiuni de sincronizare.

Când transferați date dintr-o aplicație externă în aplicația 1C, imaginea este inversată. Aplicația trebuie să completeze secțiunea în consecință, și în secțiune plasați datele de afaceri pentru sincronizare în format EnterpriseData.

După procesarea fișierului, aplicația 1C va genera un fișier XML care va conține un mesaj de primire și date noi pentru sincronizare de la 1C (dacă există de la ultima sesiune de sincronizare).

Schimb prin serviciu web

Când utilizați un serviciu web, sesiunea de schimb este inițiată de o aplicație terță parte. Pentru a primi date din aplicația 1C, trebuie să apeleze metoda web GetData, trecând codul unic al aplicației introdus pe . Ca răspuns, 1C va returna un fișier care conține date despre entitățile de afaceri în format EnterpriseData. Formatul fișierului este descris.

Pentru a transfera date în 1C, aplicația trebuie să apeleze metoda web PutData, trecând codul unic al aplicației și fișierul zip în formatul descris mai sus ca parametri.

Schimb prin alte canale

În cazul schimbului de date prin intermediul unui director/director FTP sau e-mail, inițiatorul schimbului va fi aplicația 1C. Acesta va fi plasat în canalul corespunzător (director sau Cutie poștală) cu formatul descris mai sus și așteptați fișiere de răspuns de la o aplicație terță parte pe același canal. În cazul schimbului de director/director FTP, numele fișierului trebuie compus într-un mod special pentru ca aplicația 1C să-l poată procesa. În cazul schimbului de către e-mail Subiectul scrisorii trebuie să respecte o regulă specifică, iar la scrisoare trebuie să fie atașat un fișier arhivat cu date.

Concluzie

Gama de scenarii de integrare folosind formatul EnterpriseData este largă. Aceasta include schimbul de date în cadrul unei organizații, de exemplu, transferul de date către 1C: Contabilitate din alte aplicații pentru menținerea contabilității holistice sau schimbul de date între biroul central și depozitele de la distanță. Formatul este, de asemenea, potrivit pentru schimbul de date între diferite organizații.

În acest articol voi descrie experiența mea, până acum mică, în organizarea schimbului de date prin formatul universal EnterpriseData.

În cazul meu, schimbul este configurat între configurațiile „Trade Management 11.2” (în continuare UT) și „Enterprise Accounting 3.0.43” (în continuare BP). Schimbul este unidirecțional, de la UT la BP. Înainte de a actualiza Trade Management 11.1 la 11.2, schimbul de date a fost configurat utilizând configurația Data Conversion 2.0. Cu toate acestea, după trecerea la „11.2”, au apărut erori în „Trade Management” pentru utilizatori. A fost efectuată procedura de actualizare a regulilor de schimb, dar nu a dat niciun rezultat. Depanatorul a arătat că problema era în schimbul de date. S-a decis să se elimine setarea schimbului de date în ambele configurații și să o configureze din nou.

Atât „Managementul comerțului”, cât și „Contabilitatea întreprinderii” funcționează pentru noi versiunea client-server. Am început să configurez sincronizarea cu UT. Am efectuat-o în așa fel încât datele să fie încărcate din UT într-un fișier. Adică sincronizarea printr-un director de rețea. În BP am configurat schimbul în așa fel încât să nu fie descărcate date din BP.

Eroare la apelarea metodei context (Verificare): eroare de validare a datelor XDTO:
Structura obiectului „/Counterparty Bank Account/Bank” nu corespunde tipului: (http://v8.1c.ru/edi/edi_stnd/EnterpriseData/1.1)KeyPropertiesBank
Verificarea proprietății „BIK”:
forma: Element
nume: (http://v8.1c.ru/edi/edi_stnd/EnterpriseData/1.1)BIK
tip:
Proprietatea necesară lipsește
Obiect: Acord cu contrapartea nr. ...

Pentru a analiza eroarea, am dat click pe pictograma „Compoziția datelor trimise” și în lista contractelor de contractant înregistrate pentru trimitere am găsit acordul pentru care a apărut eroarea. Am deschis contractul și mi-am amintit contul bancar al contrapărții specificat în contract. Apoi am trecut la conturile bancare înregistrate pentru expediere. S-a dovedit că contul solicitat nu se afla în lista celor înregistrate. Am refăcut contul bancar problematic și contractul. După aceea, am înregistrat manual contul bancar necesar.

Am încercat din nou să sincronizez datele de la UT. De data aceasta datele au fost încărcate cu succes. ÎN folderul de rețea format fișier XML, care conțin date de transferat de la UT la BP.

Următorul pas este încărcarea datelor din fișier în departamentul de contabilitate al întreprinderii. În configurația „Contabilitatea întreprinderii”, am dat clic pe butonul „Sincronizare”, un formular de procesare deschis cu mesajul „Analiza datelor în curs”. Puțin mai târziu, mesajul s-a schimbat în „Încărcare de date în curs”. În același timp, indicatorul și contorul au arătat că peste 80 de mii de obiecte au fost descărcate din sursa de alimentare. Acest lucru m-a derutat, pentru că am indicat în setări că nu trebuie să se descarce nimic de la sursa de alimentare. Procesarea a durat destul de mult și s-a încheiat cu eroarea:

Eveniment: Schimb de date
(GeneralModule.Long-runningOperations.Module(371)): Procesul de lucru în fundal sa încheiat anormal
RaiseException(ErrorText);

Pentru a localiza eroarea, am încercat să schimb setările de sincronizare și opțiunile de funcționare ale bazei de alimentare. Drept urmare, când am convertit baza de date într-o versiune de fișier, sistemul a funcționat corespunzător: s-a deschis un formular pentru compararea a două baze de date. După potrivirea obiectelor, sincronizarea inițială a avut succes. Apoi am schimbat baza de date înapoi la versiunea client-server.

Odată cu testarea ulterioară a sincronizării, a fost necesar să se facă unele modificări la regulile de conversie a obiectelor. Este timpul să utilizați configurația Data Conversion 3.0. Ajutorul de configurare încorporat descrie modul în care funcționează. Articolele de pe site-ul ITS au ajutat și ele.

Ca rezultat, am încărcat următoarele date în „Data Conversion 3.0”:

  • Texte ale modulului general „Manager de schimb de date printr-un format universal” din două baze de date
  • Dispunerea ambelor baze
  • Descrierea formatului EnterpriseData (din orice bază de date)
  • Reguli de conversie

După descărcare, am deschis regulile pentru conversia datelor, obiectelor și proprietăților în „Conversia datelor 3.0”. Am făcut modificările de care aveam nevoie. Apoi am folosit butonul „Descărcați modulul manager de schimb”. Textul modulului a fost copiat în clipboard. Rămâne doar să îl introduceți în configurație.

După ce am experimentat cu setarea regulilor în „Conversia datelor 3.0”, am ajuns la concluzia mea că în cazul în care modificările care se fac sunt nesemnificative, este mai ușor să setați regulile direct în configurațiile UT și BP, în modulul general. „Manager de schimb de date prin formatul universal”. Dacă modificările sunt serioase, cum ar fi, de exemplu, adăugarea unui nou obiect la schimb, atunci ar trebui să utilizați configurația " Conversie de date 3.0".

Am efectuat sarcina de a adăuga documentul „Comandă către furnizor” la planul de schimb folosind „ Conversia datelor 3.0". În versiunea standard a UT - BP acest document nu este inclus în planul de schimb.

Să ne amintim că regulile de înregistrare a obiectelor pentru încărcare sunt încă configurate în configurația „Conversia datelor 2.0”.

Acestea sunt primele impresii ale sincronizării datelor prin formatul universal EnterpriseData.

P.S. Dacă aveți întrebări sau propriile observații despre schimbul de date prin formatul și configurațiile universale" Conversia datelor 3.0”, scrieți în comentarii. Vom face schimb de experiențe.

  • Sincronizarea datelor
  • Format Universal EnterpriseData
  • Conversia datelor 3.0
  • Conversia datelor 2.0
  • Managementul comertului
  • Contabilitatea întreprinderii