KOMBANA

Ka nga ata që e lexojnë këtë lajm para jush.
Regjistrohu për të marrë artikujt më të fundit.
Email
Emri
Mbiemri
Si do të dëshironit të lexoni Këmbanën
Nuk ka spam

Konfigurimi i specializuar "1C: Konvertimi i të dhënave 2.0"

Lëshimi i versionit të tetë të platformës 1C:Enterprise është bërë një hap i rëndësishëm në zhvillimin e sistemeve të automatizimit. Gjatë dizajnimit të platformës 1C:Enterprise 8, u mor parasysh përvoja e madhe e përdorimit të zgjidhjeve të bazuara në platformën 1C:Enterprise 7.7: gjuha e integruar e platformës dhe konfigurimet tipike u ridizajnuan seriozisht, struktura e ruajtjes dhe aksesit të të dhënave u ndryshua, u krijuan zgjidhje të reja të industrisë që realizojnë avantazhet e platformës së re. Përdorimi i konstrukteve të mëparshme gjuhësore në platformën e re është bërë i papërshtatshëm.

Për të lehtësuar zgjidhjen e këtij problemi (transferimi i të dhënave nga versioni 7.7 në versionin 8), 1C ka lëshuar një konfigurim të specializuar "Konvertimi i të dhënave 2.0". Ajo u krijua për të ndihmuar specialistët në zgjidhjen e problemeve të ndryshme të transferimit të të dhënave. 1C ka lëshuar rregulla të gatshme për transferimin e të dhënave nga konfigurimet e të njëjtit lloj, për shembull, nga 1C: Kontabiliteti 7.7 në 1C: Kontabiliteti 8, por përdoruesit e konfigurimeve standarde jo standarde ose të modifikuara kur kalojnë në platformën 1C: Enterprise 8 do të duhet të krijoni vetë të dhënat e rregullave të transferimit.

Me gjithë shumëllojshmërinë e metodave private për zgjidhjen e problemeve të transferimit të të dhënave, gama e çështjeve që duhet të zgjidhen mbetet praktikisht e pandryshuar:

Sinkronizimi i informacionit të referencës (krijimi i të rejave, përditësimi elementet ekzistuese drejtoritë, fshirja, ruajtja ose ndryshimi i hierarkisë, degëzimi i të dhënave, transferimi i historisë së ndryshimit të vlerave të detajeve periodike);

Sinkronizimi i dokumenteve dhe operacioneve (krijimi, modifikimi i dokumenteve ose transformimi i një lloji dokumenti në një tjetër, bashkimi ose riprodhimi);

Krijimi i kushteve të mjaftueshme fillestare për mbajtjen e regjistrave kontabël aktivitet ekonomik(transferimi i mallrave të mbetura etj.).

Strukturat e ruajtjes së të dhënave në 1C: Ndërmarrja e versioneve dhe/ose konfigurimeve të ndryshme janë të ndryshme, kështu që transferimi i të dhënave nuk është vetëm kopjimi i skedarëve ose tabelave, por transformimi i tyre. Në mënyrë që transformimi të jetë i paqartë dhe i saktë, është e nevojshme të krijohen dhe konfigurohen rregullat për transferimin e të dhënave. Krijimi dhe konfigurimi i rregullave për transferimin e të dhënave ndërmjet infobazave të ndryshme është i mundur nëse dihet struktura e ruajtjes së të dhënave në bazën e të dhënave burimore dhe destinuese. Përshkrimi i strukturës së meta të dhënave të konfigurimit duhet të unifikohet. Konfigurimi "Data Conversion 2.0" përdoret për të krijuar dhe konfiguruar rregullat e transferimit të të dhënave bazuar në përshkrimet e strukturës së meta të dhënave të konfigurimit të burimit dhe destinacionit.

Procesi i transferimit të të dhënave ndërmjet infobazave përbëhet nga hapat e mëposhtëm:

  • 1. Krijimi i skedarëve të përshkrimit të meta të dhënave.
  • 2. Krijimi i konfigurimeve në "Konvertimi i të dhënave".
  • 3. Krijimi i vetë konvertimit.
  • 4. Krijimi i vazhdueshëm i rregullave të konvertimit të të dhënave.
  • 5. Krijimi i vazhdueshëm i rregullave të ngarkimit të të dhënave.
  • 6. Procedura aktuale për shkarkimin dhe ngarkimin e të dhënave nga një konfigurim në tjetrin.

Sepse përdorimi i këtij konfigurimi të specializuar është një nga më efektivët ky moment mënyrat e zgjidhjes së problemeve të këtij lloji, dhe përveç kësaj, një burim i përvojës personale që është shumë i dobishëm për qëllime arsimore, më pas për të zhvilluar një mekanizëm për shkëmbimin e të dhënave midis IS "Server: Llogaritja e qirasë" dhe "1C: Kontabiliteti i Ndërmarrjes". " për LLC "LLC", një metodë e bazuar në përdorimin e konfigurimit "Data Conversion 2.0".

Konvertimi i të dhënave 2.0 dhe 2.1 është një konfigurim teknologjik 1C i zbatuar në versionet e platformës nga 8.1 në 8.3.

Detyra kryesore e mjetit është të shkruajë rregullat e shkëmbimit ndërmjet zgjidhjeve aplikacioni 1C 8 dhe 7. Versioni aktual i konvertimit të të dhënave sot është 3.0.

Konvertimi i të dhënave është një konfigurim shumë i dobishëm, me të mund të zgjidhni jo vetëm çështjen e transferimit të informacionit nga një bazë informacioni në tjetrin, por gjithashtu, për shembull, konvertimin e informacionit brenda një baze të dhënash.

