Βιβλιοθήκες ScriptForge

Περιεχόμενα
Δείκτης 🔎︎

# Η βιβλιοθήκη ScriptForge

Για να έχετε πρόσβαση σε αυτήν τη λειτουργία...

Ανοίξτε Εργαλεία - Μακροεντολές - LibreOffice Basic - Επεξεργασία και επιλέξτε τον περιέκτη Μακροεντολές LibreOffice.

Οι βιβλιοθήκες ScriptForge δημιουργούν μια επεκτάσιμη συλλογή πόρων δέσμης ενεργειών μακροεντολών για το LibreOffice που θα κληθεί από μακροεντολές Basic ή σενάρια Python.

• 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

To learn more about how to create and execute Python scripts using the ScriptForge library, read the Creating Python Scripts with ScriptForge help page.

Οι περιγραφόμενες μονάδες και κλάσεις καλούνται από τα σενάρια χρήστη ως "Υπηρεσίες". Ένας γενικός κατασκευαστής αυτών των υπηρεσιών έχει σχεδιαστεί για αυτόν τον σκοπό για κάθε γλώσσα:

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

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

Ηβιβλιοθήκη Basic ScriptForge είναι διαθέσιμη από το LibreOffice 7.1 και μετά. Η λειτουργική μονάδα
Python scriptforge είναι διαθέσιμη από το LibreOffice 7.2 και μετά.

## Υπηρεσίες που παρέχονται από τη βιβλιοθήκη ScriptForge

Κατηγορία | Υπηρεσίες |
LibreOffice Basic | Array Dictionary Exception | FileSystem String TextStream
Περιεχόμενο εγγράφου | Base Calc | Database Document
Διεπαφή χρήστη | Dialog DialogControl UI | Form FormControl
Βοηθητικά προγράμματα | Basic L10N Platform | Services Session Timer

## ScriptForge.Υπηρεσία Πίνακας

Παρέχει μια συλλογή μεθόδων για το χειρισμό και τον μετασχηματισμό πινάκων μιας διάστασης (διανύσματα) και πινάκων δύο διαστάσεων (μήτρες). Αυτό περιλαμβάνει λειτουργίες συνόλου, ταξινόμηση, εισαγωγή και εξαγωγή από αρχεία κειμένου.

Πίνακες με περισσότερες από δύο διαστάσεις δεν μπορούν να χρησιμοποιηθούν με τις μεθόδους αυτής της υπηρεσίας, η μόνη εξαίρεση είναι η μέθοδος CountDims που δέχεται Πίνακες με οποιονδήποτε αριθμό διαστάσεων.

## SFDocuments.Υπηρεσία Base

Η υπηρεσία Base παρέχει έναν αριθμό μεθόδων και ιδιοτήτων για τη διευκόλυνση της διαχείρισης και του χειρισμού των εγγράφων της Base του LibreOffice.

Αυτή η υπηρεσία σχετίζεται στενά με την υπηρεσία Document, η οποία παρέχει γενικές μεθόδους για το χειρισμό εγγράφων του LibreOffice, συμπεριλαμβανομένων των εγγράφων Base. Ως εκ τούτου, η υπηρεσία Base επεκτείνει την υπηρεσία Document και παρέχει πρόσθετες μεθόδους που είναι ειδικές για έγγραφα Base, επιτρέποντας στους χρήστες να:

- Αποκτήστε πρόσβαση στη βάση δεδομένων που περιέχεται σε ένα έγγραφο Base.

- Άνοιγμα εγγράφων φόρμας που είναι αποθηκευμένα σε ένα έγγραφο Base.

- Ελέγξτε εάν ένα έγγραφο φόρμας από ένα έγγραφο Base έχει φορτωθεί αυτήν τη στιγμή.

Αυτή η υπηρεσία είναι διαθέσιμη από το LibreOffice 7.2 και μετά.

## Υπηρεσία ScriptForge.Basic

Η υπηρεσία ScriptForge.Basic προτείνει μια συλλογή μεθόδων του LibreOffice Basic που θα εκτελεστούν σε περιβάλλον Python. Οι μέθοδοι υπηρεσίας Basic αναπαράγουν την ακριβή σύνταξη και συμπεριφορά των ενσωματωμένων συναρτήσεων Basic.

Αυτή η υπηρεσία είναι διαθέσιμη από το LibreOffice 7.2 και μετά.

## Υπηρεσία SFDocuments.Calc

The SFDocuments library provides a number of methods and properties to facilitate the management and handling of LibreOffice Calc documents.

