1s 8.2 reguli pentru convertirea documentelor. Se încarcă regulile de sincronizare

1. Introducere.

2. Ce veți avea nevoie: Configurare 1C: Conversie de date 2.* și procesare din pachet. Pentru sarcini de exemplu, să luăm configurațiile 1C: Managementul comerțului 11 și 1C: BP 3.*.

Deci, pentru a dezvolta reguli de încărcare a datelor în 1C, veți avea nevoie de configurația 1C: Object Conversion 2, precum și de procesarea inclusă în pachet.

De exemplu, am implementat deja o bază de date de conversie și am lansat-o.

Vom scrie dezvoltarea regulilor de schimb între configurația 1C: Trade Management 11 și 1C: Enterprise Accounting 3 (reguli de schimb UT / ACCOUNT).

3. Vom avea nevoie de Procesare pentru a descărca structura și schimbul de metadate.

Primul lucru pe care trebuie să-l obțineți pentru dezvoltare sunt fișierele cu o structură de metadate. Acest lucru se realizează folosind procesarea pentru descărcarea structurii de metadate incluse în pachetul de conversie a obiectelor.

De fapt, în directorul de configurare dezambalat pentru configurații pe formulare gestionate, suntem interesați de procesarea MD83Exp.epf. Dacă descărcarea trebuie făcută din configurații pe formulare obișnuite, atunci se utilizează procesarea MD82Exp.epf. Asta dacă, de exemplu, trebuie să obțineți o structură din configurații precum 1C: UT 10, 1C: Manufacturing Enterprise Management 1.3, 1C: Integrated Automation 1.1, 1C: Zup 2.5 și așa mai departe.

În plus, pentru a încărca și descărca date în 1C folosind regulile noastre, va trebui să procesați „Schimb universal de date în format XML” V8Exchan83.epf pentru configurații pe formulare gestionate, cum ar fi 1C: Trade Management 11.*, 1C BP 3, 1C: ERP 2. * și similare. Și, în consecință, V8Exchan83.epf - pentru configurații pe formulare obișnuite.

4. Încărcarea structurii de metadate a configurației 1C: Trade Management 11.3 și 1C: Enterprise Accounting 3.0.*

Să începem prin a descărca structura metadatelor din configurația 1C: Enterprise Accounting 3.
Să deschidem procesarea MD83Exp.epf

În formularul de procesare există setări suplimentare în care putem activa sau dezactiva opțiunea de a încărca registre și mișcări în 1C. Există, de asemenea, posibilitatea de a alege unde va avea loc încărcarea: pe serverul 1C sau „pe client”. Specificați numele fișierului în care va fi încărcată structura de date. În mod similar, descarcăm structura de metadate a configurației Trade Management 11.

Acum trebuie să încărcați configurația în baza de date de conversie. Acest punct poate fi atins atât din lista de configurații, cât și din lista de conversii. Să pornim doar de pe desktop:

În caseta de dialog, încărcați structura BP:

Și în mod similar - structura de management al comerțului.

Odată ce descărcarea este finalizată, va apărea o casetă de dialog în care puteți specifica un nume care este convenabil pentru dvs.

6. Crearea regulilor de conversie în 1C folosind un exemplu specific de sarcină.

Apoi, mergeți la „Setarea regulilor de obiect”, unde creăm o nouă setare.
În caseta de dialog pentru crearea conversiei, selectați configurația „sursă” și configurația „destinație” (pe care le-ați încărcat anterior) și faceți clic pe OK.

Deoarece în acest articol am plănuit să arăt creația „de la zero” și „fără gunoi”, vă reamintesc că nu creăm nimic automat. Fara prototipuri.

Nu vom face nimic în această casetă de dialog, doar faceți clic pe „Închidere”.

Să creăm reguli pentru încărcarea nu a unui document într-unul, ci a unui tip în altul, de exemplu, documentul Vânzări de bunuri și servicii din UT 11 cu cărțile de referință necesare în documentul Recepție de bunuri și servicii în BP 3.

