{{Achtung|Wird bei den '''Before_'''-Funktionen "READY" zurückgegeben, so werden die internen Funktionen nicht mehr ausgeführt. Damit kann der natürliche Ablauf des Programmes verändert werden. Dies kann schwere Programmfehler verursachen!}}
{{Achtung|Wird bei den '''Before_'''-Funktionen "READY" zurückgegeben, so werden die internen Funktionen nicht mehr ausgeführt. Damit kann der natürliche Ablauf des Programmes verändert werden. Dies kann schwere Programmfehler verursachen!}}
{{Achtung|Das Überschreiben von nicht zugewiesenen Funktionstasten (F1 - F11) sollte vermieden werden, da diese von uns jederzeit mit Funktionen belegt werden können. F12 steht immer zur Verfügung.}}
{{Achtung|Das Überschreiben von nicht zugewiesenen Funktionstasten (F1 - F11) sollte vermieden werden, da diese von uns jederzeit mit Funktionen belegt werden können. F12 steht immer zur Verfügung.}}
=User-Reiter=
In OBS ab Version 003191 können Edit-Masken per Customizing-Script um eigene Reiter erweitert werden. Diese darin verwalteten Felder können mit [[OBS/Makros und Scripting/Benutzerdefinierte Datenbanktabellen|eigenen Datenbankfeldern]] definiert werden.
[[Datei:Usertab.jpg]]
===Beispiel-Userdatenbank===
<syntaxhighlight lang="Delphi">
#DBNAME TODO
#FELDNAME USER_BEMERK , C , 8 , 0 , "CCCCCCCC"
#FELDNAME USER_WGR , C , 3 , 0 , "*"
#FELDNAME USER_TOGGLE , C , 1 , 0 , "C"
#FELDNAME USER_BETRAG , N , 11 , 0 , "NNNNNNNN.NNNN"
#FELDNAME USER_DATUM , D , 4 , 0 , "TT.MM.JJ"
#FELDNAME USER_LANGTEXT , M , 2000 , 0 , "*"
</syntaxhighlight>
===Beispielscript===
<syntaxhighlight lang="Delphi">
function OnEdInit(): String;
var oTab : TTabSheet;
oStr : TStringEdit;
oLbl : TLabel;
oNEd : TNumericEdit;
oDVE : TDateValEdit;
oChB : TxCheckBox;
oCBL : TCombiListe;
oTRE : TTextRichEdit;
begin
oTab := frmEdit.AddUserTab(); // Erstellt neuen User-Tab auf dem Edit
if assigned(oTab) then begin
oLbl := TLabel.Create(frmEdit); // Damit die Ressourcenverwaltung funktioniert
oLbl.Caption := 'Textzeile:';
oLbl.Top := 10;
oLbl.Left := 10;
oLbl.Parent := oTab; // Damit die Anzeige korrekt funktioniert
oStr := TStringEdit.Create(frmEdit);
oStr.Name := 'stred_db_user_bemerk'; // Damit automatisches Speichern/Laden von Datenbankfeldern funktioniert, muss im Komponentennamen '_db_' und der Feldname stehen.
// Die erste Spalte der Suchliste muss mit InitColumn erstellt werden, alle weiteren mit AddColumn.
// Parameter:
// Anzeigename : String,
// Feldname : String,
// relative_Breite : Integer,
// Anzeigefunktion : Function of String, vorerst immer nil,
// Anzeigenmaskierung : String = '', Beispiel: '##9,99': Es werden immer eine Vorkommastelle und immer zwei Nachkommastellen angezeigt, und optional zwei zusätzliche Vorkommastellen, wenn vorhanden.
Das kostenpflichtige Modul Customize erlaubt die Individualisierug vom OBS und kann die Funktionalität der Software entscheidend erweitern, um z. B. Arbeitsabläufe zu verbessern oder die Einhaltung bestimmter Vorgaben einzuhalten. So lassen sich u. a. Zugriffe auf Felder steuern oder Daten in Eingabemasken vorbelegen oder prüfen. Jedes Makro kann systemweit oder pro Benutzer hinterlegt werden.
Allgemeines
Aktivierung Modul Customize
Der Aktivitätsstatus des Moduls wird über einen Programmparameter gesteuert, welcher nur Administratoren zugänglich ist. Die Freischaltung erfolgt durch den Support auf Anfrage.
Zugriff auf die Einstellungen
Der Zugriff auf die Customize-Einstellungen erfolgt über die Rechte Verwaltungstrg + F12. Für Customize-Scripte wählen Sie den entsprechenden Punkt in der sich öffnenden Auswahlbox:
Den Wiki-Seite zu den Benutzergruppe finden Sie hier.
Besonderheiten
HINWEIS: Sämtliche Tastatur-Funktionen haben noch eine Variante mit dem Präfix Before_.
ACHTUNG: Wird bei den Before_-Funktionen "READY" zurückgegeben, so werden die internen Funktionen nicht mehr ausgeführt. Damit kann der natürliche Ablauf des Programmes verändert werden. Dies kann schwere Programmfehler verursachen!
ACHTUNG: Das Überschreiben von nicht zugewiesenen Funktionstasten (F1 - F11) sollte vermieden werden, da diese von uns jederzeit mit Funktionen belegt werden können. F12 steht immer zur Verfügung.