Περιεχόμενα

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

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

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

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

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

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

Η υπηρεσία SFDocuments.Form (Φόρμα) είναι διαθέσιμη από το LibreOffice 7.2 και μετά.

Οι φόρμες χρησιμοποιούνται συνήθως σε έγγραφα του LibreOffice για τη δημιουργία διεπαφών χρήστη που συνδέονται με σχεσιακές βάσεις δεδομένων. Ως εκ τούτου, η υπηρεσία Form παρέχει γρήγορη πρόσβαση στη συνδεδεμένη βάση δεδομένων μέσω της υπηρεσίας SFDatabase . Database.

Η υπηρεσία SFDocuments.Form σχετίζεται στενά με την υπηρεσία SFDocuments. FormControl.

## Ορισμοί

### FormDocument

Οι φόρμες δημιουργούνται συνήθως σε έγγραφα Base, αλλά μπορούν να προστεθούν και στα έγγραφα Writer και Calc.

Στη Base, κάθε φόρμα που δημιουργείτε χρησιμοποιώντας τη λειτουργία Εισαγωγή - Φόρμα ή μέσω του Οδηγού φόρμας είναι στην πραγματικότητα ένα FormDocument που μπορεί να χειριστεί με την υπηρεσία Form. Τα έγγραφα Base μπορούν να περιέχουν απεριόριστο αριθμό εγγράφων φορμών.

Ακολουθεί ένα παράδειγμα που δείχνει την ιεραρχία όλων των στοιχείων που εμπλέκονται στην πρόσβαση σε φόρμες και υποφόρμες σε ένα έγγραφο Base. Ας υποθέσουμε ότι έχετε ένα αρχείο Base με το όνομα Employees.odb και μέσα σε αυτό δημιουργήσατε ένα έγγραφο φόρμας για να προσθέσετε νέους υπαλλήλους στη βάση δεδομένων. Το έγγραφο φόρμας περιέχει μια κύρια φόρμα με το όνομα EmployeeData που δίνει πρόσβαση σε έναν πίνακα. Υπάρχει επίσης μια υποφόρμα WorksAtPlant που σας επιτρέπει να συσχετίσετε τον νέο υπάλληλο σε ένα από τα εργοστάσια της εταιρείας.

        Employees.odb (έγγραφο Base)
         |
         |-- AddEmployee (FormDocument)
              |
              |-- EmployeeData (κύρια φόρμα)
                   |
                   |-- WorksAtPlant (SubForm)

Ένα FormDocument μπορεί να θεωρηθεί ως ένα σύνολο φορμών που παρέχουν πρόσβαση σε σύνολα δεδομένων, όπως πίνακες βάσεων δεδομένων και ερωτήματα από τα έγγραφα του LibreOffice. Μπορείτε να προσπελάσετε τα ονόματα των φορμών και των υποφορμών μέσα σε ένα FormDocument χρησιμοποιώντας το Πλοήγηση φόρμας.

### Φόρμες και υποφόρμες

Ένα έγγραφο φόρμας αποτελείται από μία ή περισσότερες φόρμες οι οποίες, με τη σειρά τους, μπορεί επίσης να περιέχουν οποιονδήποτε αριθμό υπομορφών. Μια φόρμα είναι ένα αφηρημένο σύνολο στοιχείων ελέγχου που συνδέονται με μια καθορισμένη πηγή δεδομένων, η οποία μπορεί να είναι ένας πίνακας βάσης δεδομένων, ένα ερώτημα ή μια πρόταση SQL SELECT.

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

Για να καλέσετε την υπηρεσία SFDocuments. Form ανατρέξτε στις μεθόδους Forms(), FormDocuments() και OpenFormDocument() της υπηρεσίας SFDocuments.Document

## Κλήση υπηρεσίας

Πριν να χρησιμοποιήσετε την υπηρεσία Form, πρέπει να φορτωθεί ή να εισαχθεί η βιβλιοθήκη ScriptForge:

• Οι μακροεντολές Basic απαιτούν τη φόρτωση της βιβλιοθήκης ScriptForge χρησιμοποιώντας την ακόλουθη πρόταση:
GlobalScope.BasicLibraries.loadLibrary("ScriptForge")
• Τα σενάρια Python απαιτούν εισαγωγή από την ενότητα scriptforge:
από το scriptforge import CreateScriptService

### Σε έγγραφα Writer

Το παρακάτω απόσπασμα κώδικα δείχνει πώς να προσπελάσετε τη φόρμα με το όνομα Form1 που βρίσκεται μέσα σε ένα αρχείο Writer:

          Dim oDoc As Object, myForm As Object, ui as Object
          Set ui = CreateScriptService("UI")
          Set oDoc = ui.OpenDocument("/home/user/Documents/MyForm.odt")
          Set myForm = oDoc.Forms("Form1")

##### Σε Python

         from scriptforge import CreateScriptService
         ui = CreateScriptService('UI')
         doc = ui.OpenDocument('/home/user/Documents/MyForm.odt')
         my_form = doc.Forms('Form1')

Οι φόρμες είναι προσβάσιμες με τα ονόματά τους ή με τα ευρετήριά τους, όπως φαίνεται παρακάτω:

         Set myForm = oDoc.Forms(0)

##### Σε Python

         my_form = doc.Forms(0)

Εάν προσπαθήσετε να προσπελάσετε ένα FormDocument που είναι ανοιχτό αυτήν τη στιγμή σε Λειτουργία σχεδίασης θα δημιουργηθεί μια εξαίρεση.

### Σε έγγραφα Calc

Μια φόρμα σε ένα αρχείο Calc πρέπει να έχει ένα μοναδικό όνομα μέσα στο φύλλο της. Επομένως, η μέθοδος Forms απαιτεί δύο ορίσματα, το πρώτο που υποδεικνύει το όνομα του φύλλου και το δεύτερο το όνομα της φόρμας.

          Dim oDoc As Object, myForm As Object, ui as Object
          Set ui = CreateScriptService("UI")
          Set oDoc = ui.OpenDocument("/home/user/Documents/MyForms.ods")
          Set myForm = oDoc.Forms("Sheet1", "Form1")

Αυτό επιτυγχάνεται με τον ίδιο τρόπο χρησιμοποιώντας Python:

         ui = CreateScriptService('UI')
         doc = ui.OpenDocument('/home/user/Documents/MyForms.ods')
         my_form = doc.Forms('Sheet1', 'Form1')

### Σε έγγραφα Base

Ένα FormDocument μέσα σε ένα έγγραφο Base είναι προσβάσιμο με το όνομά του. Το ακόλουθο παράδειγμα ανοίγει το έγγραφο φόρμας με το όνομα thisFormDocument και αποκτά πρόσβαση στη φόρμα MainForm:

          Dim oDb As Object, myForm As Object
          Set oDb = CreateScriptService("SFDocuments.Document", ThisDatabaseDocument)
          ' Η παρακάτω δήλωση είναι απαραίτητη μόνο εάν η φόρμα δεν έχει ανοίξει ακόμα
          oDb.OpenFormDocument("thisFormDocument")
          Set myForm = oDoc.Forms("thisFormDocument", "MainForm")
          ' Ή, εναλλακτικά, για πρόσβαση στη φόρμα από το ευρετήριό της ...
          Set myForm = oDb.Forms("thisFormDocument", 0)

Για να εκτελέσετε οποιαδήποτε ενέργεια σε μια φόρμα χρησιμοποιώντας την υπηρεσία Form, το FormDocument πρέπει να έχει ανοίξει είτε με μη αυτόματο τρόπο από τον χρήστη είτε μέσω προγραμματισμού σε ένα σενάριο χρήστη. Το τελευταίο μπορεί να γίνει καλώντας τη μέθοδο OpenFormDocument της υπηρεσίας Base.

Για να προσπελάσετε μια δεδομένη υποφόρμα μιας φόρμας χρησιμοποιήστε τη μέθοδο SubForms. Σημειώστε ότι στο παρακάτω παράδειγμα το mySubForm είναι μια νέα παρουσία της υπηρεσίας Form.

         Dim mySubForm As Object
         Set mySubForm = myForm.SubForms("mySubForm")

