Edukiak

# ScriptForge liburutegia

Komando hau erabiltzeko...

Ireki Tresnak - Makroak - LibreOffice Basic - Editatu eta aukeratu Aplikazio-makroak edukiontzia.

ScriptForge liburutegiek makro-script baliabideen bilduma zabala osatzen dute, LibreOffice aplikazioan Basic makroetatik edo Python scriptetik deitu daitezkeenak.

• Basic makroak erabiltzkeo, ScriptForge liburutegia kargatu behar da honako instrukzioa erabiliz:
GlobalScope.BasicLibraries.loadLibrary("ScriptForge")
• Python scriptak erabiltzeko, berriz, scriptforge modulu baten inportazioa behar dute:
from scriptforge import CreateScriptService

ScriptForge liburutegiaren bidez Python scriptak sortu eta exekutatzen ikasteko, irakurri Python scriptak sortzea ScriptForge bidez laguntza-orria.

## ScriptForge zerbitzuei deitzea

Deskribatutako moduluak eta klseak "zerbitzu" gisa deitzen dira erabiltzaile-scriptetatik. Zerbitzu horien eraikitzaile orokor bat diseinatu da xede horretarako, lengoaia bakoitzerako.

Dispose metodoa zerbitzu guztietan dago erabilgarri eta zerbitzua erabili ondoren baliabideak askatzeko deitu beharko litzateke:

##### Basic lengoaian

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

##### Python lengoaian

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

## ScriptForge liburutegiak eskaintzen dituen zerbitzuak

Kategoria | Zerbitzuak
--- | ---
LibreOffice Basic | Array Dictionary | Exception FileSystem | String TextStream
Dokumentuaren edukia | Base Calc Chart | Database Dataset Datasheet | Document FormDocument Writer
Erabiltzaile-interfazea | Dialog DialogControl Form | FormControl Menu PopupMenu | Toolbar ToolbarButton UI
Utilitateak | Basic L10N Platform | Region Services Session | Timer UnitTest

## ScriptForge.Array zerbitzua

Dimentsio bakarreko matrizeak (bektoreak) eta bi dimentsiotakoak manipulatzeko eta transformatzeko metodoen bilduma bat eskaintzen du. Besteak beste, ezartze-eragiketak, ordenatzea, testu-fitxategiak inportatzea eta esportatzea ahalbidetzen du.

Bi dimentsio baino gehiago dituzten matrizeak ezin dira erabili zerbitzu honetako metodoekin. Salbuespen bakarra CountDims metodoa da, horrek edozein dimentsio kopuru duten matrizeak onartzen baititu.

## SFDocuments.Base service

Base zerbitzuak LibreOffice Base dokumentuak kudeatu eta maneiatzeko hainbat metodo eta propietate eskaintzen ditu.

Zerbitzu hau LibreOffice dokumentuak, Base dokumentuak barne, maneiatzeko metodo orokorrak eskaintzen dituen Document zerbitzuarekin erlazionatuta dago. Base zerbitzu honek Document zerbitzua hedatzen du eta Base dokumentuetarako espezifikoak diren metodo gehiago eskaintzen ditu. Honakoak egin daitezke:

- Atzitu Base dokumentu batean gordetako datu-base bat.

- Ireki Base dokumentu batean biltegiratutako inprimaki-dokumentuak.

- Egiaztatu Base dokumentu bateko inprimaki-dokumentu bat kargatuta dagoen ala ez.

## ScriptForge.Basic zerbitzua

ScriptForge.Basic zerbitzuak Python testuinguruan exekutatu daitezkeen LibreOffice Basic metodoen bilduma bat proposatzen du. Basic zerbitzuko metodoek Basic funtzio integratuen sintaxi eta portaera bera dute.

## SFDocuments.Calc zerbitzua

SFDocuments liburutegi partekatuak LibreOffice dokumentuak kudeatu eta maneiatzea errazten duten metodo eta propietateak eskaintzen ditu.

SFDocuments.Calc zerbitzua SFDocuments.Document zerbitzuaren azpiklase bat da. Document zerbitzurako definitutako metodo eta propietate guztiak Calc zerbitzu-instantziaren bidez ere atzitu daitezke.

Calc zerbitzua honetarako da:

- Calc dokumentu bateko orriak kudeatzeko (kopiatu, txertatu, lekuz aldatu, etab.)

- Basic datu-egituren eta Calc barrutien arteko datuak trukatzeko