Deci, creăm un nou PKO (regula pentru conversia obiectelor în 1C)

Selectați sursa Vânzări de bunuri și servicii și primirea de bunuri și servicii de destinație și faceți clic pe OK.
În acest caz, va apărea o casetă de dialog, în care refuzăm din nou crearea automată a PKS (Property Conversion Rules). În continuare, le vom selecta doar pe cele necesare.

Dar la propunerea de a crea un DDA (reguli de încărcare a datelor), răspundem „Da”.

Sunt create PVD-uri, care se vor reflecta în procesarea schimbului universal XML pentru selecție:

Vor fi create și reguli de conversie a datelor cu reguli de conversie a proprietăților goale.

Mai mult, se poate observa că implicit software-ul este oferit pentru a fi căutat prin identificatorul de obiect intern. Acest lucru este indicat de lupa de lângă PCO. Vom face propria noastră căutare și o vom face după numărul și data documentului la începutul zilei.

Eliminam căutarea de către UIO:

Acum să începem să comparăm proprietățile (detaliile) necesare ale obiectului. Pentru a face acest lucru, faceți clic pe „Synchronize Properties” (eticheta „1” pe ecran). Înlăturăm crearea recursivă de reguli („2”). Eliminați toate detaliile marcate ("3"). Și vom alege singuri ce avem nevoie.

De exemplu, selectați ceea ce aveți nevoie:

Vă atrag atenția asupra faptului că vom transforma PKS-ul contrapărții în organizație și organizația în contraparte și vom compara, de asemenea, unele detalii care nu se potrivesc după nume, de exemplu, „Moneda” și „Document Valută".

Unde vedem că nu există încă reguli de conversie.

Să începem să trecem prin detalii și să le descriem. Mai întâi, am configurat o căutare a documentelor așa cum am scris mai devreme, încărcăm și căutăm un document la începutul datei și modificăm numerotarea. Vom înlocui primele trei caractere cu prefixul nostru „UTB”. Și deoarece numerotarea în BP și UT ​​este de 11 caractere fiecare, facem un număr compus: prefixul nostru și 8 caractere din sursă. Un exemplu în captura de ecran de mai jos.

Încărcăm întotdeauna documente descărcate și fără mișcare. Presupunem că documentele vor fi procesate în receptor după verificarea de către utilizator.

Pentru a face acest lucru, setând PKS ca neefectuat, 0 sau 1, îl folosim ca boolean.

Folosind moneda ca exemplu, creăm o regulă de conversie a obiectelor pentru PKS. În același timp, credem că există monede în ambele baze de date și ar trebui sincronizate prin cod. Prin urmare, nu vom crea toate PKS în PQS Moneda, ci vom adăuga doar codul de căutare. Acestea. Refuzam oferta de a crea un PKS pentru obiect.

Regula de conversie creată a fost înlocuită în PQR-ul documentului pentru PKS. Și regula implicită în sine este oferită de un identificator unic. O reparăm, căutăm codul și setăm proprietatea pentru a nu crea un obiect nou.

Ca rezultat, obținem următoarea opțiune:

Apoi, prin analogie, creăm PKO și PKS pentru detaliile rămase. Mai mult, căutăm o organizație după contraparte și invers după TIN. Cam așa arată cu detalii minime (puteți adăuga dacă este necesar).

Pentru acordurile de contraparte PKO, căutăm după contrapartea PKS, nume și proprietar.

Să vedem cum să specificăm valoarea necesară în tipul de enumerare în PKS. De exemplu, atributul „Tip de operație”. Aici puteți utiliza diferite condiții și valori de înlocuire. De exemplu, avem nevoie ca „tipul operațiunii” să fie întotdeauna descărcat „Marfa”, în acest caz este suficient să scrieți valoarea necesară în linia „frunte”.

Mai jos este prezentat modul de instalare fără dificultate și în majoritatea cazurilor PCS pentru Multiplicitatea decontării reciproce, Rata de decontare reciprocă, Cont contabil.

