Opprette og redigere en XML-fil i Excel. Konverter til XML-format

Det dukket opp en oppgave å lage en XML-fil basert på XSD-skjemaer. Søk i forumene førte til et stort antall diskusjoner knyttet til en misforståelse av prosessen, og bare et par artikler som forklarer essensen. Folk stilte spørsmål, slet med løsningen, men etter at problemet ga etter for dem, forsvant de rett og slett uten å beskrive mekanismen. Dette førte til opprettelsen enkel beskrivelse prosess.
P.S. Ikke bann for mye, målet mitt var ikke å lage en slags vitenskapelig artikkel som strengt tatt bruker riktig terminologi, men bare å hjelpe til med å ta det første skrittet mot å forstå den svært kraftige utvekslingsmekanismen via XML.
P.P.S. Jeg må umiddelbart ta forbehold om at opplastingsfilen vedlagt artikkelen kun er en mal som bare lager en del av den nødvendige XML-filstrukturen, fordi arbeidet mitt med denne nedlastingen var mer av pedagogisk karakter (kopier det forrige eksportdokumentet på FCS-nettstedet og last ned kun fra Excel-filen tabelldel Produkter presentert mer effektiv løsning), og mangelen på tid tillot meg ikke å fullføre opprettelsen av hele strukturen, bare basert på betraktninger om perfeksjonisme.

Så, etter å ha registrert seg på FCS-nettstedet, ble det klart at for å lage statistiske rapporteringsdokumenter om eksport, er det nødvendig å laste ned data fra handelsstyringsdokumentene for salg av varer og tjenester og opprette en fil for nedlasting.

Det er to mulige nedlastingsalternativer.

Først: lasting av tabelldelen med produkter fra Excel-fil(dette alternativet ble valgt som et fungerende alternativ, fordi det hadde fordelene at det ikke var nødvendig å bry seg med å behandle "Header" av dokumentet, men du kan ganske enkelt kopiere den forrige, endre det som kreves i "Header" ).

For det andre: lage en XML-fil i henhold til skjemaet lastet ned fra FCS-nettstedet i form av et "Album of formats" elektroniske skjemaer dokumenter." Albumet inneholder nok et stort nummer av XSD-opplegg. De fant et diagram over "Statistisk regnskapsform for bevegelse av varer" og tilleggsfiler med typebeskrivelser for det. Diagrammene er vedlagt artikkelen i arkivet med bearbeiding.

For å se XSD-skjemaer brukte vi gratis Microsoft XML Notepad 2007.

Bildet viser hovedfilen med XSD-skjemaet "Statistisk skjema for regnskap for bevegelse av varer." Bildet fremhever hovedblokkene i XSD-skjemaet som vi trenger for å forstå det.

Fra diagrammet er det klart at vi trenger å få en XML-fil fylt med strukturen spesifisert i "xs:element"-grenen av typen StaticFormType.

Strukturen kan være ganske kompleks (som i vårt tilfelle). Med typebeskrivelser tilstede direkte i grenen, plassert i en egen gren, eller til og med plassert i en annen fil.

Denne strukturen har en type StaticFormType, som igjen består av en basetype BaseDocType, et sett med objekter av forskjellige typer og tekstattributter.

Basetypen BaseDocStyle er definert i en annen fil (og navneområde)
.

Denne filen inneholder mange typer som ikke brukes i vårt tilfelle.

La oss nå gå videre til å jobbe i 1C. I et nøtteskall, det vi trenger å gjøre kommer ned til følgende:

1. XDTO Factory blir opprettet

OurFactoryXDTO = CreateFactoryXDTO(ArrayFullFileNamesWithXSDSchemas);

2. I XDTO-fabrikken opprettes alle komplekse datatyper, som vi så fyller ut opprettet fil XML:

StaticFormType = MyFactoryXDTO.Type("urn:customs.ru:Information:CustomsDocuments:StaticForm:5.4.0", "StaticFormType");

Datatypene som er inkludert i en bestemt type kan hentes fra samlingen av dens egenskaper:

CUOrganizationType = StaticFormType.Properties.Get("Mottaker").Type; NameType = CUOrganizationType.Properties.Get("OrganizationName").Type; ShortNameType = CUOrganizationType.Properties.Get("ShortName").Type; LanguageCodeType = CUOrganizationType.Properties.Get("OrganizationLanguage").Type;

