LibreOffice 25.2 Hjelp
Tjenesten ScriptForge.Basic foreslår en samling av LibreOffice Basic-metoder som skal utføres i en Python-kontekst. Grunnleggende tjenestemetoder gjengir den nøyaktige syntaksen og oppførselen til grunnleggende innebygde funksjoner.
Typisk eksempel:
   bas.MsgBox('Vis denne teksten i en meldingsboks fra et Python-skript')
  ScriptForge.Grunnleggende-tjenesten er begrenset til Python-skript.
Før du bruker Basic-tjenesten, importer CreateScriptService()-metoden fra scriptforge-modulen:
    from scriptforge import CreateScriptService
    bas = CreateScriptService("Basic")
  | Navn | Skrivebeskyttet | Type | Beskrivelse | 
|---|---|---|---|
| MB_OK, MB_OKCANCEL, MB_RETRYCANCEL, MB_YESNO, MB_YESNOCANCEL | Ja | Integer | Verdier: 0, 1, 5, 4, 3 | 
| MB_ICONEXCLAMATION, MB_ICONINFORMATION, MB_ICONQUESTION, MB_ICONSTOP | Ja | Integer | Verdier: 48, 64, 32, 16 | 
| MB_ABORTRETRYIGNORE, MB_DEFBUTTON1, MB_DEFBUTTON2, MB_DEFBUTTON3 | Ja | Integer | Verdier: 2, 128, 256, 512 | 
| IDABORT, IDCANCEL, IDIGNORE, IDNO, IDOK, IDRETRY, IDYES | Ja | Integer | Verdier: 3, 2, 5, 7, 1, 4, 6 | 
| StarDesktop | Ja | UNO | Returnerer StarDesktop-objektet som representerer LibreOffice-applikasjonen. | 
| ThisComponent | Ja | UNO | Hvis den gjeldende komponenten refererer til et LibreOffice-dokument, returnerer denne metoden UNO-objektet som representerer dokumentet. Denne egenskapen returnerer Ingen når den gjeldende komponenten ikke samsvarer med et dokument. | 
| ThisDatabaseDocument | Ja | UNO | Hvis skriptet kjøres fra et Base-dokument eller noen av dets underkomponenter, returnerer denne metoden hovedkomponenten til Base-forekomsten. Denne egenskapen returnerer ellersIngen. | 
Konverterer et numerisk uttrykk eller en streng til et datetime.datetime Python-native objekt.
Denne metoden eksponerer den grunnleggende innebygde funksjonen CDate for Python-skript.
svc.CDate(expression: any): obj
uttrykk: et numerisk uttrykk eller en streng som representerer en dato.
    d = bas.CDate(1000.25)
    bas.MsgBox(str(d)) # 1902-09-26 06:00:00
    bas.MsgBox(d.year) # 1902
  Konverterer en UNO-dato/klokkeslett-representasjon til et datetime.datetime Python-objekt.
svc.CDateFromUnoDateTime(unodate: uno): obj
unodate: Et UNO dato/tidsobjekt av en av følgende typer: com.sun.star.util.DateTime, com.sun.star.util. Dato eller com.sun.star.util.Time
Følgende eksempel oppretter et com.sun.star.util.DateTime-objekt og konverterer det til et datetime.datetime Python-objekt.
    uno_date = bas.CreateUnoStruct('com.sun.star.util.DateTime')
    uno_date.Year = 1983
    uno_date.Month = 2
    uno_date.Day = 23
    new_date = bas.CDateFromUnoDateTime(uno_date)
    bas.MsgBox(str(new_date)) # 1983-02-23 00:00:00
  Konverterer en datorepresentasjon til et com.sun.star.util.DateTime-objekt.
svc.CDateToUnoDateTime(date: obj): uno
dato: Et Python-dato/tidsobjekt av en av følgende typer: datetime.datetime, datetime.date, datetime.time , float (time.time) eller time.struct_time.
    from datetime import datetime
    current_datetime = datetime.now()
    uno_date = bas.CDateToUnoDateTime(current_datetime)
    bas.MsgBox(str(uno_date.Year) + "-" + str(uno_date.Month) + "-" + str(uno_date.Day))
  Returnerer et systemsti-filnavn for den gitte filen: URL.
