Računalniki Windows Internet

1c spremenite pravila izmenjave v univerzalni obliki. 1C ponuja format EnterpriseData za izmenjavo poslovnih podatkov. Kaj je format EnterpriseData

Namen tega članka je odgovoriti na prva vprašanja o KD3 in s preprostim primerom pokazati, kako spremeniti standardna pravila. Podatki so koristni za začetnike in tiste, ki so že začeli obvladovati in imajo nova vprašanja.

Sprejete okrajšave v tej publikaciji

KD2- Pretvorba konfiguracijskih podatkov, revizija 2.0.
KD3- konfiguracija Pretvorba podatkov, revizija 3.0, konfiguracija 3.0.5.3.
ED- univerzalni format za izmenjavo EnterpriseData.

Odgovori na vprašanja po površnem seznanitvi s KD3. Če veste, zakaj potrebujete KD3, lahko preskočite ta odstavek;)

Vprašanja in odgovori

  • KD3 je nova različica KD2? Ne! To je še eno orodje, ki rešuje podobne naloge kot KD2. Vsako orodje ima svojo uporabo.
  • Je KD3 boljši od KD2? Od takrat jih ni mogoče primerjati so različna orodja in vsak ima svoje prednosti in slabosti.
  • Če želite spremeniti pravila za menjavo KD3, morate ali želite odstraniti konfiguracijo iz podpore? Ne NI se vam treba umakniti iz podpore! V tipičnih konfiguracijah lahko standardno povežete zunanjo obdelavo s pravili, pri konfiguracijah, ki podpirajo platformo 8.3.10 in novejše, pa lahko uredite pravila z razširitvijo.
  • Morate prenesti podatke iz lastnih konfiguracij. Za študijske namene lahko uporabite KD3? Če postavljate to vprašanje, najverjetneje ne morete. Za KD3 mora konfiguracija vključevati BSP 2.3 in novejšo različico s sinhronizacijo prek univerzalne oblike. KD2 vam bo ustrezal 100%, KD3 je vprašljiv.
  • Ali je mogoče KD3 uporabiti za tipične spremenjene konfiguracije? Ja lahko. Če je mogoče vaše netipične podatke posredovati z rekviziti ED ali AdditionalInfo, je to v redu. V nasprotnem primeru obstaja možnost spremembe oblike izmenjave (shema XML). V tem primeru bodo zmogljivosti CD3 skoraj enake CD2, vendar bo glavna prednost CD3 izgubljena - vsestranskost oblike izmenjave.
  • Ali je mogoče medsebojno izmenjavati konfiguracije, ki podpirajo ED? Ja! Toda za izmenjavo BP 3.0 - BP 3.0 pri ustvarjanju sinhronizacije ne morete izbrati BP 3.0. V redu je, izberite "Drugi program". Če potrebujete enkratno izmenjavo, je dovolj, da uporabite meni »Naloži / naloži EnterpriseData« v meniju Vse funkcije.
  • Ali morate po posodobitvi konfiguracije prenesti najnovejša pravila iz distribucijskega kompleta? Ne! Pravila so v konfiguracijskem modulu. Za izmenjavo z drugimi bazami podatkov 1C vam ni treba naložiti pravil druge baze podatkov. Zakaj? Podrobnosti v tem članku.
  • Ali je treba po posodobitvi ene baze podatkov posodobiti drugo zbirko podatkov, ki sodeluje pri izmenjavi? Ne! Ni potrebno sinhrono posodabljati vseh baz podatkov, ki sodelujejo pri izmenjavi. To je ena od prednosti KD3.
  • Naše konfiguracije so se močno izboljšale, pojavile so se nove vrste dokumentov in imenikov, ali jih lahko KD3 prenese? Obstaja možnost, da ne bo mogel brez spremembe oblike. To je ena od "slabosti" KD3 v primerjavi s KD2.

Zakaj potem potrebujemo KD3? Prednosti in slabosti

Prednosti KD3

Razmislimo o glavni prednosti KD3 na primeru naloge, s katero se pogosto srečujemo. Obstaja konfiguracija UT 11.3, ki iz nekega razloga ni posodobljena. Treba je organizirati izmenjavo z BP 3.0, ki se nenehno posodablja do trenutne izdaje.

Ni problema.

  • Univerzalni format izmenjave, ki se uporablja v KD3, je zasnovan za reševanje takih težav.
  • Pravila izmenjave v UT niso ustvarjena za izmenjavo z BP, ampak za izmenjavo z univerzalno obliko EnterpriseData.
  • Če delujemo v smislu KD2, se UT izmenja s konfiguracijo ED, ki se ne spremeni. BP 3.0 se izmenja tudi z ED.

Vsaka konfiguracija ima svoja pravila za izmenjavo z ED. Tako UT vedno naloži podatke v isti obliki. Konfiguracija BP 3.0, ne glede na to, kako nova je, bi morala prejemati podatke iz te oblike.

Izkazalo se je, da v UT ni treba skrbeti, da bo BP spremenil nekatere podrobnosti. Naloga je preprosta - naložite v ED, konfiguracija napajalnika pa mora sprejemati podatke iz te oblike.

  • Ker vir vedno naloži konfiguracijo v enem formatu, lahko kateri koli konfiguracijski sprejemnik naloži podatke iz te univerzalne oblike.
    Tisti. za poljubno kombinacijo izmenjav UT - BP, UT - KA, UT - ERP, KA -BP, ERP - BP. ni treba pisati posameznih pravil. V KD3 so pravila univerzalna. Vsaka konfiguracija, ki podpira izmenjavo univerzalnih formatov, se lahko izmenja s katero koli konfiguracijo, ki podpira obliko ED.

Odpravljanje napak algoritmov in pravil je na voljo v sami konfiguraciji vsa pravila so koda skupni modul ali zunanjo obdelavo. Če želite hitro odpraviti napako, lahko storite brez KD3.

Slabosti KD2

Pravila izmenjave so individualna za vsak par konfiguracij. Vse zgornje kombinacije izmenjave med različnimi vrstami konfiguracij in različicami konfiguracij potrebujejo svoja pravila izmenjave. Zato bo za rešitev zgoraj omenjenega problema izmenjave UT 11.3 in BP 3.0 treba odpraviti napake in izboljšati pravila izmenjave skoraj po vsaki posodobitvi BP 3.0.

Odpravljanje napak algoritmov in pravil je težko za začetnika programerja ali za nekoga, ki se le redko sooča s to nalogo. Pravila so shranjena v datoteki xml. Hitro popravilo ni na voljo. Pravila je treba naložiti v KD2, jih popraviti in raztovoriti.

Slabosti KD3

Univerzalna oblika nalaga omejitve glede vrst dokumentov in imenikov. Zasnovan je za tipične konfiguracije. Če imate netipičen zahtevek ali vrsto dokumenta, lahko pride do težav pri izmenjavi.

Za sinhronizacijo v formatu ED mora konfiguracija podpirati te mehanizme. Vse to je v BSP 2.3 in novejših. To v resnici ni minus, ampak funkcija.

Glavni plus nekoliko zbledi zaradi omejenega časovnega okvira za podporo formatu. To so že občutili uporabniki UT 11.1, UT 11.2, ki se izmenjujejo z BP 3.0. Časi podpore so navedeni tukaj. Piše, da je minimalno zajamčeno obdobje podpore za eno leto, pravzaprav približno 3 leta. Če torej sinhronizacijo nastavite danes, potem vsaj eno leto ne morete posodobiti baze podatkov UT 11, nato pa posodobiti konfiguracijo ali preprosto dodati novo obliko, narediti majhno spremembo v BSP in pravilih, če je potrebno. Kako narediti? Bo omenjeno kasneje v tem članku.

Prednosti KD2

Možnosti KD2 so neskončne. Ustvarite lahko pravila izmenjave za katero koli konfiguracijo na kateri koli platformi. Od 1C 7.7 do zadnjih 8.3. Od konfiguracije ni potrebno nič, BSP je neobvezen. Pravila lahko ustvarite v samodejni način in rafinirano.

V povezavi z zgornjimi prednostmi in slabostmi je priporočljivo uporabiti KD3 za tipične konfiguracije. KD2 je mogoče uporabiti za katero koli konfiguracijo, vendar ne pozabite, da je včasih bolj primerno uporabiti KD3.