3. Når alle komplekse datatyper er opprettet, lager vi en XML-filstruktur basert på dem, bestående av XDTO Factory-objekter:

StaticFormType_XDTOObject = MyXDTOFactory.Create(StaticFormType); // samling med dokumenter NewDocuments = MyFactoryXDTO.Create(DocumentsType); NewDocuments.PrDocumentName = MyFactoryXDTO.Create(PrDocumentNameType, "Waybill"); NewDocuments.PrDocumentNumber = MyFactoryXDTO.Create(PrDocumentNumberType, "123-nummer"); NewDocuments.PrDocumentDate = MyFactoryXDTO.Create(PrDocumentDateType, "2014-10-05"); StaticFormType_XDTO.Documents.Add(NewDocuments);

Samtidig fyller vi inn det elementære ( enkle typer) nødvendigheter.

4. Og til slutt laster vi ut alt fra XDTO Factory til en fil:

XML-fil = Ny XML-oppføring(); FileXML.OpenFile(Filnavn); FileXML.WriteXMLDeclaration(); MyXDTOFactory.WriteXML(XMLFile, StaticFormType_XDTOObject); FileXML.Close();

P.S. Arkivet inneholder en opplastingsmalfil i XML (bare noen detaljer opprettes, som gjenspeiler alle tilfeller hvor filen er fylt ut) og XSD-skjemaer.

Pakk ut alle filene i en bestemt katalog.

XML vil bli opprettet i den.

Ganske ofte, mange brukere av moderne datasystemer Og programvareprodukter forskjellige typer møter filer med filtypen .xml. Mange mennesker har rett og slett ingen anelse om hva slags dokument dette er eller hvordan man åpner det. Nå skal det vurderes Samtidig skal vi finne ut hva det er og hva det trengs til.

Hva er en XML-fil

La oss starte, kanskje, med det faktum at fra et moderne synspunkt datateknologi og programmer som brukes til å lage dokumenter av denne typen er tekstfil, som inneholder kommandoene til det universelle utvidbare markup-språket, som minner ganske mye om det velkjente HTML-markup-verktøyet.

Vanligvis inneholder XML-filen generell informasjon om ethvert objekt, som uttrykkes med beskrivende midler (mer om dette senere). Når det gjelder dataene som er lagret i slike beholdere, kan disse være databaser som ofte brukes til Internett-video- og lydkataloger, lagret egendefinerte innstillinger programmer og applikasjoner, samt hele nettsider.

Som et eksempel kan du ta for eksempel et lydalbum av en artist. XML-filen inneholder informasjon om utgivelsesår, sjanger, nummer og navn på spor, popularitet osv. Men når du besøker ressurser i Verdensveven surferen trenger ikke tenke på fysisk å åpne en slik informasjonsfil, siden spilleren selv når han spiller en sang på nettet, vil vise alle dataene av typen som finnes i standard MP3-filer i form av ID3-tagger. Informasjonen lastes inn på sporet som spilles av.

XML-filtype

Hvis du ser på filen, vil du umiddelbart legge merke til at egenskapene til ethvert objekt er beskrevet ved hjelp av tagger og attributter som settes manuelt.

Vi snakker ikke om de grunnleggende kommandoene til selve språket, siden den gjennomsnittlige brukeren ikke trenger slik informasjon. Det eneste som kan noteres er det et visst beløp elementer som brukes til å beskrive et objekt i dette formatet eksisterer ikke: så mye som trengs, så mye er gitt.

Hvordan åpne standard XML-format

La oss nå se hvordan du åpner en XML-fil. Som mange sikkert allerede har forstått, er dette en tekstfil, noe som betyr at den enkleste måten å se eller redigere den på er å bruke hvilken som helst editor, også den mest primitive. Ja, i det minste samme "notisblokk" fra standard Windows-settet.

Men alt er ikke så enkelt her. Poenget er at iht Dobbeltklikk filen vil ikke åpnes uten å angi riktig tilknytning til noe program. I beste fall vil systemet tilby en liste over de fleste passende applikasjoner. Du kan velge et program du ønsker, og samtidig krysse av i boksen ved siden av alternativet for å hele tiden bruke det valgte programmet for alle filer av denne typen.