Konfigurimi është shumë i përshtatshëm për t'u përdorur kur .

Konvertimi i të dhënave do të jetë i dobishëm për çdo programues: të kesh aftësi për të krijuar rregulla shkëmbimi është një plus serioz për aftësitë profesionale.

Për të mësuar se si të punoni me konfigurimin, zgjidhja e problemeve praktike është më e përshtatshme. Mundohuni të krijoni detyra për veten tuaj, për shembull: transferoni çdo informacion nga një bazë të dhënash në tjetrën, ktheni një dokument zbatimi në një dokument marrjeje, "drive" bilancet korenteKontabiliteti në dokumentin "hyrja e bilanceve" dhe detyra të tjera.

Do të jetë shumë e dobishme të kuptoni rregullat "tipike" të shkëmbimit 1C 8.3, atje shpesh mund të gjeni shembuj interesantë të zbatimit të detyrave.

Për të kuptuar bazat, do t'ju duhen materiale, i konsideroni ato më poshtë.

Video udhëzime për konvertimin

Për bazat e konfigurimit të shkëmbimit të të dhënave në 1C duke përdorur konfigurimin "Konvertimi i të dhënave 1C", shihni videon për një shembull:

Materiale, tekste shkollore për studimin 1C Konvertimi i të dhënave 2.0

Nuk ka shumë materiale dhe dokumentacion në rrjet, u përpoqa të mbledh materialet më të rëndësishme dhe interesante:

0. Para së gjithash, unë këshilloj kursin falas të videove të Ilya Leontiev, është në dispozicion në lidhje.

1. Para së gjithash do të këshilloja të përdorni ndihmën e integruar në konfigurim. Është vërtet i shkruar mirë dhe i zbatuar teknikisht:

2. Burimi i dytë më i rëndësishëm i informacionit është faqja http://www.mykod.info/ (faqja u mbyll), e specializuar vetëm në konvertimin e të dhënave. Aty mund të shkarkoni një numër të madh materialesh konvertimi.

3. Më vete, do të doja të theksoja manualin e trajnimit - (autor - Olga Kuznetsova).

Migrimi i të dhënave midis konfigurimeve të ndryshme nuk është një detyrë e parëndësishme. Si gjithmonë, ka disa zgjidhje, por jo të gjitha janë optimale. Le të përpiqemi të kuptojmë nuancat e transferimit të të dhënave dhe të zgjedhim një strategji universale për zgjidhjen e çështjeve të tilla.

Problemi i migrimit të të dhënave (kjo ka të bëjë thjesht me produktet e kompanisë 1C) nga një zgjidhje në tjetrën nuk u ngrit dje. Kompania 1C është e vetëdijshme për vështirësitë me të cilat përballen zhvilluesit kur krijojnë migrime, kështu që përpiqet të ndihmojë me mjetet e mundshme.

Gjatë zhvillimit të platformës, kompania prezantoi një sërë mjetesh universale, si dhe teknologji që thjeshtojnë transferimin e të dhënave. Ato janë të integruara në të gjitha zgjidhjet standarde dhe problemi i migrimeve ndërmjet konfigurimeve identike në përgjithësi është zgjidhur. Fitorja konfirmohet edhe një herë nga integrimi i ngushtë i zgjidhjeve standarde.

Me migrimet ndërmjet zgjidhjeve jo standarde, situata është disi më e ndërlikuar. Një gamë e gjerë teknologjish i lejon zhvilluesit të zgjedhin në mënyrë të pavarur mënyrën më të mirë për të zgjidhur një problem nga këndvështrimi i tyre.

Le të shqyrtojmë disa prej tyre:

  • shkëmbim përmes skedarëve tekst;
  • përdorimi i planeve të shkëmbimit;
  • etj.

Secila prej tyre ka të mirat dhe të këqijat e saj. Për ta përmbledhur, disavantazhi kryesor do të jetë folja. Zbatimi i pavarur i algoritmeve të migrimit është i mbushur me kosto të konsiderueshme kohore, si dhe një proces të gjatë korrigjimi. Nuk dua të flas as për mbështetjen e mëtejshme të vendimeve të tilla.

Kompleksiteti dhe kostoja e lartë e mirëmbajtjes e shtynë kompaninë 1C të krijojë një zgjidhje universale. Teknologji që ju lejon të thjeshtoni sa më shumë zhvillimin dhe mbështetjen e migrimeve. Si rezultat, ideja u zbatua në formën e një konfigurimi të veçantë - "Konvertimi i të dhënave".

Konvertimi i të dhënave - zgjidhje standarde, vetë-konfigurim. Çdo përdorues me një abonim ITS:Prof mund ta shkarkojë këtë paketë plotësisht falas nga faqja e mbështetjes së përdoruesit ose disku ITS. Instalimi kryhet në mënyrë standarde - si të gjitha zgjidhjet e tjera standarde nga 1C.

Tani pak për të mirat e zgjidhjes. Le të fillojmë me më të rëndësishmin - shkathtësinë. Zgjidhja nuk është e përshtatur për konfigurime/versione të caktuara të platformës. Ai funksionon po aq mirë si me konfigurimet standarde ashtu edhe me ato të shkruara vetë. Zhvilluesit marrin një teknologji universale dhe një qasje të standardizuar për krijimin e migrimeve të reja. Shkathtësia e zgjidhjes ju lejon të përgatitni migrime edhe për platforma të tjera përveç 1C: Enterprise.

