ບໍລິການ ScriptForge.Session

ບໍລິການ Session ລວບລວມເມທອດອະເນກປະສົງຕ່າງໆກ່ຽວກັບ:

ການເອີ້ນໃຊ້ບໍລິການ

ກ່ອນທີ່ຈະໃຊ້ບໍລິການ Session, ໄລບຣາຣີ ScriptForge ຈະຕ້ອງຖືກໂຫຼດ ຫຼື ອິມພອດກ່ອນ:

ໄອຄອນ ບັນທຶກ

• ມາໂຄຣ Basic ຕ້ອງມີການໂຫຼດຄັງສຳນວນ ScriptForge ໂດຍໃຊ້ຄຳສັ່ງດັ່ງນີ້:
GlobalScope.BasicLibraries.loadLibrary("ScriptForge")

• ສະຄຣິບ Python ຕ້ອງມີການນຳເຂົ້າຈາກໂມດູນ scriptforge:
from scriptforge import CreateScriptService


ໃນ Basic

    GlobalScope.BasicLibraries.LoadLibrary("ScriptForge")
    Dim session As Variant
    session = CreateScriptService("Session")
  
ໃນ Python

    from scriptforge import CreateScriptService
    session = CreateScriptService("Session")
  

ຄ່າຄົງທີ່

ລຸ່ມນີ້ແມ່ນລາຍການຄ່າຄົງທີ່ທີ່ມີໄວ້ເພື່ອຊ່ວຍໃນການກຳນົດໄລບຣາຣີທີ່ມີສະຄຣິບ Basic ຫຼື Python ທີ່ຈະເອີ້ນໃຊ້. ໃຫ້ໃຊ້ໃນຮູບແບບ session.CONSTANT.

CONSTANT

ຄ່າ

ຈະຊອກຫາໄລບຣາຣີໄດ້ຢູ່ໃສ?

ນຳໃຊ້ໄດ້ກັບ

SCRIPTISEMBEDDED

"document"

ໃນເອກະສານ

Basic + Python

SCRIPTISAPPLICATION

"application"

ໃນໄລບຣາຣີທີ່ໃຊ້ຮ່ວມກັນໃດໆ

Basic

SCRIPTISPERSONAL

"user"

ໃນ ມາໂຄຣຂອງຂ້ອຍ

Python

SCRIPTISPERSOXT

"user:uno_packages"

ໃນສ່ວນຂະຫຍາຍທີ່ຕິດຕັ້ງສຳລັບຜູ້ໃຊ້ປັດຈຸບັນ

Python

SCRIPTISSHARED

"share"

ໃນ ມາໂຄຣຂອງແອັບພລິເຄຊັນ

Python

SCRIPTISSHAROXT

"share:uno_packages"

ໃນສ່ວນຂະຫຍາຍທີ່ຕິດຕັ້ງສຳລັບຜູ້ໃຊ້ທັງໝົດ

Python

SCRIPTISOXT

"uno_packages"

ໃນສ່ວນຂະຫຍາຍ ແຕ່ບໍ່ຮູ້ພະລາມິເຕີການຕິດຕັ້ງ

Python


ລາຍການເມທອດໃນບໍລິການ Session

ExecuteBasicScript
ExecuteCalcFunction
ExecutePythonScript
GetPDFExportOptions
HasUnoMethod

HasUnoProperty
OpenURLInBrowser
RunApplication
SendMail
SetPDFExportOptions

UnoMethods
UnoProperties
UnoObjectType
WebService


ໄອຄອນ ເຄັດລັບ

ເມທອດ Execute... ໃນບໍລິການ Session ເຮັດວຽກດັ່ງນີ້:
ອາຄິວເມນຈະຖືກສົ່ງຜ່ານດ້ວຍຄ່າ (passed by value). ການປ່ຽນແປງໃດໆທີ່ເຮັດໂດຍຟັງຊັນທີ່ຖືກເອີ້ນຕໍ່ອາຄິວເມນ ຈະບໍ່ມີຜົນຕໍ່ຄ່າເດີມໃນສະຄຣິບທີ່ເອີ້ນໃຊ້.
ຄ່າດ່ຽວ ຫຼື ອາເຣຂອງຄ່າຕ່າງໆ ຈະຖືກສົ່ງຄືນໃຫ້ສະຄຣິບທີ່ເອີ້ນໃຊ້.


