Hvordan man downloader xml-fil fra 1c. Generering af XML-filen

Enkel dataudveksling mellem forskellige regnskabsprogrammer er et af nøglepunkterne i deres udbredelse i praksis, for dette er det nok at indlæse XML i 1C eller et andet produkt. Desuden er det oftest nemt at gøre uden at konvertere det: alle databaser understøtter formatstandarden fuldt ud. I praksis er der mange måder at bruge XML til at overføre data på, alle er implementeret i 1C og kompatible produkter.

Hvordan uploader man en XML-fil til en 1C-database?

Uploadede databaser og individuelle dokumenter kan overføres fra brugere via alle kommunikationskanaler - på flytbare medier, via e-mail eller via cloud storage. Formatet egner sig godt til komprimering ved hjælp af arkivere, hvilket fremskynder kopieringen markant og sparer diskplads.

Den generelle procedure for indlæsning af data fra en XML-fil er som følger:

    Tillad visning af menupunktet "Alle funktioner". For at gøre dette skal du markere det tilsvarende felt i vinduet "Indstillinger" (fanen er placeret i menusektionen "Værktøjer").

    I menuen "Alle funktioner" skal du bruge plusknappen til at åbne listen over muligheder, hvor du vælger punktet "Behandler".

    I den foreslåede liste skal du åbne punktet "Universal dataudveksling i XML-format".

Ved at klikke på knappen "Indlæs data" vil de blive læst fra filen, gemt i databasen og samtidig kontrolleret for korrekthed. Hvis der findes fejl i dokumentet, vil proceduren blive afsluttet med en specifik tekst, der angiver årsagen.

Hvordan bruges XML-filer i 1C?

Ved hjælp af den samme behandling kan brugeren uploade en udvalgt liste over data eller hele databasen til XML og derved lave en sikkerhedskopi af den. Dette skal gøres, før der indføres større justeringer af det globale 1C-modul, hvis ekstern behandling af en eller anden grund ikke er mulig.

Formatet bruges på 1C: Enterprise 8 platformen på følgende områder:

    Upload af prislister, ordrer, trykte formularer af dokumenter.

    Dataudveksling med banker, skattemyndigheder, fonde uden for budgettet.

    Overførsel af lønberegninger fra 1C: ZUP og andre "specialiserede" konfigurationer til den "generelle" 1C: Regnskab 8.

Den samme implementering af universel behandling bruges overalt. Hvis dets funktioner er få, tyr de til at udvikle deres egne versioner af dette modul. Desuden er der ingen grund til at ændre standardfiler, det er nok at forbinde den nødvendige behandling og køre dem for at vælge imellem, afhængigt af den specifikke opgave.

Hvis en virksomhed har valgt en separat metode til at føre regnskab og skatteregistrering, så vil behandling til upload/download af økonomiske data via XML-format blive meget populær. Med dens hjælp overføres de tal, der er nødvendige for at beregne beskatningsgrundlaget, til programmet 1C: Skatteyder eller et lignende softwareprodukt. På grund af det faktum, at filer i dette format nemt kan redigeres, er det nemt at rette deres indhold ved hjælp af Microsoft Office-pakken, før det sendes til skattevæsenet.

Det samme gælder KUDiR (bog over indtægter og udgifter), journalen over udstedte eller modtagne fakturaer. Alt dette transmitteres gennem VLSI++-systemet, og ud over processen med at redigere den tabelformede del af XML-filen, er upload i dette format nødvendig for efterfølgende indlæsning i tjenesten og overførsel af data til Federal Tax Service.

En udveksling med en sådan konfiguration som 1C: Trade Management er ofte efterspurgt, fordi den i erhvervslivet bruges til at organisere salg, ledelsesregnskab og regnskab baseret på 1C: Accounting 8 fungerer autonomt og modtager kun oversigtsdata om alle varebevægelser og pengemidler.

Hvis det er nemt at oprette upload af ordrer eller prislister, da det er nemt at bruge "ethvert" dataformat, så skal de samme kontoudtog gemmes i XML (som en almindeligt accepteret standard).

Oftest sker udvekslingen med Client-Bank-programmet. Uploadprocessen ser sådan ud:

    Et udtræk genereres for den periode, som brugeren kræver.

    Afhængigt af programversionen, klik enten på knappen "Eksporter" eller "Eksporter".

    I det vindue, der åbnes, skal du vælge den ønskede mappe og filnavn.

