|
![]() | TSQL602Indexes | ![]() | Přehled CDK komponent | ESQL602Exception | ![]() |
Zjednodušená deklarace třídy:
type TSQL602ServerProps = class(TComponent) public property Connection : TComponent; property Section : string; property SubSection : string; constructor Create(AOwner : TComponent; AConnection : TComponent); reintroduce; overload; function GetProp(Sect : string; SubSect : string; Name : string) : string; overload; function GetProp(Sect : string; SubSect : string; Name : string; Index : Integer) : string; overload; function GetProp(Name : string) : string; overload; function GetPropInt(Sect : string; SubSect : string; Name : string) : Integer; overload; function GetPropInt(Name : string) : Integer; overload; function GetPropBool(Sect : string; SubSect : string; Name : string) : Boolean; overload; function GetPropBool(Name : string) : Boolean; overload; function GetPropBin(Sect : string; SubSect : string; Name : string; var Value; Size : Integer) : Integer; overload; function GetPropBin(Name : string; var Value; Size : Integer) : Integer; overload; procedure SetProp(Sect : string; SubSect : string; Name : string; Value : string); overload; procedure SetProp(Sect : string; SubSect : string; Name : string; Index : Integer; Value : string); overload; procedure SetProp(Sect : string; SubSect : string; Name : string; Value : Integer); overload; procedure SetProp(Sect : string; SubSect : string; Name : string; Value : Boolean); overload; procedure SetProp(Sect : string; SubSect : string; Name : string; var Value; Size : Integer); overload; procedure SetProp(Name : string; Value : string); overload; procedure SetProp(Name : string; Value : Integer); overload; procedure SetProp(Name : string; Value : Boolean); overload; procedure SetProp(Name : string; var Value; Size : Integer); overload; procedure CreateSubSect(Sect : string; SubSect : string); overload; procedure CreateSubSect(SubSect : string); overload; procedure DeleteSubSect(Sect : string; SubSect : string); overload; procedure DeleteSubSect(SubSect : string); overload; procedure RenameSubSect(OldSubSect, NewSubSect : string); overload; procedure RenameSubSect(Sect, OldSubSect, NewSubSect : string); overload; function GetSubSects(Sect : string) : TStringList; overload; function GetSubSects : TStringList; overload; function GetPropNames : TStringList; overload; function GetPropNames(Sect : string; SubSect : string) : TStringList; overload; function IsSubSect(Sect : string; SubSect : string) : Boolean; overload; function IsSubSect(SubSect : string) : Boolean; overload; end;
Třída umožňuje číst a měnit všechny nastavitelné vlastnosti 602SQL serverů i klientů, zhruba to, co ve standardní instalaci dělají různé nástroje Klientského vývojového prostředí 602SQL serveru.
Množina vlastností je rozdělena do jednotlivých sekcí. Některé sekce jsou dále rozděleny do subsekcí např. vlastnosti pro jednotlivé zaregistrované servery (subsekcemi jsou servery) nebo vlastnosti jednotlivých poštovních profily (subsekcemi jsou profily). Není-li subsekce třeba, zadávejte místo ní prázdný řetězec.
Ve třídě jsou definovány dvě obdobné sady metod (stejných jmen), které se liší je počtem parametrů: hodnoty vlastností lze číst nebo nastavovat jednak pomocí metod, ve kterých je jméno sekce a subsekce explicitně uvedeno např.:
ServerProps := TSQL602ServerProps.Create(Self); SMTPServer := ServerProps.GetProp('Mail', 'Muj profil', 'SMTPServer'); MyAddress := ServerProps.GetProp('Mail', 'Muj profil', 'MyAddress'); POP3Server := ServerProps.GetProp('Mail', 'Muj profil', 'POP3Server');nebo je možné nastavit vlastnost Section a SubSection a použít metody, které mají jako parametr pouze jméno vlastnosti např.:
ServerProps.Section := 'Mail'; ServerProps.SubSection := 'Muj profil'; SMTPServer := ServerProps.GetProp'SMTPServer'); MyAddress := ServerProps.GetProp('MyAddress'); POP3Server := ServerProps.GetProp('POP3Server');
Spojení na SQL server, je nutné pouze pro vlastnosti ze sekce @SQLSERVER, @USERPROP a ServerInfo, u ostatních sekcí nemusí být zadáno (nečte se z databáze). Může být reprezentováno odkazem na komponentu třídy TSQL602Connection nebo TDBX602Connection.
Nastavují sekci a podsekci zjišťované vlastnosti - viz Přehled všech sekcí, subsekcí a jejich vlastností. Není-li sekce a subsekce nastavena těmito vlastnostmi, musí se použít ty varianty funkcí, které mají jméno sekce a subsekce jako parametr.
Konstruktor vytvoří třídu a nastaví vlatnost Connection
function GetProp(Sect : string; SubSect : string; Name : string) : string;
function GetPropInt(Sect : string; SubSect : string; Name : string) : Integer;
function GetPropInt(Name : string) : Integer;
function GetPropBool(Sect : string; SubSect : string; Name : string) : Boolean;
function GetPropBool(Name : string) : Boolean;
function GetPropBin(Sect : string; SubSect : string; Name : string; var Value; Size : Integer) : Integer;
function GetPropBin(Name : string; var Value; Size : Integer) : Integer;Funkce vracejí hodnotu vlastnosti Name ze sekce Sect, subsekce SubSect.
Umožňuje číst vlastnosti jejichž hodnoty mají více instancí, např.: Dir nebo IP_disabled_addr ze sekce @SQLSERVER. Parametr Index je pořadové číslo hodnoty.
procedure SetProp(Sect : string; SubSect : string; Name : string; Value : string);
procedure SetProp(Sect : string; SubSect : string; Name : string; Value : Integer);
procedure SetProp(Sect : string; SubSect : string; Name : string; Value : Boolean);
procedure SetProp(Sect : string; SubSect : string; Name : string; var Value; Size : Integer);
procedure SetProp(Name : string; Value : string);
procedure SetProp(Name : string; Value : Integer);
procedure SetProp(Name : string; Value : Boolean);
procedure SetProp(Name : string; var Value; Size : Integer);Metody nastavují hodnotu vlastnosti Name ze sekce Sect, subsekce SubSect na Value.
Umožňuje nastavit vlastnosti jejichž hodnoty mají více instancí, např.: Dir nebo IP_disabled_addr ze sekce @SQLSERVER. Parametr Index je pořadové číslo hodnoty.
Vytvoří subsekci SubSect v sekci Sect. Umožňuje např. zaregistrovat další SQL server nebo vytvořit nový poštovní profil.
Smaže subsekci SubSect v sekci Sect. Umožňuje např. zrušit registraci SQL serveru nebo zrušit poštovní profil.
Přejmenuje subsekci OldSubSect v sekci Sect. Umožňuje např. přejmenovat poštovní profil.
Vrací seznam subsekcí v sekci Sect. Umožňuje získat např. seznam zaregistrovaných serverů nebo poštovních profilů.
Vrací seznam jmen vlastností v sekci Sect a subsekci SubSect. Umožňuje např. vytvořit kopii poštovního profilu.
Vrací true, je-li SubSect subsekcí sekce Sect. Umožňuje testovat např. zda je zaregistrovaný SQL server, nebo zda existuje poštovní profil daného jména.
Zjistit a vypsat informace o serveru
SQLServerProps1 := TSQL602ServerProps.Create(Self,SQL602Connection1); ipaddr := SQLServerProps1.GetProp('database',srvname,'IP address'); filpath := SQLServerProps1.GetProp('database',srvname,'Path'); pomi := SQLServerProps1.GetPropInt('ServerInfo','','OP_GI_SERVER_PLATFORM'); if pomi = 0 then poms := 'Windows' else poms := 'Linux'; if filpath<>'' then res := 'Lokální server s databází v '+filpath else res := 'Vzdálený server na IP adrese '+ipaddr; res := res +#13#10+ 'Platforma serveru: '+ poms ; pomi := SQLServerProps1.GetPropInt('ServerInfo','','OP_GI_LICS_CLIENT'); poms := IntToStr(pomi); res := res +#13#10+ 'Celkový počet licencí: '+ poms; MainForm.Frame_db.Memo_defin.Text := res; SQLServerProps1.Free;
Seznam subsekcí:
![]() | TSQL602Indexes | ![]() | Přehled CDK komponent | ESQL602Exception | ![]() |