Plus i dytë i guximshëm është ndihma vizuale. Migrimet e thjeshta krijohen pa programim. Po, po, pa një rresht të vetëm kodi! Vetëm për këtë, ia vlen të shpenzoni kohë duke mësuar teknologjinë një herë, dhe më pas të përdorni aftësi të paçmueshme në mënyrë të përsëritur.

Avantazhi i tretë që do të vëreja është mungesa e kufizimeve në shpërndarjen e të dhënave. Vetë zhvilluesi zgjedh metodën e dërgimit të të dhënave në konfigurimin e marrësit. Dy opsione janë të disponueshme jashtë kutisë: ngarkimi në një skedar xml dhe lidhje e drejtpërdrejtë me bazën e informacionit (COM/OLE).

Mësimi i arkitekturës

Ne tashmë e dimë se konvertimi i të dhënave mund të bëjë mrekulli, por ende nuk është e qartë se cilat janë avantazhet teknike. Gjëja e parë që duhet mësuar është se çdo migrim (konvertim) i të dhënave bazohet në rregullat e shkëmbimit. Rregullat e shkëmbimit - një skedar i rregullt xml me një përshkrim të strukturës në të cilën do të ngarkohen të dhënat nga IB. Përpunimi i shërbimit që kryen ngarkimin/shkarkimin e të dhënave analizon rregullat e shkëmbimit dhe kryen ngarkimin në bazë të tyre. Gjatë shkarkimit, ndodh procesi i kundërt.

Konfigurimi "KD" është një lloj konstruktori vizual me të cilin zhvilluesi krijon rregulla shkëmbimi. Nuk di të ngarkojë të dhëna. Për këtë është përgjegjës përpunimi shtesë i shërbimit të jashtëm i përfshirë në kompletin e shpërndarjes së CD-së. Ka disa prej tyre (XX në emrin e skedarit është numri i versionit të platformës):

  • MDXXExp.epf- përpunimi ju lejon të ngarkoni një përshkrim të strukturës së infobazës në një skedar xml. Përshkrimi i strukturës ngarkohet në CD për analiza të mëtejshme dhe krijimin e rregullave të shkëmbimit.
  • V8ExchanXX.epf- ngarkon/shkarkon të dhëna nga infobaza në përputhje me rregullat e shkëmbimit. Në shumicën e konfigurimeve tipike, përpunimi është i disponueshëm jashtë kutisë (shih artikullin e menysë "Shërbimi"). Përpunimi është universal dhe nuk është i lidhur me ndonjë konfigurim/rregull specifik.

Në rregull, tani bazuar në të gjitha sa më sipër, le të përcaktojmë fazat e zhvillimit të një konvertimi të ri:

  1. Përkufizimi i detyrës. Është e nevojshme të kuptohet qartë se cilat të dhëna duhet të transferohen (nga cilat objekte të konfigurimit) dhe, më e rëndësishmja, ku të transferohen.
  2. Përgatitja e një përshkrimi të strukturave të konfigurimit (Burimi/Marrësi) për ngarkimin e mëpasshëm në CD. Detyra zgjidhet duke përpunuar shërbimin MDXXExp.epf.
  3. Ngarkimi i përshkrimeve të përgatitura të strukturave në IS.
  4. Krijimi i rregullave të shkëmbimit duke përdorur mjete vizuale të CD-së.
  5. Ngarkimi/shkarkimi sipas rregullave të krijuara të konvertimit të të dhënave duke përdorur përpunimin V8ExchanXX.epf.
  6. Rregullat e shkëmbimit të korrigjimit (nëse është e nevojshme).

Shndërrimi më i thjeshtë

Për demonstrimin, na duhen dy konfigurime të vendosura. Vendosa të ndalem në opsionin: "Menaxhimi i Tregtisë" edicioni i 10-të dhe një zgjidhje e vogël e shkruar vetë. Detyra do të jetë transferimi i të dhënave nga konfigurimi tipik UT. Për shkurtësi, ne do ta quajmë zgjidhjen e shkruar vetë "Marrës", dhe menaxhimin e tregtisë "Burimi". Le të fillojmë të zgjidhim problemin duke transferuar elementët e drejtorisë "Nomenklatura".

Para së gjithash, le të hedhim një vështrim në skemën e konvertimit të të dhënave dhe të rilexojmë listën e veprimeve që duhen bërë. Më pas nisim konfigurimin "Burimi" dhe hapim në të shërbimin e përpunimit MD82Exp.epf.

Ndërfaqja e përpunimit nuk shkëlqen me një bollëk cilësimesh. Përdoruesi duhet vetëm të specifikojë llojet e objekteve të meta të dhënave që nuk do të përfshihen në përshkrimin e strukturës. Në shumicën e rasteve, këto cilësime nuk kanë nevojë të ndryshohen, sepse nuk ka asnjë pikë të veçantë në shkarkimin e lëvizjeve në regjistrat e akumulimit (si shembull).

Është më e saktë të formohet lëvizja gjatë mbajtjes së dokumenteve në marrës. Të gjitha lëvizjet do të bëhen nga vetë dokumenti pas transferimit. Argumenti i dytë në mbrojtje të cilësimeve të paracaktuara është zvogëlimi i madhësisë së skedarit të ngarkuar.

Disa dokumente (veçanërisht në konfigurimet tipike) formojnë lëvizje në regjistra të shumtë. Shkarkimi i gjithë kësaj ekonomie do ta bëjë skedarin XML që rezulton shumë i madh. Kjo mund ta bëjë të vështirë transportin dhe ngarkimin e mëvonshëm në bazën e marrësit. Sa më i madh të jetë skedari i të dhënave, aq më shumë RAM kërkohet për ta përpunuar atë. Gjatë praktikës sime, më ndodhi të hasa skedarë të ngarkuar në mënyrë të pahijshme. Skedarë të tillë refuzuan plotësisht të analizoheshin me mjete standarde.

