LibreOffice 25.2 laguntza
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.
Begiratu Document zerbitzua LibreOffice dokumentuak kudeatzeko erabili daitezkeen metodo eta propietateei buruz gehiago ikasteko.
Base zerbitzua erabiltzeko, ScriptForge liburutegia kargatu edo inportatu behar da:
Base zerbitzuari hainbat modutan deitu dakioke. Beheko kode-zatiak UI zerbitzuaren CreateBaseDocument metodoa erabiltzen du Bzse fitxategi berria sortzeko.
Kontuan izan adibide guztietan oDoc objektua Base zerbitzuaren instantzia bat dela.
    Dim ui As Object, oDoc As Object
    Set ui = CreateScriptService("UI")
    Set oDoc = ui.CreateBaseDocument("C:\Documents\MyFile.odb")
  Base zerbitzua ere instantziatu daiteke lehendik dagoen Base fitxategi bat irekitzean, behean adierazten den moduan:
    Set oDoc = ui.OpenBaseDocument("C:\Documents\MyFile.odb")
  Base dokumentu bat dagoeneko irekita badago, posible da Base zerbitzuaren instantzia bat zuzenean sortzea:
    Dim oDoc As Object
    Set oDoc = CreateScriptService("SFDocuments.Document", "MyFile.odb")
  Goiko adibideak honela itzuli daitezke Python lengoaiara:
    from scriptforge import CreateScriptService
    ui = CreateScriptService("UI")
    doc = ui.CreateBaseDocument(r"C:\Documents\MyFile.odb")
  
    doc = ui.OpenBaseDocument(r"C:\Documents\MyFile.odb")
  
    doc = CreateScriptService("SFDocuments.Document", "MyFile.odb")
  Aurreko adibideko "SFDocuments." azpikatearen erabilera aukerakoa da.
| Base zerbitzuaren medodo-zerrenda | ||
|---|---|---|
Emandako inprimaki-dokumentua ixten du. True (egia) itzultzen du dokumentua ondo ixten bada.
The method CloseFormDocument is deprecated since LibreOffice 7.6. Although it is still available, it may be removed from the Base service in a future release. Use the CloseDocument method from the FormDocument service instead.
svc.CloseFormDocument(formdocument: str): bool
formdocument: Itxiko den FormDocument elementuaren izena, maiuskulak/minuskulak bereizten dituen kate gisa.
Inprimaki-dokumentuak karpetatan antolatuta badaude, beharrezkoa da karpetaren izena sartzea inprimaki-dokumentua irekitzeko, hurrengo adibidean ikusten den moduan:
    oDoc.CloseFormDocument("Folder1/myFormDocument")
  
    doc.CloseFormDocument('Folder1/myFormDocument')
  Base dokumentuko inprimaki-dokumentu guztien izen osoekin (bide-izena/izena) betetako matrize bat itzultzen du, zeron oinarritutako kate-matrize gisa.
svc.FormDocuments(): str[0..*]
Beheko kode-zatiak uneko Base dokumentuko inprimaki-dokumentuen izen guztiak inprimatzen ditu.
    Dim oDoc as Object, myForms as Object, formName as String
    Set oDoc = CreateScriptService("Document", ThisDataBaseDocument)
    Set myForms = oDoc.FormDocuments()
    For Each formName In myForms
        MsgBox formName
    Next formName
  
    bas = CreateScriptService("Basic")
    doc = CreateScriptService("Document", bas.ThisDataBaseDocument)
    myForms = doc.FormDocuments()
    for formName in myForms:
        bas.MsgBox(formName)
  To learn more about form documents, refer to ScriptForge.FormDocument service help page.
