Processen att ladda upp data till xml. Genererar en XML-fil. Enkel uppladdning för tredjepartsapplikationer. Processen att ladda upp data till xml Hur man laddar upp en xml-fil i 1c

När ett företag ständigt använder någon form av mjukvarupaket i sitt arbete, så uppstår naturligtvis alltid frågan om dess löpande support och administration. Det finns inget sätt att undvika uppgifterna att utbyta, lagra och återställa data. Låt oss titta på hur man laddar eller laddar ur data från 1C i XML-format, eftersom detta är en viktig procedur för detta ämne.

De är byggda på ett sådant sätt att du vid uppladdning kan få en XML-fil där den data som behövs för klienten kommer att registreras. Samtidigt, samtidigt med inspelningen, övervakas korrektheten av de överförda posterna för kritiska fel.

Uppladdning till en XML-fil (import av poster) från en informationsbas och efterföljande laddning från XML till en annan representerar således ett utbyte av data i XML-format mellan databaser.

Denna procedur, speciellt med stora mängder information, sparar mycket manuellt arbete.

Import (den resulterande filen) kan också användas som ett arkiv för återställning i oväntade situationer (om den tappas bort eller skadas).

Många sådana bearbetningsverktyg har utvecklats och de finns tillgängliga på Internet. Ansvaret för deras användning faller på klientens axlar (och huvud).

Men för officiella användare av Odeneski har utvecklarna skapat en universell processor "Ladda upp/ladda XML-data".

VIKTIG. Export till XML i 1C och vidare laddning till XML från 1C är acceptabelt för identiska konfigurationer - annars kommer den att skadas.

Universell hanterare

Nyckelpunkter för att använda den universella utvecklaren:

  • Spara importfiler tills överföringen av poster är klar och deras korrekthet kontrolleras;
  • När de används som säkerhetskopior bör ett register över dem sparas för att sortera sökningen.

Dess funktion har två lägen: att skapa en fil när information sparas och att läsa/skriva den vid import.

Dessutom kan användaren ställa in ytterligare begränsningar både vid export och laddning av data.

Extrahera poster

Du kan ladda upp data både genom hela databasen och selektivt - objekt för objekt.

Efter nedladdning, installation och öppning av hanteraren sker följande:


Deras val görs i dialogrutan som öppnas efter lanseringen. För att göra detta, markera rutorna i listan som visar de metadataobjekt som ska hämtas;

  1. De nödvändiga filtren är konfigurerade (till exempel efter datum);
  2. Diskutrymme är valt;
  3. Själva operationen startar.

Ladda upp poster till mottagaren

Det första steget för att acceptera data i den mottagande databasen är att öppna processorprogrammet i den.

Efter att sökvägen till källfilen har specificerats och flaggorna för procedurinställningar har aktiverats (om nödvändigt), kan du starta processen med knappen "Ladda data".

Nu vet du hur man laddar eller laddar ur data från 1C i XML-format för att spara data och utbyta mellan databaser.

Dataöverföring är en mycket viktig process i alla redovisningssystem, plattformarna 1C 8.3 och 8.2 är inget undantag. Nedan kommer vi att titta på instruktioner om det enklaste sättet att överföra data från ett system till ett annat som har en liknande konfiguration (för olika konfigurationer kan du använda ett verktyg för programmerare - eller).

Innan någon åtgärd är nödvändig är ändringarna oåterkalleliga!

Det enklaste och bekvämaste sättet att överföra data från 1C 8.3 till 1C 8.3 Accounting 3.0 är att använda bearbetningen Ladda upp och ladda data i XML-format (nedladdning - för 8.2 eller för 1C 8.3 eller på ITS). Behandlingen är universell och passar alla konfigurationer.

Vi kommer inte att gå in på detaljer; låt oss titta på steg-för-steg-instruktioner för att migrera data med denna bearbetning med exemplet på den enklaste överföringen av varor.

Laddar upp data till XML

Först och främst, låt oss öppna bearbetning i källdatabasen (varifrån vi kommer att lossa varor) och titta på gränssnittet:

Få 267 videolektioner på 1C gratis:

Du måste omedelbart fylla i fältet "Filnamn" - en ny datafil kommer att skapas längs denna sökväg, som vi laddar upp till mottagardatabasen. Strax nedanför, i tabelldelen "Data för uppladdning", måste du välja den data som vi vill ladda upp från databasen.

Efter att ha valt ett objekt från den vänstra tabelldelen, kan du tillämpa markeringen i den högra tabelldelen:

I vårt exempel vill jag ta bort alla produkter med namnet "Rake".

När alla inställningar har gjorts kan data laddas upp. För att göra detta, klicka på knappen "Ladda upp data":

Laddar data från xml till 1s 8.3

Data har laddats bort från källdatabasen, nu måste den överföras till måldatabasen.

För att göra detta måste du börja bearbeta redan i databasen där du behöver ladda data och gå till fliken "Ladda ner", välj den nedladdade filen på disken och klicka på knappen "Ladda data":