Upam, da razumete, zakaj je KD3 potreben, nadaljujemo z vsebino.

Nadalje sprejete okrajšave

BSP- Knjižnica standardnih podsistemov.
SPODAJ- pravilo obdelave podatkov.
PKO- pravilo pretvorbe objekta.
PKPD- pravilo za pretvorbo vnaprej določenih podatkov.
PKS- pravilo pretvorbe nepremičnine.

Razmislite o primeru - treba je spremeniti standardna pravila za izmenjavo BP 3.0 in UT 11.3

Na rumenem ozadju so koraki iz navodil, ki se odprejo v KD3. Zaporedje korakov, predlaganih v tem članku, je drugačno, da se ne zmedete in takoj logično dokončate začeto dejanje.

Kako spremenim pravila ED?
  1. Spremenite modul s pravili izmenjave v konfiguraciji. O tej možnosti še ne razmišljamo, ker da bi razumeli, kaj in kje je treba spremeniti, je to treba storiti vsaj enkrat v KD3. V tem primeru bo v prihodnje lažje hitro rešiti težave, odpraviti napake v modulu in po potrebi prenesti v KD3.
  2. Uporabite KD3.
    Kako se to naredi v KD2? Raztovorimo metapodatke obeh konfiguracij in jih naložimo v KD2.
    Korak 1. Za KD3 naredimo enako - v vsaki konfiguraciji v načinu podjetja z obdelavo \ tmplts \ 1c \ Conversion \ 3_0_5_3 \ MD83Exp.epf naložite metapodatke o konfiguraciji,
    na primer v mapo » D: \ Pravila BP3 \ BP 3.0.54.15 \", Ime datoteke " MD.xml».

Ni jasno, za kakšen namen so skrite nastavitve te obdelave, zato se privzeto podatki o registrih podatkov ne raztovorijo. To napako odpravimo.
V postopku ChangeProcessingMode () glavnega obrazca komentirajte vrstico

// Elements.Settings.Visibility = False;

Shranimo obdelavo, jo odpremo v podjetniškem načinu, zastavico postavimo na "Raztovarjanje podatkovnih registrov", razložimo.

3. korak. Naložite predhodno ustvarjeno datoteko " MD.xml"V KD3, zastava odseka" V nova različica konfiguracijo».

Ker v KD3 se za izmenjavo uporablja "vmesna konfiguracija" (ED), naložimo tudi njene "metapodatke", ki so Shema XML, datoteko s pripono "xsd". 2. korak. Lahko ga vzamete iz konfiguracije UT 11 ali BP 3.0. So enaki. Odprite konfiguracijo, v iskalno vrstico vnesite » vnesite", Vidimo na drevesu Splošno - paketi XDTO nekaj takšnih paketov: EnterpriseData_1_3_8, EnterpriseData_1_4_4 in podobno .. To sta različici formata 1.3 oziroma 1.4 ter 1.2, 1.1, 1.0, če obstaja. Desni gumb miška na paketu, v kontekstni meni izberite "".

4. korak. V razdelku KD3 izberite predhodno naložene datoteke s pripono "xsd". Izbrati morate eno datoteko! Več možnosti izbire v povezavi s ExchangeMessage ni potreben! To je bilo predlagano v starih navodilih za KD3 prejšnje različice... V zadnjem CD3 to ni potrebno.

Po nalaganju oblike v razdelku Oblika podatkov - Oblika drevesa objektov, izberite različico zapisa. Če so tam dokumenti in imeniki, ste jih naložili pravilno datoteko... Če ne, začnite znova z novim praznim CD -jem in najprej naložite obliko in preverite drevo.

2. stopnja. Po nalaganju metapodatkov v CD3 nadaljujemo z nalaganjem standardnih pravil izmenjave.
Kako se to naredi v KD2? Pravila se naložijo v pretvorbo.
Pri KD3 je skoraj enako. Pravila raztovorimo iz standardnega, ustvarimo pretvorbo in nato vanj naložimo pravila.

Raztovarjanje tipičnih pravil iz konfiguracije za nalaganje v CD3

Konfiguracije se izmenjujejo v največji skupni različici oblike izmenjave. Na primer, ena konfiguracija ima največjo obliko 1,5, druga 1,6, kar pomeni, da se bodo med seboj izmenjevali v formatu 1,5. Zato je dovolj, da iz obeh konfiguracij raztovorite format 1.5 in ga naložite v pravila.

Konfiguracijo BP 3.0 ali UT 11.3 odpremo v načinu konfiguratorja, v iskalno vrstico lahko vnesete » moški uni”, Odprite splošni modul. Če je to BP 3.0, ga odprite. V odprtem modulu pojdite v meni Datoteka - shranite kopijo, shranite datoteko s poljubnim imenom, na primer » D: \ Pravila BP3 \ BP 3.0.54.15 \ Skupni modul ExchangeManager prek UniversalFormat_Module».
Odprta konfiguracija BP 3.0 ali UT 11.3 v poslovnem načinu, odprta obdelava \ tmplts \ 1c \ Conversion \ 3_0_5_3 \ Naloži pravila za sinhronizacijo.epf

Pomanjkanje tipične obdelave:

  • pogosto ne uspe;
  • raztovarja pravila iz zunanje obdelave, povezane z vozliščem, vendar potrebujemo tipična pravila;
  • ne deluje pri BP 3.0.53 in novejših.

Sprememba modula glavnega obrazca za obdelavo. Spremembe postopkov OnCreateAtServer.

& AtServer Postopek OnCreateAtServer (Prekliči, Standardna obdelava) // Seznam izbire različic formata. Različice formata = Novo ujemanje; Data ExchangeRedefinable.WhenGettingAvailableFormatVersions (FormatVersions); Za vsak ExchangePlan iz cikla DataExchangeRepUsedExchangePlansBSP () Če je DataExchangeRepeat.ThisExchangePlanXDTO (ExchangePlan) Potem so različice formata ExchangePlan = novo ujemanje; BSP243 Version = GeneralPurposeClientServer.CompareVersions (StandardSubsystemsServer.Library Version (), "2.4.3.1")> = 0; ModuleDataServer = Splošni namen. CommonModule ("Strežnik za izmenjavo podatkov"); Če je različica BSP243, potem ExchangePlaneFormatVersions = DataExchange ModuleServer.ExchangePlanSettingsValue (ExchangePlan, "ExchangeFormatVersions"); V nasprotnem primeru ExchangePlans [ExchangePlan] .GetExchangeFormatVersions (ExchangePlanFormatVersions); EndIf; Za vsako ExchangePlaneVersion iz ExchangePlanFormatVersion modula CycleManager = FormatVersions.Get (ExchangePlaneVersion.Key); Če je enota upravitelja = nedefinirana ali enota upravitelja<>ExchangePlaneVersion.Value ThenFormatVersions.Insert (ExchangePlaneVersion.Key, ExchangePlaneVersion.Value); EndIf; Konec cikla; EndIf; Konec cikla; Za vsak element zanke FormatVersionFROMFormatVersion.FormatVersionNumber.SelectionList.Add (FormatVersion.Key); Konec cikla; FormatVersionStoreAddress = PutToTemporaryStore (Različice formata, UniqueIdentifier); Konec postopka

  • Izberemo "Oblikuj številko različice", na primer " 1.3 »,
  • "Imenik Exchange" - ustvarite mapo, na primer ""
  • Pritisni gumb " Raztovorite».

Te korake ponovimo za druge različice formata in jih shranimo v ustrezne mape "1.4", "1.5" itd. Za BP 3.0 je dovolj, da raztovorite vse formate od 1.3 in novejše. Za druge konfiguracije od 1.2 in novejše.

Pravila so razložena, zdaj jih morate naložiti v KD3. V KD2 se pravila naložijo hkrati z ustvarjanjem pretvorbe. V CD3 morate ustvariti pretvorbo in vanjo naložiti pravila.
V oddelku KD3 Konverzije - Konverzije - Ustvari... ... Izbira konfiguracije. Za udobje lahko spremenite ime konfiguracije tako, da odprete način za urejanje elementov. Na primer, namesto Računovodska podjetja navesti " BP 3.0.54.15". Rekviziti Ime ni treba spreminjati! Ime konverzije lahko določite enako, na primer » BP 3.0.54.15". V razdelku s tabelami izberite podprte različice oblike. Različice oblike so tiste, ki smo jih prenesli iz zgornje zbirke podatkov. Shranimo pretvorbo.