Pra, ne lëmë të gjitha cilësimet e paracaktuara dhe ngarkojmë përshkrimin e konfigurimit në një skedar. Përsëritim të njëjtën procedurë për bazën e dytë.

Hapni CD-në dhe zgjidhni nga menyja kryesore "Direktoritë" -> "Konfigurimet". Drejtori ruan përshkrimet e strukturave të të gjitha konfigurimeve që mund të përdoren për të krijuar konvertime. Ne ngarkojmë përshkrimin e konfigurimit një herë dhe më pas mund ta përdorim atë në mënyrë të përsëritur për të krijuar konvertime të ndryshme.

Në dritaren e drejtorisë, shtypni butonin " Shto” dhe në dritaren që shfaqet, zgjidhni një skedar me një përshkrim të konfigurimit. Kontrolloni kutinë "Ngarkoni në konfigurimin e ri" dhe klikoni në butonin "Kryeni ngarkimin". Ne kryejmë veprime të ngjashme me përshkrimin e strukturës së konfigurimit të dytë.

Tani gjithçka është gati për të krijuar rregullat e shkëmbimit. Në menynë kryesore të CD-së, zgjidhni "Referencat" -> "Konversionet". Shtimi i një elementi të ri. Në dritaren për krijimin e një konvertimi të ri, duhet të specifikoni: konfigurimin e burimit (zgjidhni UT) dhe konfigurimin e marrësit (zgjidhni "Marrës"). Tjetra, hapni skedën "Advanced" dhe plotësoni fushat e mëposhtme:

  • rregullat e shkëmbimit emri i skedarit - rregullat e krijuara të shkëmbimit do të ruhen nën këtë emër. Emri i skedarit mund të ndryshohet në çdo kohë, por është më mirë ta vendosni tani. Kjo do të kursejë kohë në të ardhmen. I emërova rregullat për demonstrimin: "rules-ut-to-priemnik.xml".
  • emri - emri i konvertimit. Emri mund të jetë absolutisht çdo gjë, u kufizuara në “Demo. UT te Marrësi”.

Kjo është e gjitha, klikoni "Ok". Menjëherë, para nesh shfaqet një dritare që na kërkon të krijojmë të gjitha rregullat automatikisht. Pajtimi me një ofertë të tillë joshëse do t'i japë mjeshtrit komandën që të analizojë automatikisht përshkrimin e konfigurimeve të zgjedhura dhe të gjenerojë në mënyrë të pavarur rregullat e shkëmbimit.

Le të vendosim "dhe" menjëherë. Mjeshtri nuk do të jetë në gjendje të gjenerojë asgjë serioze. Megjithatë, kjo mundësi nuk duhet të zbritet. Nëse keni nevojë të krijoni një shkëmbim midis konfigurimeve identike, atëherë shërbimet e një magjistari do të jenë shumë të dobishme. Për shembullin tonë, mënyra manuale është e preferueshme.

Le të hedhim një vështrim më të afërt në dritaren "Cilësimet e rregullave të shkëmbimit". Ndërfaqja mund të duket pak konfuze - një numër i madh skedash të mbushura me kontrolle. Në fakt, gjithçka nuk është aq e vështirë, filloni të mësoheni me këtë çmenduri pas disa orësh punë me aplikacionin.

Në këtë fazë, ne jemi të interesuar për dy skeda: "Rregullat e konvertimit të objekteve" dhe "Rregullat e ngarkimit të të dhënave". Në të parën, duhet të vendosim rregulla që përputhen, d.m.th. Krahasoni objektet e dy konfigurimeve. Në të dytën, përcaktoni objektet e mundshme që do të jenë në dispozicion të përdoruesit për shkarkim.

Në gjysmën e dytë të skedës "Rregullat e konvertimit të objekteve" ekziston një panel shtesë me dy skeda: "Konvertimi i pronës" dhe " Konvertimi i vlerës". E para do të zgjedhë vetitë (kushtet) e objektit të zgjedhur, dhe e dyta është e nevojshme për të punuar me vlera të paracaktuara (për shembull, elementë të paracaktuar të fjalorit ose elementë numërimi).

E shkëlqyeshme, tani le të krijojmë rregullat e konvertimit për drejtoritë. Ju mund ta kryeni këtë veprim në dy mënyra: përdorni magjistarin e sinkronizimit të objekteve (kliko "") ose shtoni përshtatje për secilin objekt manualisht.

Për të kursyer hapësirë, ne do të përdorim opsionin e parë. Në dritaren e magjistarit, zgjidhni kutinë " Dokumentet" (ne jemi të interesuar vetëm për drejtoritë) dhe zgjerojmë grupin " Libra referencë". Ne lëvizim me kujdes nëpër listë dhe shikojmë emrat e drejtorive që mund të krahasohen.

Në rastin tim, ekzistojnë tre drejtori të tilla: Nomenklatura, Organizatat dhe Depot. Ekziston gjithashtu një direktori klientësh që kryen të njëjtën ngarkesë semantike si " Kundërpalët"nga konfigurimi" UT". Vërtetë, mjeshtri nuk mund t'i krahasonte ato për shkak të emrave të tyre të shkëlqyer.