Efter afslutning af proceduren kan dokumentet overføres på flytbare medier eller via internettet (e-mail, skylager med delt adgang osv.). Når du skal indlæse et kontoudtog i 1C-konfigurationen, skal du vælge afsnittet "Bank og kasse" og derefter gå til journalen "Bankudtog".

Foran den tabelformede del af dokumentet (i højre hjørne) skal du klikke på knappen "Mere", hvorefter en liste over funktioner kommer frem, hvor de vælger punktet "Udveksle med banken". Fanen "Download kontoudtog" giver dig mulighed for at importere data for et bestemt firmanavn eller for en bestemt bankkonto.

Efter indlæsning af erklæringen i 1C-databasen, skal du stadig behandle betalingsordrer, dette sker manuelt. En revisor kan bestille udvikling af behandling, der vil automatisere processen, men her skal du kontakte en kompetent programmør.

XML-formatet bruges også til at indlæse forskellige klassifikatorer (KLADR, OKOF, ENAOF). Hvis de ikke er til stede i 1C-programmet, bør du undgå at udfylde dem manuelt, da det er nemt at lave en fejl, når du angiver koder. Det er værd at bruge XML-filen én gang ved at downloade klassificeringen fra en pålidelig kilde.

Dette kan enten gøres af brugeren selv eller af en inviteret specialist:

    I hovedmenuen skal du vælge sektionen "Directory".

    Klik på knappen "Handlingsindstillinger".

    I vinduet, der åbnes, skal du angive punktet "Load okof classifier", og klik derefter på knappen "Tilføj".

    I afsnittet "Service", der vises, skal du vælge den ønskede kommando og klikke på "OK".

Alt du skal gøre er at klikke på knappen "Åbn og læs fil", vælg den, du skal bruge på disken eller flytbare medier, og åbn den med den relevante nøgle. Standardklassifikatorer kopieres automatisk til harddisken, når 1C-platformen og konfigurationen installeres. Ved opdatering af en version af en eller anden oprettes der desuden mapper med et revisionsnummer, hvor den aktuelle fil, der opfylder de aktuelle krav, er placeret. Version 7 7 har også mulighed for at uploade XML-filer, men denne forældede platform kræver ofte specialisthjælp.

- velkendte websider, som også er en analog af XML med svage kontroller.

XML Reader/Writer Objects, FastInfoset, HTML udvider tekstfillæsningsmuligheder med indbygget behandling af markup-tags.

De bruges også til DOMBuilder/DOMRecord-objekter (se nedenfor) som datakilder.

XML 1C-filer indeholder tekstinformation, det vil sige, at de er tekstfiler. 1C XML Reader og 1C Write XML-objekter er en "add-on", der gør det nemmere at arbejde med XML-tags i en 1C-fil.

Objekterne ReadingFastInfoset 1C og WritingFastInfoset 1C, ReadingHTML 1C og WritingHTML 1C minder fuldstændig om ReadingXML 1C og WritingXML 1C og fungerer på samme måde med andre formater.

XML 1C-fil brugt i eksemplerne

Directory>

Directory>

Tekst værdiProps>
Directory>
Konfiguration>

Eksempel 1. Læsning af en 1C XML-fil i et værditræ ved hjælp af Reading XML 1C

//åbn XML 1C-filen til læsning ved hjælp af ReadingXML 1C
Fil = Ny ReadXML();
File.OpenFile("D:\ConfigurationStructure.xml");

//forbered værditræet
//hver XML-gren kan have et navn, attributter og værdi
dzXML = NewValueTree();
dzXML.Columns.Add("Navn");
dzXML.Columns.Add("Værdi");
dzXML.Columns.Add("Attributter");

//da en XML-streng kan have flere attributter, vil vi skrive dem i værditabellen
//hver attribut har et navn og en værdi
tAttributes = New ValueTable();
tAttributes.Columns.Add("Navn");
tAttributes.Columns.Add("Værdi");

//indlejringsniveauet hjælper os med at forstå, hvornår vi skal tilføje en indlejret gren, og hvornår vi skal tilbage et niveau
Indlejringsniveau = 0;
//den nuværende linje er en trægrænse, vil ændre sig, efterhånden som indlejringen øges
CurrentRow = Udefineret;
//læsning af XML 1C-filen sker ikke linje for linje, men i henhold til strukturen vil læsning returnere FALSE
Mens File.Read() Loop