ExecuteBasicScript

ປະມວນຜົນສະຄຣິບ BASIC ຕາມຊື່ ແລະ ຕຳແໜ່ງທີ່ລະບຸ, ແລະ ດຶງເອົາຜົນລັບ (ຖ້າມີ).

ຖ້າສະຄຣິບບໍ່ສົ່ງຄືນຄ່າໃດໆ, ເຊິ່ງເປັນກໍລະນີຂອງໂປຣຊີເຢີທີ່ກຳນົດດ້ວຍ Sub, ຄ່າທີ່ສົ່ງຄືນມາຈະແມ່ນ Empty.

ໄວຍາກອນ:

session.ExecuteBasicScript(scope: str, script: str, args: any[0..*]): any

ພາຣາມິເຕີ:

scope: ສະຕຣິງທີ່ລະບຸບ່ອນເກັບຮັກສາສະຄຣິບ. ສາມາດເປັນ "document" (ຄ່າຄົງທີ່ session.SCRIPTISEMBEDDED) ຫຼື "application" (ຄ່າຄົງທີ່ session.SCRIPTISAPPLICATION).

script: ສະຕຣິງທີ່ລະບຸສະຄຣິບທີ່ຈະເອີ້ນໃຊ້ໃນຮູບແບບ "library.module.method" ໂດຍຕົວພິມໃຫຍ່-ນ້ອຍມີຄວາມໝາຍຕ່າງກັນ (case-sensitive).

args: ອາຄິວເມນທີ່ຈະຖືກສົ່ງໃຫ້ສະຄຣິບທີ່ຖືກເອີ້ນ.

ຕົວຢ່າງ:

ພິຈາລະນາຟັງຊັນ Basic ຕໍ່ໄປນີ້ທີ່ມີຊື່ວ່າ DummyFunction ເຊິ່ງເກັບໄວ້ໃນ "My Macros" ໃນໄລບຣາຣີ "Standard" ພາຍໃນໂມດູນຊື່ "Module1".

ຟັງຊັນນີ້ຮັບຄ່າຈຳນວນຖ້ວນສອງຄ່າ v1 ແລະ v2 ແລະ ສົ່ງຄືນຜົນບວກຂອງຄ່າທັງໝົດທີ່ເລີ່ມຈາກ v1 ຈົນເຖິງ v2.


    Function DummyFunction(v1 as Integer, v2 as Integer) As Long
        Dim result as Long, i as Integer
        For i = v1 To v2
            result = result + i
        Next i
        DummyFunction = result
    End Function
  

ຕົວຢ່າງລຸ່ມນີ້ສະແດງວິທີການເອີ້ນໃຊ້ DummyFunction ຈາກພາຍໃນສະຄຣິບ Basic ແລະ Python.

ໃນ Basic

    Dim session : session = CreateScriptService("Session")
    Dim b_script as String, result as Long
    b_script = "Standard.Module1.DummyFunction"
    result = session.ExecuteBasicScript("application", b_script, 1, 10)
    MsgBox result ' 55
  
ໃນ Python

    session = CreateScriptService("Session")
    bas = CreateScriptService("Basic")
    b_script = 'Standard.Module1.DummyFunction'
    result = session.ExecuteBasicScript('application', b_script, 1, 10)
    bas.MsgBox(result) # 55
  

ExecuteCalcFunction

ປະມວນຜົນຟັງຊັນ Calc ໂດຍໃຊ້ຊື່ພາສາອັງກິດ ແລະ ອີງຕາມອາຄິວເມນທີ່ໃຫ້ມາ.
ຖ້າອາຄິວເມນເປັນອາເຣ, ຟັງຊັນຈະຖືກປະມວນຜົນເປັນ ສູດອາເຣ.