Du kan gjøre det annerledes ved å høyreklikke på filen og deretter velge «Åpne med...»-kommandoen, og så igjen, velg riktig applikasjon enten fra listen, eller spesifiser plasseringen av den kjørbare hovedkomponenten (oftest er dette en EXE-fil).

Den tredje måten å åpne en XML-fil på er å første lansering programmet og deretter bruke filåpne-menyen (i de fleste tilfeller er dette kombinasjon Ctrl+ O). I dette tilfellet er det absolutt ikke nødvendig å bruke Notisblokk. Vær så snill, filen åpnes uten problemer i det samme Word-applikasjon og andre som ham. Selv Microsoft Excel er i stand til å åpne data i dette formatet.

Men hvis det er behov for å redigere XML-formatet, er det bedre å bruke profesjonelle verktøy som støtter språksyntaks, for eksempel Oxygen XML Editor, XML Marker eller EditiX Lite Version. Naturligvis er ikke dette alle verktøy som kan fungere med filspråket i toppnivå. I dag kan du finne mange slike programmer.

Nå noen få ord om hvorfor noen ganger dukker det opp en XML-filfeil når du åpner. Oftest skyldes dette et brudd på integriteten til selve filen, samt feil introduksjon av beskrivende attributter eller tagger. I tillegg har Excel en grense for hvor mange rader som kan vises, så i dette tilfellet kan det hende at dataene ikke er fullstendige når de åpnes.

Mulige feil ved åpning av en XML-fil som et e-postvedlegg

Noen ganger kan det oppstå feil når du prøver å åpne en fil som er et vedlegg e-post. Oftest refererer dette til standard e-postklienter som Outlook Express.

Faktum er at vedlegget først lagres som midlertidige data (svært ofte med en ekstra .tmp lagt til hovedutvidelsen), og det er denne som åpnes.

For å unngå denne situasjonen er det nok til å begynne med å lagre vedlegget i sitt originale format i et hvilket som helst format komfortabelt sted på disk eller flyttbare medier, bruk deretter standardmetodene beskrevet ovenfor.

I stedet for totalt

Som du kan se, er det ikke noe vanskelig å forstå strukturen og metodene for å åpne filer i dette formatet. Her ble imidlertid spørsmålet om å lage XML-data ikke grunnleggende vurdert, siden for å forstå prosessen fullt ut, må du i det minste vite det grunnleggende om selve språket. Ellers tror jeg at brukere ikke vil ha noen problemer med filer i dette formatet.

Jeg vil gjerne snakke på ett sted om en veldig typisk oppgave når man jobber med XML, nemlig om skapelsen XML basert på den eksisterende. Denne operasjonen vil bestå av flere stadier, der beslutningene vil bli tatt tilleggsoppgaver, som for eksempel:

  • Opprettelse XML basert XSD, og vice versa.
  • Serialisering og deserialisering av objekter.
  • Opprette en klasse for fremtidig serialisering fra XML eller XSD.
Før jeg starter planlegger jeg at leseren er kjent med ordene XML Og XSD. Angående XML, jeg tror det ikke er noen problemer med dette, men som for XSD Jeg har kanskje spørsmål om hva det er. Kort oppsummert:
XSD er et språk for å beskrive XML. Og hvis du ser på innholdet i filen som inneholder denne beskrivelsen, vil spørsmålet oppstå, hvorfor beskrive de tilsynelatende åpenbare kodene til din XML? Men forestill deg at du integrerer med et eksternt system, og du vil bruke formatet for datautveksling XML. Så, XSD lar deg beskrive for hvert element dets navn, mulige attributter, obligatoriske felt eller attributter, og gjøre det klart at innholdet i en tag kan inneholde bare ett internt element ( ) og ikke mer, eller en node kan ha en sekvens av elementer (< a> ... ). Når eksternt system er din, så oppstår kanskje ikke problemer, men når det utenfor organisasjon, Deretter denne beskrivelsen gjennom XSD, vil være et verktøy for å løse tvister med formatet, og også, ved å bruke verktøy, kan du sjekke samsvar med alle XML originalformat.
Så, hva skal vi gjøre for å lære å stemple XML basert på din standard? Jeg vil beskrive alt i rekkefølge.