//vi er interesseret i tre typer noder - begyndelsen af ​​elementet, teksten (værdien af ​​elementet) og slutningen af ​​elementet (for at vende tilbage til det øverste niveau)
Hvis File.NodeType = XMLNodeType.ElementStart derefter

Indlejringsniveau = Indlejringsniveau + 1;

//hvis dette er den første linje, så føj den til øverst i træet og gem kun navnet
Hvis CurrentRow = Udefineret, så
CurrentLine = dXML.Lines.Add();
CurrentLine.Name = File.Name;
Blive ved;
Ellers
//indlejrede linjer
CurrentRow = CurrentRow.Rows.Add();
CurrentLine.Name = File.Name; //gem navnet

//har dette XML-element attributter?
Hvis File.NumberAttributes() > 0 Så
//hvis ja, kopier den forberedte tomme tabel for at gemme attributter
tAttributesNode = tAttributes.Copy();
//cyklus gennem antallet af attributter for dette element
For konto = 0 ved File.Number of Attributes()-1 Cyklus
//husk navn og værdi for hver egenskab
String = tNodeAttributes.Add();
Line.Name = File.AttributeName(Sch);
Row.Value = File.AttributeValue(Ac);
EndCycle;
//gem elementets attributtabel til den aktuelle linje
CurrentRow.Attributes = tNodeAttributes;
Afslut Hvis;
Afslut Hvis;

ElseIf File.NodeType = XMLNodeType.EndElement Then
//i begyndelsen af ​​elementet øger vi redeniveauet, i slutningen af ​​elementet mindsker vi det
Indlejringsniveau = Indlejringsniveau - 1;
//retur den aktuelle linje et niveau op
CurrentRow = CurrentRow.Parent;

ElseIf File.NodeType = XMLNodeType.Text Then
//hvis elementet har en værdi, skal du bare gemme det
CurrentRow.Value = File.Value;

Afslut Hvis;

EndCycle;

File.Close();

Eksempel 2. Optagelse af en 1C XML-fil ved hjælp af 1C Record XML-objektet

//opret en fil Optag XML 1C
Fil = NewWriteXML();
File.OpenFile("D:\ConfigurationStructure.xml", "UTF-8");
File.WriteElementStart("Konfiguration");

//brug metadata til at krydse alle mapper (for flere detaljer, se "Arbejde med metadata")
For hver mappe fra Metadata.Directories Cycle

//WriteStartofElement - åbner en ny [underordnet] gren
File.WriteElementStart("Directory");
//WriteAttribute - skriver en attribut til en tidligere åbnet gren
File.WriteAttribute("Navn", Directory.Name);
File.WriteAttribute("Synonym", Directory.Synonym);

//ved at bruge metadata gennemgår vi alle katalogdetaljerne
For hver Props fra Directory.Props Cycle




EndCycle;

//brug metadata til at gennemgå alle tabeldele af mappen
For hver PM fra den tabelformede dele af cyklussen
File.WriteElementStart("TabularPart");
File.WriteAttribute("Navn", PM.Navn);
File.WriteAttribute("Synonym", PM.Synonym);

For hver Props fra PM.Props Cycle
File.WriteElementStart("Props");
File.WriteAttribute("Navn", Attribut.Name);
File.WriteAttribute("Synonym", Attributter.Synonym);
File.WriteEndElement();
EndCycle;

File.WriteEndElement();
EndCycle;

//WriteEndElement - "lukker" grenen, der tidligere er åbnet ved hjælp af WriteBeginElement
File.WriteEndElement();
EndCycle;

File.WriteEndElement();
File.Close();

Driftstilstande

Behandling af UploadLoadDataXML82 implementerer 2 driftstilstande: Upload (oprettelse af en uploadfil med brugerspecificerede data) og Load (læser en uploadfil, der er oprettet af tilstanden med samme navn, og skrivning af dataene i den). Tilstanden indstilles ved at vælge den i feltet Tilstand.

Før du starter en bestemt tilstand (ved at klikke på knappen Kør), skal du angive navnet på uploadfilen, enten ved at indtaste det manuelt i feltet "Filnavn" eller ved at bruge knappen til at vælge dette felt og standarddialogen for valg af filer .