Some methods are generic for all types of documents and are inherited from the Document service, whereas other methods are specific for the SF_Calc module.

The SF_Calc module is focused on:

- Χειρισμός φύλλων σε έγγραφο Calc (αντιγραφή, εισαγωγή, μετακίνηση κ.λπ.)

- Ανταλλαγή δεδομένων μεταξύ δομών δεδομένων Basic και περιοχών Calc

- Αντιγραφή και εισαγωγή μαζικών ποσοτήτων δεδομένων

## Υπηρεσία SFDatabases.Database

Η υπηρεσία Database (Βάση δεδομένων) παρέχει πρόσβαση σε βάσεις δεδομένων είτε ενσωματωμένες, είτε περιγράφονται στα έγγραφα Base. Αυτή η υπηρεσία παρέχει μεθόδους για:

- Λήψη πρόσβασης σε δεδομένα σε πίνακες βάσης δεδομένων.

- Εκτέλεση ερωτημάτων SELECT και εκτέλεση συγκεντρωτικών συναρτήσεων.

- Εκτέλεση δηλώσεων ενεργειών SQL όπως INSERT, UPDATE, DELETE κ.λπ.

## SFDialogs. Υπηρεσία Διάλογος

Η υπηρεσία Dialog συμβάλλει στη διαχείριση των διαλόγων που δημιουργούνται με την Επεξεργασία διαλόγου της Basic. Κάθε παρουσία της τρέχουσας κλάσης αντιπροσωπεύει ένα ενιαίο πλαίσιο διαλόγου που εμφανίζεται στον χρήστη.

## Υπηρεσία SFDialogs.DialogControl

Η υπηρεσία DialogControl διαχειρίζεται τα στοιχεία ελέγχου που ανήκουν σε ένα παράθυρο διαλόγου που ορίζεται με τη Basic Dialog Editor. Κάθε παρουσία της τρέχουσας υπηρεσίας αντιπροσωπεύει ένα μόνο στοιχείο ελέγχου μέσα σε ένα πλαίσιο διαλόγου.

Η εστίαση τίθεται στη λήψη και τη ρύθμιση των τιμών που εμφανίζονται από τα χειριστήρια του πλαισίου διαλόγου. Η μορφοποίηση είναι προσβάσιμη μέσω των ιδιοτήτων XControlModel και XControlView.

Σημειώστε ότι το μοναδικό περιεχόμενο της ιδιότητας DialogControl.Value ποικίλλει ανάλογα με τον τύπο ελέγχου.

Ιδιαίτερη προσοχή δίνεται στους ελέγχους τύπου δέντρου ελέγχου. Είναι εύκολο να συμπληρώσετε ένα δέντρο, είτε κλαδί προς κλαδί, είτε με ένα σύνολο κλαδιών ταυτόχρονα. Η συμπλήρωση ενός στοιχείου ελέγχου δέντρου μπορεί να εκτελεστεί στατικά ή δυναμικά.

## Υπηρεσία ScriptForge.Dictionary

Ένα λεξικό είναι μια συλλογή από ζεύγη κλειδιών-στοιχείων

- Το κλειδί είναι μια συμβολοσειρά χωρίς διάκριση πεζών-κεφαλαίων

- Τα στοιχεία μπορεί να είναι οποιουδήποτε τύπου

## Υπηρεσία SFDocuments.Document

Η βιβλιοθήκη SFDocuments παρέχει μεθόδους και ιδιότητες για τη διευκόλυνση της διαχείρισης και του χειρισμού των εγγράφων του LibreOffice.

Μέθοδοι που ισχύουν για όλους τους τύπους εγγράφων (Έγγραφα κειμένου, Φύλλα, Παρουσιάσεις, κ.λπ.) παρέχονται από την υπηρεσία SFDocuments.Document. Μερικά παραδείγματα είναι:

- Άνοιγμα, κλείσιμο και αποθήκευση εγγράφων

- Πρόσβαση σε τυπικές ή προσαρμοσμένες ιδιότητες εγγράφων

## Υπηρεσία ScriptForge.Exception

Η υπηρεσία Exception (εξαίρεση) είναι μια συλλογή μεθόδων που βοηθούν στην αποσφαλμάτωση κώδικα σε σενάρια Basic και Python και στον χειρισμό σφαλμάτων στα σενάρια Basic.

Στα Basic scripts (σενάρια Basic), όταν παρουσιάζεται ένα σφάλμα χρόνου εκτέλεσης, οι μέθοδοι και οι ιδιότητες της υπηρεσίαςException> βοηθούν στον εντοπισμό του περιβάλλοντος του σφάλματος και επιτρέπουν τον χειρισμό του.