svc.ConvertFromUrl(url: str): str
url: En absolutt fil: URL.
En systemsti-filnavn.
    filename = bas.ConvertFromUrl( "file:///C:/Program%20Files%20(x86)/LibreOffice/News.txt")
    bas.MsgBox(filename)
  Returnerer en fil: URL for den gitte systemstien.
svc.ConvertToUrl(systempath: str): str
systemsti: Et systemfilnavn som en streng.
En fil: URL som en streng.
    url = bas.ConvertToUrl( 'C:\Program Files(x86)\LibreOffice\News.txt')
    bas.MsgBox(url)
  Instantierer en UNO-tjeneste med ProcessServiceManager.
svc.CreateUnoService(servicename: str): uno
tjenestenavn: Et fullt kvalifisert tjenestenavn som com.sun.star.ui.dialogs.FilePicker eller com.sun.star.sheet.FunctionAccess.
    dsk = bas.CreateUnoService('com.sun.star.frame.Desktop')
  Returnerer en forekomst av en UNO-struktur av den angitte typen.
svc.CreateUnoStruct(unostructure: str): uno
unostructure: Et fullt kvalifisert strukturnavn som com.sun.star.beans.Property eller com.sun.star.util.DateTime.
    date_struct = CreateUnoStruct('com.sun.star.util.DateTime')
  Legger til en dato eller et tidsintervall til en gitt dato/tid flere ganger og returnerer den resulterende datoen.
svc.DateAdd(interval: str, number: num, date: datetime): datetime
intervall: Et strenguttrykk fra følgende tabell som spesifiserer dato eller tidsintervall.
tall: Et numerisk uttrykk som spesifiserer hvor ofte intervall-verdien vil bli lagt til når den er positiv eller trukket fra når den er negativ.
dato: En gitt datetime.datetime-verdi, intervall-verdien vil bli lagt til antall ganger til denne datetime.datetime-verdi.
En datetime.datetime-verdi.
    dt = datetime.datetime(2004, 1, 31)
    dt = bas.DateAdd("m", 1, dt)
    print(dt)
  Returnerer antall dato- eller tidsintervaller mellom to gitte dato-/tidsverdier.
svc.DateDiff(interval: str, date1: datetime, date2: datetime, firstdayofweek = 1, firstweekofyear = 1): int
intervall: Et strenguttrykk som spesifiserer datointervallet, som beskrevet i DateAdd-metoden ovenfor.
date1, date2: De to datetime.datetime-verdiene som skal sammenlignes.
Et tall.
    date1 = datetime.datetime(2005,1, 1)
    date2 = datetime.datetime(2005,12,31)
    diffDays = bas.DateDiff('d', date1, date2)
    print(diffDays)
  Funksjonen DatePart returnerer en spesifisert del av en dato.