Pentru Nomenclatura PKO, vom părăsi căutarea după identificatorul unic intern. Dar permiteți-mi să vă atrag atenția asupra modului în care vă puteți redefini grupul. De exemplu, suntem de acord ca un articol nou să fie încărcat din configurația 1C: Trade Management 11, dar este necesar ca articolul să fie colectat într-un grup specific „Grupul nostru”.

Pentru a implementa această sarcină, creăm un alt PKO. Să-l numim „NomenclatureParent”, pe care îl vom indica în PCS-ul părintelui în regula de conversie.

Am configurat două căutări: după nume, unde indicăm cu strictețe numele grupului nostru, iar proprietatea necesară a atributului „Acesta este un grup” este setată la adevărat.

Deoarece am decis că toate articolele noastre se încadrează în grupul nostru, nu este nevoie să descarcăm grupuri din UT 11 la descărcare. Pentru a face acest lucru, în software-ul Nomenclatură din handlerul de evenimente „Înainte de descărcare”, vom seta un filtru care. nu este nevoie să descărcați grupuri „Eșec = Sursă”.

În DRP (reguli de încărcare a datelor) pentru vânzările de produse și servicii, vom adăuga un filtru, astfel încât documentele marcate pentru ștergere să nu fie încărcate. Pentru a face acest lucru, în VDP în handlerele de evenimente „Înainte de descărcare”, vom scrie filtrul „Eșec = Object.DeletionMark;”.


Să salvăm regulile dezvoltate într-un fișier.


7. Pentru a rezuma: Încărcarea și încărcarea datelor utilizând regulile de schimb de date dezvoltate.

Deschideți în 1C: Managementul comerțului 11 procesarea „Schimb universal de date în format XML” V8Exchan83.epf.

Descărcarea a fost finalizată, acum folosim aceeași procesare pentru a încărca în 1C: Enterprise Accounting 3.


Încărcare finalizată. Să verificăm cum s-a încărcat. Deci, documentul este încărcat, așa cum ne-am dorit - organizația noastră este încărcată în contraparte, iar contrapartea în organizație. Conturile de contabilitate sunt toate descărcate și instalate. Am primit numărul documentului cu prefixul nostru și la începutul zilei. Toate detaliile care au fost furnizate au fost completate.

Verificăm încărcarea articolelor. Vedem că totul a ieșit așa cum ne-am plănuit.


Am creat și completat detaliile așa cum ne-am propus. Există multe subtilități în conversie și câteva lucruri simple, dar necesare, care ajută la scrierea corectă a conversiei. Și acest lucru vă permite să minimizați erorile, să nu stricați datele existente și să scăpați de gunoiul inutil. Acesta este unul dintre cele mai simple exemple. De asemenea, puteți converti un obiect în mai multe sau, dimpotrivă, mai multe în unul.

Acum există conversia datelor 3, rezolvă alte probleme. Prin urmare, este necesară și conversia 2. Mult succes tuturor la învățare și stăpânire.

Bineînțeles, dacă ești programator și aceasta este munca ta principală, poți încerca să scrii singur conversia. Dar dacă nu, atunci ar trebui să apreciezi timpul petrecut în domeniul tău de activitate și să ceri profesioniști să îndeplinească această sarcină.

Există o versiune actualizată DB 1C Trade Management (denumită în continuare UT) ediția 10.2 pe platforma 8.1.
Și există o bază de date standard de contabilitate 1C pe platforma 8.3.

Sarcină:

Stabiliți schimbul de date între bazele de date.

Soluţie:

Instalat 1C Data Conversion, ediția 2.1.
Încărcat.
Lansez „Asistentul de pornire” (Fig. 1).

1. În continuare.
2. Selectați „Creați reguli noi de schimb de date (de la zero)”. Mai departe.
3. În al treilea pas, programul vă solicită să specificați configurațiile sursă și destinație.
Creez o configurație sursă (1C UT):
- deoarece am 1C UT pe platforma 8.1, iau procesarea externă MD81Exp.epf de pe discul ITS ( îl poți descărca).
- Deschid 1C UT. Fișier --> Deschidere --> MD81Exp.epf .