Pojdite na razdelek Pretvorba - nalaganje pravil za sinhronizacijo iz datotek.
:

    Mesto nalaganja: " V obstoječo pretvorbo»

    Imenik za menjavo: " D: \ Pravila BP3 \ BP 3.0.54.15 \ 1.3»

  • Datoteka z modulom za izmenjavo: " D: \ Pravila BP3 \ BP 3.0.54.15 \ Upravitelj izmenjave skupnega modula prek UniversalFormat13_ Module.txt»
  • Pretvorba: " BP 3.0.54.15»

Pri nalaganju pravil za sinhronizacijo iz datotek za UT 11.3 se prikaže napaka " Objektno polje ni zaznano". Razlog je v tem, da TekPKO.UseForReceive = False CD3 zahteva informacije o možnosti identifikacije ob prejemu. Če tega ni v datoteki s pravili, pride do napake. Odpravimo ta nesporazum. Ta obrazec odstranimo iz podpore ali pa uporabimo podaljšek.

// Glavna oblika obdelave LoadingSynchronizationRulesFromFiles // Pred spremembami: // Postopek naloži pravila za pretvorbo objektov & Na strežniku Postopek LoadPKO () ... FillProperty Vrednosti (TekPKO, Struktura atributov); // Možnost identifikacije - posebna logika. Možnost Identifikacije TekPKO.ObjectIdentification = Naštevanja. Možnosti identifikacije objekta [AttributesStructure.Identification Option]; ElseIf XMLReader.NodeType = XMLNodeType.EndItem Potem // Napišite naložen POC. ... // Spremembe so označene z "// ED" // Postopek naloži pravila za pretvorbo predmetov & Na strežniškem postopku LoadPKO () ... FillProperty Vrednosti (TekPKO, Struktura atributov); // Možnost identifikacije - posebna logika. Če TekPKO.UseFor Pridobite potem // ED TekPKO.Identification Option = Enumerations.Object Identification Options [Attributes Structure.Identifying Option]; EndIf; ElseIf XMLReader.NodeType = XMLNodeType.EndItem Potem // Napišite naložen POC. ...

Pritisni gumb " Prenesi». « Obdelovalci so namenjeni drugačni pretvorbi: BP 3.0.44 (format 1.4). Ali želite nadaljevati prenos?"Klik" Da».
Brez zapiranja obrazca izberite drugo " Imenik za izmenjavo"In pritisnite gumb" ". Večkrat ponovimo nalaganje pravil za vsako obliko v trenutno pretvorbo.
Po uspešnem nalaganju pojdite na razdelek " Conversion "-" Nastavitev pravil za pretvorbo", Odprite našo konverzijo iz obrazca s seznama.
Če vidimo POD itd., Je bilo nalaganje v CD3 uspešno.

Preverjanje pravilnosti nalaganja pravil

To je neobvezna operacija! Če boste v pravilih uporabljali isto različico oblike, vam ni treba doseči istovetnosti besedila modula.

  • Odprite konfigurator BP, ustvarite novo zunanjo obdelavo, na primer Ime " Sinhronizacija EDBP", Sinonim za" Sinhronizacija ED BP 3.0».
  • V KD3 v obliki " Določitev pravil menjave"Pritisnite gumb" "in prilepite to kodo iz odložišča v našo novo obdelavo.
  • V konfiguratorju BP preverimo modul glede sintaktičnih napak. Shranimo obdelavo.
  • ustvarite še eno prazno obdelavo v BP, na primer Ime " Sinhronizacija EDB Tipično", Sinonim za" Sinhronizacija ED BP 3.0 tipična". Kopirajte besedilo splošnega modula za napajanje Exchange ManagerUniversalFormat13 v modul za obdelavo in ga shranite.

Primerjajmo oba načina zdravljenja. Meni Datoteka - primerjajte datoteke.

Če standardni modul vsebuje postopke, ki jih v naših pravilih ni, to pomeni, da niste naložili pravil za pretvorbo za vse oblike podatkov. Če je potrebno naložite pravila v manjkajoči obliki v pretvorbo in ponovite primerjavo naših pravil s standardnimi. Ko smo dosegli identiteto lahko varno nadaljujete z dokončanjem pravil... Ni treba doseči popolne identitete, če veste, kateri od formatov izmenjave ne bo uporabljen za sinhronizacijo.

Na podoben način ustvarimo pretvorbo za UT 11.3 v KD3.

BP 3.0.54.15

  • Opažen nepravilno nalaganje PKO " Reference_Users". To je treba popraviti. Moral bi.
  • V PKO " Dokument_Zaloga_pošiljanja izdelka"za PKS" Odgovorna oseba"PQS ni določen. Odprite, znova izberite konfiguracijsko lastnost in lastnost oblike, da vnesete njihov tip, nato pa izbira v polju" Pravilo pretvorbe nepremičnine". Izberite" Directory_Persons_Send".

Razmislite o primeru revizije

Glavni namen primera je prikazati možnosti izboljšav za prenos dodatnih podatkov, ki ne ustrezajo formatu izmenjave.

Morate prenesti rekvizite " VrstaNomenklatura"referenčna knjiga" Nomenklatura ", vrsta spremenljivke" Imenik.PoglediNomenklature". Ta vrsta referenčne knjige ni v skladu s standardnimi pravili KD3 in je ne podpira različica zapisa ED, ki je pod 1.6.

Za rešitev tega problema obstaja več možnosti.

  • Sprememba paketa XDTO, v obliko pa je dodal objekt "Reference.Vrste nomenklature". Posledično se izgubi glavna prednost univerzalne oblike - preneha biti univerzalna. Sprememba paketa XDTO bo potrebna v vseh bazah podatkov, ki sodelujejo pri izmenjavi.
  • Uporabi lastnost oblike " Dodatne podrobnosti", ki je v številnih objektih. Ta možnost zaradi določene zapletenosti v tem članku ne bo obravnavana. Upoštevajte, da obstaja tak način.
  • Rekviziti Dodatne informacije. Prisoten je v glavi vseh formatov. AnyType. Zasnovan za take primere. Uporabili ga bomo kot najpreprostejši način.

Preden nadaljujemo z izboljšanjem standardnih pravil, ustvarimo dve skupini v skupini pravil » Dodala avtorica», « Spremenjeno". To se naredi v " Konverzije -".
Novi POD, PKO, algoritmi itd. bomo ustvarili v skupini "Dodano", bodo standardni predmeti, v katere izvajamo spremembe, preneseni v skupino "Spremenjeno". To bo olajšalo nadaljnje vzdrževanje spremenjenih pravil.

Pa začnimo.

Spremembe pravil v UT 11.3

V KD3 v obliki " UT 11.3.4.12 Določitev pravil menjave"Na zavihku Algoritmi ustvarjanje novega algoritma

  • Ime algoritma "AdditionalInfoInsert"
  • Skupina: "Dodano"

Parametri: "DataXDTO, Name, AdditionalValue"

Koda algoritma

Če je DataXDTO.Property ("AdditionalInfo") IN TypeValue (DataXDTO.AdditionalInfo) = Type ("Structure") Potem AdditionalData = DataXDTO.AdditionalInfo; V nasprotnem primeru AdditionalData = Nova struktura; EndIf; AdditionalData.Insert (Ime, DodatnaVrednost); DataXDTO.Insert ("AdditionalInfo", AdditionalData);

Shranimo algoritem in pojdimo na zavihek » Pravila pretvorbe objektov»

Z gumbom " Najti"Iščem" Nomenklatura ", odprto PKO" Reference_Nomenclature_Send". Pojdite na zavihek " Pri pošiljanju". Tam vidimo polje "Ime upravljavca:" "". Spremenite lahko neposredno tam.
V konfiguracijo je mogoče zapisati bolj zapleteno kodo, ki zahteva odpravljanje napak. V modulu za izmenjavo v UT 11.3 iščemo postopek z imenom » PQS_Reference_Nomenclature_Send_When SendingData"In tam končal.
Če želite prenesti spremembe iz UT 11.3 v KD3, kopirajte celoten postopek v odložišče v KD3 v obliki » Določitev pravil menjave"Pritisni gumb" ".

Za naš primer je koda