Emandako parametroaren arabera, metodoak honakoa itzuliko du:
Zeron oinarritutako matrize bat, inprimaki-dokumentu bateko inprimaki guztiak dituena (Form argumenturik ez badago)
Form argumentuan zehaztu den inprimakia ordezkatzen duen SFDocuments.Form objektu bat.
The method Forms is deprecated since LibreOffice 7.6. Although it is still available, it may be removed from the Base service in a future release. Use the Forms method from the FormDocument service instead.
svc.Forms(formdocument: str): str[0..*]
svc.Forms(formdocument: str, form: str = ''): svc
svc.Forms(formdocument: str, form: int): svc
formdocument: Baliozko inprimaki-dokumentu baten izena, maiuskulak/minuskulak kontuan hartzen dituen kate gisa.
form: Inprimaki-dokumentuan biltegiratutako inprimakiaren izena edo indize-zenbakia. Argumentu hori falta bada, inprimaki-dokumentuan erabilgarri dauden inprimaki guztien izenak dituen zerrenda bat itzuliko du metodoak.
Posible da indize-zenbakiak erabiltzea inprimakiei erreferentzia egiteko, baina hori inprimaki-dokumentuak inprimaki bakarra duenean soilik gomendatzen da. Bi inprimaki edo gehiago badaude, hobe da izena erabiltzea.
Beheko adibideko lehen lerroak "myFormDocument" inprimaki-dokumentuan dauden inprimaki guztien zerrenda bat itzultzen du. Bigarren lerroak "myForm" inprimakia ordezkatzen duen Form zerbitzuaren instantzia bat itzultzen du.
    Dim formsList as Object : formsList = oDoc.Forms("myFormDocument")
    Dim oForm as Object : oForm = oDoc.Forms("myFormDocument", "myForm")
  
    formsList = doc.Forms("myFormDocument")
    form = doc.Forms("myFormDocument", "myForm")
  Uneko Base dokumentuan definitutako edota biltegiratutako datu-basean SQL komandoak exekutatzea ahalbidetzen duen Database zerbitzuaren instantzia bat itzultzen du
svc.GetDatabase(user: str = '', password: str = ''): svc
user, password: Saioa hasteko aukerako parametroak, kate gisa. Bi parametro horien balio lehenetsia kate hutsa, "", da.
    Dim myDoc As Object, myDatabase As Object, ui As Object
    Set ui = CreateScriptService("UI")
    Set myDoc = ui.OpenBaseDocument("C:\Documents\myDb.odb")
    ' Erabiltzailea eta pasahitza behean ematen dira, beharrezkoak badira
    Set myDatabase = myDoc.GetDatabase()
    '   ... Exekutatu kontsultak, SQL instrukzioak ...
    myDatabase.CloseDatabase()
    myDoc.CloseDocument()
  
    ui = CreateScriptService("UI")
    myDoc = ui.OpenBaseDocument(r"C:\Documents\myDb.odb")
    myDatabase = myDoc.GetDatabase()
    #   ... Exekutatu kontsultak, SQL instrukzioak...
    myDatabase.CloseDatabase()
    myDoc.CloseDocument()
  True (egia) itzultzen du zehaztutako FormDocument irekita badago.
svc.IsLoaded(formdocument: str): bool
formdocument: Egiaztatuko den FormDocument elementuaren izena, maiuskulak/minuskulak bereizten dituen kate gisa.
    If Not oDoc.IsLoaded("myFormDocument") Then
        oDoc.OpenFormDocument("myFormDocument")
    End If
  
    if not doc.IsLoaded("myFormDocument"):
        doc.OpenFormDocument("myFormDocument")
  Opens the specified FormDocument either in normal or in design mode. This method returns a FormDocument service instance corresponding to the specified form document.
If the form document is already open, it is activated without changing its mode.
If the specified form document does not exist, then Nothing is returned.
svc.OpenFormDocument(formdocument: str, designmode: bool = False): svc
formDocument: Irekiko den FormDocument elementuaren izena, maiuskulak/minuskulak bereizten dituen kate gisa.
designmode: Argumentu hau True (egia) bada, FormDocument elementua diseinu-moduan irekiko da.
Inprimaki-dokumentu asko Base dokumentuaren erroan biltegiratzen dira eta haien izenak erabilita ireki daitezke, beheko adibidean ikusten den moduan:
    Dim oFormDoc As Object
    oFormDoc = oDoc.OpenFormDocument("myFormDocument")
  Inprimaki-dokumentuak karpetatan antolatuta badaude, beharrezkoa da karpetaren izena sartzea inprimaki-dokumentua irekitzeko, hurrengo adibidean ikusten den moduan:
    oFormDoc = oDoc.OpenFormDocument("myFolder/myFormDocument")
  
    formDoc = doc.OpenFormDocument("myFormDocument")
  
    formDoc = doc.OpenFormDocument("myFolder/myFormDocument")
  Zehaztutako kontsultaren 'Datu-ikuspegia' leihoa irekitzen du eta Datasheet zerbitzuaren instantzia bat itzultzen du.