Precizez fișierul în care vor fi încărcate informații despre structura metadatelor. Trebuie să fie în format XML.

Dau clic pe butonul „Încărcare”.

La fel fac si cu baza receptorului. Cu 1C Contabilitate 8.3. Numai pentru asta folosesc procesarea externă MD83Exp.epf ( îl poți descărca).

Mă întorc la 1C Data Conversion.

Ne-am oprit la pasul 3. Faceți clic pe butonul „Nou” și specific fișierul de structură de metadate generat. Această structură va fi încărcată în directorul de configurare.

4. În al patrulea pas, selectați opțiunea „Creați automat toate regulile posibile de schimb de date”.

Acum s-a deschis o nouă fereastră în fața noastră. Au fost create reguli de conversie a obiectelor. Trebuie să creați reguli de încărcare a datelor. Pentru a face acest lucru, accesați a doua filă „Reguli de încărcare a datelor” și faceți clic pe butonul „Creați reguli de încărcare”.

Pentru a configura schimbul de date între diverse configurații (inclusiv autoscrise) în 1C, există un mecanism foarte flexibil pentru configurarea transferului de informații - configurația 1C „Conversia datelor” (CD). Să ne uităm la modul în care funcționează acest mecanism și să încercăm să stabilim reguli de schimb între două configurații tipice:

  • Enterprise Accounting (versiunea demo), ediția 3.0.30;
  • Managementul salariului și al personalului (versiunea demo), ediția 3.0.25.

Instrumentul de configurare pentru stabilirea regulilor de schimb va fi versiunea Data Conversion 2.1.82. Lucrările se vor executa pe platforma 8.3.9.

Este important de reținut că Data Conversion vă permite să organizați schimbul nu numai între bazele de date ale versiunii 8 a programului, ci și între versiunile 7 și 8 ale platformei 1C.

Asistent de pornire

După instalarea configurației „Conversia datelor” și lansarea acesteia, prima fereastră care se deschide este Asistentul de pornire (Fig. 1).

O puteți apela din nou din meniul Operațiuni->Procesare sau din Ajutor, unde această procesare este evidențiată ca o comandă separată.

Deoarece nu intenționăm să folosim reguli de transfer standard, dar vom crea propriile noastre, în următoarea fereastră vom selecta elementul corespunzător din listă (Fig. 2).

Fig.2

Pe lângă crearea de noi reguli de schimb, putem:


În acest moment, ar trebui să luăm o mică pauză de la crearea regulilor de schimb și să vorbim despre fișierele de structură de configurare.

Fișiere cu structură de metadate

Pachetul de configurare „Conversion” include mai multe procesoare externe care vă permit să descărcați structura metadatelor într-un fișier xml.

Regula importanta! Procesarea de descărcare a structurii pentru diferite baze de date trebuie să aparțină aceleiași versiuni de CD.

Pentru diferite versiuni ale platformei, 1C a implementat diferite procese de descărcare a structurii:

  • MD77Exp.ert – vă permite să salvați structura de configurare cu șapte baze de date într-un fișier;
  • MD82EXP.epf – exportă structura bazelor de date care rulează pe platformele versiunea 8.0-8.2;
  • MD83EXP.epf – proiectat pentru platforma 8.3.

Deoarece în condițiile sarcinii noastre este necesar să organizăm un schimb între bazele de date care rulează pe versiunea 8.3, vom folosi a treia procesare (Fig. 4).

Fig.4

Aici trebuie să specificăm fișierul în care va fi încărcată structura și putem configura un set de tabele auxiliare care vor participa la schimb.

După ce fișierele de configurare de destinație și sursă au fost descărcate, informațiile din acestea trebuie să fie încărcate în Data Conversion.

Pentru aceasta:


Pentru a doua bază repetăm ​​aceiași pași.