Če je ValueFilled (DataIB.NomenclatureView) Potem // ED AdditionalInfoInsert (DataXDTO, "NomenclatureView", String (DataIB.NomenclatureView.UniqueIdentifier ())); AdditionalInfo Insert (Podatki XDTO, "NomenclatureNomenclatureName", Splošni namen.ObjectAttributeValue (DataIB.NomenclatureView, "Ime")); // Dodatno vstavljanje informacij ... // dodajanje drugih podrobnosti o storitvah EndIf;

Po prenosu sprememb v KD3 pritisnite gumb " Shranite modul upravitelja izmenjav"in prenesite kodo iz medpomnilnika v modul UT 11.3.

Spremembe pravil v BP 3.0

Spreminjamo PKO " Reference_Nomenclature_Getting", na" Pri pretvorbi podatkov XDTO", ime postopka" PKO_Reference_Nomenclature_Getting_WhenXDTODataConversion".

Koda dodana modulu "PKO_Reference_Nomenclature_Getting_WhenXDTODataConversion"

Če je DataXDTO.Property ("AdditionalInfo") IN TypeValue (DataXDTO.AdditionalInfo) = Type ("Structure") Potem // ED AdditionalData = DataXDTO.AdditionalInfo; Če AdditionalData.Property ("NomenclatureType") ThenNomenclatureType = ExchangeDataXDTOServer.ObjectLinkPoUIDObjectXDTO (AdditionalData.NomenclatureView, Type ("DirectoryLink.NomenclatureType"), Exchange Components); IfNomenclature.GetObject () = Undefined AND AdditionalData.Property ("NomenclatureKindName") Nato // Ustvari novoNomenclatureKindObject = Directories.NomenclatureTypes.CreateElement (); NomenclatureKindObject.SetNewLink (NomenclatureKind); Nomenklature typeObject.Name = AdditionalData.Nomenclature typeName; // izpolnite druge podrobnosti storitve FillPropertyValues ​​(NomenclatureKindObject, AdditionalData); NomenclatureKindObject.Write (); NomenclatureKind = NomenclatureKindObject.Ref; EndIf; ReceivedData.NomenclatureType = NomenclatureType; EndIf; EndIf;

Koda sama po sebi ni dovolj. Na zavihku "Pravila pretvorbe lastnosti" morate dodati PKS z konfiguracijsko lastnostjo "" in potrditveno polje " Uporabljen pretvorbeni algoritem".

Modul upravitelja izmenjav prenesemo v konfiguracijski modul BP 3 ali na zunanjo obdelavo.

Kako naložiti spremenjena pravila CD3 v bazo podatkov?

V konfiguracijah, ki izmenjujejo pravila na CD2, se to izvede v nastavitvah vozlišča. Za pravila, ustvarjena v KD3, bomo tam videli le možnost za spremembo registracijskih pravil.

Pravila, pripravljena v KD3, je mogoče v konfiguracijo namestiti na tri načine

  1. Odstranite konfiguracijo iz podpore in spremenite skupni modul Exchange Manager prek univerzalne oblike;
  2. V konfiguracijah, ki se izvajajo v načinu združljivosti s platformo 8.3.10 in novejšim, lahko modul v skupni rabi popravite z razširitvijo.
  3. Povežite razširitev, ki v celoti nadomesti splošni modul s pravili.
  4. Povežite zunanjo obdelavo s pravili na vozlišče, ne da bi konfiguracijo odstranili iz podpore;

S prvo možnostjo je vse jasno, opisano je v dokumentaciji, pomanjkljivost pa je, da morate konfiguracijo odstraniti iz podpore. Druga možnost - popravljanje izbranega postopka z razširitvijo prav tako ne bo težko za programerja 1C - dve obdelavi morate primerjati s standardnimi pravili in s spremenjenimi, kot je opisano zgoraj v tem članku, ter spremeniti zahtevano postopku.

Tretja možnost je z razširitvijo s pravili izmenjave v univerzalni obliki trenutno najbolj optimalno. Obstaja le ena pomanjkljivost - zastavo je treba odstraniti " Varni način"pri priključitvi te razširitve. To omejuje njeno uporabo v storitve v oblaku... Čakamo na odločitev 1C o postopku zamenjave menjalnih pravil v univerzalni obliki v 1C svežem.

Bistvo je, da morate v konfiguraciji poiskati del kode, ki je odgovoren za izbiro skupnega modula, odvisno od različice oblike izmenjave, in izbiro modula zamenjati z lastnim modulom. Primer za BP 3.0.67:

//////// // Generični modul za izmenjavo podatkov preglašen in namesto ("O pridobivanju razpoložljivih različic formatov") Postopek ED_ Pri pridobivanju razpoložljivih različic formata (različice formata) ED_Menjava podatkovnega strežnika. Ko dobimo razpoložljive različice formata (različice formata) ; EndProcedure //////// // Sinhronizacija podatkov načrta izmenjave prek univerzalnega formata: modul upravitelja # Če strežnik ali ThickClient navadna aplikacija ali zunanja povezava potem & namesto ("Pri prejemu nastavitev") Postopek ED_Ko prejmete nastavitve (nastavitve) Nastavitve. DefaultName = Splošne konfiguracije; Settings.ThisExchangePlanXDTO = True; Settings.WarningOnMismatchRuleVersions = False; Settings.ExchangeFormat = "http://v8.1c.ru/edi/edi_stnd/EnterpriseData"; Različice formata = Novo ujemanje; ED_DataServer.Ko prejmete razpoložljive različice formata (različice zapisa); // ED Settings.ExchangeFormatVersions = FormatVersions; Settings.ExchangePlanUsedInServiceModel = True; Settings.Algorithms.WhenGettingExchangeSettingsVariants = True; Settings.Algorithms.OnGettingOptionDescriptionSettings = True; Settings.Algorithms.InteractiveOfSelectionPresentation = True; Settings.Algorithms.ConfigureInteractiveOffload = True; EndProcedure #EndIf //////// // Splošni modul v razširitvi ED_DataServer Postopek OnGetAvailableFormatVersions (FormatVersions) ExportFormatVersion.Insert ("1.2", ExchangeManagerViaUniversalFormat); Oblika različic.Insert ("1.3", ED_ExchangeManagerViaUniversalFormat); Oblika različic.Insert ("1.4", ED_ExchangeManagerViaUniversalFormat); Oblika različic.Insert ("1.5", ED_ExchangeManagerViaUniversalFormat); Oblika različic.Insert ("1.6", ED_ExchangeManagerViaUniversalFormat); EndProcedure //////// // Skupni modul v razširitvi ED_ExchangeManager Skozi UniversalFormat // Pretvorba BP3.0.44 (format 1.6) od 27.11.2018 11:23:58 // Izboljšanje za BP 3.0.67. x od 31.12 ... ...

Razmislimo o četrti možnosti, ki v dokumentaciji ni opisana te možnosti v BSP ni. Ta možnost je že zastarela. Zunanja obdelava s pravili je bil uporabljen v prvih različicah z univerzalno obliko izmenjave. Zdaj se 1C postopoma odpravlja te funkcije.

V načinu podjetja v razdelku za upravljanje sledite povezavi Sinhronizacija podatkov - Nastavitve sinhronizacije podatkov, pritisni gumb " Uglasi ..."če je nastavitev ena ali" Spremenite"če obstaja več nastavitev. Pojdite v način za urejanje obrazca v meniju" " , Razširi " Skupina", tu vključimo skrit element obrazca" "," v redu".
Na " Informacije o storitvah"izberite" Pot do upravitelja menjave", zamenjamo našo obdelavo s tamkajšnjimi pravili.

Povezovanje zunanje obdelave s pravili na BP 3.0.52 in novejše

V BP 3.0.52 in višjem iz neznanih razlogov zunanja obdelava s pravili se ne uporablja. Vmesnik za povezovanje obdelave ostaja. Hvala za to.

Z razširitvijo lahko omogočite obdelavo s pravili. Skupni modul je treba popraviti " Izmenjava podatkovXDTOS strežnik", funkcija" Oblika različicExchange".