I downloadtilstand er det muligt at redigere brugen af ​​totaler ved skrivning af registre, hvilket kan påvirke downloadhastigheden. Knapperne "Deaktiver totaler" og "Aktiver totaler" er tilgængelige, når flaget "Aktiver muligheden for at redigere brugen af ​​totaler under indlæsning af data" er indstillet og bruges til manuelt at styre tilstanden for brug af totaler ved indlæsning af data. ** Betingelser for anvendelse af behandling**

Behandling kan kun anvendes i tilfælde, hvor informationsgrundlaget, som dataene er uploadet til, og det, dataene er indlæst i, er homogene (konfigurationerne er identiske, dataene kan være forskellige), eller alle de uploadede objekter er næsten fuldstændig identiske i sammensætning og typer af detaljer og tabeldele, egenskaber for det "ledende" metadataobjekt mv. Det skal bemærkes, at på grund af disse begrænsninger er behandling hovedsageligt beregnet til udveksling mellem homogene IS.

Upload-filformatet adskiller sig fra det filformat, der oprettes ved upload i henhold til en udvekslingsplan i header-delen. For at uploade data (katalogelementer, sæt af registerposter osv.), bruger behandlingen den samme XML-serialiseringsmekanisme som upload i henhold til udvekslingsplaner i denne del, filformaterne er identiske.

Bestemmelse af sammensætningen af ​​aflæsningen

Behandling giver mulighed for både fuld og delvis upload af infobasedata til en fil. Sammensætningen af ​​de uploadede data konfigureres i dialogboksen ved at markere felterne i kolonnen i træet, der viser metadataobjekter, som data kan uploades for. En ekstra kolonne med afkrydsningsfelter, "Hvis nødvendigt", angiver behovet for at aflæse objekter af denne type "ved reference." Det vil sige, at hvis afkrydsningsfeltet kun er markeret i kolonnen "Hvis nødvendigt", vil dataene for et sådant objekt ikke blive downloadet fuldstændigt, men kun i det omfang, det er nødvendigt for at opretholde referenceintegritet i den infobase, der indlæser download fil.

Når du åbner en formular, sætter behandlingen tegnet på aflæsning ved henvisning til alle objekter, hvilket garanterer den referentielle integritet af det aflæstede fragment af informationsbasen.

Når du klikker på knappen "Opdag objekter downloadet via link", analyserer behandlingen, hvilke datalinks der kan være indeholdt i objekter, der har det fulde downloadflag, og udfylder automatisk kolonnen med flag, der angiver behovet for at downloade via link. Hvis objektet allerede har sat fuld aflæsningsflag, så er flaget for aflæsning ved reference ikke sat.

Mulige anvendelser

Brugen af ​​denne behandling er for eksempel mulig til at lave en hel eller delvis sikkerhedskopi af data, udveksle data mellem informationsbaser og også som et hjælpeværktøj ved gendannelse af problematiske informationsbaser.

Dataoverførsel er en meget vigtig proces i ethvert regnskabssystem, 1C 8.3 og 8.2 platformen er ingen undtagelse. Nedenfor vil vi se på instruktioner om den nemmeste måde at overføre data fra et system til et andet, der har en lignende konfiguration (til forskellige konfigurationer kan du bruge et værktøj til programmører - eller).

Før nogen handling er nødvendig, er ændringerne irreversible!

Den nemmeste og mest bekvemme måde at overføre data fra 1C 8.3 til 1C 8.3 Accounting 3.0 er at bruge behandlingen Upload og indlæs data i XML-format (download - til 8.2 eller til 1C 8.3 eller på ITS). Behandlingen er universel og egnet til enhver konfiguration.

Vi vil ikke gå i detaljer; lad os se på trinvise instruktioner til migrering af data ved hjælp af denne behandling ved at bruge eksemplet med den enkleste overførsel af varer.

Uploader data til XML

Først og fremmest, lad os åbne behandling i kildedatabasen (hvorfra vi vil losse varer) og se på grænsefladen:

Få 267 videolektioner på 1C gratis:

Du skal straks udfylde feltet "Filnavn" - en ny datafil vil blive oprettet langs denne sti, som vi uploader til modtagerdatabasen. Lige nedenfor, i tabeldelen "Data til upload", skal du vælge de data, som vi vil uploade fra databasen.

Efter at have valgt et objekt fra den venstre tabeldel, kan du anvende markering i den højre tabeldel:

I vores eksempel ønsker jeg at losse alle produkter med navnet "Rake".

Når alle indstillinger er gennemført, kan dataene uploades. For at gøre dette skal du klikke på knappen "Upload data":

Indlæsning af data fra xml til 1s 8.3