Τα προηγούμενα παραδείγματα μεταφράζονται στην Python ως:

         db = CreateScriptService('SFDocuments.Document', XSCRIPTCONTEXT.getDocument())
         # Η παρακάτω δήλωση είναι απαραίτητη μόνο εάν η φόρμα δεν έχει ανοίξει ακόμα
         form_doc = db.OpenFormDocument('thisFormDocument')
         form = form_doc.Forms('thisFormDocument', 'MainForm')
         # Ή, εναλλακτικά, για πρόσβαση στη φόρμα από το ευρετήριό της ...
         form = form_doc.Forms('thisFormDocument', 0)
         sub_form = form.SubForms('mySubForm')

### Για συμβάντα φόρμας

Για να καλέσετε την υπηρεσία Form όταν λαμβάνει χώρα ένα συμβάν φόρμας:

          Sub OnEvent(ByRef poEvent As Object)
              Dim myForm As Object
              Set myForm = CreateScriptService("SFDocuments.FormEvent", poEvent)
              '(...)
          End sub

##### Σε Python

         def OnEvent(event: uno):
             form = CreateScriptService('SFDocuments.FormEvent', event)
             pass

Η υπηρεσία FormEvent χρησιμοποιείται αποκλειστικά για τη δημιουργία παρουσιών των υπηρεσιών SFDocuments.Form και SFDocuments.FormControl όταν λαμβάνει χώρα μια φόρμα ή ένα συμβάν ελέγχου.

Συνιστάται η απελευθέρωση πόρων μετά τη χρήση της υπηρεσίας Form (Φόρμας).

         myForm.Dispose() ' Basic

         form.Dispose()  # Python

Αυτή η λειτουργία εκτελείται σιωπηρά όταν ένα έγγραφο φόρμας κλείνει με τη μέθοδο CloseFormDocument() που περιγράφεται παρακάτω.

## Ιδιότητες

Όνομα | Μόνο για ανάγνωση | Τύπος | Περιγραφή
--- | --- | --- | ---
AllowDeletes | Όχι | Boolean | Καθορίζει εάν η φόρμα επιτρέπει τη διαγραφή εγγραφών.
AllowInserts | Όχι | Boolean | Καθορίζει εάν η φόρμα επιτρέπει την προσθήκη εγγραφών.
AllowUpdates | Όχι | Boolean | Καθορίζει εάν η φόρμα επιτρέπει την ενημέρωση των εγγραφών.
BaseForm | Ναι | String | Καθορίζει το ιεραρχικό όνομα της φόρμας Base που περιέχει την πραγματική φόρμα.
Bookmark | Όχι | Variant | Καθορίζει με μοναδικό τρόπο την τρέχουσα εγγραφή του υποκείμενου πίνακα, του ερωτήματος ή της δήλωσης SQL της φόρμας.
CurrentRecord | Όχι | Long | Προσδιορίζει την τρέχουσα εγγραφή στο σύνολο δεδομένων που προβάλλεται σε μια φόρμα. Εάν ο αριθμός σειράς είναι θετικός, ο δρομέας μετακινείται στον δεδομένο αριθμό σειράς σε σχέση με την αρχή του συνόλου των αποτελεσμάτων. Η μέτρηση σειρών ξεκινά από το 1. Εάν ο δεδομένος αριθμός σειράς είναι αρνητικός, ο δρομέας μετακινείται σε μια απόλυτη θέση σειράς ως προς το τέλος του συνόλου των αποτελεσμάτων. Η σειρά -1 αναφέρεται στην τελευταία σειρά στο σύνολο των αποτελεσμάτων.
Filter | Όχι | String | Καθορίζει ένα υποσύνολο εγγραφών που θα εμφανίζεται ως πρόταση WHEREτης SQL χωρίς τη λέξη-κλειδί WHERE.
LinkChildFields | Ναι | String | Καθορίζει τον τρόπο με τον οποίο οι εγγραφές σε μια θυγατρική υποφόρμα συνδέονται με τις εγγραφές στη γονική της μορφή.
LinkParentFields | Ναι | String | Καθορίζει τον τρόπο με τον οποίο οι εγγραφές σε μια θυγατρική υποφόρμα συνδέονται με τις εγγραφές στη γονική της μορφή.
Name | Ναι | String | Το όνομα της τρέχουσας φόρμας.
OrderBy | Όχι | String | Καθορίζει με ποια σειρά θα εμφανίζονται οι εγγραφές ως πρόταση ORDER BY της SQL χωρίς τις λέξεις-κλειδιά ORDER BY.
Parent | Ναι | Object | Ο γονέας της τρέχουσας φόρμας. Μπορεί να είναι είτε SFDocuments.Form, είτε αντικείμενο SFDocuments.Document.
RecordSource | Όχι | String | Καθορίζει την προέλευση των δεδομένων, ως όνομα πίνακα, όνομα ερωτήματος ή πρόταση SQL.
XForm | Ναι | Αντικείμενο UNO | Το αντικείμενο UNO που αντιπροσωπεύει τις αλληλεπιδράσεις με τη φόρμα. Ανατρέξτε στα XForm και στο DataForm στην τεκμηρίωση του API για λεπτομερείς πληροφορίες.