Postopek EDm_PoluchitVersiyuFormataObmena (VersiiFormata pomeni UzelInformatsionnoyBazy) izraz = novo poizvedbo ( "izbiro različnih | SinhronizatsiyaDannyhCherezUniversalnyyFormat.PutKMenedzheruObmena AS PutKMenedzheruObmena, | SinhronizatsiyaDannyhCherezUniversalnyyFormat.VersiyaFormataObmena AS VersiyaFormataObmena | IZ | PlanObmena.SinhronizatsiyaDannyhCherezUniversalnyyFormat SinhronizatsiyaDannyhCherezUniversalnyyFormat KAKO | WHERE | SinhronizatsiyaDannyhCherezUniversalnyyFormat.PutKMenedzheruObmena<>"" "" | In Data SynchronizationVia UniversalFormat.Ref = & Reference "); Request.SetParameter (" Sklic ", vozlišče InformationBase); Fetch = Request.Run (). Select (); While Fetch.Next () Loop ProcessingName = Fetch.Path do Runner If Common Exchange Manager NOT () Potem ProcessingData = New BinaryData (ProcessingName); ProcessingAddress = PutToTemporaryStore (ProcessingData); If GeneralPurpose.There is Protection Against Dangerous Actions () Then ProcessingName = ExternalProcessing.Descriptions.Include; EndIf; EndIf; ExchangeManager = ExternalProcessing.Create (ProcessName); Format Versions.Insert (Selection.ExchangeFormatVersion, ExchangeManager); End of Loop; EndProcedure & Namesto ("ExchangeFormatVersion") EDMNodeVersionNodeVersionValue Perilo (vozlišče InfoBase) Nato ExchangePlaneName = InfoBaseNode.Metadata () .Name; Različice ExchangeFormat = DataExchangeServer.ExchangePlaneSettingsValue (ExchangePlaneName, "ExchangeFormatVersions"); EDm_GetExchangeFormatVersion (ExchangeFormatVersions, vozlišče InformationBase); V nasprotnem primeruDataExchangeRedefinable.WhenGettingAvailableFormatVersions (ExchangeFormatVersions); EndIf; Če je ExchangeFormatVersions.Number () = 0, potem CallExceptionStringFunctionsClientServer.SubstituteParametersVSString (HStr ("ru =" Različice oblike izmenjave niso podane. | ​​Ime načrta izmenjave:% 1 | Postopek: GetExchangeFormatVersions (<ВерсииФорматаОбмена>) ""), DatabaseNode.Metadata (). Ime); EndIf; Rezultat = Nova tekma; Za vsako različico FromVersionFormatExchange Cikel Result.Insert (AbbrLP (Version.Key), Version.Value); Konec cikla; Rezultat vračila; EndFunction

Kako odpraviti napake pri pravilih pri zunanji obdelavi

    V konfiguratorju " Storitev -> Parametri -> Začni 1C: Podjetje -> Začni parameter", podajte parameter" ".

  • Spodaj je koda za razširitev za UT 11.4, KA 2.4, ERP 2.4. Koda za BP 3.0 je navedena zgoraj. Modul upravitelja načrta Exchange Sinhronizacija podatkov prek univerzalnega formata.

Koda razširitve ED Debug

& Namesto ("GetExchangeFormatVersions") Postopek ED_GetExchangeFormatVersions (FormatVersions) DataExchangeUT.AvailableUniversalFormatVersions (FormatVersions); Zahteva = Nova poizvedba ("SELECT DIFFERENT | Sinhronizacija podatkov prek UniversalFormat.PathTo Exchange Manager, | Sinhronizacija podatkov prek UniversalFormat.ExchangeFormatVersion | FROM | Exchange Plan.<>"" "" "); Fetch = Query.Execute (). Select (); While Fetch.Next () Loop ProcessingName = Fetch.PathToExchange Manager; IF NOT SharedPurposeClientServer.Debug Mode () Potem // EDProcessingData = New BinaryData) ( NameProcessingData; AdresObrabotki = PomestitVoVremennoeHranilische (DannyeObrabotki) Če ObschegoNaznacheniya.EstZaschitaOtOpasnyhDeystvy () Nato ImyaObrabotki = VneshnieObrabotki.Podklyuchit (AdresObrabotki, ObschegoNaznacheniya.OpisanieZaschityBezPreduprezhdeny ()), sicer ImyaObrabotki = VneshnieObrabotki.Podklyuchit (AdresObrabotki); endif; endif; MenedzherObmena VneshnieObrabotki.Sozdat = ( ImyaObrabotki) VersiiFormata.Vstavit (Vyborka.VersiyaFormataObmena, MenedzherObmena) KonetsTsikla; KonetsProtsedury in namesto ( "DostupnyeVersiiFormataObmena") postopek ED_DostupnyeVersiiFormataObmena (VersiiFormata) ObmenDannymiUT.DostupnyeVersiiUniversalnogoFormata (VersiiFormata) Poizvedba = novo Poizvedba ( "izbiro različnih | SinhronizatsiyaDannyhCherezUniversalnyyFormat.PutKMenedzher na borzi, | Podatkovna sinhronizacijaViaUniversalFormat.ExchangeFormatVersion | FROM | Načrt izmenjave. Sinhronizacija podatkov Skozi UniversalFormat AS Sinhronizacija podatkov Skozi UniversalFormat | KJE | Sinhronizacija podatkov prek univerzalne oblike. Pot do upravitelja Exchange<>"" "" "); Fetch = Query.Execute (). Select (); While Fetch.Next () Loop ProcessingName = Fetch.PathToExchange Manager; IF NOT SharedPurposeClientServer.Debug Mode () Potem // EDProcessingData = New BinaryData) ( NameProcessingData; AdresObrabotki = PomestitVoVremennoeHranilische (DannyeObrabotki) Če ObschegoNaznacheniya.EstZaschitaOtOpasnyhDeystvy () Nato ImyaObrabotki = VneshnieObrabotki.Podklyuchit (AdresObrabotki, ObschegoNaznacheniya.OpisanieZaschityBezPreduprezhdeny ()), sicer ImyaObrabotki = VneshnieObrabotki.Podklyuchit (AdresObrabotki); endif; endif; MenedzherObmena VneshnieObrabotki.Sozdat = ( ProcessingName); Format Versions.Insert (Fetch.ExchangeFormatVersion, ExchangeManager); EndLoop; EndProcedure

Odpravljanje napak je najlažje narediti v zbirki datotek. Z obdelavo s pravili smo določili prelomno točko. Za iskanje zahtevanega postopka uporabite KD3. Najdemo PKO, POD ali algoritem, poglej " Ime upravljavca"ali" Ime algoritma", iščemo ta postopek v modulu pravil. Po urejanju modula ne pozabite kopirati postopka v odložišče in pritisniti gumb" "na CD3. Bodite previdni, ista pretvorba mora biti odprta.

To je vse za zdaj. Ti podatki so že dovolj, da programer 1C samostojno obvlada KD3 in vzdržuje sodobno metodo sinhronizacije med bazami 1C v delujočem stanju. Če so bele lise, vprašajte, članek bo dopolnjen in se lahko vrnete nanj, če ste kaj pozabili.

Znane povezave do dokumentacije o KD3:
  • 1C-Center za usposabljanje št. 3, "Pretvorba podatkov 3.0"-http://www.1c-uc3.ru/konvert30.html
Področje uporabe KD3 lahko razširite s temi publikacijami:
  • - konfiguracije prejšnjih različic na platformi 8.2 in starejših so združljive z ED.
Prihranite čas in uporabite že pripravljena pravila za najnovejše različice konfiguracije najdete tukaj
  • - razširjena funkcionalnost, popravki napak.

V tem članku bom opisal svoje, do sedaj majhne, ​​izkušnje pri organizaciji izmenjave podatkov prek univerzalnega formata EnterpriseData.

V mojem primeru je izmenjava konfigurirana med konfiguracijama »Upravljanje trgovine 11.2« (v nadaljevanju UT) in »Računovodstvo podjetij 3.0.43« (v nadaljevanju BP). Menjava je enosmerna, od UT do BP. Pred nadgradnjo iz Trade Management 11.1 na različico 11.2 je bila izmenjava podatkov konfigurirana s konfiguracijo Data Conversion 2.0. Vendar pa so se po prehodu na "11.2" v "Upravljanju trgovine" pojavile napake pri delu uporabnikov. Postopek za posodobitev menjalnih pravil je bil izveden, vendar to ni dalo rezultatov. Odpravljalec napak je pokazal, da je težava komunikacija. Odločeno je bilo, da se komunikacijske nastavitve v obeh konfiguracijah odstranijo in znova nastavijo.