Detta exempel är endast lämpligt för överföring av data mellan identiska konfigurationer på 1C-plattformen. För att förstå utbytesmekanismen för programmerare skrev vi en artikel -.

Driftlägen

Bearbetning av UploadLoadDataXML82 implementerar 2 driftlägen: Ladda upp (skapa en uppladdningsfil med användarspecificerad data) och Load (läsa en uppladdningsfil skapad av läget med samma namn och skriva data som finns i den). Läget ställs in genom att välja det i fältet Läge.

Innan du startar ett visst läge (klicka på knappen Kör) måste du ange namnet på uppladdningsfilen, antingen genom att ange det manuellt i fältet "Filnamn" eller använda knappen för att välja det här fältet och dialogrutan för standardfilval .

I nedladdningsläge är det möjligt att redigera användningen av totaler vid skrivning av register, vilket kan påverka nedladdningshastigheten. Knapparna "Avaktivera totaler" och "Aktivera totaler" är tillgängliga när flaggan "Aktivera möjligheten att redigera användningen av totaler medan data laddas" är inställd och används för att manuellt styra läget för att använda totaler när data laddas. ** Villkor för tillämplighet av bearbetning**

Behandling kan endast användas i de fall där informationsbasen som data laddades upp i och den som data laddades i är homogena (konfigurationerna är identiska, data kan skilja sig), eller alla uppladdade objekt är nästan helt identiska i sammansättning och typer av detaljer och tabelldelar, egenskaper hos det ”ledande” metadataobjektet etc. Det bör noteras att på grund av dessa begränsningar är bearbetningen huvudsakligen avsedd för utbyte mellan homogena IS.

Uppladdningsfilformatet skiljer sig från filformatet som skapats vid uppladdning enligt en utbytesplan i rubrikdelen. För att ladda upp data (katalogelement, uppsättningar registerposter, etc.), använder bearbetningen samma XML-serialiseringsmekanism som uppladdning enligt utbytesplaner; i denna del är filformaten identiska.

Bestämma sammansättningen av lossningen

Bearbetning möjliggör både fullständig och partiell uppladdning av infobasdata till en fil. Sammansättningen av den uppladdade datan konfigureras i dialogrutan genom att markera rutorna i kolumnen i trädet som visar metadataobjekt för vilka data kan laddas upp. En extra kolumn med kryssrutor, "Om nödvändigt", ställer in behovet av att ta bort objekt av denna typ "med referens". Det vill säga, om kryssrutan endast är markerad i kolumnen "Om nödvändigt", kommer data för ett sådant objekt inte att laddas ner helt, utan endast i den utsträckning som är nödvändig för att upprätthålla referensintegritet i infobasen som laddar nedladdningen fil.

När du öppnar ett formulär sätter bearbetning tecknet på lossning med hänvisning till alla objekt, vilket garanterar referensintegriteten för det avlastade fragmentet av informationsbasen.

När du klickar på knappen "Detektera objekt nedladdade via länk" analyserar behandlingen vilka datalänkar som kan finnas i objekt som har den fullständiga nedladdningsflaggan, och fyller automatiskt i kolumnen med flaggor som indikerar behovet av att ladda ner via länk. Om objektet redan har den fullständiga urladdningsflaggan inställd, så är inte urladdningsflaggan inställd.

Möjliga tillämpningar

Användningen av denna bearbetning är möjlig, till exempel för att skapa en hel eller partiell säkerhetskopia av data, utbyta data mellan informationsbaser och även som ett hjälpverktyg vid återställning av problematiska informationsbaser.

2018-11-15T19:32:35+00:00

Universell bearbetning "Ladda upp och ladda XML-data" utför hel eller partiell urladdning av infobasdata till en fil i XML-format. Därefter kan denna fil laddas in i infobasen med samma bearbetning. Uppladdningsfilformatet skiljer sig från filformatet som skapats vid uppladdning enligt en utbytesplan i rubrikdelen.

Behandling kan endast användas i de fall där informationsbasen som data laddades upp i och den som data laddades i är homogena (konfigurationerna är identiska, data kan skilja sig), eller alla uppladdade objekt är nästan helt identiska i sammansättning och typer av detaljer och tabelldelar, egenskaper för det ”ledande” metadataobjektet och så vidare.

Användningen av denna bearbetning är möjlig, till exempel för att skapa en hel eller partiell säkerhetskopia av data, utbyta data mellan infobaser och även som ett hjälpverktyg vid återställning av felaktiga infobaser.

Bearbetning stöder datauppladdning med möjligheten att ange urval efter period. Även implementerat är att kontrollera objekt för förekomst av ogiltiga tecken när de utbyts via XML.

Med vänlig hälsning, (lärare och utvecklare).

- välkända webbsidor, som också är en analog av XML med svaga kontroller.

XML Reader/Writer Objects, FastInfoset, HTML utökar läsmöjligheterna för textfiler med inbyggd bearbetning av markup-taggar.

De används också för DOMBuilder/DOMRecord-objekt (se nedan) som datakällor.

