Få tilgang til programdata
Microsoft Office InfoPath 2003-objektmodellen inneholder objekter og samlinger som kan brukes til å få tilgang til informasjon om InfoPath-programmet, inkludert informasjon om et skjemas underliggende XML-dokument og skjemadefinisjonsfilen (.xsf). Disse dataene er tilgjengelige via toppnivåobjektet i InfoPath-objektmodellhierarkiet – Application-objektet.
Ved hjelp av Application-objektet kan utviklere av InfoPath-skjemaer få tilgang til informasjon om den installerte versjonen av InfoPath, inkludert navn og versjonsnummer. I eksemplet nedenfor returnerer egenskapene Name og Version for Application-objektet data i en meldingsboks til brukeren:
Application.XDocuments(0).UI.Alert("Application name: " + Application.Name +
"\nApplication version: " + Application.Version);
Legg merke til at Alert-metoden for UI-objektet, som er tilgjengelig via XDocument-objektet, brukes til å vise en meldingsboks for brukeren. Ettersom XDocument-objektet som representerer det underliggende XML-dokumentet for gjeldende åpne skjema, er bygd inn i InfoPaths skriptmotor, kan det forrige eksemplet også skrives slik:
XDocument.UI.Alert("Application name: " + Application.Name +
"\nApplication version: " + Application.Version);
Obs! Standardtegnet \n
i varselsmeldingen representerer et nytt linjeskift som gjør at teksten brytes og plasseres på en ny linje i meldingsboksen.
Få tilgang til data om et skjemas XML-dokument
Utviklere kan bruke XDocument-objektet til å få tilgang til informasjon om et skjemas underliggende XML-dokument, inkludert en referanse til en XML DOM (Document Object Model) som inneholder kilde-XML-dataene for skjemaet.
I eksemplet nedenfor viser den første meldingsboksen noen av dataene som er tilgjengelige for XDocument-objektet, for eksempel om de er endret (ved hjelp av IsDirty-egenskapen) og om de er signert digitalt (ved hjelp av IsSigned-egenskapen). Den neste meldingsboksen bruker XDocument-objektets DOM-egenskap til å vise kilde-XMLen for skjemaets underliggende XML-dokument.
XDocument.UI.Alert("\nIsDirty: " + XDocument.IsDirty +
"\nIsDOMReadOnly: " + XDocument.IsDOMReadOnly +
"\nIsNew: " + XDocument.IsNew +
"\nIsReadOnly: " + XDocument.IsReadOnly +
"\nIsSigned: " + XDocument.IsSigned);
XDocument.UI.Alert(XDocument.DOM.xml);
Obs! xml-egenskapen som ble brukt i det forrige eksemplet, er en XML DOM-egenskap. Hvis du vil ha mer informasjon om XML DOM, se dokumentasjonen for MSXML 5.0 SDK i hjelpesystemet for Microsoft Script Editor (MSE).
Få tilgang til data om et skjemas .xsf-fil
Du kan også få tilgang til informasjon om et skjemas .xsf-fil, inkludert en XML DOM-referanse til kilde-XML-dataene i filen, ved hjelp av XDocument-objektet. Denne informasjonen er tilgjengelig via XDocument-objektets Solution-egenskap, som returnerer en referanse til Solution-objektet.
I eksemplet nedenfor viser det første varselet noen av dataene som er tilgjengelige for Solution-objektet, for eksempel objektets URI-plassering (Uniform Resource Identifier) (ved hjelp av URI-egenskapen) og versjonsnummer (ved hjelp av Version-egenskapen). Det neste varselet bruker Solution-objektets DOM-egenskap til å vise kilde-XMLen for .xsf-filen.
XDocument.UI.Alert("PackageURL: " + XDocument.Solution.PackageURL +
"\nURI: " + XDocument.Solution.URI +
"\nVersion: " + XDocument.Solution.Version);
XDocument.UI.Alert(XDocument.Solution.DOM.xml);