- Datu kantitate masiboak kopiatzeko eta inportatzeko

## SFDocuments.Chart zerbitzua

Chart zerbitzuak Calc dokumentuetako diagramak maneiatzeko propietate eta metodoen multzo bat eskaintzen du. Zerbitzu honekin honakoak egin daitezke:

- Calc dokumentuetako diagrama-objektuak atzitzea eta haien propietateak moldatzea.

- Calc dokumentu batean diagrama berriak sortu eta txertatzea.

- Diagramak irudi-fitxategi gisa esportatzea.

## SFDatabases.Database zerbitzua

Database zerbitzuak Base dokumentuetan kapsulatutako edo deskribatutako datu-baseak atzitzea ahalbidetzen du. Zerbitzu honek honakoak egiteko metodoak ditu:

- Datu-baseetako tauletako datuak atzitzeko.

- SELECT kontsultak exekutatzeko eta funtzio agregatuak gauzatzeko.

- SQL ekintza-instrukzioak exekutatzeko, adibidez INSERT, UPDATE, DELETE, etab.

## SFDatabases.Dataset service

The Dataset service is used to represent tabular data produced by a database. With this service it is possible to:

- Navigate through and access the data in a dataset.

- Update, insert and remove records in a dataset.

## SFDatabases.Datasheet service

Datasheet zerbitzuari esker, datu-base baten taulen edukiak eta kontsulten eta SQL instrukzioen emaitzak bistaratu daitezke, horretarako Base aplikazioaren 'Datu-ikuspegia' erabiliz. Horrez gain, zerbitzuak zera ahalbidetzen du:

- Datu-ikuspegiari menu pertsonalizatuak gehitzea.

- Datu-ikuspegiaren kokagune jakinetan dauden balioak atzitzea.

- Kurtsorea datu-ikuspegiaren gelaxka jakin batean kokatzea.

## SFDialogs.Dialog zerbitzua

The Dialog service contributes to the management of dialogs created with the Basic Dialog Editor or dialogs created on-the-fly. Each instance of the current class represents a single dialog box displayed to the user.

## SFDialogs.DialogControl zerbitzua

DialogControl zerbitzuak Basic-en elkarrizketa-koadroen editorearekin definitutako elkarrizketa-koadro baten kontrolak kudeatzen ditu. Uneko zerbitzuaren instantzia bakoitzak elkarrizketa-koadro bateko kontrol bakun bat ordezkatzen du.

Fokua elkarrizketa-koadroko kontrolek bistaratzen dituzten balioak eskuratzen eta ezartzen ezarrita dago. Formatua atzitzeko, XControlModel and XControlView propietateak erabiltzen dira.

Ikusi nola DialogControl.Value propietatearen eduki bakarra aldatzen den kontrol motaren arabera.

Arreta berezia eskaini zaie zuhaitz-kontrol motako kontrolei. Erraza da zuhaitz bat betetzea, bai adarrez adar, bat adar sorta oso bat aldi berean. Zuhaitz-kontrol bat estatikoki zein dinamikoki bete daiteke.

## ScriptForge.Dictionary zerbitzua

Hiztegi bat gako-elementu bikoteen bilduma bat da

- Gakoa maiuskulukak/minuskulak kontuan hartzen ez dituen kate bat da

- Elementuak edozein motatakoak izan daitezke

## SFDocuments.Document zerbitzua

SFDocuments liburutegiak LibreOffice dokumentuen kudeaketa eta manipulazioa errazteko metodoak eta propietateak eskaintzen ditu.

SFDocuments.Document zerbitzuak dokumentu mota guztietan (testu-dokumentuak, kalkulu-orriak, aurkezpenak, etab.) aplikagarriak diren metodoak eskaintzen ditu. Zenbait adibide:

- Dokumentuak irekitzea, ixtea eta gordetzea

- Dokumentuen propietate estandarrak edo pertsonalizatuak atzitzea

## ScriptForge.Exception zerbitzua

Exception zerbitzua Basic eta Python scripten kodea garbitzen laguntzeko eta Basic scripten erroreak maneiatzeko metodoen bilduma bat da.

Basic scriptetan, exekuzio-garaiko errore bat gertatzen denean, Exception zerbitzuko metodo eta propietateek errorearen testuingurua identifikatzen eta hura maneiatzen laguntzen dute.

## ScriptForge.FileSystem zerbitzua

FileSystem zerbitzuak fitxategiak eta karpetak maneiatzeko errutinak ditu. Ondoren, zerbitzu honek eskaintzen dituen zenbait eginbide erakusten dira:

- Fitxategi edo karpeta bat existitzen dela egiaztatzea.

- Karpetak eta fitxategiak sortzea eta ezabatzea.

- Fitxategiak irekitzeko/gordetzeko elkarrizketa-koadroak abiaraztea.

- Karpeta bateko fitxategien zerrenda atzitzea, etab.

## SFDocuments.Form zerbitzua

Form zerbitzuak LibreOffice dokumentuetako inprimakiak kudeatzeko metodoak eta propietateak eskaintzen ditu. Zerbitzu horrek Base, Calc eta Writer dokumentuetako inprimakiak onartzen ditu eta honakoak egiteko balio du:

- Ireki eta aktibatu inprimakiak.

- Nabigatu inprimakian erakutsitako erregistro batetik bestera.

- Atzitu inprimakian dauden kontrolak.

- Atzitu inprimaki guraso baten azpinprimakiak.

## SFDocuments.FormControl zerbitzua

FormControl zerbitzuak FormDocument bateko inprimaki, azpinprimaki edo taula-kontrol batenak diren kontrolak atzitzea ahalbidetzen du. FormControl zerbitzuaren instantzia bakoitzak inprimakiaren kontrol bakarrari egiten dio erreferentzia. Zerbitzu honi esker, erabiltzaileak honakoak egin ditzake:

- FormControl instantziak ordezkatzen duen kontrolaren propietateak eskuratu eta ezarri.

- Kontrolak bistaratzen duen uneko balioa atzitu.

- Fokua desiratutako kontrolean ezarri.

## SFDocuments.FormDocument service

The FormDocument service allows to access form documents stored in LibreOffice Base documents.

In a Base document, existing form documents can be viewed by selecting View - Forms in the user interface. Each form document may be composed of one or more forms, including the main form and other sub-forms.

## ScriptForge.L10N zerbitzua

Zerbitzu honek kateak itzultzeko balio duten metodoak eskaintzen ditu, eta inpaktu oso txikia du programaren iturburu-kodean. L10N zerbitzuak eskaintzen dituen metodoak hurrengoetarako erabili daitezke batez ere:

- Programako kate guztiak itzultzeko txantiloi gisa erabili daitezkeen POT fitxategiak sortzeko.

- Locale propietatearen bidez definitutako hizkuntzara itzuli diren kateak exekuzio-garaian eskuratzeko.

## SFWidgets.Menu zerbitzua

Menu zerbitzua LibreOffice dokumentu-leiho bateko menu-barraren menuak sortu eta kentzeko erabili daiteke. Menu-sarrera bakoitza script batekin edo UNO komando batekin lotu daiteke. Zerbitzuak honako kapazitateak eskaintzen ditu:

- Sarrera pertsonalizatuak, kontrol-laukiak, biratze-botoiak eta bereizleak dituzten menuen sorrera.

- Menu-elementuak ikonoekin eta aholkuekin apaintzea.

## ScriptForge.Platform zerbitzua

Platform zerbitzuak uneko exekuzio-inguruneari eta -testuinguruneari buruzko propietateen bilduma bat eskaintzen du, adibidez:

- Hardware-plataforma (arkitektura, PUZ zenbaketa, makina mota, etab.)

- Sistema eragilearen buruzko informazioa (mota, argitalpena, bertsioa, etab.)

- LibreOffice bertsioa

- Uneko erabiltzailearen izena

## SFWidgets.PopupMenu zerbitzua

PopupMenu zerbitzua gertaerei lotuta dauden edo scripten bidez exekutatzen diren laster-menuak sortzeko erabili daiteke. Zerbitzu horrek honako ezaugarriak eskaintzen ditu:

- Sarrera, kontrol-lauki eta aukera-botoi pertsonalizatuak dituzten laster-menuen sorrera.

- Menu-elementuen apainketa ikonoekin eta aholkuekin.

## ScriptForge.Region zerbitzua

Region zerbitzuak eskualde-ezarpenei lotutako programazio-kontuak maneiatzeko erabili daitezkeen propietateen bilduma bat eskaintzen du. Honakoak egiteko erabili daitezke:

- Eskualdearen araberako ezarpenak, adibidez zenbakien formatua, moneta eta denbora-zonak, atzitzea.

- Denbora-zonak bihurtzea eta udako ordutegiaren (DST) desplazamenduak kalkulatzea.

