OBS/Makros und Scripting/Anwendungsbereiche/Customize Select-Listen
Zur Navigation springen
Zur Suche springen
Mit dem Customizing können verschiedene Select-Listen erweitert werden, beispielsweise die Auswahl von Sortierungen und weiteren Funktionen.
Zu finden ist das Customizing über "Strg+F12 - C1" in der entsprechenden Select-Liste.
Beispiel zusätzliche Sortierung F4
var oMyFrmListe : TFrmListe;
oSelect : TfrmSelect;
procedure InitScripter(oFrmSelect:TFrmSelect);
begin
oFrmSelect.aSelect.lSorted := False;
oFrmSelect.aSelect.cHTMLTitel := 'Html Titel';
oFrmSelect.aSelect.nStart := 3;
oSelect := ofrmSelect;
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(oMyFrmListe)) 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 ('Bemerkung' , 'ttg_text' , 80, Show_RichText ,ListAlign('taLeftJustify')); // Wandelt Richtextfelder zur Anzeige in einfachen Klartext um
AddColumn ('M' , 'ttg_user' , 5, Show_Mark ,ListAlign('taLeftJustify')); // ShowMark ist das bekannte Markierverhalten von Listen
ListShow('TOUTMYA481', oMyFrmListe.Query, oMyFrmListe.DBGrid);
oSelect.LockScripter(); // Damit der Scripter im Speicher gehalten wird.
end;
end;
Beispiel zusätzliche Funktionen F10
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;