Dataene er blevet fjernet fra kildedatabasen, nu skal de overføres til destinationsdatabasen.

For at gøre dette skal du begynde at behandle allerede i databasen, hvor du skal indlæse dataene, og gå til fanen "Download", vælg den downloadede fil på disken og klik på knappen "Indlæs data":

Dette eksempel er kun egnet til overførsel af data mellem identiske konfigurationer på 1C-platformen. For at forstå udvekslingsmekanismen for programmører skrev vi en artikel -.

Dataoverførsel er en meget vigtig proces i ethvert regnskabssystem, 1C 8.3 og 8.2 platformen er ingen undtagelse. Nedenfor vil vi se på instruktioner om den nemmeste måde at overføre data fra et system til et andet, der har en lignende konfiguration (til forskellige konfigurationer kan du bruge et værktøj til programmører - eller).

Før nogen handling er nødvendig, er ændringerne irreversible!

Den nemmeste og mest bekvemme måde at overføre data fra 1C 8.3 til 1C 8.3 Accounting 3.0 er at bruge behandlingen Upload og indlæs data i XML-format (download - til 8.2 eller til 1C 8.3 eller på ITS). Behandlingen er universel og egnet til enhver konfiguration.

Vi vil ikke gå i detaljer; lad os se på trinvise instruktioner til migrering af data ved hjælp af denne behandling ved at bruge eksemplet med den enkleste overførsel af varer.

Uploader data til XML

Først og fremmest, lad os åbne behandling i kildedatabasen (hvorfra vi vil losse varer) og se på grænsefladen:

Få 267 videolektioner på 1C gratis:

Du skal straks udfylde feltet "Filnavn" - en ny datafil vil blive oprettet langs denne sti, som vi uploader til modtagerdatabasen. Lige nedenfor, i tabeldelen "Data til upload", skal du vælge de data, som vi vil uploade fra databasen.

Efter at have valgt et objekt fra den venstre tabeldel, kan du anvende markering i den højre tabeldel:


I vores eksempel ønsker jeg at losse alle produkter med navnet "Rake".

Når alle indstillinger er gennemført, kan dataene uploades. For at gøre dette skal du klikke på knappen "Upload data":


Indlæsning af data fra xml til 1s 8.3

Dataene er blevet fjernet fra kildedatabasen, nu skal de overføres til destinationsdatabasen.

For at gøre dette skal du begynde at behandle allerede i databasen, hvor du skal indlæse dataene, og gå til fanen "Download", vælg den downloadede fil på disken og klik på knappen "Indlæs data":


Dette eksempel er kun egnet til overførsel af data mellem identiske konfigurationer på 1C-platformen. For at forstå udvekslingsmekanismen for programmører skrev vi en artikel -.

Overførsel af information mellem databaser er en af ​​opgaverne for deres support og administration. For dens effektive implementering oprettes behandling i automatiserede 1C-komplekser. De letter i høj grad rutinearbejde, fremskynder processerne med at uploade og downloade information og implementerer samtidig kontrol over dens korrekthed. Upload fra 1c til xml giver dig mulighed for at oprette en fil med indholdet af ethvert konfigureret konfigurationsobjekt og bruge det, når du skal uploade data til en identisk konfiguration.

Værktøjer til at oprette uploads

For at eksportere information indeholdt i databaser bruges xml-formatet hovedsageligt. Til 1C er der udviklet mange behandlingsmetoder (for eksempel UploadLoadDataxml82 epf), ved hjælp af hvilke det er muligt at udlæse og indlæse data til en fil. I dette tilfælde skal brugeren modtage en fil med en bestemt struktur, som gør det muligt at indlæse de oplysninger, der er gemt i den, i den oprindelige database eller overføres til en anden placering. Når du opretter en upload, skal følgende regler overholdes:

  • Gem de oprettede filer indtil fuldstændig gendannelse og afslutning af procedurer til at verificere rigtigheden af ​​de overførte oplysninger;
  • Hvis du bruger behandling som et sikkerhedskopieringsværktøj, skal du oprette separate undermapper til datakopier og føre en log over dem for hurtig genfinding.

