Skriptovací programovací jazyk: Porovnání verzí
m |
m |
||
Řádek 32: | Řádek 32: | ||
Skriptovací programovací jazyk je doplněn o třídu TKAPADOTable, která umožňuje manipulaci s databázovými tabulkami prostřednictvím rozhraní ADO. Je tak možné načítat či ukládat data do externích databází (např. MS SQL server, tabulky MS Excel apod.). Pro přístup k externím databázím lze také využít již dříve definované třídy TTable, TQuery apod., které ale vyžadují, aby na daném PC bylo instalováno databázové prostředí BDE (Borland Database Engine). | Skriptovací programovací jazyk je doplněn o třídu TKAPADOTable, která umožňuje manipulaci s databázovými tabulkami prostřednictvím rozhraní ADO. Je tak možné načítat či ukládat data do externích databází (např. MS SQL server, tabulky MS Excel apod.). Pro přístup k externím databázím lze také využít již dříve definované třídy TTable, TQuery apod., které ale vyžadují, aby na daném PC bylo instalováno databázové prostředí BDE (Borland Database Engine). | ||
+ | |||
+ | Modul pro práci se skripty nově podporuje komunikaci s MaximObjServerem. Je tak možné například snadno odeslat výsledek sestavy na vzdálený server a k dispozici jsou i funkce pro manipulaci s dokumenty uloženými na vzdáleném serveru.<br/> | ||
+ | K dispozici je nový objekt s následujícími vlastnostmi a metodami: | ||
+ | |||
+ | TMOSCommunicator = class<br/> | ||
+ | property ErrMessage: string;<br/> | ||
+ | property Connected: Boolean;<br/> | ||
+ | constructor Create(IP, UserName, UserPswd: String; CodedLogin: LongInt);<br/> | ||
+ | function SetupConnection(BINfile, IP, UserName, UserPswd: String; <br/>CodedLogin: LongInt): Boolean;<br/> | ||
+ | function SetupConnectionBinFile(BINfile: String): Boolean<br/> | ||
+ | function Connect: Boolean;<br/> | ||
+ | procedure Disconnect;<br/> | ||
+ | function SendFile(FileName, AServerFileName, Email, Subject, <br/>TextMail:String; ANoPrefix: Boolean = False): Boolean;<br/> | ||
+ | function SendFileByAlias(FileName, AServerFileName, Alias: String; FileTime: TDateTime = 0): Boolean;<br/> | ||
+ | function SendSMS(TelNo, SMSMsg : String): Boolean;<br/> | ||
+ | function GetFile(FileName, AServerFileName, Alias: String): Boolean;<br/> | ||
+ | function GetFileInfo(Alias, FileName: String; var RemoteFileName: String;<br/> var FileSize: Extended; var FileTime: TDateTime): Boolean; | ||
+ | function GetFileList(Alias, FileName: String; var FileNameList: String):Boolean<br/> | ||
+ | function REMOTE_FileCopy (FromAlias, FromDir, ToAlias, ToDir, FileName: String): Boolean;<br/> | ||
+ | function REMOTE_FileMove (FromAlias, FromDir, ToAlias, ToDir, FileName: String): Boolean;<br/> | ||
+ | function REMOTE_FileRename(FromAlias, FromDir, FromFileName, ToFileName: String): Boolean;<br/> | ||
+ | function REMOTE_FileDelete(FromAlias, FromDir, FromFileName: String): Boolean;<br/> | ||
+ | function REMOTE_DirCreate (FromAlias, DirName: String): Boolean;<br/> | ||
+ | function REMOTE_DirDelete (FromAlias, DirName: String): Boolean;<br/> | ||
+ | end;<br/> | ||
+ | Po vytvoření objektu pomocí Create je třeba nastavit parametry připojení pomocí SetupConnection.<br/> | ||
+ | Pokud je k dispozici BIN soubor s parametry připojení, tak není třeba vyplňovat parametry IP, UserName a UserPswd. Většina funkci umožňuje pracovat v režimu, kdy se nejdříve zahájí připojení pomocí Connect, pak se provede příslušná komunikace a nakonec se provede odpojení pomocí Disconnect.<br/> | ||
+ | Tento způsob komunikace může vyžadovat novou verzi MaximObjServeru (verze 28 a vyšší). Starší verze podporují režim bez předchozího připojení, tj. po Create je možné ihned zavolat funkci pro komunikaci (ta zajistí připojení, komunikaci i odpojení). Pro přenos jednotlivého souboru tedy doporučujeme použít tento druhý postup. Funkce začínající REMOTE jsou určené pro manipulaci s dokumenty na vzdáleném serveru (aliasy se definují v konfiguračním XML souboru na serveru). | ||
Můžete si stáhnout podrobnou příručku v angličtině popisující syntaxi, základní možnosti a příklady [http://www.kapsw.cz/data/xinha/downloads/FastScriptDoc_en.pdf skriptovacího jazyka]. | Můžete si stáhnout podrobnou příručku v angličtině popisující syntaxi, základní možnosti a příklady [http://www.kapsw.cz/data/xinha/downloads/FastScriptDoc_en.pdf skriptovacího jazyka]. |
Verze z 29. 11. 2018, 10:57
V aplikaci je integrovaný modul pro podporu správy systému umožňující zpracování programových skriptů. Skripty je možné psát v integrovaném editoru (kód menu 90,20). Je možné psát skripty ve formátu Pascal, C++, Basic nebo JScript (stejné možnosti, jen jiná syntaxe použitá pro zápis skriptů). V aplikacích je možné použít mnoho různých objektů, funkcí a konstant.
Skripty nelze v programu spouštět přímo (pouze v integrovaném editoru skriptů, kde je možné i jednoduché krokování skriptů), ale je třeba je nejdříve tzv. podepsat. To zajišťuje nová funkce s kódem menu 90,21, která k vybranému vstupnímu souboru se souborem skriptu vytvoří soubor s podepsaným skriptem (stejné jméno jako zdrojový soubor, ale s příponou FSC). K tomu je třeba určit jméno uživatele a heslo, pod kterým se bude program do aplikace přihlašovat (pokud skript připravujete pro jinou instalaci aplikace, tak heslo nemusí souhlasit s aktuálním heslem). Je možné určit také jméno databáze (to je ale nepovinné, lze ho určit až při spouštění skriptu parametrem DB:jmenodatabaze). Podepsané soubory lze spouštět pomocí nového parametru FSC:jménopodepsanéhoskriptu, např. SKLAD6.EXE S:SYSTEM FSC:Test.FSC Výsledný podepsaný soubor je uložený v interním formátu a nelze ho již znovu podepisovat (je třeba podepisovat vždy zdrojový soubor). Program při podepisování nekontroluje syntaxi skriptu. Ta je kontrolována vždy až při spouštění skriptu. Chyby skriptu jsou zapisovány do textového LOG souboru (ne všechny jsou hlášeny na obrazovku). Obě funkce jsou ve výchozím stavu umístěny do menu Nástroje pro správu, které nahradilo stávající menu Rekonstrukce dat.
Pomocí kódů menu 90,100 až 90,150 lze spouštět skripty se jménem souboru určeným pomocí proměnné MenuScript,x (x je hodnota od 0 do 50). Skripty musí být sice podepsané, ale jméno uživatele ani heslo se v tomto případě nekontroluje.
- Objekt TMOSCommunicator
- Objekt TKAPBtrTable
- Objekt TKAPMemTable
- Objekt TKAPPvQuery
- Objekt TKAPADOTable
- Objekt TKAPADOQuery
- Objekt TKAPADOConnection
- Objekt App
- Objekt TKAPRegOptions
- Objekt TKAPIndPrice
- Objekt TKAPOrder
- Objekt TKAPDocument
Skriptovací jazyk - konstanty
Skriptovací jazyk - funkce
Skriptovací jazyk - příklady
Skriptovací programovací jazyk je doplněn o třídu TKAPADOTable, která umožňuje manipulaci s databázovými tabulkami prostřednictvím rozhraní ADO. Je tak možné načítat či ukládat data do externích databází (např. MS SQL server, tabulky MS Excel apod.). Pro přístup k externím databázím lze také využít již dříve definované třídy TTable, TQuery apod., které ale vyžadují, aby na daném PC bylo instalováno databázové prostředí BDE (Borland Database Engine).
Modul pro práci se skripty nově podporuje komunikaci s MaximObjServerem. Je tak možné například snadno odeslat výsledek sestavy na vzdálený server a k dispozici jsou i funkce pro manipulaci s dokumenty uloženými na vzdáleném serveru.
K dispozici je nový objekt s následujícími vlastnostmi a metodami:
TMOSCommunicator = class
property ErrMessage: string;
property Connected: Boolean;
constructor Create(IP, UserName, UserPswd: String; CodedLogin: LongInt);
function SetupConnection(BINfile, IP, UserName, UserPswd: String;
CodedLogin: LongInt): Boolean;
function SetupConnectionBinFile(BINfile: String): Boolean
function Connect: Boolean;
procedure Disconnect;
function SendFile(FileName, AServerFileName, Email, Subject,
TextMail:String; ANoPrefix: Boolean = False): Boolean;
function SendFileByAlias(FileName, AServerFileName, Alias: String; FileTime: TDateTime = 0): Boolean;
function SendSMS(TelNo, SMSMsg : String): Boolean;
function GetFile(FileName, AServerFileName, Alias: String): Boolean;
function GetFileInfo(Alias, FileName: String; var RemoteFileName: String;
var FileSize: Extended; var FileTime: TDateTime): Boolean;
function GetFileList(Alias, FileName: String; var FileNameList: String):Boolean
function REMOTE_FileCopy (FromAlias, FromDir, ToAlias, ToDir, FileName: String): Boolean;
function REMOTE_FileMove (FromAlias, FromDir, ToAlias, ToDir, FileName: String): Boolean;
function REMOTE_FileRename(FromAlias, FromDir, FromFileName, ToFileName: String): Boolean;
function REMOTE_FileDelete(FromAlias, FromDir, FromFileName: String): Boolean;
function REMOTE_DirCreate (FromAlias, DirName: String): Boolean;
function REMOTE_DirDelete (FromAlias, DirName: String): Boolean;
end;
Po vytvoření objektu pomocí Create je třeba nastavit parametry připojení pomocí SetupConnection.
Pokud je k dispozici BIN soubor s parametry připojení, tak není třeba vyplňovat parametry IP, UserName a UserPswd. Většina funkci umožňuje pracovat v režimu, kdy se nejdříve zahájí připojení pomocí Connect, pak se provede příslušná komunikace a nakonec se provede odpojení pomocí Disconnect.
Tento způsob komunikace může vyžadovat novou verzi MaximObjServeru (verze 28 a vyšší). Starší verze podporují režim bez předchozího připojení, tj. po Create je možné ihned zavolat funkci pro komunikaci (ta zajistí připojení, komunikaci i odpojení). Pro přenos jednotlivého souboru tedy doporučujeme použít tento druhý postup. Funkce začínající REMOTE jsou určené pro manipulaci s dokumenty na vzdáleném serveru (aliasy se definují v konfiguračním XML souboru na serveru).
Můžete si stáhnout podrobnou příručku v angličtině popisující syntaxi, základní možnosti a příklady skriptovacího jazyka.