Innhald

# Tenesta ScriptForge.Platform

Tenesta Platform inneheld ei samling eigenskapar om gjeldande køyringsmiljø og samanheng, for eksempel:

- Maskinvareplattforma (arkitektur, tal på CPU-ar, maskintype osv.)

- Informasjon om operativsystemet (OS-type, utgjevnad, versjon osv.)

- LibreOffice-versjonen

- Det gjeldande brukarnamnet

Alle eigenskapane i tenesta Platform er skriveverna.

## Oppkall av teneste

Før du brukar tenesta Platform, må ScriptForge-biblioteket lastast inn eller importerast:

• Grunnleggjande makroar krev innlasting av biblioteket ScriptForge ved hjelp av denne setninga:
GlobalScope.BasicLibraries.loadLibrary("ScriptForge")
• Python-skript krev import frå scriptforge-modulen:
from scriptforge import CreateScriptService

Eksempla nedanfor i Basic og Python startar tenesta Plattform og får tilgang til eigenskapen Architecture.

##### I Basic

          GlobalScope.BasicLibraries.LoadLibrary("ScriptForge")
          Dim platform As Variant
          platform = CreateScriptService("Platform")
          MsgBox platform.Architecture

##### I Python

          from scriptforge import CreateScriptService
          svc = CreateScriptService("Platform")
          bas = CreateScriptService("Basic")
          bas.MsgBox(svc.Architecture)

## Eigenskapar

Namn | Skriveverna | Type | Beskriving
--- | --- | --- | ---
Architecture | Ja | String | Bit-arkitekturen for maskinvaren. Eksempel: «32bit» eller «64bit»
ComputerName | Ja | String | Datamaskinen sitt nettverksnamn.
CPUCount | Ja | Integer | Talet på sentralprosessorar (CPU-ar)
CurrentUser | Ja | String | Namnet på den gjeldande innlogga brukaren.
Extensions | Ja | Strengmatrise | Returnerer ei nullbasert matrise med strengar som inneheld dei interne ID-ane til alle installerte utvidingar.
FilterNames | Ja | Strengmatrise | Returnerer ei nullbasert usortert matrise med strengar som inneheld dei tilgjengelege import- og eksportfilternamna for dokument.
Fonts | Ja | Strengmatrise | Returnerer ei nullbasert matrise som inneheld namna på alle tilgjengelege skrifttypar.
FormatLocale | Ja | String | Returnerer den lokaliseringa som vert brukt for tal og datoar, som ein streng i formatet "la-CO" (language-COUNTRY).
Locale | Ja | String | Returnerer lokaliseringa som er sett i operativsystemet som ein streng i formatet "la-CO" (language-COUNTRY). Dette svarar til eigenskapen SystemLocale.
Machine | Ja | String | Maskintype. Eksempel er: «i386» eller «x86_64».
OfficeLocale | Ja | String | Returnerer den lokaliseringa som er brukt for brukargrensesnittet, som ein streng i formatet "la-CO" (language-COUNTRY).
OfficeVersion | Ja | String | Den aktuelle LibreOffice-versjonen, uttrykt som « LibreOffice w.x.y.z (The Document Foundation)». Eksempel: 'LibreOffice 7.4.1.2 (The Document Foundation, Debian and Ubuntu)'
OSName | Ja | String | Typen av operativsystem. Eksempel: «Darwin, Linux» eller «Windows».
OSPlatform | Ja | String | Ein enkelt streng som identifiserer den underliggjande plattforma med så mykje nyttig og lesbar informasjon som mogleg. Eksempel: «Linux-5.8.0-44-generic-x86_64-with-glibc2.32»
OSRelease | Ja | String | Versjon av operativsystemet. Eksempel: «5.8.0-44-generic»
OSVersion | Ja | String | Operativsystemet sitt byggjenummer eller versjon. Eksempel: «#50-Ubuntu SMP Tue Feb 9 06:29:41 UTC 2021»
Printers | Ja | String array | Lista over tilgjengelege skrivarar som ei nullbasert matrise. Standardskrivaren står øvst på lista (indeks = 0).
Processor | Ja | String | Det verkelege prosessornamnet. «Eksempel: 'amdk6». Denne eigenskapen kan returnere den same verdien som eigenskapen Machine.
PythonVersion | Ja | String | Returnerer versjonen på den Python-tolkaren som vert brukt som ein streng i formatet «Python major.minor.patchlevel» (f. eks.: "Python 3.9.7").
SystemLocale | Ja | String | Returnerer lokaliseringa som er sett i operativsystemet som ein streng i formatet "la-CO" (language-COUNTRY). Dette svarar til eigenskapen Locale.
UntitledPrefix | Ja | String | Returnerer prefikset som vert brukt for å gje namn til nyen dokument («Namnlaus» på norsk, «Untitled » på engelsk).
UserData | Ja | Dictionary | Returnerer ei ScriptForge.Dictionary-oppføring som inneheld nøkkelverdipar i høve til dei som er sett i Verktøy → Innstillingar → Brukardata.

Omfattande identifikasjon av namnet på operativsystemet er tilgjengeleg frå Calc-formelen INFO("system").

### Eksempel:

##### I Basic

Eksempla nedanfor i Basic og Python viser korleis eigenskapen Fonts (Skrifttypar) vert brukt til å skriva namna på alle tilgjengelege skrifttypar i det gjeldande Calc-arket. Byrjar med celle «A1»:

        Dim oDoc as Object
        Dim allFonts as Object
        Dim svcPlatform as Object
        Set oDoc = CreateScriptService("Calc")
        Set svcPlatform = CreateScriptService("Platform")
        allFonts = svcPlatform.Fonts
        oDoc.setArray("~.A1", allFonts)

Eksempelet nedanfor viser korleis du opprettar ein Calc-tabell med alle verdiane som er lagra i eigenskapen Brukardata, som er ein førekomst av tenesta Dictionary:

        Dim svcPlatform as Object, oUserData as Object, oDoc as Object
        Dim arrUserData As Object, currCell As String
        Set svcPlatform = CreateScriptService("Platform")
        oUserData = svcPlatform.UserData
        arrUserData = oUserData.ConvertToArray()
        Set oDoc = CreateScriptService("Calc", ThisComponent)
        oDoc.SetArray("~.A1", Array(Array("Key", "Value")))
        oDoc.SetArray("~.A2", arrUserData)

##### I Python

Eksempelet ovanfor kan skrivast slik i Python:

        from scriptforge import CreateScriptService
        bas = CreateScriptService("Basic")
        doc = CreateScriptService("Calc", bas.ThisComponent)
        svc_platform = CreateScriptService("Platform")
        all_fonts = svc_platform.Fonts
        doc.setArray("~.A1", all_fonts)

        from scriptforge import CreateScriptService
        bas = CreateScriptService("Basic")
        doc = CreateScriptService("Calc", bas.ThisComponent)
        svc_platform = CreateScriptService("Platform")
        user_data = svc_platform.UserData
        arr_user_data = [[key, user_data[key]] for key in user_data]
        doc.SetArray("~.A1", (("Key", "Value"),))
        doc.SetArray("~.A2", arr_user_data)

Alle ScriptForge Basic-rutinane og -identifikatorane som vert innleidde med understrek «_» er reserverte for internt bruk. Dei er ikkje meint brukte i Basic-makroar.

Liknande emne

Identifiserer operativsystemet

Plattform-informasjon med Calc-formelen INFO("system")

GetGuiType-funksjonen

Tools-bibliotek