OBS/Makros und Scripting/Anwendungsbereiche/Customize Select-Listen: Unterschied zwischen den Versionen
Zur Navigation springen
Zur Suche springen
Böhrer (Diskussion | Beiträge) (Die Seite wurde neu angelegt: „I'm Vito and I live with my husband and our three children in Caldecote, in the NA south area. My hobbies are Locksport, Table tennis and Magic.<br><br>Look at…“) |
(Die Seite wurde neu angelegt: „{{Makros und Scripting}} Mit dem Customizing können verschiedene Select-Listen erweitert werden, beispielsweise die Auswahl von Sortierungen und weiteren Funk…“) |
||
Zeile 1: | Zeile 1: | ||
{{Makros und Scripting}} | |||
Mit dem Customizing können verschiedene Select-Listen erweitert werden, beispielsweise die Auswahl von Sortierungen und weiteren Funktionen. | |||
==Beispiel zusätzliche Sortierung F4== | |||
<syntaxhighlighting Lang="Delphi"> | |||
var oMyFrmListe : TFrmListe; | |||
procedure InitScripter(oFrmSelect:TFrmSelect); | |||
begin | |||
oFrmSelect.aSelect.lSorted := False; | |||
oFrmSelect.aSelect.cHTMLTitel := 'Html Titel'; | |||
oFrmSelect.aSelect.nStart := 3; | |||
end; | |||
procedure Add_Select(); | |||
begin | |||
FrmSelect.aSelect.AddSelect('A','XXX 1'); | |||
FrmSelect.aSelect.AddInfo('Hier HTML Hint'); | |||
FrmSelect.aSelect.lSorted := True; | |||
end; | |||
function Run_Select():String; | |||
begin | |||
oMyFrmListe := TFrmListe(FrmSelect.aSelect.Frm); | |||
if (not Assigned(oFrmListe)) then begin | |||
oMyFrmListe := TFrmListe(FrmSelect); | |||
end; | |||
//Scripter Einträge haben immer ein Z damit sie hinten stehen | |||
if (FrmSelect.aSelect.GetAusWahl() = 'ZA') then begin | |||
MyIdx(); | |||
//Fängt internen Aufruf ab | |||
Result := 'overload'; | |||
end; | |||
end; | |||
procedure MyIdx(); | |||
begin | |||
With oMyFrmListe do begin | |||
ListNew(); | |||
SqlDirect := 'SELECT * FROM TOUR_TOUREN'+ | |||
' LEFT JOIN TOUR_GEBIET ON tvm_nr = ttg_gebiet'+ | |||
' LEFT JOIN LKW ON l_nr = ttg_lkw'; | |||
ListOrder := 'ttg_status, ttg_nr DESC'; | |||
aTabel[0] := 'TOUR_TOUREN'; | |||
AddColumn ('LKW' , 'ttg_lkw' , 10); | |||
AddColumn ('Gebiet' , 'tvm_name' , 10); | |||
AddColumn ('Mit-Nr' , 'ttg_mitnr' , 10); | |||
AddColumn ('Gewicht' , 'ttg_gewicht' , 10, '#####9' ,ListAlign('taRightJustify')); | |||
AddColumn ('KM' , 'ttg_km' , 10, '###9,99' ,ListAlign('taRightJustify')); | |||
AddColumn ('L-Datum' , 'ttg_ldatum' , 12); | |||
AddColumn ('F-Zeit' , 'ttg_zeitfahr' , 10, '###9,99' ,ListAlign('taRightJustify')); | |||
AddColumn ('B-Zeit' , 'ttg_zeitbearb' , 10, '###9,99' ,ListAlign('taRightJustify')); | |||
AddColumn ('Umkehr' , 'ttg_auslieferfolge' , 10, Show_Field_Ja ,ListAlign('taLeftJustify')); // Show_Field_Ja wandelt Checkbox-Einträge aus der Datenbank in J/N um | |||
AddColumn ('M' , 'ttg_user' , 5, ShowMark ,ListAlign('taLeftJustify')); // ShowMark ist das bekannte Markierverhalten von Listen | |||
ListShow('TOUTMYA481', oMyFrmListe.Query, oMyFrmListe.DBGrid); | |||
end; | |||
end; | |||
</syntaxhighlighting> | |||
==Beispiel zusätzliche Funktionen F10== | |||
<syntaxhighlighting Lang="Delphi"> | |||
procedure InitScripter(oFrmSelect:TFrmSelect); | |||
begin | |||
oFrmSelect.aSelect.lSorted := False; | |||
oFrmSelect.aSelect.cHTMLTitel := 'Html Titel'; | |||
oFrmSelect.aSelect.nStart := 3; | |||
end; | |||
procedure Add_Select(); | |||
begin | |||
FrmSelect.aSelect.AddSelect('A','XXX 1'); | |||
FrmSelect.aSelect.AddInfo('Hier HTML Hint'); | |||
FrmSelect.aSelect.AddSelect('B','XXX 2'); | |||
FrmSelect.aSelect.AddInfo('Hier HTML Hint'); | |||
FrmSelect.aSelect.AddSelect('C','XXX 3'); | |||
FrmSelect.aSelect.AddInfo('Hier HTML Hint'); | |||
FrmSelect.aSelect.lSorted := True; | |||
end; | |||
function Run_Select():String; | |||
var oFrmListe : TFrmListe; | |||
begin | |||
oFrmListe := TFrmListe(FrmSelect.aSelect.Frm); | |||
if (not Assigned(oFrmListe)) then begin | |||
oFrmListe := TFrmListe(FrmSelect); | |||
end; | |||
//Scripter Einträge haben immer ein Z damit sie hinten stehen | |||
if (FrmSelect.aSelect.GetAusWahl() = 'ZA') then begin | |||
Meldung('F10 Klassenname = '+oFrmListe.ClassName); | |||
if (lower(oFrmListe.ClassName) = 'tfrmauftrag') then begin | |||
Meldung('Auftrags-Nr. = '+oFrmListe.Query.A2C('a_nr')); | |||
end; | |||
//Fängt internen Aufruf ab | |||
Result := 'overload'; | |||
end; | |||
end; | |||
</syntaxhighlighting> |
Version vom 25. März 2020, 11:29 Uhr
Mit dem Customizing können verschiedene Select-Listen erweitert werden, beispielsweise die Auswahl von Sortierungen und weiteren Funktionen.
Beispiel zusätzliche Sortierung F4
<syntaxhighlighting Lang="Delphi"> var oMyFrmListe : TFrmListe;
procedure InitScripter(oFrmSelect:TFrmSelect); begin
oFrmSelect.aSelect.lSorted := False; oFrmSelect.aSelect.cHTMLTitel := 'Html Titel'; oFrmSelect.aSelect.nStart := 3;
end;
procedure Add_Select(); begin
FrmSelect.aSelect.AddSelect('A','XXX 1'); FrmSelect.aSelect.AddInfo('Hier HTML Hint'); FrmSelect.aSelect.lSorted := True;
end;
function Run_Select():String; begin
oMyFrmListe := TFrmListe(FrmSelect.aSelect.Frm); if (not Assigned(oFrmListe)) then begin oMyFrmListe := TFrmListe(FrmSelect); end; //Scripter Einträge haben immer ein Z damit sie hinten stehen if (FrmSelect.aSelect.GetAusWahl() = 'ZA') then begin MyIdx(); //Fängt internen Aufruf ab Result := 'overload'; end;
end;
procedure MyIdx(); begin
With oMyFrmListe do begin
ListNew(); SqlDirect := 'SELECT * FROM TOUR_TOUREN'+ ' LEFT JOIN TOUR_GEBIET ON tvm_nr = ttg_gebiet'+ ' LEFT JOIN LKW ON l_nr = ttg_lkw'; ListOrder := 'ttg_status, ttg_nr DESC'; aTabel[0] := 'TOUR_TOUREN';
AddColumn ('LKW' , 'ttg_lkw' , 10); AddColumn ('Gebiet' , 'tvm_name' , 10); AddColumn ('Mit-Nr' , 'ttg_mitnr' , 10); AddColumn ('Gewicht' , 'ttg_gewicht' , 10, '#####9' ,ListAlign('taRightJustify')); AddColumn ('KM' , 'ttg_km' , 10, '###9,99' ,ListAlign('taRightJustify')); AddColumn ('L-Datum' , 'ttg_ldatum' , 12); AddColumn ('F-Zeit' , 'ttg_zeitfahr' , 10, '###9,99' ,ListAlign('taRightJustify')); AddColumn ('B-Zeit' , 'ttg_zeitbearb' , 10, '###9,99' ,ListAlign('taRightJustify')); AddColumn ('Umkehr' , 'ttg_auslieferfolge' , 10, Show_Field_Ja ,ListAlign('taLeftJustify')); // Show_Field_Ja wandelt Checkbox-Einträge aus der Datenbank in J/N um AddColumn ('M' , 'ttg_user' , 5, ShowMark ,ListAlign('taLeftJustify')); // ShowMark ist das bekannte Markierverhalten von Listen
ListShow('TOUTMYA481', oMyFrmListe.Query, oMyFrmListe.DBGrid);
end;
end; </syntaxhighlighting>
Beispiel zusätzliche Funktionen F10
<syntaxhighlighting Lang="Delphi"> procedure InitScripter(oFrmSelect:TFrmSelect); begin
oFrmSelect.aSelect.lSorted := False; oFrmSelect.aSelect.cHTMLTitel := 'Html Titel'; oFrmSelect.aSelect.nStart := 3;
end;
procedure Add_Select(); begin
FrmSelect.aSelect.AddSelect('A','XXX 1'); FrmSelect.aSelect.AddInfo('Hier HTML Hint'); FrmSelect.aSelect.AddSelect('B','XXX 2'); FrmSelect.aSelect.AddInfo('Hier HTML Hint'); FrmSelect.aSelect.AddSelect('C','XXX 3'); FrmSelect.aSelect.AddInfo('Hier HTML Hint'); FrmSelect.aSelect.lSorted := True;
end;
function Run_Select():String; var oFrmListe : TFrmListe; begin
oFrmListe := TFrmListe(FrmSelect.aSelect.Frm); if (not Assigned(oFrmListe)) then begin oFrmListe := TFrmListe(FrmSelect); end; //Scripter Einträge haben immer ein Z damit sie hinten stehen if (FrmSelect.aSelect.GetAusWahl() = 'ZA') then begin Meldung('F10 Klassenname = '+oFrmListe.ClassName); if (lower(oFrmListe.ClassName) = 'tfrmauftrag') then begin Meldung('Auftrags-Nr. = '+oFrmListe.Query.A2C('a_nr')); end; //Fängt internen Aufruf ab Result := 'overload'; end;
end; </syntaxhighlighting>