Kontsulta modu normalean edo diseinu-moduan ireki daiteke.
Kontsulta jadanik irekita badago, bere 'Datu-ikuspegia' leihoa aktibatuko da.
Base dokumentua ixten bada, 'Datu-ikuspegia' leihoa ere itxiko da.
svc.OpenQuery(queryname: str, designmode: bool = False): obj
queryname: Jadanik badagoen kontsulta baten izena, maiuskulak/minuskulak bereizten dituen kate gisa.
designmode: Argumentu honetan True ezartzen bada, kontsulta diseinu-moduan irekiko da. Bestela, modu normalean irekiko da (Balio lehenetsia = False).
      oDoc.OpenQuery("MyQuery", DesignMode := True)
    
      doc.OpenQuery("MyQuery", designmode=True)
    Zehaztutako taularen 'Datu-ikuspegia' leihoa irekitzen du eta Datasheet zerbitzuaren instantzia bat itzultzen du.
Taula modu normalean edo diseinu-moduan ireki daiteke.
Taula jadanik irekita badago, bere 'Datu-ikuspegia' leihoa aktibatuko da.
Base dokumentua ixten bada, 'Datu-ikuspegia' leihoa ere itxiko da.
svc.OpenTable(tablename: str, designmode: bool = False): obj
tablename: Jadanik badagoen taula baten izena, maiuskulak/minuskulak bereizten dituen kate gisa.
designmode: Argumentu honetan True ezartzen bada, taula diseinu-moduan irekiko da. Bestela, modu normalean irekiko da (Balio lehenetsia = False).
      oDoc.OpenTable("MyTable", DesignMode = False)
    
      doc.OpenTable("MyTable", designmode=False)
    Metodo honen bidez, emandako inprimaki-dokumentuaren edukia inprimagailu lehenetsi batera edo SetPrinter() metodoak definitutako inprimagailura bidaltzen da.
True itzultzen du dokumentua ongi inprimatu bada.
The method PrintOut is deprecated since LibreOffice 7.6. Although it is still available, it may be removed from the Base service in a future release. Use the PrintOut method from the FormDocument service instead.
svc.PrintOut(opt formdocument: str, pages: str = "", copies: num = 1): bool
formdocument: Inprimaki-dokumentu baten baliozko izena, maiuskulak/minuskulak bereizten dituen kate gisa. Inprimaki-dokumentuak irekita egon behar du. Metodoak aktibatzen du.
pages: Inprimatuko diren orrialdeak, kate gisa, erabiltzaile-interfazean ezartzen den moduan. Adibidea: "1-4;10;15-18". Balio lehenetsia orrialde guztiak dira.
copies: Kopia kopurua. Balio lehenetsia 1 da.
    If oDoc.PrintOut("myForm", "1-4;10;15-18", Copies := 2) Then
        ' ...
    End If
  
    if doc.PrintOut('myForm', copies=3, pages='45-88'):
        # ...
  Definitu inprimaki-dokumentu baten inprimatze-aukerak. Inprimaki-dokumentuak irekita egon behar du.
True itzultzen du arrakasta duenean.
The method SetPrinter is deprecated since LibreOffice 7.6. Although it is still available, it may be removed from the Base service in a future release. Use the SetPrinter method from the Document service instead.
svc.SetPrinter(opt formdocument: str, opt printer: str, opt orientation: str, paperformat: str): bool
formdocument: Inprimaki-dokumentu baten baliozko izena, maiuskulak/minuskulak bereizten dituen kate gisa.
    oDoc.SetPrinter("myForm", Orientation := "PORTRAIT")
  
    doc.SetPrinter('myForm', paperformat='TABLOID')