Verwerking van "Universele gegevensuitwisseling in XML-formaat". Universele gegevensuitwisseling in XML-formaat

Heel vaak is er bij het werk van grote ondernemingen en winkelketens behoefte aan gegevensuitwisseling tussen databases. Elke programmeur en beheerder lost dit probleem anders op. Sommigen schrijven uploads en downloads via tussenliggende tabelbestanden, anderen gebruiken de COM-verbindingsmodus om verbinding te maken met de brondatabase. Recentelijk is het eigen mechanisme van 1C genaamd “Universal Data Exchange in XML Format” echter steeds populairder geworden.

Uiterlijk van verwerking

In de Volledige interface kunt u de verwerking openen via Service->Overige gegevensuitwisselingen->Universele gegevensuitwisseling in XML-formaat.

Het verwerkingsformulier (Fig. 1) bevat vier tabbladen:

  • Aanvullende instellingen;
  • Gegevens verwijderen.
  • De interface van elk van de tabbladen is zwaar beladen met elementen en vereist daarom afzonderlijke aandacht.

    Gegevens uploaden

    Helemaal bovenaan het tabblad bevindt zich een veld waarin u een bestand met uitwisselingsregels kunt selecteren. Voor niet-standaard databases en uitwisselingen zult u zelf het uitwisselingsbestand moeten aanmaken.

    Op de volgende regel van het formulier staan ​​twee keuzerondjes:

    1. Uploaden naar een uitwisselingsbestand (Fig. 2);
    2. Gegevens verbinden en uploaden naar informatiebeveiliging (Fig. 3).

    Zoals u op de bovenstaande afbeeldingen kunt zien, verschilt het uiterlijk van het formulier afhankelijk van de schakelaar. Als de optie voor het delen van bestanden is geselecteerd, wordt de gebruiker gevraagd de locatie van het bestand te selecteren waar het zal worden geüpload en de mogelijkheid om het te comprimeren om ruimte te besparen en het te beschermen met een wachtwoord.

    De mogelijkheid van directe verbinding met de ontvangende basis ondersteunt zowel bestands- als client-server-werkingsmodi. In dit geval moet u het databaseadres invoeren en de velden “Gebruiker” en “Wachtwoord” invullen. Voordat u gegevens gaat uitwisselen, is het raadzaam om de verbinding te testen.

    In het onderstaande tabelgedeelte kunt u selecties en andere losparameters configureren.

    Om algoritmen te debuggen en fouten te corrigeren, kunt u het mechanisme gebruiken dat is ingebouwd in de uitwisselingsverwerking. Het wordt geactiveerd door het overeenkomstige selectievakje onderaan het formulier aan te vinken. Als u op de knop “Debugging settings…” klikt, verschijnt er een venster (Fig. 4).

    Afb.4

    Een onderscheidend kenmerk van dit formulier is de informatieve hulp aan de linkerkant van de lay-out, die elk van de drie mogelijke foutopsporingsmodi beschrijft. Elk bestand in het EPF-formaat kan dienen als extern verwerkingsbestand voor de module.

    Door op de knop “Voltooien” te klikken, wordt de juistheid en volledigheid van de ingevulde gegevens gecontroleerd.

    In tegenstelling tot “Uploaden” heeft dit tabblad (Fig. 5) geen tabelvormig gedeelte, maar er zijn veel meer selectievakjes waarmee u de parameters kunt aanpassen voor het opnemen van nieuwe en gewijzigde objecten.

    Afb.5

    Allereerst moet u een bestand selecteren dat als informatiebron zal dienen. Dit kunt u doen in het invoerveld “Bestandsnaam om te uploaden”. Als de gegevens zijn geüpload naar een met een wachtwoord beveiligd archief, moeten deze in het daarvoor bestemde veld worden ingevoerd.

    Met de bijbehorende selectievakjes kunt u het volgende configureren:

    • Transactie bij het schrijven van objecten (dit versnelt soms het proces);
    • Gegevens laden in de uitwisselingsmodus (in dit geval worden alle platformcontroles, met uitzondering van de controle bij het plaatsen van documenten, genegeerd bij het opnemen);
    • Gewijzigde elementen overschrijven;
    • Een verwijderingsmarkering instellen voor gedownloade items;
    • De manier waarop nieuwe gegevens naar het register worden geschreven (een voor een of in een set);
    • Inkorten van onbelangrijke tekens (spaties en tabs) voor tekenreekswaarden.

    Aanvullende instellingen

    Zoals de naam van de bladwijzer aangeeft, bevat deze hulpmiddelen waarmee u het uitwisselingsproces nauwkeuriger kunt aanpassen. In het bijzonder:

    1. Schakelt de foutopsporingsmodus in;
    2. Maakt het gebruik van een transactie tijdens het losproces mogelijk;
    3. Optimaliseert de uitwisseling tussen databases van versie 8 van 1C;
    4. Upload alleen die objecten die mogen worden gebruikt door de huidige gebruiker;
    5. Schakel logboekregistratie van het uitwisselingsproces tussen databases in.

    Deze en enkele andere functies worden ingeschakeld door de juiste vakjes op het formulier aan te vinken (Fig. 6).

    Afb.6

    Gegevens verwijderen

    Dit tabblad wordt alleen gebruikt door ontwikkelaars in de foutopsporingsmodus. Hiermee kunt u onnodige objecten uit de database verwijderen.

    Kort over het opzetten van wisselregels

    Het gebruik van een standaardhandler vereenvoudigt het leven van programmeurs aanzienlijk. Tegelijkertijd is een van de moeilijkste momenten voor iemand die voor het eerst in aanraking kwam met “Universal Data Interchange in XML Format” de vraag: “Waar kan ik het bestand met de uitwisselingsregels verkrijgen?”

    Om zelfstandig uitwisselingsregels te kunnen maken, heeft u allereerst een speciale configuratie nodig genaamd "Dataconversie". Het bevat verschillende interessante bestanden waarmee u vrijwel elke uitwisseling tussen verschillende 1C-databases 7 en 8 versies kunt configureren:

    1. epf – vereist voor het downloaden van de metadatastructuur voor 1C 8-databases;
    2. epf – als de 1C 8-configuratie zelfgeschreven is of niet standaard, beschikt deze mogelijk niet over de “Universal Data Exchange”-verwerking, dit bestand is deze verwerking;
    3. ert – bestand bevat code voor het downloaden van de metadatastructuur van configuraties van 1C versies 7.7;
    4. ert – bestand voor het verwerken van het uploaden en downloaden van gegevens voor de zeven.

    Nadat de juiste verwerking is gestart, is het noodzakelijk om de metadatastructuren voor de bron- en doeldatabases te ontladen. Vervolgens moet u in de configuratie "Conversie" informatie invoeren over de bron- en doelconfiguraties in de map "Configuraties".

    Vervolgens wordt in de Conversiedirectory een element aangemaakt met informatie over de richting van de gegevensuitwisseling. U kunt er Exchange-regels voor instellen.

    Afdrukken (Ctrl+P)

    Uitwisseling via een universeel formaat

    Het subsysteem “Data Exchange” van de bibliotheek met standaardsubsystemen bevat 4 opties (technologieën) voor informatie-uitwisseling tussen verschillende informatiebases:

    • gedistribueerde informatiebases (RIB);
    • gegevensuitwisseling via een universeel formaat;
    • gegevensuitwisseling volgens uitwisselingsregels (uitwisselingsregels worden gemaakt met behulp van de “Data Conversion”-configuratie, editie 2.1);
    • gegevensuitwisseling zonder uitwisselingsregels.

    Dit artikel bespreekt de technologie van gegevensuitwisseling via universeel EnterpriseData-formaat. Deze technologie is beschikbaar in de “Standard Subsystems Library” vanaf versie 2.3.1.62. uitgebracht begin 2016. Momenteel heeft de nieuwste editie van BSP 2.3 (voor gebruik met het 1C:Enterprise 8.3-platform niet lager dan versie 8.3.8.1652 met compatibiliteitsmodus uitgeschakeld) release 2.3.6.17.

    Rijst. 1 Nieuwste releases van BSP 2.3

    Onder de bestanden voor het aanleveren van 1C-applicatieoplossingen bevindt zich een tekstbestand “Bibliotheekversies”, waarin geschreven is op basis van welke versie van de BSP de applicatie ontwikkeld is, bijvoorbeeld op basis van de applicatieoplossing UT 11.3.3.231, BSP 2.3.5.65 werd gevormd.

    Houd er rekening mee dat voor gebruik met het platform “1C:Enterprise 8.3” de versie niet lager is 8.3.10.2168 editie is uitgebracht met de compatibiliteitsmodus uitgeschakeld BSP 2.4.

    Beschrijving van het EnterpriseData-formaat

    Wat is het EnterpriseData-formaat?

    Dit is een formaat waarmee u een informatiebasisobject (tegenpartij, factuur etc.) kunt beschrijven of kunt melden dat dit object is verwijderd. Er wordt verwacht dat de configuratie die het bestand in het EnterpriseData-formaat ontvangt, dienovereenkomstig zal reageren: nieuwe objecten zullen worden gemaakt en de objecten zullen worden verwijderd die in het bestand als verwijderd zijn gemarkeerd. Het is bedoeld voor informatie-uitwisseling tussen UT-, RT-, UNF- en BP-configuraties. Het formaat kan ook worden gebruikt om informatie uit te wisselen met andere informatiesystemen: het is niet afhankelijk van de kenmerken van de eigen software of informatiebasisstructuren die aan de uitwisseling deelnemen en bevat geen duidelijke gebruiksbeperkingen.

    Versie van EnterpriseData-formaat

    De formaatgegevens worden opgeslagen in XDTO-pakketten in de algemene databaseconfiguratietakken, zoals weergegeven in Fig. 2

    Fig. 2 XDTO – EnterpriseData-gegevensformaatpakketten

    In afb. 2 laat zien dat er verschillende XDTO-pakketten zijn. Dit zijn verschillende versies van het formaat. Het versienummer van het formaat bestaat uit X.Y.Z, waarbij X.Y de versie is en Z de secundaire versie. De secundaire versie is uitgebreid in het geval van bugfixes en andere wijzigingen waarbij: de functionaliteit van de dataconversielogica gebaseerd op de vorige versie van het formaat behouden blijft (waarbij de achterwaartse compatibiliteit van de huidige algoritmen voor gegevensoverdracht via het formaat behouden blijft); Ondersteuning voor nieuwe formaatmogelijkheden voor conversielogica is vrijwillig. Een voorbeeld van dergelijke wijzigingen kan het corrigeren van een fout zijn, het wijzigen van de eigenschappen van formaatobjecten, het toevoegen van eigenschappen waarvan het gebruik niet verplicht is bij het converteren van gegevens. In andere gevallen, wanneer het formaat verandert, wordt de Major-versie vergroot: X – in het geval van een globale herstructurering, Y – in andere gevallen.
    Het formaat beschrijft de weergave van objecten (documenten of directory-elementen) in de vorm van XML-bestanden. Versie 1.0.1 bevat een beschrijving van 94 objecten uit verschillende gebieden (financiën, productie, in- en verkoop, magazijnoperaties). De namen van de typen zijn in de regel goed begrepen en behoeven geen aanvullende uitleg: bijvoorbeeld 'Document.Act of Completed Work' of 'Directory.Tegenpartijen'. Zoals u kunt zien, begint de beschrijving van documenttypen met het voorvoegsel “Documentaire.”, en begint het directory-element met het voorvoegsel “Directory.”. Een meer gedetailleerde beschrijving van het formaat vindt u
    De nieuwste versie is 1.3, maar de meest gebruikte versie is 1.0. Er is niet veel verschil tussen de versies. Formaat EnterpriseDataExchange_1_0_1_1 gebruikt bij het uitwisselen via een webservice.
    Let daar op waarmee het EnterpriseData-gegevensformaatpakket wordt gebruikt Wissel bericht uit bij het maken van conversieregels. Het is dit pakket dat het type-object bevat Extra informatiedie elk waardetype kan hebben en wordt gebruikt bij het maken van een conversieregel tussen configuratieobjecten. die niet in het gegevensformaat zijn. Precies, bedankt Extra informatieU kunt uitwisselingsregels aanpassen en aanpassen zonder de formaatgegevens in XDTO-pakketten te wijzigen.

    Rijst. 3 Structuur van het XDTO-pakketExchangeMessage

    Hoe gegevens uitwisselen in EnterpriseData-formaat?

    Gegevensuitwisseling in EnterpriseData-formaat met configuratie is een bestandsuitwisseling. Als reactie op het bestand dat is ontvangen van de externe applicatie, zal de configuratie het verwerken en een responsbestand maken. Bestanden kunnen worden uitgewisseld:

    • via een speciale bestandsmap,
    • via FTP-map,
    • via een webservice die aan de infobase-kant is geïmplementeerd. Het gegevensbestand wordt als parameter doorgegeven aan webmethoden.

    Opmerking. Voor tweerichtingsdata-uitwisseling tussen een applicatie van derden en de configuratie aan de infobase-kant moeten een aantal instellingen worden gedaan - de applicatie van derden moet in de infobase zijn geregistreerd, er moet een uitwisselingskanaal voor worden gedefinieerd (via een bestand of FTP-map), enz. Maar in gevallen van eenvoudige integratie, wanneer het voldoende is om alleen informatie over te dragen van een applicatie van derden naar de infobase en de omgekeerde overdracht van gegevens van de infobase naar een applicatie van derden niet vereist is (bijvoorbeeld de integratie van een online winkel die verkoopinformatie overdraagt ​​naar 1C: Boekhouding), is er een vereenvoudigde versie van het werken via een webservice waarvoor geen instellingen aan de zijkant nodig zijn.

    Bij het uitwisselen met behulp van configuratie-uitwisselingsplannen tijdens de synchronisatie wordt alleen informatie verzonden over wijzigingen die hebben plaatsgevonden sinds de laatste synchronisatie (om de hoeveelheid overgedragen informatie te minimaliseren). De eerste keer dat u synchroniseert, zal de configuratie alle EnterpriseData-geformatteerde objecten in een XML-bestand dumpen (aangezien ze allemaal “nieuw” zijn voor de applicatie van derden).

    De volgende stap is voor de applicatie van derden: deze moet de informatie uit het XML-bestand verwerken en in de sectie plaatsen tijdens de volgende synchronisatiesessie informatie dat een bericht uit de configuratie met een bepaald nummer succesvol is ontvangen (plaats het nummer van het bericht dat is ontvangen uit de configuratie in het veld Ontvangennr). Het ontvangstbericht is een signaal voor de configuratie dat alle objecten met succes door de externe applicatie zijn verwerkt en dat er geen informatie meer over hoeft te worden verzonden. Naast de kassabon kan het XML-bestand van een applicatie van derden ook gegevens voor synchronisatie bevatten (in de sectie ).

    Na ontvangst van het ontvangstbericht markeert de configuratie alle wijzigingen die in het vorige bericht zijn verzonden als succesvol gesynchroniseerd. Alleen niet-gesynchroniseerde wijzigingen aan objecten (nieuwe aanmaken, bestaande wijzigen en verwijderen) worden tijdens de volgende synchronisatiesessie naar de externe applicatie verzonden.

    Bij het overbrengen van gegevens van een externe applicatie naar de configuratie is het beeld omgekeerd. De aanvraag moet het gedeelte invullen dienovereenkomstig, en in de sectie plaats objecten die moeten worden gesynchroniseerd in EnterpriseData-formaat.

    Na verwerking van het bestand genereert de configuratie een XML-bestand dat een ontvangstbericht en nieuwe gegevens voor synchronisatie van de configuratiezijde bevat (als die er zijn sinds de laatste synchronisatiesessie).

    U kunt meer details over gegevensuitwisseling met applicatieoplossingen bekijken op het 1C:Enterprise-platform in het EnterpriseData-formaat

    Algemene module van “uitwisselingsmanager via een universeel formaat”.

    Procedures en functies die de regels voor het downloaden van gegevens uit de informatiebank naar het uitwisselingsformaat en de regels voor het laden van gegevens uit het uitwisselingsformaat in de informatiebank volledig beschrijven, zijn ontwikkeld in een gemeenschappelijke module - de uitwisselingsbeheermodule via een universeel formaat.


    Rijst. 4 Structuur van de Exchange Manager-module via een universeel formaat

    De module wordt automatisch aangemaakt met behulp van de “Data Conversion”-configuratie, editie 3.0, op basis van geconfigureerde uitwisselingsregels, of handmatig in de configurator.

    De module bestaat uit verschillende grote secties, die elk een eigen groep procedures en functies bevatten.

    1. Een reactie. De eerste regel van de module bevat een commentaar met de naam van de conversie. Deze regel is nodig om de module te identificeren bij gebruik van de opdracht in bijvoorbeeld het Data Conversion-programma, editie 3.0. // Conversie UP2.2.3 vanaf 01-06-2017 19:51:50
    2. Conversieprocedures. Bevat vooraf gedefinieerde procedures die worden uitgevoerd in verschillende stadia van gegevenssynchronisatie: vóór conversie, na conversie, vóór uitgesteld vullen.
    3. Regels voor gegevensverwerking (DPR). Bevat procedures en functies die de regels voor het verwerken van gegevens beschrijven.
    4. Regels voor objectconversie (OCR). Bevat procedures en functies die de regels voor het converteren van objecten beschrijven, evenals de regels voor het converteren van eigenschappen van deze objecten.
    5. Vooraf gedefinieerde regels voor gegevensconversie (PDC). Bevat een procedure die de regels invult voor het converteren van vooraf gedefinieerde gegevens.
    6. Algoritmen. Bevat willekeurige algoritmen die worden aangeroepen vanuit andere regels (POD of PKO).
    7. Opties. Bevat de logica voor het invullen van de conversieparameters.
    8. Algemeen doel. Bevat procedures en functies die veel worden gebruikt in regels en algoritmen.

    Hieronder worden de parameters van procedures en functies beschreven die in verschillende soorten procedures in de managermodule worden gebruikt.

    Wissel componenten uit. Type - Structuur. Bevat parameters en uitwisselingsregels die zijn geïnitialiseerd als onderdeel van de uitwisselingssessie.

    Richting van uitwisseling. Type – Tekenreeks. Ofwel "Verzenden" of "Ontvangen".

    IB-gegevens. Type – DirectoryObject of DocumentObject.

    Procedures met betrekking tot conversiegebeurtenissen

    Er zijn drie vooraf gedefinieerde procedures die worden aangeroepen tijdens het conversieproces:

    • Vóór conversie. Aangeroepen voordat gegevenssynchronisatie plaatsvindt. Deze procedure bevat doorgaans de logica voor het initialiseren van verschillende conversieparameters, het invullen van standaardwaarden, enz. Parameters: ComponentenExchange.
    • Na conversie. Wordt aangeroepen nadat de gegevenssynchronisatie is voltooid, maar voordat er luie opvulling heeft plaatsgevonden. Opties: ComponentenExchange.
    • Vóórvertraagd vullen. Geroepen voordat er luie vulling optreedt. De logica voor het sorteren of aanpassen van de tabel met objecten die onderhevig zijn aan lui vullen, vindt u hier. Opties: ComponentenExchange.

    AML-procedures

    Vul de regels voor gegevensverwerking in. Een exportprocedure die de logica bevat voor het invullen van regels voor gegevensverwerking. Bevat aanroepen naar andere procedures die een regel voor het verwerken van een specifiek object toevoegen aan de regelstabel (zie onderstaande procedures). AML toevoegen). Opties: Richting van uitwisseling, Regels voor gegevensverwerking

    UNDER_ toevoegen<ИмяПОД>. Een reeks procedures die de tabel vullen ONDER de regels voor specifieke objecten. Het aantal van dergelijke procedures komt overeen met het aantal AML dat voor deze conversie is voorzien in het Dataconversieprogramma, versie 3.0. Opties: Regels voor gegevensverwerking(een tabel met waarden geïnitialiseerd als onderdeel van de uitwisselingssessie).

    ONDER_<ИмяПОД>_Wanneerverwerking. De procedure bevat de handlertekst Tijdens verwerking voor een specifieke AML. De handler is ontworpen om conversielogica op objectniveau te implementeren. Wijs bijvoorbeeld een specifieke PQO toe aan een specifiek object, afhankelijk van de inhoud van het object. Opties:

    • InformatieB-gegevens of GegevensXDTO(afhankelijk van de richting van uitwisseling):
    • bij het verzenden – object ( DirectoryObject,DocumentObject);
    • bij ontvangst - een structuur met een beschrijving van het XDTO-object.
    • Gebruik van PKO. Type - Structuur. De sleutel bevat een tekenreeks met de naam van de PCO en de waarde van type Booleaans (WAAR– PKO wordt gebruikt, Leugen– PKO wordt niet gebruikt).
    • ComponentenExchange.

    ONDER_<ИмяПОД>_Gegevensbemonstering. De functie bevat de handlertekst Bij het lossen. De handler is ontworpen om een ​​willekeurig algoritme te implementeren voor het selecteren van te lossen objecten. Retourwaarde: een reeks objecten die moeten worden verwijderd. De array kan zowel links naar infobase-objecten bevatten als een structuur met gegevens om te uploaden. Opties: ComponentenExchange.

    PKO-procedures

    Vul de objectconversieregels in. Een exportprocedure die de logica bevat voor het invullen van de regels voor het converteren van objecten. Bevat aanroepen naar andere procedures die een specifieke objectconversieregel toevoegen aan de regelstabel (zie onderstaande procedures). PKO toevoegen). Opties: Richting van uitwisseling, Conversieregels(een tabel met waarden geïnitialiseerd als onderdeel van de uitwisselingssessie).

    PKO_ toevoegen<ИмяПКО>. Een reeks procedures die de PKO-tabel vullen met regels voor specifieke objecten. Het aantal van dergelijke procedures komt overeen met het aantal PKO's dat voor deze conversie is voorzien in het Dataconversieprogramma, versie 3.0. Opties: Conversieregels(een tabel met waarden geïnitialiseerd als onderdeel van de uitwisselingssessie).

    PKO_<ИмяПКО>_WhenSendingData. De procedure bevat de handlertekst Bij het verzenden voor een specifieke PKO. De handler wordt gebruikt bij het uploaden van gegevens. Ontworpen om de logica te implementeren voor het converteren van gegevens in een infobase-object naar een beschrijving van een XDTO-object. Opties:

    • InformatieB-gegevens. Type - DirectoryObject, DocumentObject. Het informatiebasisobject dat wordt verwerkt.
    • GegevensXDTO. Type - Structuur. Ontworpen om toegang te krijgen tot XDTO-objectgegevens.
    • ComponentenExchange.
    • StackUploads. Type - Array. Bevat links naar ongeladen objecten, rekening houdend met nesten.

    PKO_<ИмяПКО>_Bij het converteren van XDTO-gegevens. De procedure bevat de handlertekst Bij het converteren van DataXDTO voor een specifieke PKO. De handler wordt gebruikt bij het laden van gegevens. Ontworpen om willekeurige XDTO-gegevensconversielogica te implementeren. Opties:

    • GegevensXDTO. Type - Structuur. XDTO-objecteigenschappen die zijn voorbewerkt om ze gemakkelijker toegankelijk te maken.
    • Ontvangen data. Type - DirectoryObject, DocumentObject. Een infobase-object dat wordt gevormd door XDTO-gegevens te converteren. Niet opgenomen in de informatiedatabase.
    • ComponentenExchange.

    PKO_<ИмяПКО>_Voordat u de ontvangen gegevens registreert. De procedure bevat de handlertekst Voordat u de ontvangen gegevens opneemt voor een specifieke PKO. De handler wordt gebruikt bij het laden van gegevens. Ontworpen om extra logica te implementeren die moet worden uitgevoerd voordat een object in de infobase wordt opgenomen. Moeten wijzigingen bijvoorbeeld worden geladen in bestaande informatiebeveiligingsgegevens of moeten ze worden geladen als nieuwe gegevens. Opties:

    • Ontvangen data. Type - DirectoryObject, DocumentObject. Een gegevenselement dat wordt gegenereerd door XDTO-gegevens te converteren.

    Wordt vastgelegd als deze gegevens nieuw zijn voor de infobase (parameter InformatieB-gegevens bevat de waarde Ongedefinieerd).

    Anders Ontvangen data vervangen InformatieB-gegevens(alle eigendommen vanaf Ontvangen data overgeplaatst naar InformatieB-gegevens).

    Als standaardvervanging van informatiebeveiligingsgegevens door ontvangen gegevens niet vereist is, moet u uw eigen overdrachtslogica schrijven en vervolgens de parameter instellen Ontvangen data betekenis Ongedefinieerd:

    • InformatieB-gegevens. Type - DirectoryObject, DocumentObject. Een infobase-gegevenselement dat overeenkomt met de ontvangen gegevens. Als er geen overeenkomende gegevens worden gevonden, bevat Ongedefinieerd.
    • Eigenschappen converteren. Type - Tabel met waarden. Bevat regels voor het converteren van eigenschappen van het huidige object, geïnitialiseerd als onderdeel van de uitwisselingssessie.
    • ComponentenExchange.

    PCPD-procedures

    Vul de conversieregels van vooraf gedefinieerde gegevens in. Een exportprocedure die de logica bevat voor het invullen van de regels voor het converteren van vooraf gedefinieerde gegevens. Opties: Richting van uitwisseling, Conversieregels(een tabel met waarden geïnitialiseerd als onderdeel van de uitwisselingssessie).

    Algoritmen

    In het programma “Data Conversion”, editie 3.0, is het mogelijk om willekeurige algoritmen te creëren die worden aangeroepen vanuit de AML- en PKPD-handlers. Bij het ontwikkelen van de regels worden de naam, parameters en inhoud van de algoritmen bepaald.

    Opties

    VulConversionParameters in. Een exportprocedure waarbij de structuur met conversieparameters wordt ingevuld. Opties: Conversie-opties(typ - Structuur).

    Procedures en functies voor algemeen gebruik

    ExecuteManagerModuleProcedure. Opties: Procedurenaam(lijn), Opties(structuur). Een exportprocedure, die bedoeld is om een ​​niet-exportmoduleprocedure aan te roepen, waarvan de naam en parameters als invoer worden ontvangen. Hiermee kunt u een procedure of functie op een lijn oproepen zonder een methode te gebruiken Uitvoeren.

    ExecuteManagerModuleFunctie. Opties: Procedurenaam(lijn), Opties(structuur). Functie, doel vergelijkbaar ExecuteManagerModuleProcedure. Het verschil is dat het een functie aanroept en de waarde ervan retourneert.

    Universal Data Interchange in XML-formaat verwerken (Universal Data Exchangexml verwerken)

    Verwerking "Universele gegevensuitwisseling in XML-formaat" is bedoeld voor het laden en ontladen van gegevens in een bestand vanuit elke configuratie die op het 1C:Enterprise 8-platform is geïmplementeerd.

    Bedrijfsmodus
    Bij gebruik van een beheerd formulier kent de verwerking twee werkingsmodi:
    1. Op de klant. Wanneer u deze modus gebruikt, worden de regels en downloadgegevensbestanden van de client naar de server overgedragen, en wordt het downloadgegevensbestand van de server naar de client overgedragen. De paden naar deze bestanden op de client moeten onmiddellijk vóór het uitvoeren van de actie in het dialoogvenster worden opgegeven.
    2. Op de server. In deze modus worden bestanden niet naar de client overgedragen en moeten de paden ernaartoe op de server worden opgegeven.
    Opmerking: Het externe verwerkingsbestand en de uitwisselingsprotocolbestanden moeten zich altijd op de server bevinden, ongeacht de bedrijfsmodus.

    Download Universal Data Interchange in XML-formaat- Alleen geregistreerde gebruikers kunnen bestanden downloaden!


    Verwerking heeft vier tabbladen

    Gegevens uploaden
    Om gegevens te uploaden, moet u de naam opgeven van het bestand waarin de gegevens worden geüpload en het bestand met uitwisselingsregels selecteren. Uitwisselingsregels voor elke configuratie kunnen worden geconfigureerd in de gespecialiseerde configuratie "Data Conversion, Edition 2".

    Om documenten en records uit onafhankelijke periodieke informatieregisters te uploaden, moet u de periode opgeven: “Begindatum” en “Einddatum”. Het resulterende bestand met de gedownloade gegevens kan worden gecomprimeerd.

    Op het tabblad "Regels voor het uploaden van gegevens" kunt u de typen objecten selecteren die moeten worden geüpload, selecties instellen voor het selecteren van objecten of het gegevensuitwisselingsknooppunt opgeven waarvoor u gegevens wilt uploaden.

    Op het tabblad "Uploadopties" kunt u aanvullende parameters opgeven voor het uploaden van gegevens.

    Op het tabblad "Opmerking" kunt u willekeurige commentaartekst schrijven die in het uitwisselingsbestand moet worden opgenomen.

    Het is mogelijk om het laden van gegevens in transacties te configureren. Om dit te doen, moet u het selectievakje "Transacties gebruiken" inschakelen en tijdens het laden het aantal elementen in één transactie opgeven.

    “Gegevens laden in uitwisselingsmodus (Data Exchange.Load = True)” – als de vlag is ingesteld, wordt het laden van objecten uitgevoerd terwijl de laadvlag is ingesteld. Dit betekent dat wanneer objecten naar de database worden geschreven, alle platform- en applicatiecontroles worden uitgeschakeld. De uitzondering geldt voor documenten die zijn vastgelegd in de boekings- of annuleringsmodus. Het boeken en annuleren van het boeken van een document wordt altijd uitgevoerd zonder de laadmodus in te stellen, d.w.z. controles zullen worden uitgevoerd.

    Aanvullende instellingen
    Het tabblad wordt gebruikt voor gedetailleerde configuratie van het uploaden en downloaden van gegevens.

    "Debug mode" – vlag voor het instellen van de. Als deze vlag is ingesteld, wordt het gegevensuitwisselingsproces niet gestopt als er een fout optreedt. De uitwisseling wordt voltooid en foutopsporingsberichten worden naar het uitwisselingslogbestand uitgevoerd. Het wordt aanbevolen om deze modus te gebruiken bij het debuggen van uitwisselingsregels.

    “Uitvoer van informatieberichten in het berichtenvenster” – als de vlag is ingesteld, wordt het protocol van het gegevensuitwisselingsproces weergegeven in het berichtenvenster.

    “Aantal verwerkte objecten voor statusupdate” – de parameter wordt gebruikt om het aantal verwerkte elementen te bepalen voordat de laad-/losstatusregel wordt gewijzigd

    “Instellingen voor het uploaden van gegevens” – hiermee kunt u het aantal elementen bepalen dat in één transactie wordt verwerkt bij het uploaden van gegevens, alleen die objecten uploaden en verwerken waarvoor u toegangsrechten heeft, en het type registratiewijziging configureren voor geüploade objecten via uitwisselingsplannen.

    “Gebruik een geoptimaliseerd formaat voor gegevensuitwisseling (V8 - V8, verwerkingsversie niet lager dan 2.0.18)” – het geoptimaliseerde uitwisselingsberichtformaat gaat uit van de aanwezigheid van een “InformationOnDataTypes”-knooppunt in de berichtkop, waarin informatie over gegevenstypen wordt opgeslagen. geüpload. Hierdoor kunt u het gegevenslaadproces versnellen.

    “Gebruik transacties bij het ontladen voor uitwisselingsplannen” – de vlag bepaalt de manier waarop transacties worden gebruikt bij het ontladen van gegevens bij het ophalen van wijzigingen op uitwisselingsplanknooppunten. Als de vlag is ingesteld, wordt het uploaden van gegevens uitgevoerd in een transactie.

    "Aantal items per transactie" - definieert het maximale aantal gegevensitems dat in een bericht wordt geplaatst binnen een enkele databasetransactie. Als de parameterwaarde 0 is (de standaardwaarde), worden alle gegevens binnen één transactie geplaatst. Deze modus wordt aanbevolen omdat deze de consistentie van de gegevens in het bericht garandeert. Maar wanneer u een bericht maakt in de modus voor meerdere gebruikers, kunnen er vergrendelingsconflicten optreden tussen de transactie waarbij de gegevens in het bericht worden geplaatst en transacties die door andere gebruikers worden uitgevoerd. Om de kans op dergelijke conflicten te verkleinen, kunt u deze parameter instellen op een andere waarde dan de standaardwaarde. Hoe lager de parameterwaarde, hoe kleiner de kans op een vergrendelingsconflict, maar hoe groter de kans dat er inconsistente gegevens in het bericht worden opgenomen.

    “Objecten verwijderen waarvoor u toegangsrechten heeft” – als de vlag is ingesteld, wordt de selectie van infobase-objecten uitgevoerd rekening houdend met de toegangsrechten van de huidige gebruiker van het programma. Hierbij wordt de letterlijke "ALLOWED" in de querytekst gebruikt om de gegevens op te halen.

    “Verwijder automatisch ongeldige tekens uit tekenreeksen voor schrijven in XML” – als de vlag is ingesteld, worden ongeldige tekens verwijderd bij het schrijven van gegevens naar een uitwisselingsbericht. Tekens worden gecontroleerd aan de hand van de XML 1.0-aanbeveling.

    “Registratiewijzigingen voor uitwisselingsknooppunten na het uploaden” – het veld bepaalt de werkingsmodus met registratie van gegevenswijzigingen na voltooiing van het uploaden van gegevens. Mogelijke waarden:

    Registratie niet verwijderen – na het downloaden van de gegevens wordt de registratie van wijzigingen op het knooppunt niet verwijderd.
    Registratie voor het uitwisselingsknooppunt volledig verwijderen - na het uploaden van de gegevens wordt de registratie van wijzigingen op het knooppunt volledig verwijderd.
    Verwijder de registratie alleen voor geüploade metagegevens - na het uploaden van de gegevens wordt de registratie van wijzigingen op het knooppunt alleen verwijderd voor metagegevensobjecten die zijn opgegeven voor uploaden.

    “Exchange protocol” – hiermee kunt u de weergave van informatieberichten in het berichtenvenster, het onderhoud en de opname van het uitwisselingsprotocol in een apart bestand configureren.

    “Bestandsnaam, uitwisselingsprotocol” – bestandsnaam voor het uitvoeren van het protocol van het gegevensuitwisselingsproces.

    “Downloadprotocol (voor COM-verbinding)” – bestandsnaam voor het uitvoeren van een protocol van het gegevensuitwisselingsproces in de ontvangende basis bij uitwisseling via een COM-verbinding. Belangrijk: het pad naar het bestand moet toegankelijk zijn vanaf de computer waarop de ontvangende basis is geïnstalleerd.

    “Gegevens toevoegen aan het uitwisselingsprotocol” – als de vlag is ingesteld, wordt de inhoud van het uitwisselingsprotocolbestand opgeslagen als het protocolbestand al bestaat.

    “Informatieve berichten naar het protocol uitvoeren” – als de vlag is ingesteld, worden informatieve berichten naar het uitwisselingsprotocol uitgevoerd, naast berichten over uitwisselingsfouten.

    “Open uitwisselingsprotocolbestanden na het uitvoeren van bewerkingen” – als de vlag is ingesteld, worden de uitwisselingsprotocolbestanden na gegevensuitwisseling automatisch geopend om te bekijken.

    Gegevens verwijderen
    De bladwijzer is alleen nodig voor ontwikkelaars van uitwisselingsregels. Hiermee kunt u willekeurige objecten uit de infobase verwijderen.

    Foutopsporing bij het uploaden en downloaden van gegevens
    Met Processing kunt u fouten in gebeurtenishandlers opsporen en een foutopsporingsmodule genereren op basis van een regelbestand of gegevensbestand.

    Het inschakelen van de foutopsporingsmodus voor uploadhandlers kunt u doen op het tabblad "Gegevens uploaden" door het selectievakje "Debugmodus voor uploadhandlers" aan te vinken. Dienovereenkomstig wordt op het tabblad "Data Loading" de foutopsporingsmodus voor het laden ingeschakeld door het selectievakje "Debugging mode load handlers" aan te vinken.

    Nadat u de foutopsporingsmodus voor handlers hebt ingesteld, wordt de knop Foutopsporingsinstellingen beschikbaar. Als u op deze knop klikt, wordt een instellingenvenster geopend.

    Het instellen van foutopsporingshandlers wordt in vier stappen uitgevoerd:

    Stap 1: De foutopsporingsmodus voor algoritmen selecteren

    Bij de eerste stap moet u beslissen over de foutopsporingsmodus voor het algoritme:

    Geen algoritme-foutopsporing
    Noem algoritmen procedures
    Vervang de algoritmecode op de plaats van oproep

    De eerste modus is handig om te gebruiken als we zeker weten dat de fout in de handler geen verband houdt met de code van welk algoritme dan ook. In deze modus wordt de algoritmecode niet geüpload naar de foutopsporingsmodule. Algoritmen worden uitgevoerd in de context van de operator "Run()" en hun code is niet beschikbaar voor foutopsporing.

    De tweede modus moet worden gebruikt in gevallen waarin de fout in de algoritmecode zit. Wanneer deze modus is ingesteld, worden algoritmen als afzonderlijke procedures verwijderd. Op het moment dat het algoritme vanuit een willekeurige handler wordt aangeroepen, wordt de bijbehorende verwerkingsprocedure aangeroepen. Deze modus is handig om te gebruiken wanneer de globale variabele "Parameters" wordt gebruikt om parameters door te geven aan algoritmen. De beperkingen van het gebruik van deze modus zijn dat bij het debuggen van het algoritme de lokale variabelen van de handler van waaruit het wordt aangeroepen niet beschikbaar zijn.

    De derde foutopsporingsmodus wordt, net als in het tweede geval, gebruikt bij het debuggen van algoritmecode en in gevallen waarin de tweede foutopsporingsmodus niet geschikt is. Wanneer deze modus is ingesteld, worden de algoritmen als geïntegreerde code in handlers geladen. Die. In plaats van de algoritme-aanroepoperator wordt de volledige code van het algoritme ingevoegd, waarbij rekening wordt gehouden met geneste algoritmen. In deze modus zijn er geen beperkingen op het gebruik van lokale handlervariabelen, maar er is wel een beperking bij het debuggen van algoritmen met een recursieve aanroep.

    Stap 2: Vorming van de foutopsporingsmodule

    In de tweede stap moet u de handlers ontladen door op de knop "Foutopsporingsmodule voor lossen (laden) maken" te klikken. De gegenereerde handlers en algoritmen worden in een apart venster weergegeven om te bekijken. De inhoud van de foutopsporingsmodule moet naar het klembord worden gekopieerd door op de knop "Kopiëren naar klembord" te klikken.

    Stap 3: Creëer externe verwerking

    Bij deze stap moet u de configurator starten en een nieuwe externe verwerking aanmaken. U moet de inhoud van het klembord in de verwerkingsmodule (foutopsporingsmodule) plakken en de verwerking onder een willekeurige naam opslaan.

    Stap 4: Externe verwerking aansluiten

    Bij de vierde en laatste stap moet u in het invoerveld de naam van het externe verwerkingsbestand opgeven. In dit geval controleert het programma het tijdstip van creatie (update) van het verwerkingsbestand. Als de verwerking een eerdere versie heeft dan de versie van het foutopsporingsmodulebestand, wordt er een waarschuwing weergegeven en wordt het configuratieformulier niet gesloten.

    Opmerking: de mogelijkheid om fouten op te sporen in de globale conversie-handler "Na het laden van uitwisselingsregels" wordt niet ondersteund.

    Bij het onderhouden van meerdere werkende 1C-databases is het soms nodig om gegevens tussen deze databases uit te wisselen. Er zijn 2 manieren om gegevens over te dragen:

    1. Gegevensoverdracht met behulp van de uitwisselings- en verwerkingsregels “XML Data Exchange”. Uitwisselingsregels worden gemaakt met behulp van de 1C:Data Conversion-configuratie.
    2. Gegevens overbrengen tussen vergelijkbare infobases met behulp van de verwerking "XML-gegevens uploaden en laden".

    Laten we de tweede optie overwegen, d.w.z. het uploaden en laden van gegevens van/naar configuraties die dezelfde (identieke) objecten bevatten die we nodig hebben. Om dit te doen, zullen we de externe verwerking “Uploaden en laden van XML-gegevens” gebruiken, die kan worden gebruikt.

    De voorwaarde voor het gebruik van deze verwerking is als volgt: De informatiebank waaruit gegevens worden gedownload, moet dezelfde objecten en met dezelfde details (naam en gegevenstype) bevatten als in de database waarin de gegevens worden geladen.

    Laten we een voorbeeld bekijken van gegevensoverdracht met behulp van deze verwerking. Stel dat u de documenten “Inkomende betalingsopdracht” en “Uitgaande betalingsopdracht” moet overbrengen. De oplossing voor dit probleem zal als volgt zijn.

    We openen de externe verwerking “XML-gegevens uploaden en laden” via het hoofdmenu: Bestand? Openen... Op het tabblad “Uploaden” specificeren we het XML-bestand waarin we de gegevens zullen opslaan.

    Vervolgens moet u de periode opgeven waarvoor wij data-objecten uit de 1C-database en de objecten zelf zullen verwijderen. De documenten die we nodig hebben voor het uploaden markeren we met een vinkje in het configuratieobjectstructuurveld in de kolom ‘Gegevens voor uploaden’. Als de geüploade documenten links bevatten naar directory-elementen die zich niet in een andere configuratie bevinden, dan is het zinvol om de vakjes in de kolom “Indien nodig” aan te vinken, zodat deze elementen ook samen met de documenten worden geüpload.

    Nu moet u bij deze stap beslissen of u hun bewegingen langs de registers samen met de documenten wilt uploaden of deze documenten naar een andere database wilt overbrengen? Om geüploade documenten opnieuw in een andere database te plaatsen, kunt u de verwerking “Groepsverwerking van mappen en documenten” gebruiken. Als de verwerkingsalgoritmen in deze informatiedatabases op de een of andere manier verschillen, mag het selectievakje naast ‘Upload al zijn bewegingen met het document’ niet worden aangevinkt.

    Dat is alles, de uploadconfiguratie is voltooid, alles is hier eenvoudig! Klik op de knop “Gegevens uploaden” en wacht tot de gegevens zijn opgeslagen in een XML-bestand. Voor complexere lossingen kunt u de selectie voor geloste objecten niet alleen op periode opgeven.

    Ga na het lossen naar de tweede 1C-database en open daar dezelfde verwerking. Ga naar het tabblad “Download” en geef hier hetzelfde XML-bestand aan waarin we de gegevens hebben geüpload.

    Vink op dit tabblad het vakje aan naast ‘Doorgaan met laden van objecten als er een fout optreedt’ en klik op de knop ‘Gegevens laden’. We houden geen rekening met andere functies, bijvoorbeeld het gebruik van totalen, hoewel deze functie het laden van objecten (records per register) aanzienlijk kan versnellen.


    Verwerking "Universele gegevensuitwisseling in XML-formaat" is bedoeld voor het laden en ontladen van gegevens in een bestand vanuit elke configuratie die is geïmplementeerd op het 1C:Enterprise 8-platform


    Verwerking heeft vier tabbladen

    Gegevens uploaden

    Om gegevens te uploaden, moet u de naam opgeven van het bestand waarin de gegevens worden geüpload en het bestand met uitwisselingsregels selecteren. Uitwisselingsregels voor elke configuratie kunnen worden geconfigureerd in de gespecialiseerde configuratie "Data Conversion, Edition 2".


    Om documenten en records uit onafhankelijke periodieke informatieregisters te uploaden, moet u de periode opgeven: “Begindatum” en “Einddatum”. Het resulterende bestand met de gedownloade gegevens kan worden gecomprimeerd.


    Op het tabblad "Regels voor het uploaden van gegevens" kunt u de typen objecten selecteren die moeten worden geüpload, selecties instellen voor het selecteren van objecten of het gegevensuitwisselingsknooppunt opgeven waarvoor u gegevens wilt uploaden.


    Op het tabblad "Uploadopties" kunt u aanvullende parameters opgeven voor het uploaden van gegevens.


    Op het tabblad "Opmerking" kunt u willekeurige commentaartekst schrijven die in het uitwisselingsbestand moet worden opgenomen.

    Om gegevens te downloaden, moet u de naam opgeven van het bestand waaruit de gegevens worden gedownload.


    Het is mogelijk om het laden van gegevens in transacties te configureren. Om dit te doen, moet u het selectievakje "Transacties gebruiken" inschakelen en tijdens het laden het aantal elementen in één transactie opgeven.

    Aanvullende instellingen

    De bladwijzer wordt gebruikt om het uploaden en downloaden van gegevens te verfijnen.


    "Debug-modus" - het selectievakje bepaalt de modus voor het uploaden en laden van gegevens


    "Aantal verwerkte objecten voor statusupdate" - de parameter wordt gebruikt om het aantal verwerkte elementen te bepalen voordat de laad-/losstatusregel wordt gewijzigd


    "Instellingen voor gegevensupload" - hiermee kunt u het aantal elementen bepalen dat in één transactie wordt verwerkt bij het uploaden van gegevens, alleen die objecten uploaden en verwerken waarvoor u toegangsrechten heeft, het type registratiewijziging configureren voor geüploade objecten via uitwisselingsplannen


    "Exchange protocol" - hiermee kunt u de uitvoer van informatieberichten in het berichtenvenster, het onderhoud en de opname van het uitwisselingsprotocol in een apart bestand configureren.

    Gegevens verwijderen

    De bladwijzer is alleen nodig voor ontwikkelaars van uitwisselingsregels. Hiermee kunt u willekeurige objecten uit de infobase verwijderen.

    Foutopsporing bij het uploaden en downloaden van gegevens

    Met Processing kunt u fouten in gebeurtenishandlers opsporen en een foutopsporingsmodule genereren op basis van een regelbestand of gegevensbestand.


    Het inschakelen van de foutopsporingsmodus voor uploadhandlers kunt u doen op het tabblad "Gegevens uploaden" door het selectievakje "Debugmodus voor uploadhandlers" aan te vinken. Dienovereenkomstig wordt op het tabblad "Data Loading" de foutopsporingsmodus voor het laden ingeschakeld door het selectievakje "Debugging mode load handlers" aan te vinken.


    Nadat u de foutopsporingsmodus voor handlers hebt ingesteld, wordt de knop Foutopsporingsinstellingen beschikbaar. Als u op deze knop klikt, wordt een instellingenvenster geopend.


    Het instellen van foutopsporingshandlers wordt in vier stappen uitgevoerd:

    Stap 1: De foutopsporingsmodus voor algoritmen selecteren

    Bij de eerste stap moet u beslissen over de foutopsporingsmodus voor het algoritme:



      Zonder het debuggen van algoritmen


      Noem algoritmen procedures


      Vervang de algoritmecode op de plaats van oproep

    De eerste modus is handig om te gebruiken als we zeker weten dat de fout in de handler geen verband houdt met de code van welk algoritme dan ook. In deze modus wordt de algoritmecode niet geüpload naar de foutopsporingsmodule. Algoritmen worden uitgevoerd in de context van de operator "Run()" en hun code is niet beschikbaar voor foutopsporing.


    De tweede modus moet worden gebruikt in gevallen waarin de fout in de algoritmecode zit. Wanneer deze modus is ingesteld, worden algoritmen als afzonderlijke procedures verwijderd. Op het moment dat het algoritme vanuit een willekeurige handler wordt aangeroepen, wordt de bijbehorende verwerkingsprocedure aangeroepen. Deze modus is handig om te gebruiken wanneer de globale variabele "Parameters" wordt gebruikt om parameters door te geven aan algoritmen. De beperkingen van het gebruik van deze modus zijn dat bij het debuggen van het algoritme de lokale variabelen van de handler van waaruit het wordt aangeroepen niet beschikbaar zijn.


    De derde foutopsporingsmodus wordt, net als in het tweede geval, gebruikt bij het debuggen van algoritmecode en in gevallen waarin de tweede foutopsporingsmodus niet geschikt is. Wanneer deze modus is ingesteld, worden de algoritmen als geïntegreerde code in handlers geladen. Die. In plaats van de algoritme-aanroepoperator wordt de volledige code van het algoritme ingevoegd, waarbij rekening wordt gehouden met geneste algoritmen. In deze modus zijn er geen beperkingen op het gebruik van lokale handlervariabelen, maar er is wel een beperking bij het debuggen van algoritmen met een recursieve aanroep.

    Stap 2: Vorming van de foutopsporingsmodule

    In de tweede stap moet u de handlers ontladen door op de knop "Foutopsporingsmodule voor lossen (laden) maken" te klikken. De gegenereerde handlers en algoritmen worden in een apart venster weergegeven om te bekijken. De inhoud van de foutopsporingsmodule moet naar het klembord worden gekopieerd door op de knop "Kopiëren naar klembord" te klikken.

    Stap 3: Creëer externe verwerking

    Bij deze stap moet u de configurator starten en een nieuwe externe verwerking aanmaken. U moet de inhoud van het klembord in de verwerkingsmodule (foutopsporingsmodule) plakken en de verwerking onder een willekeurige naam opslaan.

    Stap 4: Externe verwerking aansluiten

    Bij de vierde en laatste stap moet u in het invoerveld de naam van het externe verwerkingsbestand opgeven. In dit geval controleert het programma het tijdstip van creatie (update) van het verwerkingsbestand. Als de verwerking een eerdere versie heeft dan de versie van het foutopsporingsmodulebestand, wordt er een waarschuwing weergegeven en wordt het configuratieformulier niet gesloten.


    Opmerking: de mogelijkheid om fouten op te sporen in de globale conversie-handler "Na het laden van uitwisselingsregels" wordt niet ondersteund.