Den universelle behandling af "Upload og indlæsning af XML-data" leveret i 1C-brugersupportprogrammet, som kan findes på webstedet eller ITS-diske, er et fremragende værktøj til eksport og import af information. En computerbruger kan uploade både hele databasen og dens individuelle objekter, og udover selve eksporten udføres forskellige operationer for at kontrollere information, der hjælper med at slippe af med kritiske fejl i dataene. Processing 1c upload til xml fungerer i to tilstande:

  • Aflæsning. Opretter en fil, der indeholder brugerdefinerede sidebare objekter;
  • Indlæser. Læser en tidligere eksporteret fil og skriver informationen i den til informationsbasen.

Behandling giver dig mulighed for at kontrollere objekter for ugyldige tegn og inkluderer også en funktion til eksport af information med begrænsninger.

Upload kan ikke kun bruges ved udveksling af information mellem 1C-databaser. Med dens hjælp kan du sikre integrationen af ​​forskellige komplekser, for eksempel 1C og Parus-systemet. XML-formatets alsidighed giver dig mulighed for at oprette programmer til overførsel af information til næsten alle informationsbanker. Behandling, upload og download af xml-data er det vigtigste værktøj til at udveksle information.

Processen med at uploade data tilxml

Lad os se på, hvordan man uploader fra 1c til xml i normal tilstand. Efter at have downloadet den behandlende UploadLoadDataxml.epf og åbnet den, skal du udføre følgende trin:

  • Vælg objekter til eksport;
  • Opsæt de nødvendige filtre, for eksempel efter periode;
  • Bestem placeringen af ​​filen med oplysninger om diskens undersystem;
  • Begynd at losse genstande.


Det skal huskes, at header-delen af ​​upload-filformatet adskiller sig fra det filformat, der bruges ved upload i henhold til udvekslingsplaner.

xml

XML-filen indlæses i 1c i den modtagende database med en konfiguration, der er identisk med kildedatabasen. Før du indlæser xml 1c i 1c, skal du åbne behandling i den modtagende database. Derefter skal du angive stien til den tidligere uploadede fil og downloade dataene ved at klikke på knappen "Indlæs data".

Om nødvendigt aktiveres afkrydsningsfelter for at indlæse data i udvekslingstilstand i en distribueret infobase og ignorere fejl, der opstår ved indlæsning af objekter.


Herefter skal du tjekke databaserne og sikre dig, at alle elementer er indlæst korrekt for ikke at miste dem, for eksempel hvis der opstår en fejl i hændelseshandleren efter indlæsning af objektet.


Denne behandling giver dig mulighed for at udveksle data mellem de samme (identiske) konfigurationer på 1C 8.2-platformen - Bukh, ZUP, UT, UPP og andre, det vigtigste er, at konfigurationerne er de samme!

Behandler skærmbilleder

(foto)

Driftstilstande

Bearbejdning implementerer 2 driftstilstande: Upload (oprettelse af en uploadfil med brugerspecificerede data) og Load (læser en uploadfil, der er oprettet af tilstanden af ​​samme navn og skrivning af dataene i den). Tilstanden indstilles ved at vælge den i feltet Tilstand.

Før du starter en bestemt tilstand (ved at klikke på knappen Kør), skal du angive navnet på uploadfilen, enten ved at indtaste det manuelt i feltet "Filnavn" eller ved at bruge knappen til at vælge dette felt og standarddialogen for valg af filer .

I downloadtilstand er det muligt at redigere brugen af ​​totaler ved skrivning af registre, hvilket kan påvirke downloadhastigheden.

Knapperne "Deaktiver totaler" og "Aktiver totaler" er tilgængelige, når flaget "Aktiver muligheden for at redigere brugen af ​​totaler under dataindlæsning" er indstillet og bruges til manuelt at styre tilstanden for brug af totaler ved indlæsning af data.

Betingelser for bearbejdningens anvendelighed

Behandling kan kun anvendes i tilfælde, hvor informationsgrundlaget, som dataene er uploadet til, og det, dataene er indlæst i, er homogene (konfigurationerne er identiske, dataene kan være forskellige), eller alle de uploadede objekter er næsten fuldstændig identiske i sammensætning og typer af detaljer og tabeldele, egenskaber for det ”førende” metadataobjekt mv. Det skal bemærkes, at på grund af disse begrænsninger er behandling hovedsageligt beregnet til udveksling mellem homogene IS.

Upload-filformatet adskiller sig fra det filformat, der oprettes ved upload i henhold til en udvekslingsplan i header-delen. For at uploade data (katalogelementer, sæt af registerposter osv.), bruger behandlingen den samme XML-serialiseringsmekanisme som upload i henhold til udvekslingsplaner i denne del, filformaterne er identiske.