Tako "Upravljanje trgovine" kot "Računovodstvo podjetij" nam delujeta v različici odjemalec-strežnik. Začel sem nastavljati sinhronizacijo z UT. Izvedel sem ga tako, da so bili podatki razloženi iz UT v datoteko. To pomeni sinhronizacijo prek omrežnega imenika. V napajalni enoti sem izmenjavo nastavil tako, da se iz napajalne enote ne raztovorijo nobeni podatki.

Pri klicu kontekstne metode (Preveri) je prišlo do napake: Napaka pri preverjanju podatkov XDTO:
Struktura predmeta "/bančni račun nasprotne stranke/banka" ne ustreza vrsti: (http://v8.1c.ru/edi/edi_stnd/EnterpriseData/1.1)
Preverjanje lastnosti »BIC«:
Oblika: Element
ime: (http://v8.1c.ru/edi/edi_stnd/EnterpriseData/1.1) BIC
tip:
Potrebna lastnina manjka
Predmet: Pogodba z nasprotno stranko št.

Za analizo napake sem kliknil na ikono "Sestava podatkov, ki jih je treba poslati" in na seznamu izvajalcev, registriranih za odpremo, sem našel sporazum, po katerem se je pojavila napaka. Odprl pogodbo, se spomnil bančnega računa nasprotne stranke, določenega v pogodbi. Nato sem prešel na bančne račune, prijavljene za pošiljanje. Izkazalo se je, da zahtevanega računa ni na seznamu registriranih. Ponovno objavim težavni bančni račun in pogodbo. Po tem sem ročno registriral zahtevani bančni račun.

Ponovno sem poskušal sinhronizirati podatke iz UT. Tokrat so bili podatki uspešno razloženi. V omrežno mapo nastala Datoteko XML ki vsebuje podatke za prenos iz UT v BP.

Naslednji korak je nalaganje podatkov iz datoteke v računovodski oddelek podjetja. V konfiguraciji "Računovodstvo podjetja" sem pritisnil gumb "Sinhroniziraj", odprl se je obrazec za obdelavo s sporočilom "Analiza podatkov v teku". Malo kasneje se je sporočilo spremenilo v "Razkladanje podatkov". Hkrati sta indikator in števec pokazala, da se iz napajalne enote raztovarja več kot 80 tisoč predmetov. To me je zmotilo, saj sem v nastavitvah nakazal, da iz napajalnika ne smemo nič raztovarjati. Obdelava je trajala precej dolgo in se je končala z napako:

Dogodek: izmenjava podatkov
(SharedModule.LongedOperations.Module (371)): potek dela v ozadju se je nenormalno zaključil
CallException (ErrorText);

Za lokalizacijo napake sem poskušal spremeniti nastavitve sinhronizacije in možnosti delovanja baze BP. Posledično je sistem, ko sem preklopil na različico datoteke, deloval ustrezno: odprl se je obrazec za primerjavo dveh zbirk podatkov. Po ujemanju objektov je bila začetna sinhronizacija uspešna. Nato sem zbirko podatkov preklopil nazaj na različico odjemalec-strežnik.

Med nadaljnjim "zagonom" sinhronizacije je bilo treba spremeniti pravila za pretvorbo predmetov. Zdaj je čas za uporabo konfiguracije Data Conversion 3.0. Spletna pomoč za konfiguracijo opisuje, kako deluje. Pomagali so tudi članki na spletni strani ITS.

Posledično sem v "Data Conversion 3.0" naložil naslednje podatke:

  • Besedila skupnega modula "DataExchangeManagerViaUniversalFormat" iz dveh podlag
  • Shema obeh podlag
  • Opis formata EnterpriseData (iz katere koli baze podatkov)
  • Pravila pretvorbe

Po nalaganju sem odprl pravila za pretvorbo podatkov, predmetov, lastnosti v "Data Conversion 3.0". Naredil mi je potrebne popravke. Nato sem uporabil gumb "Raztovori modul upravitelja izmenjav". Besedilo modula je bilo kopirano v odložišče. Ostaja samo, da ga vstavite v konfiguracijo.

Ko sem eksperimentiral z nastavitvijo pravil v "Pretvorbi podatkov 3.0", sem sam zaključil, da je v primeru, ko so spremembe neznatne, pravila lažje nastaviti neposredno v konfiguracijah UT in BP, v skupnem modulu "DataExchange ManagerVia UniversalFormat ". Če so spremembe resne, na primer dodajanje novega predmeta izmenjavi, uporabite konfiguracijo " Pretvorba podatkov 3.0 ".

Opravila sem nalogo dodajanja dokumenta "Naročilo dobavitelju" v načrt menjave z uporabo " Pretvorba podatkov 3.0 ". standardna različica UT - BP tega dokumenta v načrtu izmenjave ni.

Ne pozabite, da so pravila za registracijo predmetov za nalaganje še vedno nastavljena v konfiguraciji "Data Conversion 2.0".

To so prvi vtisi sinhronizacije podatkov skozi univerzalni format EnterpriseData.

P.S. Če imate vprašanja in lastna opažanja o izmenjavi podatkov prek univerzalne oblike in konfiguracije " Data Conversion 3.0 ", napišite v komentarjih. Izmenjali bomo izkušnje.

  • Sinhronizacija podatkov
  • Splošni format podatkov podjetja
  • Pretvorba podatkov 3.0
  • Pretvorba podatkov 2.0
  • Upravljanje trgovine
  • Računovodstvo podjetja

Oglejmo si preprost primer iz resničnega življenja. Recimo, da imamo podjetje, ki se ukvarja z veleprodajo in maloprodajo, tudi v tem podjetju, kot v katerem koli drugem, se vodi računovodstvo. Podjetje ima dve standardni bazi, to sta UT (vodenje trgovine) oziroma BP (računovodstvo podjetja), vsaka od podlag vodi svoje računovodstvo, v UT upravljanja, ki odraža vse transakcije, povezane s trgovino, v računovodskem BP. Da ne bi opravljali dvojnega dela, t.j. ne ustvarjajte istih dokumentov na dveh osnovah (navsezadnje bi morali biti premiki namenjeni upravljanju in računovodstvu) samo nastavili bomo sinhronizacijo med temi bazami.

Izmenjavo podatkov bomo vzpostavili enosmerno, iz UT ---> BP. Možno je tudi vzpostaviti dvosmerno izmenjavo, vendar v praksi to ni tako pogosto potrebno, zato je v našem primeru ne bomo upoštevali.

Pripravljalni koraki za vzpostavitev izmenjave v BP

Začnimo z nastavitvijo sinhronizacije, najprej pojdimo v bazo (sprejemnik) 1C "Enterprise Accounting 3.0", preveriti moramo, ali je za to zbirko podatkov omogočena sinhronizacija, da to naredimo, moramo najprej iti v bazo podatkov. Takoj, ko se odpre osnova, pojdite na zavihek "Administracija" ---> "Nastavitve sinhronizacije podatkov"


Pred nami se odpre nov zavihek, ki ga je treba izpolniti na enak način kot na spodnjem posnetku zaslona, ​​z izjemo predpone informacijske baze. Predpona mora biti sestavljena iz dveh črk, lahko jo nastavite katero koli, vendar je v skladu s standardom 1C bolje, da predpono nastavite po imenu konfiguracije, torej za "Računovodstvo podjetja" bo predpona "BP". Če nastavite zapletene izmenjave in obstaja več računovodskih baz podatkov, se morajo predpone jasno razlikovati med seboj, tukaj lahko kot okrajšavo uporabite prvi dve črki imena organizacije.

Še naprej nastavljamo sinhronizacijo podatkov v UT


Ko smo v bazi sprejemnikov (BP 3.0) opravili vsa potrebna dejanja, moramo za nadaljevanje nastavitve izmenjave podatkov odpreti izvorno bazo (UT 11.1). Gremo na zavihek "Administracija", na levi strani v meniju izberite postavko "Nastavitve sinhronizacije podatkov"... Če sinhronizacija ni omogočena, jo omogočite s potrditvenim poljem in ne pozabite določiti predpone izvorne baze. Ko dokončamo vse točke 1-4, kot je prikazano na spodnji sliki, morate klikniti hiperpovezavo "Sinhronizacija podatkov" (točka 5).


V novem oknu, ki se prikaže, kliknite zeleni znak plus (Konfiguriraj sinhronizacijo podatkov), v spustnem meniju izberite element "Računovodstvo podjetja 3.0".

Konfiguriranje pomembnih točk pri izmenjavi podatkov med UT in PSU


Zdaj vidimo okno z nastavitvijo sinhronizacije podatkov v 1C, izberite postavko "Določite nastavitve ročno" in kliknite "Naprej".


Še naprej konfiguriramo izmenjavo podatkov v 1C, na naslednjem zavihku moramo izbrati možnost povezave z informacijsko bazo sprejemnika ( neposredna povezava v program), parametri povezave (vklopljeno ta računalnik ali v lokalno omrežje), imenik, kjer se nahaja baza sprejemnika, ter potrebne podatke za preverjanje pristnosti (uporabniško ime in geslo v bazi).


Na naslednji strani moramo izpolniti pravila za pošiljanje in sprejemanje podatkov iz konfiguracije (sprejemnika) BP 3.0. Kliknite »spremeni pravila za nalaganje podatkov«.


Pred nami se je odprlo okno "Pravila pošiljanja podatkov", v katerem smo nastavili naslednje parametre:

  • Kateri NSI bo poslan (v našem primeru nas zanimajo le dokumenti in NSI, ki se v njih uporabljajo, zato smo šli na ustrezno postavko, če izberete prvo postavko »Pošlji vse«, se bodo vsi imeniki znova naložili skupaj z dokumenti, pogosto če se podatki ne uporabljajo v dokumentih, so za prejemnika neuporabni, ker na noben način ne vplivajo na računovodstvo)
  • Od katerega datuma poslati vse podatke (v tem članku ne bomo upoštevali ročne sinhronizacije)
  • Za katero ali katerim organizacijam poslati podatke (v našem primeru smo izbrali eno organizacijo IE "Podjetnik")
  • Pravila za oblikovanje pogodb
  • Splošno skladišče
  • Ali zložiti dokumente v skladišču

Ko nastavimo nastavitve, kliknite "Shrani in zapri".


Ker v našem primeru vzpostavljamo in uporabljamo enosmerno izmenjavo, od UT do BP, potem nas nastavitve pravil za pridobivanje podatkov iz "Enterprise Accounting 3.0" ne zanimajo za nas, zato kliknite "Naprej".


V novem oknu vas prosimo, da konfigurirate pravila za sprejemno bazo (BP). V 1. točki imenujemo svojo bazo neko ime in ji damo predpono. PREFIX mora biti enak, kot smo ga nastavili v sami bazi podatkov BP na začetku tega članka, če se predpone razlikujejo, sinhronizacija podatkov v programu 1C ne bo delovala. Nato pritisnemo točko 2 in nato točko 3.



V tretjem odstavku moramo omogočiti objavo dokumentov, ko so naloženi v zbirko podatkov. Kliknite "Shrani in zapri".


Zdaj bi moralo biti okno videti tako, kot je prikazano spodaj, kliknite »Naprej«.


To okno vsebuje referenčne informacije o ustvarjeni sinhronizaciji v 1C. Samo kliknite gumb "Naprej". Če program prikaže napako pri nastavitvi sinhronizacije podatkov, se morate obrniti na nas, da vam bo naš strokovnjak za 1C takoj pomagal!


V naslednjem koraku program bo ponudil sinhronizacijo takoj po ustvarjanju nastavitev izmenjave podatkov... Strinjamo se s tem in kliknite »Dokončaj«.

Pred vami se prikaže okno, v katerem boste videli informacije o tem, kako poteka sinhronizacija. Če osnova sprejemnika ni prazna, tj. ker je v njem že vodeno računovodstvo, bo uporabnik v programu 1C pozvan, naj ročno primerja predmete. Primerjava predmetov v 1C med sinhronizacijo podatkov je primerjava istih predmetov sprejemnika z istimi predmeti v viru.

Razmislimo o primeru, recimo v UT obstaja nasprotna stranka z imenom "PharmGroup LLC" in TIN 1234567, BP pa ima tudi nasprotno stranko s TIN 1234567, vendar ime "PharmGroup", če teh dveh predmetov ne primerjamo, ko če primerjamo podatke v fazi sinhronizacije, potem bomo po sinhronizaciji v sprejemniku (Enterprise Accounting 3.0) imeli dve nasprotni stranki s TIN 1234567 in dve imeni "PharmGroup LLC" oziroma "PharmGroup". Da bi se izognili takšnim situacijam, so izumili mehanizem za ujemanje predmetov.


V našem primeru je osnova sprejemnika prazna, zato se nam okna za preslikavo objektov niso odprla. Toda po izvedbi nekaterih operacij bo sistem uporabnika zagotovo pozval, naj doda nekaj dodatnih podatkov in prikaže naslednje okno. Ni nam treba prenesti nobenih dodatnih podatkov, že prej smo konfigurirali vse, kar je potrebno, zato na tem koraku izberemo "Ne dodaj dokumentov za pošiljanje". Kliknite "Naprej".

Zadnja stopnja izmenjave podatkov med 1C


Na zadnji stopnji bo program prikazal naslednje okno, v katerem bo uporabnik obveščen, da je bila sinhronizacija uspešna, kliknite »Dokončaj«. S tem je dokončana sinhronizacija med bazami v enosmerni izmenjavi od "Trade Management 11.1" (UT) do "Enterprise Accounting 3.0" (BP).

Avtomatizirani sistemi upravljanje je v večini primerov sestavljeno iz ločenih zbirk podatkov in imajo pogosto geografsko porazdeljeno strukturo. Hkrati je pravilno izvedena izmenjava podatkov predpogoj za učinkovito delovanje tovrstnih sistemov.

Hkrati lahko začetna nastavitev izmenjave zahteva številne ukrepe, ne le v smislu programiranja, ampak tudi svetovanja, tudi če imamo opravka z homogenimi viri, kot je to v primeru izdelkov na platformi 1C: Enterprise. Zakaj bi lahko nastavitev izmenjave 1C (ali, kot se imenuje tudi sinhronizacija podatkov v 1C 8.3) najbolj zamudna in draga naloga integracijskega projekta, bomo obravnavali v tem članku.

Izmenjava podatkov v okolju 1C omogoča:

  • Izključiti dvojni vnos dokumentov;
  • Avtomatizirajte povezane poslovne procese;
  • Optimizirajte komunikacijo med porazdeljenimi enotami;
  • Takoj posodobite podatke za delo strokovnjakov iz različnih oddelkov;
  • "Razčlenite" različne vrste računovodstva. *

* V primeru, ko se podatki ene vrste računovodstva bistveno razlikujejo od drugih, je treba zagotoviti zaupnost informacij in "razmejiti" tokove informacij. Na primer, izmenjava podatkov med 1C UT in 1C Accounting ne zahteva nalaganja podatkov upravljanja v rutinsko računovodsko bazo podatkov, tj. sinhronizacija v 1C tukaj ne bo popolna.

Če predstavljamo standardni postopek izvajanja primarne izmenjave podatkov, ko je vsaj en njen predmet izdelek 1C, potem lahko ločimo naslednje stopnje:

  • Usklajevanje sestave borze;
  • Opredelitev prevoza (protokoli izmenjave);
  • Določanje pravil;
  • Razpored.

Razkrivanje sestave menjave 1C

Predmete izmenjave lahko pogojno razdelimo na "vir" in "sprejemnik". Hkrati lahko hkrati opravljata dve vlogi, ki se bosta imenovali - dvostranska izmenjava. Vir in cilj se določita na logičen način, odvisno od potrebe ali na funkcionalnost sistem. *

* Strokovnjaki WiseAdvice ga na primer pri vključevanju "WA: Financier" - rešitve za finančno računovodstvo in upravljanje zakladniških procesov, razvitega na podlagi "1C: Enterprise", priporočajo kot glavni sistem. To je posledica razpoložljivosti kontrolnih orodij, ki so v skladu s pravili politike uporabe in s tem zagotavljajo učinkovitost rešitve.

Nadalje se na podlagi prejetih in zabeleženih zahtev uporabnikov ustvari seznam podatkov za izmenjavo, določi se njihov obseg, zahteve po frekvenci izmenjave, predpiše se postopek dela z napakami in obdelava izjemnih situacij (trkov).

Na isti stopnji se glede na floto obstoječih sistemov in strukturo podjetja določi format izmenjave:

Razdeljena informacijska baza

  • RIB pomeni izmenjavo med enakimi konfiguracijami baz podatkov 1C z jasno nadzorno strukturo master-slave za vsak par izmenjave. Kot element tehnološke platforme lahko RIB poleg podatkov prenese tudi spremembe konfiguracijskih in administrativnih podatkovnih podatkovnih baz (vendar le iz glavne v podrejeno).

Univerzalna izmenjava podatkov v 1C

  • Mehanizem, ki vam omogoča konfiguriranje izmenjave baz podatkov 1C, tako s konfiguracijami na platformi 1C: Enterprise kot s sistemi drugih proizvajalcev. Izmenjava se izvede s pretvorbo podatkov v univerzalni format xml v skladu z "načrti izmenjave".

EnterpriseData

  • Najnovejši razvoj 1C, zasnovan za izvajanje izmenjave podatkov v formatu xml med izdelki, ustvarjenimi na platformi 1C: Enterprise s poljubnimi sistemi za avtomatizacijo. Uporaba EnterpriseData poenostavlja izboljšave, povezane z izmenjavo. Prej, ko je bila v sistem vključena nova konfiguracija, je bilo treba uvesti mehanizem za uvoz in izvoz podatkov, tako zanj kot za obstoječe sisteme. Zdaj sistemi, ki podpirajo EnterpriseData, ne potrebujejo nobenih sprememb, saj imajo samo eno "vstopno-izstopno" točko.

Opredelitev prevoza (protokoli izmenjave)

Za sistem, ki temelji na platformi 1C: Enterprise 8, je na voljo široka paleta možnosti za organizacijo izmenjave z vsemi informacijskimi viri prek splošno sprejetih univerzalnih standardov (xml, besedilne datoteke, Excel, povezava ADO itd.). Zato je treba pri opredelitvi transporta za izmenjavo podatkov izhajati iz zmogljivosti sistemske baze podatkov tretje osebe.

Sinhronizacija imenikov

Glavno načelo učinkovite sinhronizacije imenikov je prisotnost ene vstopne točke. Če pa govorimo o delu z referenčnimi knjigami, ki so bile zgodovinsko izpolnjene v skladu z različnimi pravili, je treba jasno opredeliti polja za sinhronizacijo, da se izmenjava pripelje do "skupnega imenovalec". *

* Na tej stopnji bo morda treba opraviti delo na normalizaciji referenčnih podatkov na strani vira podatkov. Odvisno od stanja referenčnih knjig in njihovega obsega lahko postopek ujemanja elementov, prepoznavanja, odkrivanja napak in dvojnikov ter izpolnjevanja manjkajočih polj in dodeljevanja sinhronizacijskih polj zahteva delo cele skupine strokovnjakov, tako iz integratorja (lastnika metode standardizacije referenčnih podatkov) in s strani kupca.

Določitev pravil

Sposobnost prikaza podatkov iz izvornih sistemov v sprejemnikih je odvisna od pravilno določenih pravil izmenjave. Pravila, predstavljena v formatu xml, urejajo skladnost ključnih atributov izvorno-ciljnih objektov. Rešitev "1C: Pretvorba podatkov" je zasnovana za avtomatizacijo oblikovanja pravil za izvajanje tako enkratne kot trajne izmenjave.

Zagotavlja izgubo podatkov pri menjavi načrta izmenjave. To je sestavni del vsake konfiguracije na platformi 1C: Enterprise, ki v celoti opisuje postopek izmenjave sestave podatkov 1C: (dokumenti s "identifikacijskimi" podrobnostmi) in vozlišč ( informacijske baze oddajniki-sprejemniki), pa tudi aktiviranje RIB za izbrane smeri izmenjave.

Vsaka sprememba podatkov, vnesenih v načrt izmenjave, se zabeleži in prejme znak »spremembe«. Dokler se spremenjeni podatki med seboj ne ujemajo v vozliščih oddajnik-sprejemnik, zastavica ne bo izbrisana, sistem pa bo na oba vozlišča poslal nadzorna sporočila. Po razkladanju podatkov in potrditvi njihove popolne korespondence v obeh sistemih se znak ponastavi.

Urnik menjave v 1C

Za avtomatizacijo redne izmenjave je nastavljena pogostost nalaganja podatkov. Pogostost menjave je odvisna od potreb in tehničnih zmožnosti. Prav tako konfiguracije na platformi 1C: Enterprise omogočajo nastavitev izmenjave podatkov ob dogodku.

Ob upoštevanju postopka izvajanja standardne izmenjave bodimo pozorni na dejavnike, ki bodo v različnih fazah zahtevali izboljšave:

  • Netipične, zelo spremenjene konfiguracije zbirk podatkov;
  • Različne različice 1C: Poslovne platforme;
  • Dolgo se ne posodablja, ne trenutne različice konfiguracija;
  • Predmeti menjave, ki so bili predhodno spremenjeni;
  • Potreba po nestandardnih pravilih izmenjave;
  • Zelo različen nabor in sestava rekvizitov v obstoječih referenčnih knjigah.

Ker tudi standardni ukrepi za izvajanje primarne izmenjave podatkov zahtevajo strokovno znanje, jih priporočamo pri sodelovanju strokovnjakov 1C. Šele po zaključku vseh zgornjih korakov nadaljujte z nastavitvijo izmenjave v konfiguraciji. Razmislimo o integraciji baz podatkov na primeru "1C: UPP" in "1C: Retail" (po isti shemi je konfigurirana izmenjava z "1C: UT"). Tipična sinhronizacija vključuje tudi izmenjavo SCP - SCP, ki je značilna za obsežne sisteme avtomatizacije v največjih industrijskih podjetjih.

V podmeniju "Storitev" izberite "Izmenjava podatkov z izdelki na platformi ..." (izbira neposredne izmenjave s "Maloprodaja" pogosto ogroža napake na ravni objektov COM). Bodimo pozorni na sporočilo storitve "Ta funkcija ni na voljo".


Če želite rešiti to težavo, morate izbrati »Komunikacijske nastavitve«


... in označite polje. Nato zanemarimo sporočilo o napaki.


V nastavitvah sinhronizacije podatkov izberite "Ustvari izmenjavo s" Maloprodaja "...



Preden konfigurirate nastavitve za povezavo prek lokalnega ali omrežnega imenika, se prepričajte, da je na disku dovolj prostora za imenik. Čeprav praviloma ne traja več kot 30-50 MB, lahko v izjemnih primerih zahteva do 600 MB. Potreben imenik lahko ustvarite neposredno iz konfiguratorja.



Pri povezovanju prek omrežnega imenika ponuja konfiguracijo povezave prek naslova FTP in prek E-naslov prezrete s klikom na "Naprej".


V nastavitvah ročno odložimo predpone - konvencije baz (praviloma BP, UPP, RO), nastavimo pravila in datum začetka nalaganja podatkov. Predpona bo v imenu dokumentov označena kot osnova, v kateri so bili ustvarjeni. Če se pravila za raztovarjanje ne uredijo, se privzeto raztovorijo podatki za vse razpoložljive parametre.



Da ne bi ponavljali svojih dejanj, ustvarimo datoteko z nastavitvami izmenjave za "Trgovina na drobno". Če morate takoj po nastavitvi sinhronizacije takoj poslati podatke, potrdite polje.


Če želite avtomatizirati postopek izmenjave, morate nastaviti urnik.


Trgovinski meni.


Potrdite polje in izberite "Sinhronizacija".


Nastavitev "obratno" nastavimo tako, da izberemo Manufacturing Enterprise Management.




Naložite datoteko z nastavitvami, ustvarjeno v SCP.


Postavili smo kljukico, sistem samodejno pobere naslov.





Delujemo enako kot v UPP.









Primerjava podatkov za preverjanje (ročna primerjava podatkov je priporočljiva v pripravljalni fazi, saj lahko to delo v procesu izvajanja izmenjave postane najbolj zamudno). Okno za preslikavo odpre dvojni klik miši.



V primeru napake pri sinhronizaciji se bo "Podrobnosti ..." zamenjalo z "Nikoli ...".


"Podrobno ..." odpre dnevnik registracije s posodobljenimi podatki o borzi.


Pripravljen.