## Ιδιότητες συμβάντος

Οι παρακάτω ιδιότητες επιστρέφουν ή ορίζουν συμβολοσειρές URI που ορίζουν το σενάριο που ενεργοποιείται από το συμβάν.

Όνομα | Μόνο για ανάγνωση | Περιγραφή IDE Basic
--- | --- | ---
OnApproveCursorMove | Όχι | Πριν την αλλαγή της εγγραφής
OnApproveParameter | Όχι | Συμπλήρωση παραμέτρων
OnApproveReset | Όχι | Πριν την επαναφορά
OnApproveRowChange | Όχι | Πριν την ενέργεια της εγγραφής
OnApproveSubmit | Όχι | Πριν την υποβολή
OnConfirmDelete | Όχι | Επιβεβαίωση διαγραφής
OnCursorMoved | Όχι | Μετά την αλλαγή της εγγραφής
OnErrorOccurred | Όχι | Παρουσιάστηκε σφάλμα
OnLoaded | Όχι | Κατά τη φόρτωση
OnReloaded | Όχι | Κατά την επαναφόρτωση
OnReloading | Όχι | Πριν από την επαναφόρτωση
OnResetted | Όχι | Μετά την επαναφορά
OnRowChanged | Όχι | Μετά την ενέργεια της εγγραφής
OnUnloaded | Όχι | Κατά την αποφόρτωση
OnUnloading | Όχι | Πριν την αποφόρτωση

Για να μάθετε περισσότερα σχετικά με τις συμβολοσειρές URI, ανατρέξτε στις Προδιαγραφές URI πλαισίου σεναρίου.

Κατάλογος μεθόδων στην υπηρεσία Form (Φόρμα)
Activate Controls GetDatabase MoveFirst | MoveLast MoveNext MoveNew | MovePrevious Requery SubForms

## Activate

Ορίζει την εστίαση στην τρέχουσα παρουσία Form. Επιστρέφει True εάν η εστίαση ήταν επιτυχής.

Η συμπεριφορά της μεθόδου Activate (Ενεργοποίηση) εξαρτάται από τον τύπο του εγγράφου όπου βρίσκεται η φόρμα:

- Στα έγγραφα Writer: Ορίζει την εστίαση σε αυτό το έγγραφο.

- Στα έγγραφα Calc: Ορίζει την εστίαση στο φύλλο στο οποίο ανήκει η φόρμα.

- Στα έγγραφα Base: Ορίζει την εστίαση στο FormDocument στο οποίο αναφέρεται η Form.

### Σύνταξη:

svc.Activate(): bool

### Παράδειγμα:

Το παρακάτω παράδειγμα προϋποθέτει ότι θέλετε να ενεργοποιήσετε τη φόρμα με το όνομα FormA που βρίσκεται στο Sheet1 (Φύλλο1) του τρέχοντος ανοιχτού αρχείου Calc. Αρχικά αποκτά πρόσβαση στο έγγραφο χρησιμοποιώντας την υπηρεσία Document και το ThisComponent και στη συνέχεια ενεργοποιεί τη φόρμα.

         'Κρατά τη φόρμα που θα ενεργοποιηθεί
         Dim oDoc as Object, myForm as Object
         Set oDoc = CreateScriptService("Document", ThisComponent)
         Set myForm = oDoc.Forms("Sheet1", "FormA")
         'Ενεργοποιεί τη φόρμα
         myForm.Activate()

##### Σε Python

         doc = CreateScriptService('Document', XSCRIPTCONTEXT.getDocument())
         form = doc.Forms('Sheet1', 'FormA')
         form.Activate()

ThisComponent (Αυτό το στοιχείο) ισχύει για έγγραφα Calc και Writer. Για έγγραφα Base χρησιμοποιήστε το ThisDataBaseDocument.

## CloseFormDocument

This method is deprecated, use ScriptForge.FormDocument.CloseDocument method instead.

Κλείνει το έγγραφο φόρμας που περιέχει την ενεργή παρουσία Form. Η παρουσία Form διατίθεται.

### Σύνταξη:

svc.CloseFormDocument(): bool

### Παράδειγμα:

          myForm.CloseFormDocument() ' Basic

##### Σε Python

          form.CloseFormDocument()  # Python

## Controls

Η τιμή που επιστρέφεται από τη μέθοδο Controls εξαρτάται από τα ορίσματα που παρέχονται:

- Εάν η μέθοδος καλείται without arguments, τότε επιστρέφει τον κατάλογο των στοιχείων ελέγχου που περιέχονται στη φόρμα. Λάβετε υπόψη ότι ο κατάλογος που επιστρέφεται δεν περιέχει στοιχεία ελέγχου υποφόρμας.

- Εάν παρέχεται το προαιρετικό όρισμα ControlName, η μέθοδος επιστρέφει μια παρουσία κλάσης FormControl που αναφέρεται στο καθορισμένο στοιχείο ελέγχου.

### Σύνταξη:

svc.Controls(opt controlname: str): any

### Παράμετροι:

controlname (όνομα ελέγχου): Ένα έγκυρο όνομα ελέγχου ως συμβολοσειρά με διάκριση πεζών-κεφαλαίων. Εάν δεν υπάρχει, ο κατάλογος ονομάτων ελέγχου επιστρέφεται ως πίνακας μηδενικής βάσης.

### Παράδειγμα:

          Dim myForm As Object, myList As Variant, myControl As Object
          Set myForm = myDoc.Forms("myForm")
          myList = myform.Controls()
          Set myControl = myform.Controls("myTextBox") ' SFDocuments.FormControl

##### Σε Python

          form = doc.Forms('myForm')
          form_names = form.Controls()
          form_control = form.Controls('myTextBox')  # SFDocuments.FormControl

## GetDatabase

Επιστρέφει μια παρουσία SFDatabases.Database που παρέχει πρόσβαση σε την εκτέλεση εντολών SQL στη βάση δεδομένων στην οποία είναι συνδεδεμένη η τρέχουσα φόρμα και/ή που αποθηκεύεται στο τρέχον έγγραφοBase .

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

### Σύνταξη:

svc.GetDatabase(opt user: str, opt password: str): svc

### Παράμετροι:

user, password (χρήστης, κωδικός πρόσβασης): Οι προαιρετικές παράμετροι σύνδεσης (Προεπιλογή = "").

### Παράδειγμα:

          Dim myDb As Object ' SFDatabases.Database
          Set myDb = oForm.GetDatabase()

##### Σε Python

          db = form.GetDatabase()  # SFDatabases.Database

## MoveFirst

Ο δρομέας της φόρμας τοποθετείται στην πρώτη εγγραφή. Επιστρέφει True εάν είναι επιτυχής.

### Σύνταξη:

svc.MoveFirst(): bool

### Παράδειγμα:

          myForm.MoveFirst() ' Basic

##### Σε Python

          form.MoveFirst()  # Python

