Από το μενού της εφαρμογής επιλέγουμε Βοηθητικά Προγράμματα –> Ρυθμίσεις -> System ->Scripting -> Scripting εφαρμογής
Το script της εφαρμογής εκτελείται όταν ανοίξει η εφαρμογή TopShop / TopValue. Ο κώδικας που θα γραφτεί μεταξύ begin και end θα εκτελεστεί άμεσα όταν εκτελεστεί το script. Επίσης μπορούμε να γράψουμε function και procedures οι οποίες μπορούν να χρησιμοποιηθούν από το Form Script και το Client Script.
Ο παρακάτω πίνακας επεξηγεί τα method που είναι διαθέσιμα από το PRG
Όνομα | Λειτουργία | Παράμετροι | Παράδειγμα |
---|---|---|---|
QueryValues | Επιστρέφει τις τιμές ενός sql query | SQL : String [Το ερώτημα που πρόκειται να εκτελεστεί] Params : Variant [Οι παράμετροι του ερωτήματος, αν υπάρχουν] | Var |
ExecQuery | Εκτελεί ένα sql query και επιστρέφει τον αριθμό των εγγραφών που επηρεάστηκαν από το sql query | SQL : String [Το ερώτημα που πρόκειται να εκτελεστεί] Params : Variant [Οι παράμετροι του ερωτήματος, αν υπάρχουν] | Begin |
ExecStoreProc | Εκτελεί μια sp και επιστρέφει τις τιμές των παραμέτρων που έχουν οριστεί ως output ή inputoutput στην sp | spName : String [Το όνομα της sp που πρόκειται να εκτελεστεί] Params : Variant [Οι τιμές των παραμέτρων της sp] var ReturnValue : integer [Η τιμή επιστροφής της sp] | var i:Integer; |
QueryDataSet | Εκτελεί ένα sql query και επιστέφει τα αποτελέσματα σε dataset | Owner : TComponent [Σε ποιον ανήκει το dataset.] SQL : String [Το ερώτημα που πρόκειται να εκτελεστεί] Params : Variant [Οι παράμετροι του ερωτήματος, αν υπάρχουν] | Var |
AppParam | Επιστρέφει την τιμή μιας παραμέτρου της εφαρμογής. **Οι παράμετροι εφαρμογής είναι ίδιοι με αυτούς που χρησιμοποιούνται στα Report (Application Params) | ParamName : String [Το όνομα της παραμέτρου] | Var |
CreateBO | Επιστρέφει ένα ΒΟ της εφαρμογής | BOName :string [Το όνομα του ΒΟ] InitParams : string [Παράμετροι του ΒΟ] Owner : TComponent [Σε ποιον ανήκει το ΒΟ] | var BO: TBOLink; |
CreateForm | Επιστέφει μια φόρμα του προγράμματος | FormClassName : String [Το όνομα της φόρμας. Προσοχή!! Η φόρμα πρέπει να είναι Registered στην εφαρμογή] OpenType : Integer [Ο τρόπος με τον οποίο θα ανοίξει η φόρμα] LoadKeyValue : Variant [η τιμή μιας συγκεκριμένης εγγραφής] | |
CreateForm2 | Επιστέφει μια φόρμα του προγράμματος | Owner : TComponent [Σε ποιον ανήκει η φόρμα.] FormClassName: String [Το όνομα της φόρμας] OpenType : Integer [Ο τρόπος με τον οποίο θα ανοίξει η φόρμα] LoadKeyValue : Variant [η τιμή μιας συγκεκριμένης εγγραφής] | var |
CreateReport | Επιστρέφει ένα Report του Προγράμματος | ReportID : Integer [To Id του Report] Implement : Integer [Not in use] LayOutID : Integer [To Layout του Report] | |
CreateReport2 | Επιστρέφει ένα Report του Προγράμματος | ReportID : Variant [To Id του Report] LayOutID : String [To Layout του Report] | |
ExecTaskByName | Εκτέλεση ενός task ή action της εφαρμογής | task :string [Το όνομα του task] | Begin |
ShowMessage | Εμφάνιση μηνύματος | Msg: Variant [Το μήνυμα προς εμφάνιση] | Begin |
Wait | Αναμονή | secs :integer [Ο χρόνος για αναμονή σε δευτερόλεπτα ] | Begin |
WaitForTime | Αναμονή | Hour: Word [οι ώρες για αναμονή] Min : Word [τα λεπτά για αναμονή] Sec: Word [τα δευτερόλεπτα για αναμονή] | Begin |
ClearCustomTasks | Καθαρίζει τη λίστα με τα custom task | Begin | |
AddLocalEvent | Προσθέτει ένα event στην εφαρμογή | aMsgType : String [ο τύπος του μηνύματος] aMsgText : String [το κείμενο του μηνύματος] | |
SendEvent | Στέλνει ένα event στην εφαρμογή | aMsgTo: String [ο παραλήπτης του μηνύματος] aMsgType: String [ο τύπος του μηνύματος] aMsgText : String [το κείμενο του μηνύματος] aMsgDelivery:TDateTime [η ημερομηνία και ώρα παράδοσης του μηνύματος] | |
RunExe | Εκτέλεση μιας άλλης εφαρμογής | cmd: string [Το όνομα της εφαρμογής που πρόκειται να εκτελεστεί. Πρέπει να είναι συμπληρωμένο και το path] | Begin |
RunExeWait | Εκτέλεση μιας άλλης εφαρμογής με χρόνο αναμονής για τερματισμό | cmd: string [Το όνομα της εφαρμογής που πρόκειται να εκτελεστεί. Πρέπει να είναι συμπληρωμένο και το path] timeout: integer [ο χρόνος αναμονής] | Begin |
RegisterForm | Προσθέτει μια φόρμα στη λίστα των Registered Forms της εφαρμογής | BaseClass: String [Η κλάση της φόρμας] AliasClassName: String [Το AliasClassname της φόρμας] Caption : String [Το caption της φόρμας] | |
AddMemoryDataSet | Προσθέτει memory dataset στην εφαρμογή | Name : String [Το όνομα του memory dataset] Sql : String [Το sql query που θα εκτελεστεί και θα γεμίσει με δεδομένα το memory dataset] | Begin |
Desktop_Navigate | Προσθέτει στην εφαρμογή ένα web browser με την ιστοσελίδα που δίδεται ως παράμετρος | URL: String [Η διεύθυνση μιας ιστοσελίδας] | Begin |
CreatePosKeyboardW | εμφανίζει στην οθόνη πληκτρολόγιο για χρήση ως Touch | aWidth: integer; επιθυμητό πλάτος aParent: TWinControl; το control που θα τοποθετηθεί πάνω το πληκτρολόγιο (το μέγεθος πλάτος και μήκος θα αλλάξει ώστε να προσαρμοστεί σε αυτό του πληκτρολογίου) HasNum: boolean θα έχει αριθμητικά πλήκτρα HasChar: boolean θα έχει πλήκτρα χαρακτήρων | Begin |
CreatePosKeyboardH | εμφανίζει στην οθόνη πληκτρολόγιο για χρήση ως Touch | aHeight: integer; επιθυμητό ύψος aParent: TWinControl; TWinControl; το control που θα τοποθετηθεί πάνω το πληκτρολόγιο (το μέγεθος πλάτος και μήκος θα αλλάξει ώστε να προσαρμοστεί σε αυτό του πληκτρολογίου) HasNum: boolean θα έχει αριθμητικά πλήκτρα HasChar: boolean θα έχει αριθμητικά πλήκτρα |
Επίσης υπάρχουν και τα παρακάτω τρία event PrgLogin, PrgAfterLogin, PrgOnReceiveEvent.
Ο χρήστης γράφει μια procedure με ένα από τα τρία ονόματα και αυτή εκτελείται από το PRG.