Tilgjengelig:
En slags XML (xmlfile.xml), lagret i tekstformatå lagre. Under er teksten:

< catalog > < book id = " bk101 " > < author >Gambardella, Matthew < title >XML-utviklerveiledning < genre >Datamaskin < price > 44.95 < publish_date > 2000-10-01 < description >En grundig titt på å lage applikasjoner med XML. < book id = " bk102 " > < author >Ralls, Kim < title >Midnattsregn < genre >Fantasi < price > 5.95 < publish_date > 2000-12-16 < description >En tidligere arkitekt kjemper mot corporate zombier, en ond trollkvinne og sin egen barndom for å bli verdens dronning.

Fremgangsmåte for å opprette en ny:

  1. Først bruker du verktøyet XSD.exe, eller bruker nettjenester(søk etter "xml til xsd" en av dem www.freeformatter.com/xsd-generator.html), vil vi lage fra den eksisterende XML dens primitive XSD beskrivelse. Ved utgangen vil vi ha en fullstendig, automatisk opprettet output.xsd en fil som allerede er brukbar, men som kanskje ikke er komplett.
  2. Neste, basert på output.xsd , klasser vil bli opprettet i C# xmlclass.cs. Deretter legger vi det til prosjektet vårt. Du kan opprette en klasse ved å bruke XSD.exe eller xsd2-kode verktøy eller en hvilken som helst nettjeneste.
  3. Nå er vi klare til å bruke filklassene xmlclass.cs. La oss derfor opprette og fylle forekomster med data xmlclass, og deretter, ved hjelp av serialiseringsprosessen, vil vi konvertere objekter til XML linje, og deretter lagre den i ny fil. Dermed får vi XML basert på hva som er tilgjengelig.
La oss komme i gang!

Trinn 1: Generer XSD fra XML.

Så her er metodene jeg bruker selv:
  1. Nytte xsd.exe- skaper Microsoft.
  2. Nytte xsd2code.exe - tredjepartsapplikasjon, som kan gjøre alt det samme som xsd.exe, men er tilgjengelig for nedlasting direkte (på dette øyeblikket ble betalt fra Prøve periode).
  3. Bruk av alle nettjenester.
For å motta XSD.exe, må du sette noen Microsoft SDK-er, som følger med denne søknaden. Dessverre, for øyeblikket, inkluderer ingen av studioene dette verktøyet i settet.

Link for å laste ned og installere en av SDK:
Windows SDK for Windows 7 og .NET Framework 4.

La oss bruke søket og finne filen xsd.exe, hvoretter (for å gjøre arbeidet vårt enklere), kopier det til mappen som er opprettet i roten på disken C:\xmltoxsd. Deretter kopierer vi vår xmlfile.xml og alt er klart til start.


Vi river av" Kommandolinje"(Start -> "Kjør" -> "cmd"), gå til katalogen vår og ring med standardparametere xsd.exe, og sender vår xmlfile.xml som en parameter:


Og vi ser at det har dukket opp en fil ved siden av xmlfile.xsd med innhold.


Det er alt! Disse handlingene er nok til å skape en primitiv XSD fil å jobbe med. Men det er verdt å forstå det xsd.exe, som alle andre verktøy, vet ingenting om typene av feltene dine (så felttypen vil nesten alltid være det streng), samt om alle variasjoner av attributter og parametere. Det vil si hvis en tag ikke har et attributt i din XML, så står det ikke i beskrivelsen. Derfor XML skal være den mest komplette, og hvis elementet kan inneholde flere underordnede felt, er det bedre å legge til minst to, slik at xsd.exe Jeg innså at dette er en samling.

Syntaks XSD ikke veldig komplisert, så hvis du skriver en ganske seriøs beskrivelse, må du kanskje jobbe med en fil.

Trinn 2: Lag en klasse fra XSD.

For å lage en klasse i C#, må vi bruke på nytt xsd.exe men med en annen parameter /klasser, passerer stien til vår xmlfile.xsd.


Etter kjøring vil filen xmlfile.cs vises, hvis innhold er vist nedenfor i komprimert form:


Som du kan se, for det indre elementet katalog en klasse ble opprettet katalogbok, hvis felt tilsvarer feltene i XML, og feltet ID merket som et attributt. Xsd.exe Jeg forsto riktig hva som var inni katalog en samling bøker er lagret, så eiendommen dukket opp Varer, for å fylle ut underordnet samling.
Kommentar: xsd.exe kan ikke legge til kommentarer til de resulterende klassene og feltene. I beskrivelsen XSD det er et element som heter< xs:annotation > , som oftest inneholder< xs:documentation >, inni som er en beskrivelse av feltet. I teorien skal det plasseres i ///-beskrivelsen, men for øyeblikket xsd.exe nekter å legge til tekst i beskrivelsen, så du må ty til alternativer som f.eks xsd2-kode eller nettjenester.

Trinn 3: Serialiser objekter til XML.

De resulterende klassene er i filen xmlfile.cs. Deretter legger du til innholdet eller selve filen til prosjektet Visuelt studio , hvoretter du kan jobbe med det. Jeg vil lage demobokobjekter og deretter lagre dem til en fil i formatet XML.

Private void Eksempel() ( // Lag den første boken var book1 = new catalogBook () ( forfatter = "King" , description = "Veldig interessant bok" , sjanger = "Fantasy" , pris = 22.ToString(), id = "42011" , tittel = "It" }; !} // Lag en andre bok var book2 = new catalogBook () ( forfatter = "O"Brien, Tim" , beskrivelse = "Microsofts .NET-initiativ utforskes i detalj i denne dype programmererens referanse.", sjanger = "Datamaskin" , pris = 36.ToString(), id = "30012" , tittel = "Microsoft .NET: The Programming Bible" }; // Lag et katalogrotelement som inneholder de to bøkene ovenfor var catalog = new catalog() (Items = new(book1, book2)); // Inneholder XML for katalogobjektet var xmlCatalog = Serialize(catalog); // Skriv en streng til en fil // TODO Laget for demonstrasjonsformål. Det anbefales å ringe Serialize-metoden for å overføre Stream til filen Fil .WriteAllText("Output.xml" , xmlCatalog); ) privat streng Serialiser (TType sourceObject) ( if (sourceObject == null ) (returstreng .Empty; ) // Bruk XmlSerializer for å konvertere den til en XML-streng var xmlserializer = new XmlSerializer(typeof(TType)); var stringWriter = new StringWriter(); bruker (var writer = XmlWriter .Create(stringWriter, nye XmlWriterSettings () ( Innent = true ))) ( xmlserializer.Serialize(writer, sourceObject); return stringWriter.ToString(); ) ) Etter kjøring og åpning Output.xml du kan se at vi lagret det slik vi ønsket (Bundfil - " Laget av kode").

XML-formatet er utformet for å lagre data som kan være nyttige i driften av visse programmer, nettsteder og støtte for visse markup-språk. Det er ikke vanskelig å lage og åpne en fil med dette formatet. Dette kan gjøres selv om du ikke har noen spesialisert programvare installert på datamaskinen.

XML i seg selv er et markup-språk, noe som ligner HTML, som brukes på nettsider. Men hvis sistnevnte bare brukes til å vise informasjon og dens riktig merking, så lar XML det struktureres på en bestemt måte, noe som gjør dette språket litt likt en analog av en database som ikke krever et DBMS.

Du kan lage XML-filer ved hjelp av spesialiserte programmer eller innebygde Windows-tekst redaktør. Enkelt å skrive kode og nivået på funksjonaliteten avhenger av hvilken type programvare som brukes.

Metode 1: Visual Studio

I stedet for denne Microsoft-kodeeditoren kan du bruke hvilken som helst av analogene fra andre utviklere. Faktisk er Visual Studio en mer avansert versjon av det vanlige "notisblokk". Koden har nå spesiell utheving, feil utheves eller korrigeres automatisk, og spesielle maler er allerede lastet inn i programmet som gjør det enklere å lage store XML-filer.

For å komme i gang må du opprette en fil. Klikk på elementet "Fil" V topppanel og velg fra rullegardinmenyen "Skape…". En liste åpnes som indikerer elementet "Fil".

  • Du vil bli omdirigert til et vindu med et valg av filtype, velg elementet tilsvarende "XML-fil".
  • Den nyopprettede filen vil allerede ha den første linjen med koding og versjon. Som standard er den første versjonen og kodingen spesifisert UTF-8, som du kan endre når som helst. Deretter, for å lage en fullverdig XML-fil, må du skrive ned alt som var i de forrige instruksjonene.

    Når du er ferdig, velg igjen i topppanelet "Fil", og det er et element fra rullegardinmenyen "Lagre alt".

    Metode 2: Microsoft Excel

    Du kan lage en XML-fil uten å skrive kode, for eksempel ved å bruke moderne versjoner, som lar deg lagre tabeller med denne utvidelsen. Du må imidlertid forstå at i dette tilfellet vil det ikke være mulig å lage noe mer funksjonelt enn et vanlig bord.

    Denne metoden er mer egnet for de som ikke vil eller ikke vet hvordan de skal jobbe med kode. Men i dette tilfellet kan brukeren støte på visse problemer når du skriver om en fil i XML-format. Dessverre er operasjonen med å konvertere en vanlig tabell til XML bare mulig på de nyeste versjonene av MS Excel. For å gjøre dette, bruk følgende trinnvise instruksjoner:


    Metode 3: Notisblokk

    Selv en vanlig er ganske egnet for å jobbe med XML "Notisbok", men det vil være vanskelig for en bruker som ikke er kjent med syntaksen til språket, siden det må skrives i ulike kommandoer og tagger. Prosessen vil være noe enklere og mye mer produktiv i spesialiserte programmer for redigering av kode, for eksempel i Microsoft Visual Studio. De har spesiell tag-utheving og verktøytips, som i stor grad forenkler arbeidet til en person som er ny i syntaksen til dette språket.

    Denne metoden krever ikke nedlasting av noe, siden operativsystem allerede innebygd "Notisbok". La oss prøve å lage en enkel XML-tabell i den ved å bruke disse instruksjonene:


    Det ferdige resultatet skal se omtrent slik ut:




    25
    ekte


    XML-kompilatorer må behandle denne koden som en tabell med én kolonne som inneholder data om en viss Ivan Ivanov.

    I "notisblokk" det er fullt mulig å lage enkle tabeller som dette, men når man lager større datamatriser kan det oppstå vanskeligheter, siden i vanlige "notisblokk" Det er ingen funksjoner for å rette feil i koden eller markere dem.

    Som du kan se, er det ikke noe komplisert i å lage en XML-fil. Om ønskelig kan den lages av enhver bruker som mer eller mindre vet hvordan man jobber på en datamaskin. Men for å lage en fullverdig XML-fil, anbefales det å studere dette markup-språket, i det minste på et primitivt nivå.

    La oss se på prosedyren for å konvertere et databaseobjekt til XML-format:

    1. I databasevinduet velger du ønsket objekt ved å venstreklikke og velge kommandoen Fil, eksport(Fil, Eksporter) eller høyreklikk på objektet og velg kommandoen fra hurtigmenyen Eksport(Eksport).
    2. En dialogboks vises Eksporter et objekt(Eksporter til). I rullegardinlisten Typer(Lagre som type) velg elementet XML-dokumenter(XML-dokumenter). I felt Filnavn(Filnavn) skriv inn navnet på HTML-dokumentet og klikk på knappen Eksport(Eksport).
    3. En dialogboks vises XML-eksport(Eksporter XML) (Fig. 12.9).
    4. Denne dialogboksen inneholder tre avmerkingsbokser for de tre komponentene i et XML-dokument: data, dataskjema og datapresentasjon. (For mer informasjon, se delen "XML-format i Microsoft Office 2002" i dette kapittelet). Merk av i avmerkingsboksene for delene av XML-dokumentet du vil eksportere. For eksempel hvis du merker av i avmerkingsboksene samtidig data (XML)(Data (XML)) og dataskjema(Skjema for dataene), vil dataskjemaet eksporteres og lagres separat fra XML-datafilen, i en XSD-fil. For tabeller kan du bare eksportere dataene eller strukturen, eller dataene og strukturen sammen og ikke eksportere tabellvisningen som en nettside: avmerkingsboks datapresentasjon(XSL) (Presentasjon av dataene dine (XSL)) kan fjernes.

    Ris. 12.9. Dialogvindu XML-eksport

    Kommentar

    Avmerkingsboksen Data (XML) skal bare fjernes hvis du kun ønsker å eksportere en ny representasjon av databaseobjektet og dataene tidligere har blitt eksportert til en XML-fil. Ellers, når du åpner den resulterende websiden, vil du motta en melding om en feil ved tilkobling til datakilden, og selve siden vil være nesten tom.

    1. å installere Ekstra alternativer konvertering, klikk på knappen I tillegg(Avansert) (Fig. 12.10).

    Ris. 12.10. Tab Data dialogboks XML-eksport

    1. I tillegg inneholder denne dialogboksen ytterligere to faner for de to gjenværende komponentene i XML-dokumentet: dataskjema og datarepresentasjon. På hver av disse fanene kan du velge en avmerkingsboks som lar deg eksportere den tilsvarende delen av XML-dokumentet, spesifisere banen og navnet på filen som denne delen av dokumentet skal lagres i, og angi noen ekstra parametere:
      • på fanen Data(Data) ved hjelp av rullegardinlisten Koding(Koding) du kan velge kodingen for å lagre sideinnholdet;
      • på fanen Opplegg(Skjema) kan du bruke bryterne til å velge om du vil eksportere datastrukturen til en separat XSD-fil eller bygge den inn i en XML-fil sammen med dataene;

    Ris. 12.11. Kontorapport åpnet i databasen

    • på fanen Presentasjon(Presentasjon) ved hjelp av bryterne, kan du velge presentasjonsformatet til websiden: HTML behandlet på klientsiden eller ASP-serversiden. Hvis det eksporterte objektet inneholder bilder som du vil inkludere i det resulterende dokumentet, kan du angi navnet på mappen de er plassert i. På samme fane er det et felt for å skrive inn navnet på XSL-filen med en beskrivelse av sidedesignet. Hvis spesifisert fil ikke eksisterer, vil Access 2002 lage en XSL-fil som beskriver den eksterne representasjonen av dokumentet (utvikleren kan senere bruke dette som grunnlag for å utvikle en XSLT-fil for å konvertere XML-dokumentet til et annet format).

    Hvis påkrevd Tilleggsinformasjon om å representere data i XML-format, klikk på knappen Henvisning(Hjelp). Informasjon om utvikling og konvertering av XML-dokumenter finnes på Microsoft Developer-nettstedet: http://msdn.microsoft.com/.

    Ris. 12.12. Kontorapporten, hvis data er konvertert til XML-format, åpne i Internet Explorer

    1. Klikk OK.
    2. Hvis de foreslåtte transformasjonsparametrene ikke er endret, vil tre filer opprettes som et resultat: XML - med data, XSL - med stiler og HTM - med en representasjon av det konverterte objektet. For å åpne den mottatte websiden, må du åpne den på Internett Explorer-filen HTM eller ASP, avhengig av hvilket presentasjonsformat som ble valgt..

    Dessverre vil underskjemaer og rapporter og tilhørende grafikk ikke bli lagt til XML-dokument, hentet fra et databaseobjekt. Imidlertid vil enkle objekter med innebygd grafikk eksportert til XML se nesten nøyaktig ut som de originale i Access. Du kan verifisere dette ved å sammenligne for eksempel originalen og Fakturarapporten konvertert til XML-format fra Northwind-databasen (Figur 12.11 og 12.12).

    Hvis det er mye data i datakilden til det valgte objektet, kan det ta betydelig tid å laste nettsiden inn i nettleseren.

    Kommentar

    Siden selve dataene inneholdt i slike Web-dokument, er lagret helt i en XML-fil, er det ikke nødvendig å få tilgang til databasen som dataene opprinnelig ble hentet fra (som for eksempel ved konvertering av en rapport til XML-format Dette betyr at for å gi tilgang til slike). et dokument, trenger du bare å plassere bare det nevnte settet med filer som inneholder beskrivelsen av dette dokumentet, på Internett server. På den annen side betyr dette at endring av data i et slikt dokument kun er mulig ved bruk av applikasjoner som har tilgang til XML-fil og i stand til å akseptere dette formatet.