## Υπηρεσία ScriptForge.FileSystem

Η υπηρεσία FileSystem περιλαμβάνει ρουτίνες για το χειρισμό αρχείων και φακέλων. Ακολουθούν ορισμένα παραδείγματα των δυνατοτήτων που παρέχονται από αυτήν την υπηρεσία:

- Επιβεβαίωση ύπαρξης αρχείου ή φακέλου.

- Δημιουργία και διαγραφή φακέλων και αρχείων.

- Εκκίνηση πλαισίων διαλόγου φια άνοιγμα/αποθήκευση αρχείων.

- Πρόσβαση στον κατάλογο αρχείων σε έναν φάκελο, κλπ.

## ΥπηρεσίαSFDocuments.Form

Η υπηρεσία Form παρέχει μεθόδους και ιδιότητες για τη διαχείριση φορμών σε έγγραφα του LibreOffice. Αυτή η υπηρεσία υποστηρίζει φόρμες σε έγγραφα Base, Calc και Writer και επιτρέπει:

- Άνοιγμα και ενεργοποίηση φορμών.

- Πλοήγηση στις εγγραφές που εμφανίζονται από τη φόρμα.

- Απόκτηση πρόσβασης στα στοιχεία ελέγχου μέσα στη φόρμα.

- Απόκτηση πρόσβασης σε υποφόρμες μιας γονικής φόρμας.

## SFDocuments.FormControl service

The FormControl service provides access to the controls that belong to a form, a subform or a table control of a FormDocument. Each instance of the FormControl service refers to a single control in the form. This service allows users to:

- Get and set the properties of the control represented by the FormControl instance.

- Access the current value displayed by the control.

- Set the focus on the desired control.

## ScriptForge.L10N service

This service provides a number of methods related to the translation of strings with minimal impact on the program's source code. The methods provided by the L10N service can be used mainly to:

- Create POT files that can be used as templates for translation of all strings in the program.

- Get translated strings at runtime for the language defined in the Locale property.

## ScriptForge.Platform service

The Platform service provides a collection of properties about the current execution environment and context, such as:

- The hardware platform (architecture, CPU count, machine type, etc)

- Operating system information (OS type, release, version, etc)

- The LibreOffice version

- The current user name

## ScriptForge.Services service

The ScriptForge library is built upon an extensible collection of so-called "Services".
This collection is implemented as categories of Basic libraries or Python modules:

1. the standard ScriptForge library shipped with LibreOffice

2. a number of "associated" libraries shipped with LibreOffice as well

3. any user/contributor LibreOffice extension wanting to fit into the same framework

## ScriptForge.Session service

The Session service gathers various general-purpose methods about:

- the installation or execution environment

- UNO introspection

- the invocation of external scripts or programs

## ScriptForge.String service

The String service provides a collection of methods for string processing. These methods can be used to:

- Validate the contents of strings

- Format strings by trimming, justifying or wrapping their contents

- Use regular expressions to search and replace substrings

- Apply hash algorithms on strings, etc.

## ScriptForge.TextStream service

The TextStream service is used to sequentially read from and write to files opened or created using the ScriptForge.FileSystem service.

The methods OpenTextFile and CreateTextFile from the FileSystem service return an instance of the TextStream service.

## ScriptForge.Timer service

The Timer service measures the amount of time it takes to run user scripts.

A Timer measures durations. It can be:

- Started, to indicate when to start measuring time.

- Suspended, to pause measuring running time.

- Resumed, to continue tracking running time after the Timer has been suspended.

- Restarted, which will cancel previous measurements and start the Timer at zero.

## ScriptForge.UI service

The UI (User Interface) service simplifies the identification and the manipulation of the different windows composing the whole LibreOffice application:

- Windows selection

- Windows moving and resizing

- Statusbar settings

- Display of a floating progress bar

- Creation of new windows

- Access to the underlying "documents"

Σημείωση: Άλλες μη περιγραφόμενες λειτουργικές μονάδες ScriptForge προορίζονται για εσωτερική χρήση. Το περιεχόμενό τους υπόκειται σε αλλαγές χωρίς προειδοποίηση.

Όλες οι ScriptForge ρουτίνες Basic ή αναγνωριστικά που έχουν το πρόθεμα χαρακτήρα υπογράμμισης "_" δεσμεύονται για εσωτερική χρήση. Δεν προορίζεται να χρησιμοποιηθούν σε μακροεντολές Basic.