svc.DatePart(interval: str, date: datetime, firstdayofweek = 1, firstweekofyear = 1): int
intervall: Et strenguttrykk som spesifiserer datointervallet, som beskrevet i DateAdd-metoden ovenfor.
dato: Datoen/klokkeslettet som resultatet beregnes fra.
firstdayofweek, firstweekofyear: valgfrie parametere som henholdsvis spesifiserer startdagen for en uke og startuken i et år, som beskrevet i DateDiff-metoden ovenfor.
Den utpakkede delen for en gitt dato/klokkeslett.
    print(bas.DatePart("ww", datetime.datetime(2005,12,31)
    print(bas.DatePart('q', datetime.datetime(1999,12,30)
  Beregner en datoverdi fra en datostreng.
svc.DateValue(date: str): datetime
Den beregnede datoen.
    dt = bas.DateValue("23-02-2011")
    print(dt)
  Konverterer et tall til en streng, og formaterer det deretter i henhold til formatet du angir.
svc.Format(expression: any, format = ''): str
    txt = bas.Format(6328.2, '##.##0.00')
    print(txt)
  Returnerer standardkonteksten til prosesstjenesten, hvis den eksisterer, ellers returnerer en nullreferanse.
GetDefaultContext er et alternativ til getComponentContext()-metoden tilgjengelig fra XSCRIPTCONTEXT global variabel eller fra uno.py-modulen.
svc.GetDefaultContext(): uno
Standard komponentkontekst brukes når tjenester instansieres via XMultiServiceFactory. Se kapittelet Professional UNO i utviklerveiledningen på api.libreoffice.org for mer informasjon.
    ctx = bas.GetDefaultContext()
  Returnerer en numerisk verdi som spesifiserer det grafiske brukergrensesnittet. Denne funksjonen er kun tilgjengelig for bakoverkompatibilitet med tidligere versjoner.
Se system()-metoden fra plattformen Python-modulen for å identifisere operativsystemet.
svc.GetGuiType(): int
    n = bas.GetGuiType()
  Returnerer den operativsystemavhengige katalogseparatoren som brukes til å spesifisere filstier.
Bruk os.pathsep fra os Python-modulen for å identifisere stiseparatoren.
svc.GetPathSeparator(): str
    sep = bas.GetPathSeparator()
  Returnerer antall systemmerker levert av operativsystemet. Du kan bruke denne funksjonen til å optimalisere visse prosesser. Bruk denne metoden for å beregne tid i millisekunder:
svc.GetSystemTicks(): int
    ticks_ini = bas.GetSystemTicks()
    time.sleep(1)
    ticks_end = bas.GetSystemTicks()
    bas.MsgBox("{} - {} = {}".format(ticks_end, ticks_ini,ticks_end - ticks_ini))
  Returnerer UNO-objektet som inneholder alle delte Basic-biblioteker og moduler.
Denne metoden er Python-ekvivalenten til GlobalScope.BasicLibraries i grunnleggende skript.
svc.GlobalScope.BasicLibraries(): uno
com.sun.star.script.XLibraryContainer
Følgende eksempel laster inn Gimmikk Basic-biblioteket hvis det ikke har blitt lastet inn ennå.
    libs = bas.GlobalScope.BasicLibraries()
    if not libs.isLibraryLoaded("Gimmicks"):
        libs.loadLibrary("Gimmicks")
  Returnerer UNO-objektet som inneholder alle delte dialogbiblioteker.
Denne metoden er Python-ekvivalenten til GlobalScope.DialogLibraries i Basic skript.
svc.GlobalScope.DialogLibraries(): uno
com.sun.star.comp.sfx2.DialogLibraryContainer
Følgende eksempelet viser en meldingsboks med navnene på alle tilgjengelige dialogbiblioteker.
    dlg_libs = bas.GlobalScope.DialogLibraries()
    lib_names = dlg_libs.getElementNames()
    bas.MsgBox("\n".join(lib_names))
  svc.InputBox(prompt: str, [title: str], [default: str], [xpostwips: int, ypostwips: int]): str
String
    txt = s.InputBox('Vennligst skriv inn en setning:', "Kjære bruker")
    s.MsgBox(txt, s.MB_ICONINFORMATION, "Bekreftelse av setning")
  For detaljert informasjon, se Innput/Output til Skjerm med Python på Wikien.
Viser en dialogboks som inneholder en melding og returnerer en valgfri verdi.
MB_xx-konstanter hjelper til med å spesifisere dialogtypen, antall og type knapper som skal vises, pluss ikontypen. Ved å legge til deres respektive verdier danner de bitmønstre, som definerer MsgBox-dialogutseendet.
bas.MsgBox(prompt: str, [buttons: int], [title: str])[: int]
Et valgfritt heltall som beskrevet i egenskapene IDxx ovenfor.
Returnerer gjeldende systemdato og -klokkeslett som et datetime.datetime Python-objekt.
svc.Now(): datetime
    bas.MsgBox(bas.Now(), bas.MB_OK, "Now")
  Returnerer en heltallsfargeverdi som består av røde, grønne og blå komponenter.
svc.RGB(red:int, green: int, blue: int): int
Integer
    YELLOW = bas.RGB(255,255,0)
  Inspiser Uno-objekter eller variabler.
svc.Xray(obj: any)
obj: En variabel eller UNO-objekt.
    bas.Xray(bas.StarDesktop)