XML 1C-filer innehåller textinformation, det vill säga de är textfiler. 1C XML Reader och 1C Write XML-objekt är ett "tillägg" som gör det lättare att arbeta med XML-taggar i en 1C-fil.

Objekten ReadingFastInfoset 1C och WritingFastInfoset 1C, ReadingHTML 1C och WritingHTML 1C är helt lika ReadingXML 1C och WritingXML 1C och fungerar på samma sätt med andra format.

XML 1C-fil som används i exemplen

Katalog>

Katalog>

Text värdeProps>
Katalog>
Konfiguration>

Exempel 1. Läsa en 1C XML-fil till ett värdeträd med hjälp av Reading XML 1C

//öppna XML 1C-filen för läsning med ReadingXML 1C
File = New ReadXML();
File.OpenFile("D:\ConfigurationStructure.xml");

//förbered värdeträdet
//varje XML-gren kan ha ett namn, attribut och värde
dzXML = NewValueTree();
dzXML.Columns.Add("Namn");
dzXML.Columns.Add("Värde");
dzXML.Columns.Add("Attribut");

//eftersom en XML-sträng kan ha flera attribut kommer vi att skriva dem i värdetabellen
//varje attribut har ett namn och ett värde
tAttributes = New ValueTable();
tAttributes.Columns.Add("Namn");
tAttributes.Columns.Add("Value");

//kapslingsnivån hjälper oss att förstå när vi behöver lägga till en kapslad gren och när vi behöver gå tillbaka upp en nivå
Häckningsnivå = 0;
//nuvarande linje är en trädgräns, kommer att ändras när häckningen ökar
CurrentRow = Odefinierad;
//läsning av XML 1C-filen görs inte rad för rad, utan enligt strukturen; när filen avslutas kommer läsningen att returnera FALSE
Medan File.Read() Loop

//vi är intresserade av tre typer av noder - början av elementet, texten (värdet av elementet) och slutet av elementet (för att återgå till den översta nivån)
Om File.NodeType = XMLNodeType.ElementStarta sedan

Häckningsnivå = Häckningsnivå + 1;

//om detta är den första raden, lägg till den högst upp i trädet och spara bara namnet
Om CurrentRow = Odefinierad Då
CurrentRow = dXML.Rows.Add();
CurrentLine.Name = File.Name;
Fortsätta;
Annat
//kapslade linjer
CurrentRow = CurrentRow.Rows.Add();
CurrentLine.Name = File.Name; //spara namnet

//har detta XML-element attribut?
Om File.NumberAttributes() > 0 Då
//om ja, kopiera den förberedda tomma tabellen för att spara attribut
tAttributesNode = tAttributes.Copy();
//cykel genom antalet attribut för detta element
För konto = 0 av File.Number of Attributes()-1 cykel
//för varje attribut, kom ihåg namnet och värdet
Row = tNodeAttributes.Add();
Line.Name = File.AttributeName(Sch);
Row.Value = File.AttributeValue(Ac);
EndCycle;
//spara elementets attributtabell på den aktuella raden
CurrentRow.Attributes = tNodeAttributes;
endIf;
endIf;

ElseIf File.NodeType = XMLNodeType.EndElement Då
//i början av elementet ökar vi kapslingsnivån, i slutet av elementet minskar vi den
Häckningsnivå = Häckningsnivå - 1;
//retur den aktuella raden en nivå upp
CurrentRow = CurrentRow.Parent;

ElseIf File.NodeType = XMLNodeType.Text Then
//om elementet har ett värde, spara bara det
CurrentRow.Value = File.Value;

endIf;

EndCycle;

File.Close();

Exempel 2. Spela in en 1C XML-fil med 1C Record XML-objektet

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

//använd metadata för att gå igenom alla kataloger (för mer information, se "Arbeta med metadata")
För varje katalog från Metadata.Directories Cycle

//WriteStartofElement - öppnar en ny [underordnad] gren
File.WriteElementStart("Katalog");
//WriteAttribute - skriver ett attribut till en tidigare öppnad gren
File.WriteAttribute("Namn", Directory.Name);
File.WriteAttribute("Synonym", Directory.Synonym);

//med metadata går vi igenom alla katalogdetaljer
För varje rekvisita från Directory.Props-cykeln




EndCycle;

//använd metadata för att gå igenom alla tabelldelar av katalogen
För varje PM från katalogen Tabelldelar av cykeln
File.WriteElementStart("TabularPart");
File.WriteAttribute("Namn", PM.Name);
File.WriteAttribute("Synonym", PM.Synonym);

För varje rekvisita från PM.Props Cycle
File.WriteElementStart("Props");
File.WriteAttribute("Namn", Attributes.Name);
File.WriteAttribute("Synonym", Attributes.Synonym);
File.WriteEndElement();
EndCycle;

File.WriteEndElement();
EndCycle;

//WriteEndElement - "stänger" grenen som tidigare öppnats med WriteBeginElement
File.WriteEndElement();
EndCycle;

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