ໄວຍາກອນ:

session.ExecuteCalcFunction(calcfunction: str, args: any[0..*]): any

ພາຣາມິເຕີ:

calcfunction: ຊື່ຂອງຟັງຊັນ Calc ທີ່ຈະເອີ້ນໃຊ້, ເປັນພາສາອັງກິດ.

args: The arguments to be passed to the called Calc function. Each argument must be either a string, a numeric value or an array of arrays combining those types.

ຕົວຢ່າງ:

ໃນ Basic

    session.ExecuteCalcFunction("AVERAGE", 1, 5, 3, 7) ' 4
    session.ExecuteCalcFunction("ABS", Array(Array(-1, 2, 3), Array(4, -5, 6), Array(7, 8, -9)))(2)(2) ' 9
    session.ExecuteCalcFunction("LN", -3)
    ' Generates an error.
  
ໃນ Python

    session.ExecuteCalcFunction("AVERAGE", 1, 5, 3, 7) # 4
    session.ExecuteCalcFunction("ABS", ((-1, 2, 3), (4, -5, 6), (7, 8, -9)))[2][2] # 9
    session.ExecuteCalcFunction("LN", -3)
  

ExecutePythonScript

ປະມວນຜົນສະຄຣິບ Python ຕາມຕຳແໜ່ງ ແລະ ຊື່ທີ່ລະບຸ, ແລະ ດຶງເອົາຜົນລັບ (ຖ້າມີ). ຜົນລັບອາດເປັນຄ່າດ່ຽວ ຫຼື ອາເຣຂອງຄ່າຕ່າງໆ.

ຖ້າບໍ່ພົບສະຄຣິບ ຫຼື ສະຄຣິບບໍ່ສົ່ງຄືນຄ່າໃດໆ, ຄ່າທີ່ສົ່ງຄືນມາຈະແມ່ນ Empty.

ໂຄງຮ່າງການຂຽນສະຄຣິບ API ຂອງ LibreOffice ຮອງຮັບການຣັນສະຄຣິບຂ້າມພາສາລະຫວ່າງ Python ແລະ Basic ຫຼື ພາສາອື່ນໆທີ່ຮອງຮັບ. ອາຄິວເມນ (Arguments) ສາມາດສົ່ງໄປມາໄດ້ລະຫວ່າງການເອີ້ນໃຊ້, ໂດຍມີເງື່ອນໄຂວ່າ ຕ້ອງເປັນປະເພດຂໍ້ມູນພື້ນຖານທີ່ທັງສອງພາສາຮູ້ຈັກ ແລະ ໂຄງຮ່າງການຂຽນສະຄຣິບຈະແປງພວກມັນໃຫ້ຢ່າງເໝາະສົມ.

ໄວຍາກອນ:

session.ExecutePythonScript(scope: str, script: str, args: any[0..*]): any

ພາຣາມິເຕີ:

scope: ໜຶ່ງໃນຄ່າຄົງທີ່ທີ່ນຳໃຊ້ໄດ້ຕາມທີ່ລະບຸໄວ້ ຂ້າງເທິງ. ຄ່າເລີ່ມຕົ້ນແມ່ນ session.SCRIPTISSHARED.

script: ສາມາດເປັນ "library/module.py$method" ຫຼື "module.py$method" ຫຼື "myExtension.oxt|myScript|module.py$method" ໂດຍເປັນສະຕຣິງທີ່ຕົວພິມໃຫຍ່-ນ້ອຍມີຄວາມໝາຍຕ່າງກັນ (case-sensitive).

args: ອາຄິວເມນທີ່ຈະຖືກສົ່ງໃຫ້ສະຄຣິບທີ່ຖືກເອີ້ນ.

ຕົວຢ່າງ:

ພິຈາລະນາຟັງຊັນ Python odd_integers ທີ່ກຳນົດໄວ້ລຸ່ມນີ້ ເຊິ່ງສ້າງລາຍການທີ່ມີຄ່າຈຳນວນຄີກລະຫວ່າງ v1 ແລະ v2. ສົມມຸດວ່າຟັງຊັນນີ້ຖືກເກັບໄວ້ໃນໄຟລ໌ຊື່ my_macros.py ໃນໂຟນເດີສະຄຣິບຂອງຜູ້ໃຊ້.


    def odd_integers(v1, v2):
        odd_list = [v for v in range(v1, v2 + 1) if v % 2 != 0]
        return odd_list
  
ໄອຄອນ ເຄັດລັບ

ອ່ານໜ້າການຊ່ວຍເຫຼືອ ການຈັດລະບຽບ ແລະ ຕຳແໜ່ງຂອງສະຄຣິບ Python ເພື່ອຮຽນຮູ້ເພີ່ມເຕີມກ່ຽວກັບບ່ອນທີ່ສາມາດເກັບສະຄຣິບ Python ໄດ້.


ຕົວຢ່າງຕໍ່ໄປນີ້ສະແດງວິທີການເອີ້ນໃຊ້ຟັງຊັນ odd_integers ຈາກພາຍໃນສະຄຣິບ Basic ແລະ Python.

ໃນ Basic

    Dim script as String, session as Object
    script = "my_macros.py$odd_integers"
    session = CreateScriptService("Session")
    Dim result as Variant
    result = session.ExecutePythonScript(session.SCRIPTISPERSONAL, script, 1, 9)
    MsgBox SF_String.Represent(result)
  
ໃນ Python

    session = CreateScriptService("Session")
    script = "my_macros.py$odd_integers"
    result = session.ExecutePythonScript(session.SCRIPTISPERSONAL, script, 1, 9)
    bas.MsgBox(repr(result))
  

GetPDFExportOptions

ສົ່ງຄືນການຕັ້ງຄ່າການສົ່ງອອກ PDF ປັດຈຸບັນທີ່ກຳນົດໄວ້ໃນໜ້າຕ່າງ PDF Options, ເຊິ່ງສາມາດເຂົ້າເຖິງໄດ້ໂດຍການເລືອກ File - Export as - Export as PDF.

ຕົວເລືອກການສົ່ງອອກທີ່ຕັ້ງໄວ້ໃນໜ້າຕ່າງ PDF Options ຈະຖືກເກັບໄວ້ເພື່ອໃຊ້ໃນຄັ້ງຕໍ່ໄປ. ດັ່ງນັ້ນ GetPDFExportOptions ຈຶ່ງສົ່ງຄືນການຕັ້ງຄ່າທີ່ກຳນົດໄວ້ໃນປັດຈຸບັນ. ນອກຈາກນັ້ນ, ໃຫ້ໃຊ້ SetPDFExportOptions ເພື່ອປ່ຽນຕົວເລືອກການສົ່ງອອກ PDF ປັດຈຸບັນ.

ເມທອດນີ້ສົ່ງຄືນອັອບເຈັກ Dictionary ເຊິ່ງແຕ່ລະ key ແທນຕົວເລືອກການສົ່ງອອກ ແລະ value ທີ່ກ່ຽວຂ້ອງແມ່ນການຕັ້ງຄ່າການສົ່ງອອກ PDF ປັດຈຸບັນ.

ໄອຄອນ ເຄັດລັບ

ອ່ານ ໜ້າວິກິການສົ່ງອອກ PDF ເພື່ອຮຽນຮູ້ເພີ່ມເຕີມກ່ຽວກັບຕົວເລືອກທັງໝົດທີ່ມີ.


ໄວຍາກອນ:

session.GetPDFExportOptions(): obj

ຕົວຢ່າງ:

ໃນ Basic

    Dim expSettings As Object, msg As String, key As String, optLabels As Variant
    expSettings = session.GetPDFExportOptions()
    optLabels = expSettings.Keys
    For Each key in optLabels
        msg = msg + key & ": " & expSettings.Item(key) & Chr(10)
    Next key
    MsgBox msg
    ' Zoom: 100
    ' Changes: 4
    ' Quality: 90
    ' ...
  
ໄອຄອນ ບັນທຶກ

ເມທອດນີ້ໃຊ້ໄດ້ສະເພາະກັບສະຄຣິບ Basic ເທົ່ານັ້ນ.


HasUnoMethod

ສົ່ງຄືນ True ຖ້າອັອບເຈັກ UNO ມີເມທອດທີ່ລະບຸ. ສົ່ງຄືນ False ເມື່ອບໍ່ພົບເມທອດ ຫຼື ເມື່ອອາຄິວເມນບໍ່ຖືກຕ້ອງ.

ໄວຍາກອນ:

session.HasUnoMethod(unoobject: uno, methodname: str): bool

ພາຣາມິເຕີ:

unoobject: ອັອບເຈັກທີ່ຈະກວດສອບ.

methodname: ເມທອດໃນຮູບແບບສະຕຣິງທີ່ຕົວພິມໃຫຍ່-ນ້ອຍມີຄວາມໝາຍຕ່າງກັນ (case-sensitive)

ຕົວຢ່າງ:

ໃນ Basic

    Dim a As Variant
    a = CreateUnoService("com.sun.star.sheet.FunctionAccess")
    MsgBox session.HasUnoMethod(a, "callFunction") ' True
  
ໃນ Python

    bas = CreateScriptService("Basic")
    a = bas.CreateUnoService("com.sun.star.sheet.FunctionAccess")
    result = session.HasUnoMethod(a, "callFunction")
    bas.MsgBox(result) # True
  

HasUnoProperty

ສົ່ງຄືນ True ຖ້າອັອບເຈັກ UNO ມີຄຸນສົມບັດ (property) ທີ່ລະບຸ. ສົ່ງຄືນ False ເມື່ອບໍ່ພົບຄຸນສົມບັດ ຫຼື ເມື່ອອາຄິວເມນບໍ່ຖືກຕ້ອງ.

ໄວຍາກອນ:

session.HasUnoProperty(unoobject: uno, propertyname: str): bool

ພາຣາມິເຕີ:

unoobject: ອັອບເຈັກທີ່ຈະກວດສອບ.

propertyname: ຄຸນສົມບັດໃນຮູບແບບສະຕຣິງທີ່ຕົວພິມໃຫຍ່-ນ້ອຍມີຄວາມໝາຍຕ່າງກັນ (case-sensitive)

ຕົວຢ່າງ:

ໃນ Basic

    Dim svc As Variant
    svc = CreateUnoService("com.sun.star.sheet.FunctionAccess")
    MsgBox session.HasUnoProperty(svc, "Wildcards")
  
ໃນ Python

    bas = CreateScriptService("Basic")
    a = bas.CreateUnoService("com.sun.star.sheet.FunctionAccess")
    result = session.HasUnoProperty(a, "Wildcards")
    bas.MsgBox(result) # True
  

OpenURLInBrowser

ເປີດ Uniform Resource Locator (URL) ໃນບຣາວເຊີເລີ່ມຕົ້ນ.

ໄວຍາກອນ:

session.OpenURLInBrowser(url: str)

ພາຣາມິເຕີ:

url: URL ທີ່ຈະເປີດ.

ຕົວຢ່າງ:


    ' Basic
    session.OpenURLInBrowser("help.libreoffice.org/")
  

    # Python
    session.OpenURLInBrowser("help.libreoffice.org/")
  

RunApplication

ປະມວນຜົນຄຳສັ່ງລະບົບໃດໜຶ່ງ ແລະ ສົ່ງຄືນ True ຖ້າເລີ່ມເຮັດວຽກສຳເລັດ.

ໄວຍາກອນ:

session.RunApplication(command: str, parameters: str): bool

ພາຣາມິເຕີ:

command: ຄຳສັ່ງທີ່ຈະປະມວນຜົນ. ນີ້ອາດຈະເປັນໄຟລ໌ທີ່ສາມາດເປີດໄດ້ (executable) ຫຼື ເອກະສານທີ່ລົງທະບຽນກັບແອັບພລິເຄຊັນເພື່ອໃຫ້ລະບົບຮູ້ວ່າຈະເປີດແອັບພລິເຄຊັນໃດສຳລັບເອກະສານນັ້ນ. ເມທອດນີ້ຍັງສາມາດເລີ່ມໄຟລ໌ .bat ຫຼື shell scripts ໄດ້ອີກດ້ວຍ. ຄຳສັ່ງຕ້ອງຖືກລະບຸໃນຮູບແບບ SF_FileSystem.FileNaming ປັດຈຸບັນ.

parameters: ລາຍການພະລາມິເຕີທີ່ຂັ້ນດ້ວຍຊ່ອງວ່າງໃນຮູບແບບສະຕຣິງດ່ຽວ. ເມທອດນີ້ຈະບໍ່ກວດສອບຄວາມຖືກຕ້ອງຂອງພະລາມິເຕີ, ແຕ່ຈະສົ່ງພວກມັນໄປຫາຄຳສັ່ງທີ່ລະບຸໂດຍກົງ.

ຕົວຢ່າງ:

ໃນ Basic

    session.RunApplication("Notepad.exe")
    session.RunApplication("C:\\myFolder\\myDocument.odt")
    session.RunApplication("kate", "/home/user/install.txt") ' GNU/Linux
  
ໃນ Python

    session.RunApplication("Notepad.exe")
    session.RunApplication(r"C:\\myFolder\\myDocument.odt")
    session.RunApplication("kate", "/home/user/install.txt") # GNU/Linux
  

SendMail

ສົ່ງຂໍ້ຄວາມ - ພ້ອມໄຟລ໌ຄັດຕິດ (ຖ້າມີ) - ໄປຫາຜູ້ຮັບຈາກໂປຣແກຣມອີເມລຂອງຜູ້ໃຊ້. ຂໍ້ຄວາມອາດຈະຖືກແກ້ໄຂໂດຍຜູ້ໃຊ້ກ່ອນການສົ່ງ ຫຼື ສົ່ງທັນທີ.

ໄວຍາກອນ:

session.SendMail(recipient: str, cc: str = '', bcc: str = '', subject: str = '', body: str = '', filenames: str = '', editmessage: bool = True)

ພາຣາມິເຕີ:

recipient: ທີ່ຢູ່ອີເມລ (ຜູ້ຮັບໃນຊ່ອງ "To").

cc: ລາຍການທີ່ຢູ່ອີເມລທີ່ຂັ້ນດ້ວຍຈຸດ (ຜູ້ຮັບໃນຊ່ອງ "carbon copy").

bcc: ລາຍການທີ່ຢູ່ອີເມລທີ່ຂັ້ນດ້ວຍຈຸດ (ຜູ້ຮັບໃນຊ່ອງ "blind carbon copy").

subject: ຫົວຂໍ້ຂອງຂໍ້ຄວາມ.

body: ເນື້ອໃນຂອງຂໍ້ຄວາມໃນຮູບແບບຂໍ້ຄວາມທຳມະດາ.

filenames: ລາຍການຊື່ໄຟລ໌ທີ່ຂັ້ນດ້ວຍຈຸດ. ຊື່ໄຟລ໌ແຕ່ລະອັນຕ້ອງຖືກຕ້ອງຕາມຮູບແບບ SF_FileSystem.FileNaming.

editmessage: ເມື່ອເປັນ True (ຄ່າເລີ່ມຕົ້ນ), ຂໍ້ຄວາມຈະຖືກແກ້ໄຂກ່ອນການສົ່ງ.

ຕົວຢ່າງ:

ໃນ Basic

    session.SendMail("someone@example.com" _
        , Cc := "b@other.fr, c@other.be" _
        , FileNames := "C:\myFile1.txt, C:\myFile2.txt")
  