Să revenim la asistentul nostru.

Continuați să lucrați cu asistentul

După ce am adăugat cele două baze de date ale noastre în director, arată ca (Fig. 6).

Să continuăm să lucrăm cu asistentul

În fereastra următoare (Fig. 7) trebuie să selectăm baza receptorului și baza sursă.

Fig.7

Și acum ajungem la fereastra în care ni se va cere să stabilim pe ce legi și corespondențe se va baza schimbul nostru (Fig. 8).

Fig.8

Programul poate în mod independent, folosind algoritmii încorporați în el, să creeze schimburi de date. Selectând al doilea comutator, putem selecta din regulile create automat pe cele care sunt cele mai potrivite pentru rezolvarea problemei noastre. Dacă dorim să stabilim independent ce și cum să transferăm și prin ce detalii să comparăm datele, trebuie să setăm comutatorul pe a treia poziție.

Deoarece vrem să ne creăm propriile reguli, vom lua a treia cale.

Crearea unei reguli pentru schimbul între directoare

Setați comutatorul la al treilea element din listă și faceți clic pe butonul „Run”.

Ne aflăm în vrăjitorul de setări pentru elementul de director „Reguli de conversie a obiectelor” (Fig. 9)

Fig.9

În baza de date sursă, trebuie să selectăm un obiect ale cărui date vor fi sincronizate.

În baza de date a receptorului există un tabel în care vor merge aceste date.

La următoarea etapă trebuie să decidem asupra parametrilor de încărcare:

  • Ce detalii vor fi folosite pentru a căuta o potrivire;
  • Ce să faci cu elementele existente;
  • Dacă să creeze elemente lipsă;
  • Cum să faci față link-urilor;
  • Ce reguli să folosiți pentru numerotarea elementelor noi.

Și încărcați parametri.

Dacă decidem să efectuăm potrivirea automată a datelor, vom sări peste acest pas.

La final, trebuie să încărcăm pe disc regulile create (Fig. 10).

Fig.10

Schimb de date

Vom efectua schimburi suplimentare de date folosind procesarea V8Exchan83.epf (Fig. 11), inclusă și în pachetul de livrare. Utilizarea schimbului de date standard, care face parte din configurație sau procesare autoscrisă, atunci când se utilizează regulile create în CD, poate duce la apariția unei situații excepționale.

Fig.11

Și încă o dată: este extrem de important ca versiunea fișierului de încărcare, configurația și procesarea schimbului să se potrivească și să fie preluate din aceeași livrare, doar că în acest caz te vei proteja cât mai mult de tot felul de probleme.

În orice caz, dacă verificarea corectitudinii transferului de date arată prezența unor situații de conflict și erori, procesarea transferului vă permite să ștergeți aceste date din baza de date.

Probabil ca fiecare specialist 1C a intampinat nevoia de a transfera date de la o baza de informatii la alta. În cazul în care configurațiile sunt diferite, trebuie să scrieți reguli de conversie a datelor. Aceste reguli sunt create în configurația 1C „Conversie de date”.

De asemenea, datele pot fi transferate folosind . Multe configurații 1C 8.3 au funcționalitate standard pentru configurarea sincronizării datelor între diferite configurații și integrare perfectă cu 1C Document Flow.

Dar atunci când datele trebuie să fie transferate între configurații absolut identice, vă puteți simplifica sarcina și puteți utiliza procesarea standard pentru încărcare și descărcare prin XML. Vă rugăm să rețineți că această metodă, precum conversia datelor, compară obiectele între ele printr-un identificator unic (GUID) și nu după nume.

Puteți descărca această procesare pe discul ITS sau folosind link-urile:

Este universal și potrivit pentru orice configurație.

Să luăm în considerare un exemplu de descărcare a directorului „Nomenclatură” dintr-o bază de informații 1C 8.3 Contabilitate 3.0 în alta. O condiție prealabilă va fi selecția de către părinte (grup) „Prelucrarea lemnului”.

Încărcarea datelor din 1C în XML