Këtë defekt mund ta rregullojmë vetë. Gjeni në dritare Hartëzimi i objekteve» manual » Klientët", dhe në kolonën "Burimi" zgjidhni librin e referencës "Kundërpalët". Pastaj kontrolloni kutinë në kolonën "Type" dhe klikoni butonin "Ok".

Magjistari i sinkronizimit të objekteve do t'ju kërkojë të krijoni automatikisht rregulla për konvertimin e vetive të të gjitha objekteve të zgjedhura. Pronat do të përputhen me emër, dhe për demonstrimin tonë kjo do të jetë mjaft e mjaftueshme, ne jemi dakord. Pyetja tjetër do të jetë një propozim për krijimin e rregullave të ngarkimit. Le të pajtohemi me të.

Baza për rregullat e shkëmbimit është gati. Ne zgjodhëm objektet për sinkronizim dhe rregullat për konvertimin e vetive dhe rregullat e ngarkimit u krijuan automatikisht. Le t'i ruajmë rregullat e shkëmbimit në një skedar, më pas hapim "Burimin" IB (në rastin tim, është UT) dhe të fillojmë përpunimin e shërbimit në të V8Exchan82.epf.

Para së gjithash, në dritaren e përpunimit, zgjidhni rregullat e shkëmbimit që krijuam. Ne i përgjigjemi pyetjes së ngarkimit të rregullave në mënyrë pozitive. Përpunimi do të analizojë rregullat e shkëmbimit dhe do të ndërtojë një pemë me të njëjtin emër për objektet e disponueshme për shkarkim. Për këtë pemë, ne mund të vendosim të gjitha llojet e filtrave ose nyjeve të shkëmbimit, duke ndryshuar të cilat duhet të zgjedhim të dhënat. Ne duam të ngarkojmë absolutisht të gjitha të dhënat, kështu që nuk ka nevojë të instalojmë filtra.

Pasi të përfundojë procesi i ngarkimit të të dhënave në një skedar, shkoni te IB " Marrësi". Ne gjithashtu hapim përpunimin në të V8Exchan82.epf, vetëm këtë herë shkojmë te skeda "Ngarkimi i të dhënave". Zgjidhni skedarin e të dhënave dhe klikoni në butonin "Ngarko". Gjithçka, të dhënat u transferuan me sukses.

Detyra nga bota reale

Demoja e parë mund të jetë mashtruese. Gjithçka duket mjaft e thjeshtë dhe logjike. Në fakt kjo nuk është e vërtetë. Në punën reale, lindin detyra që janë të vështira ose plotësisht të pamundura për t'u zgjidhur duke përdorur vetëm mjete vizuale (pa programim).

Për të mos u zhgënjyer nga teknologjia, kam përgatitur disa detyra reale. Do t’i hasni patjetër në punë. Ato nuk duken aq të parëndësishme dhe ju bëjnë të shikoni konvertimin e të dhënave nga një kënd i ri. Merrni parasysh me kujdes shembujt e paraqitur dhe mos ngurroni t'i përdorni ato si fragmente kur zgjidhni probleme reale.

Detyra numër 1. Plotësoni detajet që mungojnë

Supozoni se duhet të transferojmë drejtorinë " Kundërpalët". Marrësi ka një libër të ngjashëm referimi "Klientë" për këtë. Është plotësisht i përshtatshëm për ruajtjen e të dhënave, por ka mbështetëse " Organizimi”, duke ju lejuar të ndani palët duke i përkatur organizatës. Si parazgjedhje, të gjitha palët duhet t'i përkasin organizatës aktuale (mund të merret nga konstanta me të njëjtin emër).

Ka disa zgjidhje për problemin. Ne do të shqyrtojmë mundësinë e plotësimit të rekuizitave " Organizimi“Dakord në bazë” Marrësi”, d.m.th. në momentin e ngarkimit të të dhënave. Organizimi aktual ruhet në një konstante, kështu që nuk ka asnjë pengesë për marrjen e kësaj vlere. Le të hapim rregullin e konvertimit të objektit (më tej referuar si FRP) " Klientët" (klikoni dy herë mbi objektin) dhe në magjistarin e konfigurimit të rregullave, shkoni te seksioni "Transuesit e ngjarjeve". Në listën e mbajtësve gjejmë " Pas ngarkimit”.

Le të përshkruajmë kodin për marrjen e organizatës aktuale me caktimin e mëvonshëm të atributit. Në momentin që aktivizohet mbajtësi "Pas ngarkimit", objekti do të formohet plotësisht, por nuk do të shkruhet ende në bazën e të dhënave. Askush nuk na ndalon ta ndryshojmë atë sipas gjykimit tonë:

Nëse NUK Object.ThisGroup Atëherë Object.Organization = Constants.CurrentOrganization.Get(); FundNëse;

Para se të plotësoni rekuizitat " Organizimi» është e nevojshme të kontrolloni vlerën e atributit « Ky grup". Për udhëzuesin " Klientët» është vendosur flamuri hierarkik, kështu që kontrollimi për një grup është i nevojshëm. Në mënyrë të ngjashme, kryhet plotësimi i çdo detaji. Sigurohuni që të lexoni ndihmën për opsionet e tjera të mbajtësit " Pas ngarkimit". Për shembull, midis tyre ekziston një parametër " Refuzimi". Nëse i caktohet vlera "True", atëherë objekti nuk do të shkruhet në bazën e të dhënave. Kështu, bëhet e mundur kufizimi i objekteve për shkrim në momentin e ngarkimit.

Detyra numër 2. Detajet në regjistrin e informacionit

