Indhold
Indholdsfortegnelse 🔎︎

# Biblioteket ScriptForge

For at tilgå denne kommando...

Åbn Funktioner - Makroer - LibreOffice Basic - Rediger og vælg LibreOffice-makroer og -dialoger.

Bibliotekerne i ScriptForge opbygger en samling af makroscript-ressourcer, der kan udvides, til brug i LibreOffice, der skal kaldes fra Basic-makroer eller Python-scripts.

• Basic macros require to load ScriptForge library using the following statement:
GlobalScope.BasicLibraries.LoadLibrary("ScriptForge")
• Python scripts require an import from scriptforge module:
from scriptforge import CreateScriptService

For at lære mere om at oprette og køre Python-scripts med ScriptForge-biblioteket læser du hjælpesiden Oprettelse af Python-scripts med ScriptForge help page.

De beskrevne moduler og klasser kaldes fra bruger-scripts som "Tjenester". Til dette formål er der designet en generisk konstruktør af disse tjenester i hvert sprog:

          GlobalScope.BasicLibraries.LoadLibrary("ScriptForge")
          Set oSvc = CreateScriptService("servicename"[, arg0, arg1, ...])

          from scriptforge import CreateScriptService
          svc = CreateScriptService('servicename'[, arg0, arg1, ...])

Basic-biblioteket ScriptForge er tilgængeligt fra LibreOffice 7.1 og fremefter.
Python-modulet scriptforge er tilgængeligt fra LibreOffice 7.2 og fremefter.

## Tjenester leveret af biblioteket ScriptForge

Kategori | Tjenester |
LibreOffice Basic | Array Dictionary Exception | FileSystem String TextStream
Dokumentindhold | Base Calc | Database Document
Brugerflade | Dialog DialogControl UI | Form FormControl
Redskabsprogrammer | Basic L10N Platform | Services Session Timer

## ScriptForge.Array-tjeneste

Leverer en samling af metoder til at manipulere og transformere matrixer i en dimension (vektorer) og matrixer i to dimensioner (matrixer). De indeholder sæt-operationer, sortering, import til og eksport fra tekstfiler.

Matrixer med mere end to dimensioner kan ikke bruges med metoderne i denne tjeneste; den eneste udtagelse er metoden CountDims, der accepterer matrixer med et vilkårligt antal dimensioner.

## Tjenesten SFDocuments.Base

Tjenesten Base giver et antal metoder og egenskaber, der letter administration og håndtering af LibreOffice Base-dokumenter.

Denne tjeneste er nært relateret til tjenesten Document, som giver generiske metoder til at håndtere LibreOffice-dokumenter, herunder Base-dokumenter. Derfor udvider tjenesten Base tjenesten Document og giver yderligere metoder, der er specifikke for Base-dokumenter og lader brugerne:

- Få adgang til databasen, der er indeholdt i et Base-dokument.

- Åbne formular-dokumenter, der er gemt i et Base-dokument.

- Tjekke om et formulardokument fra et Base-dokument aktuelt er indlæst.

Denne tjeneste er tilgængelig fra LibreOffice 7.2 og fremefter.

## tjenesten ScriptForge.Basic

Tjenesten ScriptForge.Basic tilbyder en samling af LibreOffice Basic-metoder til kørsel i en Python-kontekst. Tjenesten Basics metoder reproducerer de indbyggede Basic-funktioners præcise syntaks og adfærd.

Denne tjeneste er tilgængelig fra LibreOffice 7.2 og fremefter.

## Tjenesten SFDocuments.Calc

Biblioteket SFDocuments giver et antal metoder og egenskaber, der letter administration og håndtering af LibreOffice Calc-dokumenter.

Nogle metoder er fælles for alle typer dokumenter og er nedarvet fra tjenesten Dokument, mens andre metoder er specifikke for modulet SF_Calc.

Modulet SF_Calc er fokuseret på:

- Håndteringsark i et Calc dokument (kopier, indsæt, flyt osv.)