## MoveLast

Ο δρομέας της φόρμας τοποθετείται στην τελευταία εγγραφή. Επιστρέφει True εάν είναι επιτυχής.

### Σύνταξη:

svc.MoveLast(): bool

### Παράδειγμα:

          myForm.MoveLast() ' Basic

##### Σε Python

          form.MoveLast()  # Python

## MoveNew

Ο δρομέας της φόρμας τοποθετείται στη νέα περιοχή εγγραφής. Επιστρέφει True εάν είναι επιτυχής.

### Σύνταξη:

svc.MoveNew(): bool

### Παράδειγμα:

          myForm.MoveNew() ' Basic

##### Σε Python

          form.MoveNew()  # Python

## MoveNext

Ο δρομέας της φόρμας τοποθετείται στην επόμενη εγγραφή. Επιστρέφει True εάν είναι επιτυχής.

### Σύνταξη:

svc.MoveNext(opt offset: int): bool

### Παράμετροι:

offset (μετατόπιση): Ο αριθμός των εγγραφών προς τα μπρος (Προεπιλογή = 1).

### Παράδειγμα:

          myForm.MoveNext() ' Basic

##### Σε Python

          form.MoveNext()  # Python

## MovePrevious

Ο δρομέας της φόρμας τοποθετείται στην προηγούμενη εγγραφή. Επιστρέφει True εάν είναι επιτυχής.

### Σύνταξη:

svc.MovePrevious(opt offset: int): bool

### Παράμετροι:

offset: Ο αριθμός των εγγραφών προς τα πίσω (Προεπιλογή = 1).

### Παράδειγμα:

          myForm.MovePrevious() ' Basic

          form.MovePrevious()  # Python

## Requery

Φορτώνει ξανά τα τρέχοντα δεδομένα από τη βάση δεδομένων και ανανεώνει τη φόρμα. Ο δρομέας τοποθετείται στην πρώτη εγγραφή. Επιστρέφει True εάν είναι επιτυχής.

### Σύνταξη:

svc.Requery(): bool

### Παράδειγμα:

          myForm.Requery() ' Basic

##### Σε Python

          form.Requery()  # Python

## Subforms

Η τιμή που επιστρέφεται από τη μέθοδο Subforms (Υποφόρμες) εξαρτάται από τα ορίσματα που παρέχονται:

- Εάν η μέθοδος καλείται without any arguments (χωρίς ορίσματα), τότε επιστρέφει ο κατάλογος με τις υποφόρμες που περιέχονται στην τρέχουσα φόρμα ή την παρουσία υποφόρμας.

- Εάν παρέχεται το προαιρετικό όρισμα subform, η μέθοδος επιστρέφει μια νέα παρουσία SFDocuments.Form με βάση το καθορισμένο όνομα ή ευρετήριο φόρμας/υποφόρμας.

### Σύνταξη:

svc.Subforms(): str[0..*]

svc.Subforms(subform: str): svc

svc.Subforms(subform: int): svc

### Παράμετροι:

subform: Μια υποφόρμα που είναι αποθηκευμένη στην τρέχουσα παρουσία κλάσης Form που δίνεται από το όνομά της ή το ευρετήριό της.

Όταν αυτό το όρισμα απουσιάζει, η μέθοδος επιστρέφει έναν κατάλογο διαθέσιμων υπομορφών ως πίνακα μηδενικής βάσης. Εάν η φόρμα έχει μία μόνο υποφόρμα, μπορείτε να ορίσετε subform = 0 για να αποκτήσετε πρόσβαση σε αυτήν.

### Παράδειγμα:

          Dim myForm As Object, myList As Variant, mySubform As Object
          myList = myform.Subforms()
          Set mySubform = myForm.Subforms("mySubform") ' SFDocuments.Form

##### Σε Python

          subform_names = form.Subforms()
         subform = form.Subforms('mySubform')  # SFDocuments.Form

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

Σχετικά θέματα

SFDatabases.Database

Υπηρεσία SFDocuments.Document

Υπηρεσία ScriptForge.UI

Παρακαλούμε, υποστηρίξτε μας!