Në manualin " Kundërpalët"Konfigurimi UT, ka detaje" Blerësi"dhe" Ofruesi". Të dy mbështetësit janë të tipit " logjike” dhe përdoren për të përcaktuar llojin e palës tjetër. në IB " Marrësi", në librin e referencës " Klientët“Nuk ka detaje të ngjashme, por ka një regjistër informacioni” Llojet e klientëve". Kryen një funksion të ngjashëm dhe mund të ruajë etiketa të shumta për një klient të vetëm. Detyra jonë është të transferojmë vlerat e detajeve në regjistra të veçantë të regjistrit të informacionit.

Fatkeqësisht, vetëm mjetet vizuale nuk mund të përballojnë as këtu. Le të fillojmë pak, të krijojmë një PCO të re për regjistrin e informacionit " Llojet e klientëve". Mos rendis asgjë si burim. Refuzoni krijimin automatik të rregullave të ngarkimit.

Hapi tjetër është krijimi i rregullave të ngarkimit. Shkoni te skeda e duhur dhe klikoni " Shto". Në dritaren për shtimin e rregullave të ngarkimit, plotësoni:

  • metoda e kampionimit. Ndryshimi në "Algoritëm arbitrar";
  • rregulli i konvertimit. Zgjidhni regjistrin e informacionit “Llojet e klientëve”;
  • Kodi (emri) i rregullit. Ne e shkruajmë atë si "Ngarkimi i llojeve të klientit";

Tani duhet të shkruani kodin për zgjedhjen e të dhënave për ngarkim. Këtu është parametri " Mostrimi i të dhënave". Në të, ne mund të vendosim një koleksion me një grup të dhënash të përgatitur. Parametri " Mostrimi i të dhënave” mund të pranojë kuptime të ndryshme- rezultati i pyetjes, përzgjedhja, koleksionet e vlerave, etj. Ne e inicializojmë atë si një tabelë vlerash me dy kolona: lloji i klientit dhe klienti.

Më poshtë është kodi i mbajtësit të ngjarjeve " Para përpunimit". Ai inicializon parametrin " Mostrimi i të dhënave" e ndjekur nga plotësimi i të dhënave nga drejtoria " Kundërpalët". Këtu ia vlen t'i kushtohet vëmendje plotësimit të kolonës " Lloji i klientit". Në "UT", kemi veçori të tipit "Boolean", dhe në marrës, një numërim.

Në këtë fazë nuk mund t'i çojmë në llojin e dëshiruar (nuk është në UT), kështu që tani për tani do ta lëmë në formën e vargjeve. Ju nuk duhet ta bëni këtë, por unë menjëherë dua të tregoj se si të transmetohet në një lloj që mungon në burim.

DataFetch = NewValueTable(); Përzgjedhja e të Dhënave.Columns.Add("Klient"); Selection Data.Columns.Add("ClientType"); Zgjedhja e të dhënaveNga Drejtoria = Directories.Contractors.Select(); Gjatë marrjes së të dhënave nga Catalog.Next() Loop If FetchingDataFromCatalog.ThisGroup Pastaj Vazhdo; FundNëse; Nëse DataFetchFromCatalog.Buyer Pastaj NewString = DataFetch.Add(); NewString.Client = SamplingDataFromCatalog.Reference; NewString.ClientType = "Blerësi"; FundNëse; Nëse DataFetchFromCatalog.Provider Pastaj NewString = DataFetch.Add(); NewString.Client = SamplingDataFromCatalog.Reference; NewString.ClientType = "Furnizuesi"; FundNëse; Cikli i Fundit;

Ruani rregullin e ngarkimit të të dhënave dhe kthehuni te " Rregullat e konvertimit të objekteve". Le të shtojmë për regjistrin e informacionit “ Llojet e klientëve” Rregullat e konvertimit të pronave: lloji i klientit dhe klientit. Ne e lëmë burimin bosh dhe në mbajtësin e ngjarjeve "Përpara shkarkimit" shkruajmë:

//Për vetinë "Klient" Vlera = Burimi.Klienti; //Për vetinë “CustomerType” If Source.Customer = "Buyer" Then Expression = "Enumerations.CustomerTypes.Buyer" ElseIf Source.Customer = "Supplier" Then Expression = "Enumerations.CustomerTypes.Supplier"; FundNëse;

Në listë, të dhënat plotësohen në bazë të përzgjedhjes së të dhënave. Ne e kalojmë klientin thjesht si një lidhje dhe shkruajmë llojin e klientit në parametrin " Shprehje". Të dhënat e këtij parametri do të interpretohen në marrës, dhe kur të ekzekutohet, atributi do të plotësohet me vlerën e saktë nga numërimi.

Kjo është e gjitha, rregullat e shkëmbimit janë gati.Shembulli i konsideruar doli të ishte mjaft universal. Një qasje e ngjashme përdoret shpesh kur transferoni të dhëna nga konfigurimet e krijuara në platformën 7.7. Një shembull i mrekullueshëm i kësaj është transferimi i detajeve periodike.

Detyra numër 3. Truket tabelare

Shpesh ka detyra që kërkojnë vendosjen e rreshtave të një pjese tabelare në disa. Për shembull, në konfigurimin fillestar, shërbimet dhe mallrat regjistrohen në një seksion tabelor, ndërsa ruajtja e këtyre entiteteve është e ndarë në marrës. Përsëri, problemi nuk mund të zgjidhet me mjete vizuale. Këtu është e përshtatshme të merret si bazë zgjidhja e problemit të dytë.

Ne bëjmë një rregull të ngarkimit të të dhënave, specifikojmë një algoritëm arbitrar dhe shkruajmë një pyetje në trajtuesin "Para ngarkimit" për të marrë të dhëna nga seksioni tabelor.

