Wobsah

# Słužba ScriptForge.Services

Hłowny zaměr modula Services je, přistup k metodźe CreateScriptService j dispoziciji stajić, kotraž da so we wužiwarskich skriptach wuwołać, zo bychu so słužby instanciěrowali, kotrež so z framworkom ScriptForge implementuja.

W terminologiji ScriptForge je słužba zběrka metodow a kajkosćow, kotrež dadźa so za zhromadny zaměr wužiwać. Słužba String na přikład metody za wobchadźenje ze znamješkowymi rjećazkami k dispoziciji staja, mjeztym zo słužba FileSystem je za wobchadźenje z datajemi a rjadowakami.

Modul Services biblioteki ScriptForge přidatne metody skići, kotrež so pak internje wužiwaja, zo bychu słužby registrowali, kotrež su k dispoziciji, pak wot wuwiwarjow, kotřiž su na tym zajimowani, ScriptForge přez wutworjenje nowych słužbow rozšěrić. Jenička metoda, kotraž je relewantna za wužiwarske skripty, je CreateScriptService.

## CreateScriptService

Tuta metoda so wužiwa, zo by słužbu ScriptForge instanciěrowała, zo by so dała we wužiwarskich skriptach wuwołać.

Wróćena hódnota je objekt Basic abo Nothing, jeli zmylk je nastał.

### Syntaksa:

svc.CreateScriptService(service: str, [arg0: any] ...): svc

### Parametry:

service: Mjeno słužby, kotraž so jako znamješkowy rjećazk w formaće "library.service" identifikuje.

- library je biblioteka Basic, kotraž dyrbi w GlobalScope eksistować. Standardna hódnota je „ScriptForge“.

- service je jedna ze słužbow, kotraž su přez biblioteku ScriptForge zregistrowane.

arg0, ...: Lisćina argumentow, kotrež su trěbne za wuwołanu słužbu.

Jeli so prěni argument na podawkowy manager poćahuje, je arg0 zawjazny a dyrbi objekt UNO być, kotryž podawk reprezentuje, kotryž so wužiwarskemu makru jako argument k dispoziciji staja.

### Přikład:

##### W Basic

        GlobalScope.BasicLibraries.loadLibrary("ScriptForge")
        ' Jónu wuwjesć
        Dim svc As Object
        Set svc = CreateScriptService("Array")
        ' Poćahuje so na słužbu "ScriptForge.Array" abo "SF_Array"
        Set svc = CreateScriptService("ScriptForge.Dictionary")
        ' Wróći nowu prózdnu słownikowu klasowu instancu; "ScriptForge." je na přeće
        Set svc = CreateScriptService("SFDocuments.Calc")
        ' Poćahuje so na słužbu Calc, kotraž je w zwjazanej bibliotece SFDocuments implementowana
        Set svc = CreateScriptService("Timer", True)
        ' Wróći klasowu instancu Timer, kotraž so hnydom startuje
        Set svc = CreateScriptService("SFDocuments.DocumentEvent", oEvent)
        ' Poćahuje so na słužbu DocumentEvent, kotraž je w zwjazanej bibliotece SFDocuments implementowana
        ' Wróći instancu klasy Document, kotraž podawk wuwabja

##### W Python

        from scriptforge import CreateScriptService
        svc = CreateScriptService("Array")
        svc = CreateScriptService("ScriptForge.Dictionary")
        svc = CreateScriptService("SFDocuments.Calc")
        svc = CreateScriptService("Timer", True)
        svc = CreateScriptService("SFDocuments.DocumentEvent", oEvent)

Skripty Python argumenty klučowych słowow podpěruja, hdyž so CreateScriptService wuwołuje. Slědowacy přikład słužbje Timer a Document z pomocu argumentow klučowych słowow instancěruje, zo by tutón koncept ilustrował.

        from scriptforge import CreateScriptService
        # Timer
        my_timer = CreateScriptService("Timer", start = True)
        # Document
        my_doc = CreateScriptService("Document", windowname = "some_file.ods")

Zo by pisanje skriptow Python běžnišo činił, skići ScriptForge słužbu Basic, kotraž skriptam Python zmóžnja, zběrku metodow ze samsnej syntaksu a woznamom kaž jich natiwne funkcije Basic z jenakim mjenom wuwołać.

Slědowacy přikład słužbu Basic instancěruje a wuwołuje metodu MsgBox, kotraž funkciji MsgBox w Basic wotpowěduje.

        from scriptforge import CreateScriptService
        bas = CreateScriptService("Basic")
        bas.MsgBox("Hello World!")

Dźiwajće na to, zo so słužba Basic dyrbi w skriptach Python z metodu CreateScriptService instancěrować.

Wšě rutiny Basic ScriptForge abo identifikatory, kotrež so z podsmužku „_“ započinaja, su za interne wužiwanje wuměnjene. Njejsu za to myslene, so w makrach Basic abo skriptach Python wužiwać.

Podobne temy

Słužba ScriptForge.Basic

Set Statement

GlobalScope specifier

Prošu podpěrajće nas!