- Dataudveksling mellem Basic data-strukturer og Calc-områder

- Kopiering og import af enorme datamængder amounts of data

## Tjenesten SFDatabases.Database

Tjenesten Database giver adgang til databaser enten indlejrede eller beskrevet i Base-dokumenter. Denne tjeneste leverer metoder til:

- Få adgang til data i databasetabeller

- Kør SELECT (udvælg) forespørgsler og foretag AGGREGER-funktioner.

- Kør SQL-handlingsudtryk såsom INSERT (indsæt), UPDATE (opdater), DELETE (slet) og så videre.

## Tjenesten SFDialogs. Dialog

Tjenesten Dialog bidrager til håndteringen af dialoger, der er oprettet med Basics Dialog-redigering. Hver forekomst af den aktuelle klasse repræsenter et enkelt dialogfelt, der vises for brugeren.

## Tjenesten SFDialogs.DialogControl

Tjenesten DialogControl håndterer de kontroller, der hører til en dialog, der er defineret med Basics Dialogredigering. Hver forekomst af den aktuelle tjeneste repræsenterer en enkelt kontrol indenfor et dialog felt.

Fokus sættes på at hente og sætte de værdier, der vises af dialogfeltets kontroller. Formatering er tilgængelig via egenskaberne XControlModel and XControlView.

Bemærk, at indholdet af den unikke egenskab DialogControl.Value (dialogkontrol.værdi) varierer efter kontroltypen.

Kontrolelementer ordnet i en træstruktur får særlig opmærksomhed. Det er let at fylde et træ med værdier, enten gren for gren eller med flere grene på én gang. Indsættelse af værdier i et "kontroltræ" kan gøres statisk eller dynamisk.

## Tjenesten ScriptForge.Ordbog

En ordbog er samling af nøgle-element-par

- Nøglen er en streng, der ikke skelner mellem Store og små bogstaver

- Elementer kan være af enhver type

## Tjenesten SFDocuments.Document

Biblioteket SFDocuments leverer metoder og egenskaber til at lette håndtering og manipulation af LibreOffice dokumenter.

Metoder, der kan anvendes på alle typer af dokumenter (tekstdokumenter, regneark, præsentationer og så videre) leveres af tjenesten SFDocuments.Document. Nogle eksempler er:

- Åbning, lukning og lagring af dokumenter

- Adgang til dokumenters standard- eller tilpassede egenskaber

## Tjenesten ScriptForge.Exception (Undtagelse)

Tjenesten Exception (undtagelse) er en samling af metoder, der hjælper med at debugge koder i Basic- og Python-sceripts og med håndtering af fejl i Basic-scripts.

I Basic-scripts hjælper tjenesten Exception (undtagelse) metoderne og egenskaberne med at identificere fejlens sammenhæng og tillader håndtering af den, når der forekommer en kørselsfejl.

## Tjenesten ScriptForge.FileSystem

Tjenesten FileSystem omfatter rutiner til håndtering af filer og mapper. Herefter er der nogle eksempler på funktionaliteter leveret af denne tjeneste:

- Verificer, om en fil eller en mappe eksisterer.

- Opret og slet mapper og filer.

- Start dialoger, der skal åbne/gemme filer.

- Tilgå listen over filer i en mappe og så videre.

## Tjenesten SFDocuments.Form

Tjenesten Form giver metoder og egenskaber til administration af formularer i LibreOffice-dokumenter. Denne tjeneste understøtter formularer i Base-, Calc- og Writer-dokumenter og tillader:

- Åbn og aktiver formularer.

- Naviger gennem posterne, der vises i formularen.

- Få adgang til kontrollerne i formularen.

- Få adgang til til en ophavsformulars afkomsformularer.

## Tjenesten SFDocuments.FormControl

Tjenesten FormControl (formularkontrol) giver adgang til de kontroller, der tilhører en formular, en underformular eller en tabel-kontrol i et FormDocument (formulardokument). Hver forekomst af tjenesten FormControl henviser til en enkelt kontrol i formularen. Denne tjeneste lader brugerne:

- Find og sæt kontrollens egenskaber repræsenteret af forekomsten af FormControl (formularkontrol).

- Tilgå den aktuelle værdi, der vises af kontrollen.

- Sæt fokus på den ønskede kontrol.

## Tjenesten ScriptForge.L10N

Denne tjeneste leverer et antal metoder i forbindelse med oversættelse af strenge med minimal indvirkning på programmets kildekode. Metoderne, der er leveret af tjenesten L10N kan hovedsagelig bruges til:

- Opret POT-filer, der kan bruges som skabeloner til oversættelse af alle strenge i programmet.

- Få oversatte strenge under kørslen til det sprog, der er defineret i egenskaben Locale.

## Tjenesten ScriptForge.Platform

Tjenesten Platform giver en samling af egenskaber vedrørerende det aktuelle kørselsmiljø og kontekst, såsom:

- Den fysiske platform (arkitektur, CPU antal, maskintype og så videre)

- Information og operativsystem (type af operativsystem, udgivelse, version og så videre)

- LibreOffice version

- Det aktuelle brugernavn

## Tjenesten ScriptForge.Services

Biblioteket ScriptForge er bygget på en udvidelig samling af såkaldte "Services".
Denne samling er implementeret som kategorier i Basic.biblioteker eller Python-moduler:

1. standard-biblioteket ScriptForge leveret med LibreOffice

2. et antal "tilknyttede" biblioteker også leveret med LibreOffice

3. enhver brugers/bidragsyders LibreOffice-udvidelse, der ønsker at passe ind i de samme rammer

## Tjenesten ScriptForge.Session

Tjenesten Session samler forskellige generelle metoder:

- installations- eller udførelses-miljøet

- UNO-introspektion

- kald af eksterne skripts eller programmer

## Tjenesten ScriptForge.String (streng)

Tjenesten String (streng) leverer en samling af metoder til streng-behandling. Disse metoder kan bruges til:

- Validere strengenes indhold

- Formatere strenge ved at trimme, justere eller ombryde deres indhold.

- Bruge regulære udtryk til at søge og erstatte understrenge

- Anvende hash-algoritmer på strenge og så videre.

## Tjenesten ScriptForge.TextStream (tekst-strøm)

Tjenesten TextStream bruges til fortløbende at læse og skrive i de filer, der er åbnet eller oprettet med tjenesten ScriptForge.FileSystem.

Metoderne OpenTextFile (åbn tekstfil) og CreateTextFile (opret tekstfil) fra tjenesten FileSystem (filsystem) returnerer en forekomst af tjenesten TextStream (tekst-strøm).

## Tjenesten ScriptForge.Timer (stopur)

Tjenesten Timer (stopur) måler den tid, det tager at køre brugerscripts.

En Timer Måler varigheder. Det kan være:

- Startet, for at vise, hvornår tidstagningen starter.

- Udsat, pause i målingen af den løbende tid.

- Genoptaget, for at fortsætte målingen af den løbende tid, efter at timeren har været stoppet.

- Genstartet, hvilket vil annullere de tidligere målinger starter Timeren fra nul.

## Tjenesten ScriptForge.UI (brugerflade)

Tjenesten UI (User Interface = brugerflade) forenkler identifikationen og håndteringen af de forskellige vinduer, der udgør hele LibreOffice-programet.

- Windows selection (vinduesudvælgelse)

- Flytning og størrelsesændring af vinduer

- Statuslinjens indstillinger

- Visning af en flydende fremdriftslinje

- Oprettelse af nye vinduer

- Adgang til de underliggende "dokumenter"

OBS: Andre ScriptForge ikke-beskrevne moduler er reserveret til internt brug. Deres indhold kan ændres uden varsel.

Alle ScriptForge Basic-rutiner eller identifikatorer, som indledes med et understregningstegn "_" er reserveret til internt brug. De er ikke beregnet til brug i Basic-makroer.