Accesați baza de informații din care vor fi descărcate datele (sursă). Asigurați-vă că le verificați, ținând cont de toate condițiile posibile pentru a evita consecințele nedorite.

Procesarea de încărcare și descărcare a datelor XML deschise (Ctrl+O).

Suntem interesați de fila „Încărcare”. Mai întâi de toate, specificați numele fișierului în care vor fi încărcate datele și calea pentru salvare. În acest caz, datele sunt încărcate „într-un fișier de pe server”.

În antetul de procesare puteți configura perioada pentru care se va efectua selecția. De asemenea, pentru registrele periodice, puteți specifica metoda de aplicare a selecției pe perioadă. Dacă este necesar să încărcați mișcări împreună cu documente, este setat steag-ul corespunzător. În acest caz, supraîncărcăm directorul, deci nu este nevoie să configurați nimic în antet.

Să trecem la selectarea datelor pentru încărcare. În partea tabelară a formularului de procesare, bifați casetele de selectare pentru obiectele de configurare pe care trebuie să le transferați.

Coloana „Descărcați dacă este necesar” înseamnă dacă este necesară supraîncărcarea acestui obiect dacă este referit de atributul directorului pe care îl supraîncărcăm. De exemplu, poziția articolului pe care îl încărcați are o unitate de măsură care nu se află în baza de date țintă. Dacă steagul din coloana „Încărcare dacă este necesar” este bifat vizavi de cartea de referință cu unitățile de măsură, va fi creată o nouă poziție. În caz contrar, valoarea atributului va fi „<Объект не найден>" și identificatorul său unic.

Într-un caz simplu, fără selecții, setarea de supraîncărcare a articolului va arăta astfel.

În acest exemplu, trebuie să selectați numai elementele care se află în folderul „Prelucrarea lemnului”.

Procesarea similară pentru 8.2 vă permite să setați selecții pentru fiecare obiect de configurare într-o formă convenabilă. În 8.3, din păcate, nu există o astfel de funcționalitate. O modalitate de ieșire în această situație ar fi să selectați elementele necesare în fila „Obiecte suplimentare pentru descărcare”.

Puteți adăuga obiecte aici fie manual (butonul „Adăugați”), fie la cerere („Adăugați la cerere...”). Dacă există un număr mare de ele, a doua opțiune este de preferat.

În acest caz, cererea va fi după cum urmează. Completați parametrii, completați solicitarea după verificarea datelor și faceți clic pe butonul „Selectare rezultat”.

După ce ați specificat toate obiectele și elementele suplimentare necesare pentru încărcare, faceți clic pe butonul „Încărcați date”. Acestea vor ajunge într-un fișier XML, numele și calea cărora le-ați specificat mai devreme. Rezultatele acestei operațiuni vor fi afișate în mesaje.

În acest exemplu, a fost necesar să se descarce doar 3 poziții, dar cinci au fost descărcate. Acest lucru se datorează faptului că un steag a fost setat vizavi de directorul „Nomenclatură” în coloana „Încărcare dacă este necesar”. Odată cu posturile necesare, părinții lor erau supraîncărcați.

Se încarcă un director din XML

După descărcarea cu succes a datelor din configurația sursă într-un fișier XML, deschideți baza de date de destinație. Structura obiectelor și detaliile lor trebuie să se potrivească între ele. În acest caz, transferul se realizează între două configurații standard 1C: Contabilitate 3.0.

Deschideți procesarea în baza de date a receptorului. Această prelucrare este utilizată atât pentru încărcare, cât și pentru încărcarea datelor. Accesați fila „Descărcare” și specificați calea către fișierul XML în care datele au fost descărcate anterior. După aceea, faceți clic pe butonul „Descărcați date”.

Rezultatul descărcării va fi afișat în mesaje. În cazul nostru, totul a mers bine.

Directorul „Nomenclatură” din baza de date destinatară nu a fost completat. Acum are cinci elemente: trei poziții de nomenclatură și două grupuri.