Për të kursyer hapësirë, unë nuk do të jap kodin (gjithmonë mund t'i referoheni kodit burimor) të kërkesës - nuk ka asgjë të pazakontë në të. Ne renditim përmes mostrës që rezulton dhe vendosim rezultatet e renditura në parametrin tashmë të njohur " Mostrimi i të dhënave". Përsëri, është e përshtatshme të përdorni një tabelë vlerash si një koleksion:

DataFetch = NewValueTable(); //Këtu do të ketë edhe një seksion tabelor Data Selection.Columns.Add("Produktet"); //Këtu do të ketë gjithashtu një seksion tabelor Data Selection.Columns.Add("Shërbimet"); Përzgjedhja e të dhënave nga.Columns.Add(“Lidhja”);

Detyra numër 4. Transferimi i të dhënave në një operacion

Nëse një organizatë përdor disa sisteme të kontabilitetit, atëherë herët a vonë do të ketë nevojë për migrim të të dhënave me formimin e mëvonshëm të postimeve.

Në konfigurimin " BP"ekziston një dokument universal" Operacioni” dhe është ideal për të formuar më shumë tela. Këtu është vetëm një problem - dokumenti është bërë me dinakëri dhe transferimi i të dhënave në të nuk është aq i lehtë.

Një shembull i një konvertimi të tillë mund të gjendet në kodin burimor për artikullin. Sasia e kodit doli të ishte mjaft e madhe, kështu që nuk ka kuptim ta publikoni atë për artikullin. Më lejoni të them vetëm se ngarkimi përsëri përdor një algoritëm arbitrar në rregullat për ngarkimin e të dhënave.

Detyra numër 5. Sinkronizimi i të dhënave nëpër atribute të shumta

Ne kemi trajtuar tashmë disa shembuj, por deri më tani nuk kemi folur për sinkronizimin e objekteve gjatë migrimit. Le të imagjinojmë se duhet të transferojmë palët dhe disa prej tyre janë ndoshta në bazën e të dhënave të marrësit. Si të transferoni të dhëna dhe të parandaloni dublikatat? Në këtë drejtim, CD ofron disa mënyra për të sinkronizuar objektet e transferuara.

E para është me identifikues unik. Shumë objekte kanë një identifikues unik që garanton unike brenda një tabele. Për shembull, në manualin " Kundërpalët” nuk mund të ketë dy elementë me të njëjtën ID. CD bën një llogaritje për këtë, dhe për të gjitha PSP-të e krijuara, kërkimi sipas identifikuesit aktivizohet menjëherë si parazgjedhje. Gjatë krijimit të PSP, duhet të kishit vënë re ikonën e xhamit zmadhues pranë emrit të objektit.

Sinkronizimi me një identifikues unik është një metodë e besueshme, por nuk është gjithmonë e përshtatshme. Kur bashkohen drejtoritë " Kundërpalët” (nga disa sisteme të ndryshme) ai është i pakët në ndihmë.

Në raste të tilla, është më e saktë të sinkronizoni objektet sipas disa kritereve. Është më e saktë të kërkoni për palët sipas TIN, KPP, Emërtoni ose ndani kërkimin në disa faza.

Konvertimi i të dhënave nuk e kufizon zhvilluesin në përcaktimin e kritereve të kërkimit. Le të shqyrtojmë një shembull abstrakt. Supozoni se duhet të sinkronizojmë drejtoritë " Kundërpalët” nga baza të ndryshme informacioni. Le të përgatisim një PCP dhe në cilësimet e rregullave për konvertimin e një objekti, kontrolloni kutinë " Vazhdoni të kërkoni në fushat e kërkimit nëse objekti i marrësit nuk gjendet me ID". Me këtë veprim, ne përcaktuam menjëherë dy kritere kërkimi - me një identifikues unik dhe fusha arbitrare.

Ne kemi të drejtë të zgjedhim vetë fushat. Pasi të kemi shënuar TIN, KPP, Emri, ne menjëherë do të tregojmë disa kritere kërkimi. Të rehatshme? Mjaft, por përsëri, kjo nuk mjafton. Dhe çka nëse duam të ndryshojmë kriteret e kërkimit? Për shembull, së pari ne kërkojmë për një tufë TIN + KPP dhe nëse nuk gjejmë asgjë, atëherë fillojmë të provojmë fatin me emrin.

Është mjaft e mundur të zbatohet një algoritëm i tillë. Në mbajtësin e ngjarjeve Fushat e kërkimit Mund të specifikojmë deri në 10 kritere kërkimi dhe për secilin prej tyre të përcaktojmë përbërjen e vet të fushave të kërkimit:

Nëse SearchOptionNumber = 1 atëherë SearchPropertyNameString = “TIN, KPP”; ElseIfSearchVariantNumber = 2 PastajSearchPropertyNameString = “Emri”; FundNëse;

Gjithmonë ka shumë zgjidhje.

Çdo detyrë ka disa zgjidhje, dhe transferimi i të dhënave midis konfigurimeve të ndryshme nuk bën përjashtim. Secili zhvillues ka të drejtë të zgjedhë rrugën e tij të zgjidhjes, por nëse vazhdimisht duhet të zhvilloni migrime komplekse të të dhënave, atëherë unë rekomandoj fuqimisht t'i kushtoni vëmendje konfigurimit "". Në fillim le të duhet të investoni burime (kohë) në trajnime, por ato do të paguajnë më shumë në projektin e parë pak a shumë serioz.

Sipas mendimit tim, kompania 1C anashkalon në mënyrë të pamerituar temën e përdorimit të konvertimit të të dhënave. Për të gjithë kohën e ekzistencës së teknologjisë, vetëm një libër është botuar mbi të: "1C: Ndërmarrja 8. Konvertimi i të dhënave: shkëmbimi midis zgjidhjeve të aplikacionit". Libri është mjaft i vjetër (2008), por megjithatë është e dëshirueshme që të njiheni me të.

Njohuritë e platformës janë ende të nevojshme

» është një mjet universal, por nëse planifikoni ta përdorni për të krijuar migrime të të dhënave nga konfigurimet e zhvilluara për platformën 1C:Enterprise 7.7, atëherë do t'ju duhet të kaloni kohë për të njohur gjuhën e integruar. Sintaksa dhe ideologjia e gjuhës është shumë e ndryshme, kështu që ju duhet të shpenzoni kohë për të mësuar. Pjesa tjetër e parimit mbetet e njëjtë.

Mekanizmi i mbajtësit të ngjarjeve është një nga teknologjitë kryesore për konvertimin e të dhënave duke përdorur "Konvertimi i të dhënave 2.0". Përdorimi kompetent dhe i aftë i këtij mekanizmi i lejon zhvilluesit të zgjidhë shpejt pothuajse çdo detyrë të konvertimit të të dhënave. Me ndihmën e teknologjisë së procesorit, zgjedhja e të dhënave, konvertimi i të dhënave zbatohen lehtësisht tipe te ndryshme, zgjedhje komplekse të të dhënave, cilësime konvertimi dhe shumë detyra të tjera.

Konsideroni parimet themelore të kësaj teknologjie. Në pikat kyçe të algoritmeve për shkarkimin dhe ngarkimin e të dhënave në përpunimin e shkëmbimit universal, është e mundur të ekzekutohet kodi i programit i marrë nga rregullat e shkëmbimit të të dhënave, dhe jo "i lidhur" në përpunimin e shkarkimit ose ngarkimit të të dhënave. Konfigurimi "Data Conversion 2.0" ofron mundësi për integrimin e një kodi të tillë programi në rregullat e shkëmbimit të të dhënave.

Në total, ka më shumë se njëzet vende të ndryshme në algoritmet e shkëmbimit të të dhënave ku mund të ekzekutohet kodi i palëve të treta. Prandaj, konfigurimi parashikon krijimin e llojeve të ndryshme të mbajtësve të ngjarjeve.

Kodi i mbajtësve të ngjarjeve është "i bashkangjitur" me objektet e rregullave të shkëmbimit - elementet e drejtorive: konvertimet, rregullat e konvertimit të objekteve, rregullat e konvertimit të pronave, rregullat e ngarkimit të të dhënave dhe rregullat e pastrimit të të dhënave. Natyrisht, kodi i mbajtësit të ngjarjeve duhet të plotësojë një sërë kërkesash. Në veçanti, për të kontrolluar procesin e konvertimit në kodin e mbajtësit, është e nevojshme të përdoren variabla të veçantë - parametra. Një përshkrim i plotë i të gjitha llojeve të mbajtësve të ngjarjeve dhe variablave të disponueshëm mund të gjendet në informacionin rreth mbajtësve në formularët përkatës.

KUJDES!!!

Teknologjitë e konvertimit të të dhënave 2.0 lejojnë shkëmbimin e të dhënave me bazat e informacionit të implementuara në platformat 1C:Enterprise 7.7 dhe 1C:Enterprise 8.0. Për shkak të veçorive të funksionimit të platformës 1C:Enterprise 7.7, përgatitja e rregullave të shkëmbimit të të dhënave duke përdorur mbajtësit e ngjarjeve për infobazat e zbatuara në këtë platformë ka një sërë veçorish.

Për platformën 1C:Enterprise 7.7, nuk është e mundur të ekzekutohet kodi arbitrar (analog me funksionin Run për V8). Nëse është e nevojshme të përdoren mbajtësit e ngjarjeve për platformën V7.7, është e nevojshme të zëvendësohet teksti i përpunimit për ngarkimin ose shkarkimin e të dhënave me tekstet e përpunimit që dalin nga konfigurimi "Data Conversion 2.0".

Nëse keni nevojë të transferoni të dhëna nga V7.7 në V8, atëherë:

Gjatë shkarkimit, përveç vetë skedarit të rregullave, sistemi gjeneron tekstin e modulit për përpunimin e V77Exp.ert me funksione që zbatojnë mbajtës të ngjarjeve. Më pas, në konfigurues, duhet të zëvendësojmë modulin standard V77Exp.ert me atë të ri të gjeneruar nga "Data Conversion 2.0".

Kur zhvilloni zgjidhje për shkëmbimin e të dhënave në platformën 1C:Enterprise 7.7, duhet të mbani mend këtë "gjëndësi" të rëndësishme. Rregullat tuaja do të funksionojnë si duhet vetëm nëse përdorni përpunim të modifikuar, teksti i modulit të të cilit është krijuar kur ngarkoni rregullat e shkëmbimit të të dhënave. Ky rregull ka një përjashtim - nëse nuk përdorni mbajtës të ngjarjeve, atëherë mund të përdorni përpunimin standard.

Sinqerisht, Vladimir Milkin(mësues dhe zhvillues).

KOMBANA

Ka nga ata që e lexojnë këtë lajm para jush.
Regjistrohu për të marrë artikujt më të fundit.
Email
Emri
Mbiemri
Si do të dëshironit të lexoni Këmbanën
Nuk ka spam