Bestemmelse af sammensætningen af ​​aflæsningen

Behandling giver mulighed for både fuld og delvis upload af infobasedata til en fil. Sammensætningen af ​​de uploadede data konfigureres i dialogboksen ved at markere felterne i kolonnen i træet, der viser metadataobjekter, som data kan uploades for. En ekstra kolonne med afkrydsningsfelter, "Hvis nødvendigt", angiver behovet for at aflæse objekter af denne type "ved reference." Det vil sige, at hvis afkrydsningsfeltet kun er markeret i kolonnen "Hvis nødvendigt", vil dataene for et sådant objekt ikke blive downloadet fuldstændigt, men kun i det omfang, det er nødvendigt for at opretholde referenceintegritet i den infobase, der indlæser download fil.

Når du åbner en formular, sætter behandlingen tegnet på aflæsning ved henvisning til alle objekter, hvilket garanterer den referentielle integritet af det aflæstede fragment af informationsbasen.

Når du klikker på knappen "Detekter objekter, der fjernes via link", analyserer behandlingen, hvilke datalinks, der kan være indeholdt i objekter, der har den fulde unload-attribut sat, og udfylder automatisk kolonnen med flag, der angiver behovet for at losse via link. Hvis objektet allerede har sat fuld aflæsningsflag, så er flaget for aflæsning ved reference ikke sat.

Mulige anvendelser

Brugen af ​​denne behandling er for eksempel mulig til at lave en hel eller delvis sikkerhedskopi af data, udveksle data mellem informationsbaser og også som et hjælpeværktøj ved gendannelse af problematiske informationsbaser.

I en organisation kan der ikke kun føres regnskab i løsninger på 1C:Enterprise platformen, men også i andre softwaresystemer (Galaktika, Parus, SAP osv.). Dette rejser udfordringen med at integrere to applikationer.

For eksempel skal en applikation (lad os kalde det "X") læse en liste over konfigurationsdokumenter. Vi vil ikke tale om de praktiske fordele ved at løse et sådant problem. Jeg vil kun bemærke, at den mest bekvemme og universelle måde i en sådan situation ville være at uploade en liste over dokumenter i XML-format.

Udveksling ved hjælp af dette format er universel, fordi de fleste applikationer kan arbejde med det. Lad os se på, hvordan du kan uploade en liste over konfigurationsdokumenter til en XML-fil fra 1C:Enterprise.

Upload til XML

Og så lad os gå videre til det vigtigste. Vi skal gennemse listen over dokumentmetadata og generere listen i XML-filen. Følgende skærmbillede viser algoritmen til at generere en XML-fil:

Funktion CreateXML() Export // Hent navnet på den midlertidige fil Sti = GetTemporaryFileName() ; // Initialiser klassen "XML Record". Entry = New EntryXML; // Åbn en midlertidig fil til skrivning - 8 ") ; // Skriv XML-filerklæringen Optage. WriteDeclarationXML() ; // Optag. WriteElementStart(" Dokumentkonfigurationer") ; // Første element // Attribut for det første element med datoen, hvor filen blev oprettet Optage. WriteAttribute(" genereret ", Format(CurrentDate(), " DF = åååå-MM- ddThh:mm:ss; DLF= DT")) ; // Skriv et element for hvert konfigurationsdokument. Vi sætter navnet på dokumentet i teksten. For hvert dokument fra metadata. Dokumenter cyklus optagelse. WriteElementStart("Dokument"); Optage. WriteText(Doc.Name) ; Optage. WriteEndElement() ; EndCycle; // Afslut med at skrive det første element Optage. WriteEndElement() ; Optage. Tæt(); // Luk filen // Hent filens binære data og læg dem midlertidigt BinaryData = new BinaryData(Path) ; Adresse = PlaceInTemporaryStorage(BinaryData, New UniqueIdentifier); Retur adresse; // Returner adressen på filen til lageret EndFunction

Hvert element, der oprettes, skal udfyldes korrekt. Efter udførelse af "WriteStartofElement()", skal "WriteEndElement()"-metoden udføres, ellers vil strukturen af ​​XML-filen være forkert.

Den generelle skabelon til oprettelse af XML-filer er følgende sekvens:

// 1. Initialiser klassen "XML Record". Entry = New EntryXML; // 2. Åbn en midlertidig fil til optagelse Optage. OpenFile(Sti, "UTF-8"); // 3. Skriv XML-filens erklæring Optage. WriteDeclarationXML() ; // // 4. ++ Skriv indholdet af XML-filen Optage. WriteElementStart("XMLElement" ; Optage. WriteEndElement() ; // -- Skriv indholdet af XML-filen // 5. Luk filen Optage. Tæt();

Disse fem trin opretter næsten enhver XML-fil.

I vores eksempel konverteres den genererede fil til binære data og returneres til det sted, hvor CreateXML-funktionen kaldes. Denne fil kan derefter skrives til filsystemet.

Du kan se et eksempel på den uploadede fil i skærmbilledet ovenfor.

Tredjepartsapplikation

Som et eksempel oprettede jeg et program i .NET Framework for at demonstrere læsning af en XML-fil i et tredjepartsprogram.

Programmet læser den oprettede fil og viser dokumenterne i form af en liste:

Du kan prøve det selv, applikationen er tilgængelig til download ved at bruge linket i slutningen af ​​artiklen.

Alsidighed

XML-formatet bruges i de fleste konfigurationer til dataudveksling mellem applikationsløsninger på 1C:Enterprise-platformen. En anden almindeligt anvendt kommunikationsmetode er gennem en COM-forbindelse. XML giver dig mulighed for at udveksle med næsten enhver applikation, hvorfor den fortjener at blive kaldt universel.

Filer til download:

XML-fillæserapplikation.

Behandler genereringen af ​​XML-filen.

Når en virksomhed konstant bruger en form for softwarepakke i sit arbejde, så opstår naturligvis altid spørgsmålet om dens løbende support og administration. Der er ingen måde at undgå opgaverne med at udveksle, gemme og gendanne data. Lad os se på, hvordan man indlæser eller aflæser data fra 1C i XML-format, da dette er en vigtig procedure for dette emne.

De er bygget på en sådan måde, at du ved upload kan modtage en XML-fil, hvori de data, der er nødvendige for klienten, bliver registreret. Samtidig med registreringen overvåges rigtigheden af ​​de overførte registreringer for kritiske fejl.

Upload til en XML-fil (import af poster) fra en informationsbase og efterfølgende indlæsning fra XML til en anden repræsenterer således en udveksling af data i XML-format mellem databaser.

Denne procedure, især med store mængder information, sparer en masse manuelt arbejde.

Import (den resulterende fil) kan også bruges som et arkiv til gendannelse i uventede situationer (hvis tabt eller beskadiget).

Der er udviklet en masse af sådanne behandlingsværktøjer, og de er tilgængelige på internettet. Ansvaret for deres brug falder på klientens skuldre (og hoved).

Men for officielle brugere af Odeneski har udviklerne skabt en universel processor "Upload/Load XML Data".

VIGTIG. Eksport til XML i 1C og yderligere indlæsning i XML fra 1C er acceptabelt for identiske konfigurationer - ellers vil det blive beskadiget.

Universal handler

Nøglepunkter for brug af den universelle udvikler:

  • Gem importfiler, indtil overførslen af ​​poster er afsluttet, og deres korrekthed er kontrolleret;
  • Når de bruges som sikkerhedskopier, skal de opbevares for at sortere søgningen.

Dens betjening har to tilstande: oprettelse af en fil, når du gemmer information, og læsning/skrivning af den ved import.

Derudover kan brugeren indstille yderligere begrænsninger både ved eksport og indlæsning af data.

Udtræk af optegnelser

Du kan uploade data både gennem hele databasen og selektivt - objekt for objekt.

Efter download, installation og åbning af handleren sker følgende:

Deres valg foretages i dialogboksen, der åbnes efter lanceringen. For at gøre dette skal du markere afkrydsningsfelterne på listen, der viser de metadataobjekter, der skal hentes;

  1. De nødvendige filtre er konfigureret (for eksempel efter dato);
  2. Diskplads er valgt;
  3. Selve operationen starter.

Upload af poster til modtageren

Det første skridt til at acceptere data i den modtagende database er at åbne processorprogrammet i den.

Efter at stien til kildefilen er blevet specificeret, og procedureindstillingernes flag er blevet aktiveret (om nødvendigt), kan du starte processen med knappen "Indlæs data".


Nu ved du, hvordan du indlæser eller aflæser data fra 1C i XML-format for at gemme data og udveksle mellem databaser.

Skriv i kommentarerne om din oplevelse i denne sag.