- Zenbakiak testu bihurtzea onartutako edozein hizkuntzatan.

## ScriptForge.Services zerbitzua

Servicesmoduluaren xede nagusia CreateScriptService metodora sartzeko aukera ematea da. Metodo hori erabiltzaile-scriptetatik deitu daiteke ScriptForge lan-markoaren bidez inplementatzen diren zerbitzuen instantziak sortzeko.

## ScriptForge.Session zerbitzua

Session zerbitzuak xede orokorreko zenbait metodo biltzen ditu, honakoei lotutakoak:

- instalazioko edo exekuzioko ingurunea

- UNO barne-behaketa

- kanpoko scriptak edo programak deitzea

## ScriptForge.String zerbitzua

String zerbitzuak kateak prozesatzeko metodoen bilduma bat eskaintzen du. Metodo horiek hurrengo helburuetarako erabili daitezke:

- Kateen edukiak balioztatzeko

- Kateei formatua emateko, haien edukiak moztuz, justifikatuz edo egokituz

- Adierazpen erregularrak erabiltzeko azpikateak bilatu eta ordezteko

- Kateetan hash algoritmoak aplikatzeko, etab.

## ScriptForge.TextStream zerbitzua

TextStream zerbitzua ScriptForge.FileSystem zerbitzuaren bidez ireki edo sortu diren fitxategiak sekuentzialki irakurtzeko edo idazteko erabiltzen da.

FileSystem zerbitzuaren OpenTextFile eta CreateTextFile metodoek TextStream zerbitzuaren instantzia bat itzultzen dute.

## ScriptForge.Timer zerbitzua

Timer zerbitzuak erabiltzaile-scriptak exekutatzeak zenbat denbora behar duen neurtzen du.

Timer batek iraupena neurtzen du. Honakoak egin daitezke zerbitzu horrekin:

- Abiarazi, denbora neurtzen noiz hasiko den adierazteko.

- Eten, denbora neurtzea pausatzeko.

- Berrekin, kronometroa eten ondoren denboraren igarotzea monitorizatzen jarraitzeko.

- Berrabiarazi, aurreko neurketak bertan behera uzteko eta Timer zerbitzua zerotik hasteko.

## SFWidgets.Toolbar service

The Toolbar service allows to retrieve information related to the toolbars available for a specific document window. With this service it is possible to:

- Toggle the visibility of specific toolbars.

- Access information about the buttons available in each toolbar.

## SFWidgets.ToolbarButton service

The ToolbarButton service allows to retrieve information related to the toolbar buttons available in a given toolbar. With this service it is possible to:

- Toggle the visibility of toolbar elements.

- Execute the command associated with a given toolbar button.

## ScriptForge.UI zerbitzua

UI zerbitzuak (erabiltzaile-interfazearenak) LibreOffice aplikazio osoa osatzen duten leiho anitzen identifikazioa eta manipulazioa sinplifikatzen du:

- Leihoen hautapena

- Leihoak lekuz eta tamainaz aldatzea

- Egoera-barraren ezarpenak

- Aurrerapen-barra mugikor bat bistaratzea

- Leiho berriak sortzea

- Azpiko "dokumentuak" atzitzea

## SFUnitTests.UnitTest zerbitzua

UnitTest zerbitzuak unitate-probak automatizatzeko lan-markoa eskaintzen du Basic lengoaiarako. Besteak beste, honakoak egin ditzake:

- proba-kasuak proba-suitetan eta unitate-probetan bildu.

- Unitate-proben artean konfiguraziorako eta itzaltzerako kodea partekatu.

- Proben emaitzak jakinarazi Console bidez.

## SFDocuments.Writer zerbitzua

SFDocuments liburutegi partekatuak LibreOffice dokumentuak kudeatu eta maneiatzea errazten duten metodo eta propietateak eskaintzen ditu.

Zenbait metodo dokumentu mota guztietarako generikoak dira eta SF_Document modulutik heredatutakoak dira, eta beste batzuk Writer dokumentuetarako espezifikoak dira eta SF_Writer moduluan definituta daude.

Oharra: Deskribatu ez diren beste ScriptForge moduluak barneko erabilerarako erreserbatuta daude. Haien edukia abisurik gabe aldatu daiteke.

Azpimarraren karaktere bat, "_", aurrizki gisa duten ScriptForge Basic errutina edo identifikatzaile guztiak barneko erabilerarako erreserbatuta daude. Ez dira Basic makroetan edo Python scriptetan erabili behar.