ໃນ Python

    session.SendMail("someone@example.com",
                     cc="john@other.fr, mary@other.be"
                     filenames=r"C:\myFile1.txt, C:\myFile2.txt")
  

SetPDFExportOptions

ແກ້ໄຂການຕັ້ງຄ່າການສົ່ງອອກ PDF ທີ່ກຳນົດໄວ້ໃນໜ້າຕ່າງ PDF Options, ເຊິ່ງສາມາດເຂົ້າເຖິງໄດ້ໂດຍການເລືອກ File - Export as - Export as PDF.

ການເອີ້ນໃຊ້ເມທອດນີ້ຈະປ່ຽນຄ່າທີ່ຕັ້ງໄວ້ແທ້ໆໃນໜ້າຕ່າງ PDF Options, ເຊິ່ງຖືກນຳໃຊ້ໂດຍເມທອດ ExportAsPDF ຈາກບໍລິການ Document.

ເມທອດນີ້ສົ່ງຄືນ True ເມື່ອສຳເລັດ.

ໄອຄອນ ເຄັດລັບ

ອ່ານ ໜ້າວິກິການສົ່ງອອກ PDF ເພື່ອຮຽນຮູ້ເພີ່ມເຕີມກ່ຽວກັບຕົວເລືອກທັງໝົດທີ່ມີ.


ໄວຍາກອນ:

session.SetPDFExportOptions(pdfoptions: obj): bool

ພາຣາມິເຕີ:

pdfoptions: ອັອບເຈັກ Dictionary ທີ່ກຳນົດການຕັ້ງຄ່າການສົ່ງອອກ PDF ທີ່ຈະປ່ຽນແປງ. ແຕ່ລະຄູ່ key-value ແທນຕົວເລືອກການສົ່ງອອກ ແລະ ຄ່າທີ່ຈະຖືກຕັ້ງໃນໜ້າຕ່າງ.

ຕົວຢ່າງ:

ໃນ Basic

ຕົວຢ່າງຕໍ່ໄປນີ້ແມ່ນການປ່ຽນຄວາມລະອຽດສູງສຸດຂອງຮູບພາບເປັນ 150 dpi ແລະ ສົ່ງອອກເອກະສານປັດຈຸບັນເປັນໄຟລ໌ PDF.


    Dim newSettings As Object, oDoc As Object
    Set oDoc = CreateScriptService("Document")
    Set newSettings = CreateScriptService("Dictionary")
    newSettings.Add("ReduceImageResolution", True)
    newSettings.Add("MaxImageResolution", 150)
    session.SetPDFExportOptions(newSettings)
    oDoc.ExportAsPDF("C:\Documents\myFile.pdf", Overwrite := True)
  
ໄອຄອນ ບັນທຶກ

ເມທອດນີ້ໃຊ້ໄດ້ສະເພາະກັບສະຄຣິບ Basic ເທົ່ານັ້ນ.


UnoMethods

ສົ່ງຄືນລາຍການເມທອດທີ່ສາມາດເອີ້ນໃຊ້ໄດ້ຈາກອັອບເຈັກ UNO. ລາຍການແມ່ນອາເຣຂອງສະຕຣິງທີ່ເລີ່ມຈາກສູນ ແລະ ອາດຈະວ່າງເປົ່າ.

ໄວຍາກອນ:

session.UnoMethods(unoobject: uno): str[0..*]

ພາຣາມິເຕີ:

unoobject: ອັອບເຈັກທີ່ຈະກວດສອບ.

ຕົວຢ່າງ:

ໃນ Basic

    Dim svc : svc = CreateUnoService("com.sun.star.sheet.FunctionAccess")
    Dim methods : methods = session.UnoMethods(svc)
    Dim msg as String
    For Each m in methods
        msg = msg & m & Chr(13)
    Next m
    MsgBox msg
  
