LibreOfficeDev 25.8 Hjelp
Tjenesten FormDocument gir tilgang til skjemadokumenter som er lagret i LibreOfficeDev Base-dokumenter.
I et Base dokument kan eksisterende skjemadokumenter vises ved å velge i brukergrensesnittet. Hvert skjemadokument kan være sammensatt av ett eller flere skjemaer, inkludert hovedskjemaet og andre underskjemaer.
Denne tjenesten arver metoder og egenskaper fra Dokument-tjenesten og brukes ofte sammen med tjenestene Base og Database.
Se Dokument-tjenesten for å lære mer om metoder og egenskaper som kan brukes til å administrere LibreOfficeDev-dokumenter .
Før du bruker FormDocument-tjenesten, må ScriptForge-biblioteket lastes eller importeres:
En FormDocument tjenesteforekomst kan opprettes ved å kalle metoden OpenFormDocument som finnes både i Base og Database-tjenestene.
Eksemplet nedenfor bruker UI-tjenesten til å åpne et basisdokument og deretter hente et skjemadokument. Merk at i dette eksemplet vil både basisdokumentet og skjemadokumentet bli åpnet og vist på skjermen.
    Dim ui As Object, oBase As Object, oFormDoc As Object
    ui = CreateScriptService("UI")
    oBase = ui.OpenBaseDocument("C:\Documents\MyDatabase.odb")
    oFormDoc = oBase.OpenFormDocument("MyFormDocument")
    ' ...
    oFormDoc.CloseDocument()
  Følgende eksempel bruker Database-tjenesten for å åpne skjemadokumentet. I dette tilfellet vil ikke Base-filen bli åpnet og kun skjemadokumentet vises.
    Dim oDatabase As Object, oFormDoc As Object
    oDatabase = CreateScriptService("Database", "C:\Documents\MyDatabase.odb")
    oFormDoc = oDatabase.OpenFormDocument("MyFormDocument")
  Å kalle OpenFormDocument for et skjemadokument som allerede er åpent vil aktivere dokumentvinduet og bringe det til fokus.
Eksemplene ovenfor kan oversettes til Python som følger:
    ui = CreateScriptService("UI")
    baseDoc = ui.OpenBaseDocument("C:\Documents\MyDatabase.odb")
    formDoc = baseDoc.OpenFormDocument("MyFormDocument")
    # ...
    formDoc.CloseDocument()
  
    database = CreateScriptService("Database", "C:\Documents\MyDatabase.odb")
    formDoc = database.OpenFormDocument("MyFormDocument")
  | Liste over metoder i FormDocument Tjenesten | ||
|---|---|---|
Lukker skjemadokumentet det refereres til av FormDocument-forekomsten. Returnerer Sann hvis skjemadokumentet ble lukket.
svc.CloseDocument(): bool
    oFormDoc.CloseDocument()
  
    formDoc.CloseDocument()
  Returnerer enten en matrise med navnene på hovedskjemaene i skjemadokumentet eller en Form tjenesteforekomst som refererer til et spesifikt skjema.
Kall denne metoden uten argumenter for å få en nullbasert strengmatrise med navnene på alle skjemaene i skjemadokumentet.
Oppgi et skjemanavn eller en indeks som argument for å få en Form-tjenesteforekomst som tilsvarer det angitte skjemaet.
Et skjemadokument har minst én hovedform. Mer komplekse skjemadokumenter kan være sammensatt av mer enn ett skjema og underskjemaer.
svc.Forms(): str[0..*]
svc.Forms(form: str): svc
svc.Forms(form: int): svc
skjema: Dette argumentet kan enten være en streng med navnet på et skjema som finnes i skjemadokumentet eller den nullbaserte indeksen til skjemaet som skal returneres. Hvis dette argumentet ikke er spesifikt, returneres en matrise med navnet på alle tilgjengelige skjemaer.
Følgende eksempel sjekker om skjemadokumentet inneholder et skjema kalt "MainForm":
    arrForms = oFormDoc.Forms()
    If SF_Array.Contains(arrForms, "MainForm") Then
        ' ...
    End If
  Eksemplet nedenfor henter skjemaet kalt "MainForm" og flytter det til siste post:
    Dim oForm As Object
    oForm = oFormDoc.Forms("MainForm")
    oForm.MoveLast()
  
    arrForms = formDoc.Forms()
    if "MainForm" in arrForms:
        # ...
  
    form = formDoc.Forms("MainForm")
    form.MoveLast()
  For å lære mer om skjemametoder og egenskaper, se Form-tjenestehjelpesiden.
Denne metoden sender innholdsskjemadokumentet til standardskriveren eller til skriveren definert av SetPrinter()-metoden.
Returnerer Sann hvis dokumentet ble sendt til skriveren.
svc.PrintOut(pages: str = "", copies: int = 1, printbackground: bool = true, printblankpages: bool = false, printevenpages: bool = true, printoddpages: bool = true, printimages: bool = true): bool
sider: Sidene som skal skrives ut som en streng. Dette argumentet bør spesifiseres på samme måte som i brukergrensesnittet (se dialogboksen ). Eksempel: "1-4;10;15-18". Standardverdien er en tom streng "" som vil føre til at alle sider skrives ut.
kopier: Antall kopier som skal skrives ut (standard = 1).
printbackground: angir om bakgrunnsbildet skal skrives ut (Standard = Sann).
printblankpages: angir om tomme sider skal skrives ut (Standard = Usann).
printevenpages: angir om partallssider skal skrives ut (Standard = Sann).
printoddpages: angir om oddetallssider skal skrives ut (Standard = Sann).
printimages: angir om bilder skal skrives ut (Standard = Sann).
    oFormDoc.PrintOut("1-4", Copies := 2, PrintBackground := False)
  
    formDoc.PrintOut("1-4", copies = 2, printbackground = False)