ໃນ Python

    bas = CreateScriptService("Basic")
    a = bas.CreateUnoService("com.sun.star.sheet.FunctionAccess")
    methods = session.UnoMethods(a)
    msg = "\n".join(methods)
    bas.MsgBox(msg)
  

UnoProperties

ສົ່ງຄືນລາຍການຄຸນສົມບັດ (properties) ຂອງອັອບເຈັກ UNO. ລາຍການແມ່ນອາເຣຂອງສະຕຣິງທີ່ເລີ່ມຈາກສູນ ແລະ ອາດຈະວ່າງເປົ່າ.

ໄວຍາກອນ:

session.UnoProperties(unoobject: uno): str[0..*]

ພາຣາມິເຕີ:

unoobject: ອັອບເຈັກທີ່ຈະກວດສອບ.

ຕົວຢ່າງ:

ໃນ Basic

    Dim svc As Variant
    svc = CreateUnoService("com.sun.star.sheet.FunctionAccess")
    MsgBox SF_Array.Contains(session.UnoProperties(svc), "Wildcards") ' True
  
ໃນ Python

    bas = CreateScriptService("Basic")
    svc = bas.CreateUnoService("com.sun.star.sheet.FunctionAccess")
    properties = session.UnoProperties(a)
    b = "Wildcards" in properties
    bas.MsgBox(str(b)) # True
  

UnoObjectType

ລະບຸປະເພດຂອງອັອບເຈັກ UNO ໃນຮູບແບບສະຕຣິງ.

ໄວຍາກອນ:

session.UnoObjectType(unoobject: uno): str

ພາຣາມິເຕີ:

unoobject: ອັອບເຈັກທີ່ຈະລະບຸ.

ຕົວຢ່າງ:

ໃນ Basic

    Dim svc As Variant, txt As String
    svc = CreateUnoService("com.sun.star.system.SystemShellExecute")
    txt = session.UnoObjectType(svc) ' "com.sun.star.comp.system.SystemShellExecute"
    svc = CreateUnoStruct("com.sun.star.beans.Property")
    txt = session.UnoObjectType(svc) ' "com.sun.star.beans.Property"
  
ໃນ Python

    bas = CreateScriptService("Basic")
    svc = bas.CreateUnoService("com.sun.star.system.SystemShellExecute")
    txt = session.UnoObjectType(svc) # "com.sun.star.comp.system.SystemShellExecute"
    svc = bas.CreateUnoService("com.sun.star.beans.Property")
    txt = session.UnoObjectType(svc) # "com.sun.star.beans.Property"
  

WebService

ດຶງເອົາເນື້ອໃນເວັບຈາກ URI.

ໄວຍາກອນ:

session.WebService(uri: str): str

ພາຣາມິເຕີ:

uri: ທີ່ຢູ່ URI ຂອງບໍລິການເວັບ.

ຕົວຢ່າງ:

ໃນ Basic

    session.WebService("wiki.documentfoundation.org/api.php?" _
        & "hidebots=1&days=7&limit=50&action=feedrecentchanges&feedformat=rss")
  
ໃນ Python

    session.WebService(("wiki.documentfoundation.org/api.php?" 
                       "hidebots=1&days=7&limit=50&action=feedrecentchanges&feedformat=rss"))
  
ໄອຄອນ ຄຳເຕືອນ

ຣູທີນ ຫຼື ຕົວລະບຸ Basic ຂອງ ScriptForge ທັງໝົດທີ່ຂຶ້ນຕົ້ນດ້ວຍເຄື່ອງໝາຍຂີດກ້ອງ "_" ແມ່ນສະຫງວນໄວ້ສຳລັບໃຊ້ພາຍໃນ. ພວກມັນບໍ່ໄດ້ມີໄວ້ໃຫ້ໃຊ້ໃນມາໂຄຣ Basic ຫຼື ສະຄຣິບ Python.


ກະລຸນາສະໜັບສະໜູນພວກເຮົາ!

ກະລຸນາສະໜັບສະໜູນພວກເຮົາ!