Handler

Diese Datei dokumentiert alle Makrofunktionen der Kategorie Handler.

Inhaltsverzeichnis

OnActivateForm(Form)

Wird bei Activierung des Formulars aufgerufen

Parameter

Nr. Parameter Beschreibung
1 Form Formularnummer

Rückgabewert

Diese Funktion gibt keinen Wert zurück.

Verfügbarkeit

Standard


OnActivateSession()

Wird nach erfolgreicher Aktivierung und Wiederherstellung der Benutzeroberfläche aufgerufen. (Nur im System-Makro möglich)

Parameter

Diese Funktion hat keine oder keine benannten Parameter.

Rückgabewert

Diese Funktion gibt keinen Wert zurück.

Verfügbarkeit

Standard


OnAutoComplete([FormName],[DocType],[Table])

Wird für Autocomplete eines Eingabefeldes 2 aufgerufen

Parameter

Nr. Parameter Beschreibung
1 FormName Optional: Formularname
2 DocType Optional: Dokumentart / Name der Tabelle
3 Table Optional: Tabellennummer für den Feldzugriff via GetFld(...)

Rückgabewert

Diese Funktion gibt keinen Wert zurück.

Verfügbarkeit

42 Makro Runtime


OnCloseForm(Form)

Wird vor Verlassen des Formulares aufgerufen

Parameter

Nr. Parameter Beschreibung
1 Form Formularnummer

Rückgabewert

Diese Funktion gibt keinen Wert zurück.

Verfügbarkeit

Standard


OnCommand(Form,Cmd)

Wird bei Aufruf eines Kommandos aufgerufen

Parameter

Nr. Parameter Beschreibung
1 Form Formularnummer
2 Cmd Kommando

Rückgabewert

1:Abbruch, 0:Fortsetzen

Verfügbarkeit

Standard

Beispiel

siehe AddMenuItem
siehe GetFldData
siehe OnMenuInit
siehe StartList
OnCommand(From, Cmd)
{
    .....
    .....
    return(0);
}

OnDeletedRecord()

Wird vor Löschen eines Datensatzes aufgerufen. (Nur im System-Makro möglich)

Parameter

Diese Funktion hat keine oder keine benannten Parameter.

Rückgabewert

Diese Funktion gibt keinen Wert zurück.

Verfügbarkeit

Standard

Beispiel

Ein Beispiel finden Sie in der Datei 42System.42m im Verzeichnis Makro / Beispiele / Programmierhandbuch Beispiele
OnDeletedRecord(DocType, Table)
{
    if(stricmp(DocType, "Kunde") == 0)
    {
        Name = GetFld("Name", Table, 1);
        KndNr = GetFld("Kundennummer", Table, 1);
        MessageBox(fmt("Sie haben den Kunden {0} mit der Kundennummer {1} erfolgreich gelöscht!", Name, KndNr), "Information aus dem System-Makro");
    }
}

OnDeleteRecord()

Wird vor Löschen eines Datensatzes aufgerufen. (Nur im System-Makro möglich)

Parameter

Diese Funktion hat keine oder keine benannten Parameter.

Rückgabewert

0:Löschen durchführen, 1:Löschen nicht durchführen

Verfügbarkeit

Standard

Beispiel

Ein Beispiel finden Sie in der Datei 42System.42m im Verzeichnis Makro / Beispiele / Programmierhandbuch Beispiele
OnDeleteRecord(DocType, Table)
{
    ret = 0;
    if(stricmp(DocType, "Kunde") == 0)
    {
        Name = GetFld("Name", Table, 1);
        KndNr = GetFld("Kundennummer", Table, 1);
        ErgMes = MessageBox(fmt("Wollen Sie den Kunden {0} mit der Kundennummer {1} wirklich löschen!", Name, KndNr), "Information aus dem System-Makro", "YESNO");
        if(stricmp(ErgMes, "Yes") == 0)
            ret = 0;
        else
        ret = 1;
    }
    return(ret);
}

OnEnableFld(Field,Form)

Wird zur Freigabe eines Feldes aufgerufen

Parameter

Nr. Parameter Beschreibung
1 Field Feldname
2 Form Formularnummer

Rückgabewert

0=Keine Änderung, 1=Eingabe freigeben, -1=Eingabe sperren

Verfügbarkeit

Standard

Beispiel

// Variante die verwendet werden soll
OnEnableFldZusatztext(Field, Form)
{
    return(-1);
}
// Variante die aus Performancegründen nicht mehr verwendet werden soll
OnEnableFld(Field, Form)
{
    if(stricmp(Field, ”Zusatztext”) == 0)
        return(-1);
    return(0);
}

OnEnableForm(Form,FormName)

Wird zur Freigabe eines Formulars oder Registers aufgerufen

Parameter

Nr. Parameter Beschreibung
1 Form Formularnummer
2 FormName Formularname

Rückgabewert

0=Keine Änderung, 1=Eingabe freigeben, -1=Eingabe sperren

Verfügbarkeit

Standard

Beispiel

OnEnableForm(Form, FormName)
{
    if(stricmp(FormName, "Bank/Fibu") == 0)
        return(-1);
    return(0);
}

OnEndedSession()

Parameter

Diese Funktion hat keine oder keine benannten Parameter.

Rückgabewert

Diese Funktion gibt keinen Wert zurück.

Verfügbarkeit

Standard


OnEndSession()

Wird bei Systemende aufgerufen. (Nur im System-Makro möglich)

Parameter

Diese Funktion hat keine oder keine benannten Parameter.

Rückgabewert

Diese Funktion gibt keinen Wert zurück.

Verfügbarkeit

Standard


OnEReceiptXmlDocumentCreated()

Wird nach Erstellung eines XML-Datei durch den Xml Export aufgerufen, nur für Pluginmakros möglich

Parameter

Diese Funktion hat keine oder keine benannten Parameter.

Rückgabewert

0=Ausführung fortsetzen, 1=Abbruch

Verfügbarkeit

42 Makro Runtime


OnExitSession()

Parameter

Diese Funktion hat keine oder keine benannten Parameter.

Rückgabewert

Diese Funktion gibt keinen Wert zurück.

Verfügbarkeit

Standard


OnInit()

Parameter

Diese Funktion hat keine oder keine benannten Parameter.

Rückgabewert

Diese Funktion gibt keinen Wert zurück.

Verfügbarkeit

Standard


OnInitChart([Form],[Field])

Parameter

Nr. Parameter Beschreibung
1 Form Optional: Formularnummer, wenn verfügbar
2 Field Optional: Feldname des Diagramm Steuerelements, wenn vorhanden

Rückgabewert

1: Das Array 'data' wurde mit Werten gefüllt. 0=Fehler, keine Anzeige

Verfügbarkeit

42 Makro Runtime


OnInitFldData(Field,Form)

Wird nach Initialisierung eines Feldes durch das Programm aufgerufen

Parameter

Nr. Parameter Beschreibung
1 Field Feldname
2 Form Formularnummer

Rückgabewert

Diese Funktion gibt keinen Wert zurück.

Verfügbarkeit

Standard


OnInitForm(Form)

Parameter

Nr. Parameter Beschreibung
1 Form Formularnummer

Rückgabewert

Diese Funktion gibt keinen Wert zurück.

Verfügbarkeit

Standard


OnInitSession()

Parameter

Diese Funktion hat keine oder keine benannten Parameter.

Rückgabewert

Diese Funktion gibt keinen Wert zurück.

Verfügbarkeit

Standard


OnKillFocus(Field,Form)

Wird bei Verlassen aller Eingabefelder aufgerufen

Parameter

Nr. Parameter Beschreibung
1 Field Feldname
2 Form Formularnummer

Rückgabewert

Diese Funktion gibt keinen Wert zurück.

Verfügbarkeit

Standard

Beispiel

// Variante die verwendet werden soll
OnKillFocusStrasse(Field, Form)
{
    MessageBox (fmt("Es wurde das Feld {0} verlassen", Field), "Information");
}
OnKillFocusOrt(Field, Form)
{
    MessageBox(fmt("Es wurde das Feld {0} verlassen", Field), "Information");
}
// Variante die aus Performancegründen nicht mehr verwendet werden soll
OnKillFocus(Field, Form)
{
    if(stricmp(Field, "Name") == 0)
        MessageBox(fmt("Es wurde das Feld {0} verlassen", Field), "Information");
    if(stricmp(Field, "Strasse") == 0)
        MessageBox(fmt("Es wurde das Feld {0} verlassen", Field), "Information");
    if(stricmp(Field, "Plz") == 0)
        MessageBox(fmt("Es wurde das Feld {0} verlassen", Field), "Information");
    if(stricmp(Field, "Ort") == 0)
        MessageBox(fmt("Es wurde das Feld {0} verlassen", Field), "Information");
}

OnList([FormName],[DocType],[Table])

Wird für jedes Formular einer Liste aufgerufen und ermöglicht die Anpassung einer Liste via Makroskript. Bitte an Stelle des Platzhalters den gewünschten Formularnamen eintragen

Parameter

Nr. Parameter Beschreibung
1 FormName Optional: Formularname
2 DocType Optional: Dokumentart / Name der Tabelle
3 Table Optional: Tabellennummer für den Feldzugriff via GetFld(...)

Rückgabewert

0=Listenverarbeitung fortsetzen, 1=Nächstes Formular, 2=Listenende, 3=Neue Seite

Verfügbarkeit

Standard


OnList[Formularname](DocType,Table)

Wird für jedes Formular einer Liste aufgerufen und ermöglicht die Anpassung einer Liste via Makroskript. Bitte an Stelle des Platzhalters den gewünschten Formularnamen eintragen

Parameter

Nr. Parameter Beschreibung
1 DocType Dokumentart / Name der Tabelle
2 Table Tabellennummer für den Feldzugriff via GetFld(...)

Rückgabewert

0=Listenverarbeitung fortsetzen, 1=Nächstes Formular, 2=Listenende, 3=Neue Seite

Verfügbarkeit

Standard


OnListInit([InitOnly],[DocType],[FormName])

Wird vor Start der Liste aufgerufen, ermöglicht erweiterte Benutzerselektionen oder weitere Druckaufbereitung

Parameter

Nr. Parameter Beschreibung
1 InitOnly Optional: 1:Designermode, 0:Drucklauf, Initialisierung
2 DocType Optional: Tabelle (Datenbezug) des Formulares, wenn vorhanden.
3 FormName Optional: Formularname

Rückgabewert

0=Listenverarbeitung starten, 1=Listenverarbeitung nicht starten

Verfügbarkeit

Standard


OnListOkay(Field,Form,Datensatz)

Wird bei Doppelklick einer Zeile der Liste aufgerufen

Parameter

Nr. Parameter Beschreibung
1 Field Feldname
2 Form Formularnummer
3 Datensatz Index des gewählten Zeile

Rückgabewert

0=Mit Standardfunktion fortsetzen wenn vorhanden, 1=Standardfunktion unterbinden

Verfügbarkeit

Standard


OnLoadedForm(Form)

Parameter

Nr. Parameter Beschreibung
1 Form Formularnummer

Rückgabewert

Diese Funktion gibt keinen Wert zurück.

Verfügbarkeit

Standard


OnLocalTimer()

Timer-Tick im Intervall von StartLocalTimer(), Nur für Pluginmakros möglich

Parameter

Diese Funktion hat keine oder keine benannten Parameter.

Rückgabewert

Diese Funktion gibt keinen Wert zurück.

Verfügbarkeit

42 Makro Runtime


OnLogin(Mandant,User)

Wird nach erfolgreicher Benutzeranmeldung aufgerufen. (Nur im System-Makro möglich)

Parameter

Nr. Parameter Beschreibung
1 Mandant Mandantname
2 User Userkennung

Rückgabewert

0:Userlogin fortsetzten, 1:Userlogin abbrechen

Verfügbarkeit

Standard


OnLogout(Mandant,User)

Wird vor entgültiger Benutzerabmeldung aufgerufen. (Nur im System-Makro möglich)

Parameter

Nr. Parameter Beschreibung
1 Mandant Mandantname
2 User Userkennung

Rückgabewert

Diese Funktion gibt keinen Wert zurück.

Verfügbarkeit

Standard


OnMandant()

Wird bei Mandanenwechsel aufgerufen. (Nur im System-Makro möglich)

Parameter

Diese Funktion hat keine oder keine benannten Parameter.

Rückgabewert

Diese Funktion gibt keinen Wert zurück.

Verfügbarkeit

Standard


OnMenuInit(MenuName,Menu)

Wird bei Erstellung eines Menüs aufgerufen. (Nur im System-Makro möglich)

Parameter

Nr. Parameter Beschreibung
1 MenuName Menüname
2 Menu Menünummer

Rückgabewert

Diese Funktion gibt keinen Wert zurück.

Verfügbarkeit

Standard

Beispiel

Ein Beispiel finden Sie in der Datei 42System.42m im Verzeichnis Makro / Beispiele / Programmierhandbuch Beispiele
OnMenuInit(MenuName, Menu)
{
    if(stricmp(MenuName, "Documents") == 0)
    {
        // Beispiel für das einfügen eines neuen Menüeintrages in der Auswahlleiste unter einem bestehend Menüeintrag
        if((MenuHandle = FindPopupMenu(Menu, "Auswertung")) > 0)
        {
            if(FindMenuItem(MenuHandle, "MeineAuswertung") < 0)
                AddMenuItem(MenuHandle, "MeineAuswertung");
        }
        // Beispiel für das einfügen eines neuen Menüeintrages inkl. neuer Untermenüs in der Auswahlleiste
        if(FindPopupMenu(Menu, "Mein Menü") == 0)
        {
            AddPopupMenu(Menu, "Mein Menü", 10);
            if((MenuHandle1 = FindPopupMenu(Menu, "Mein Menü")) > 0)
            {
                if(FindMenuItem(MenuHandle1, "Mein Eintrag") < 0)
                    AddMenuItem(MenuHandle1, "Mein Eintrag");
                if(FindMenuItem(MenuHandle1, "MakroTest") < 0)
                    AddMenuItem(MenuHandle1, "MakroTest");
            }
        }
    }
    // Neuer Menüeintrag sowohl in allen Dokementmenüs als auch im Hauptmenü
    if(stricmp(MenuName, "Frame") == 0)
    {
        if(FindPopupMenu(Menu, "Haupt und Dokumentmemü") == 0)
        {
            AddPopupMenu(Menu, "Haupt und Dokumentmemü", 3);
            if((MenuHandle2 = FindPopupMenu(Menu, "Haupt und Dokumentmemü")) > 0)
            {
                if(FindMenuItem(MenuHandle2, "Mein Untermenü 1") < 0)
                    AddMenuItem(MenuHandle2, "Mein Untermenü 1");
                if(FindMenuItem(MenuHandle2, "Mein Untermenü 2") < 0)
                    AddMenuItem(MenuHandle2, "Mein Untermenü 2");
            }
        }
    }
    // Neuer Menüeintrag und neues Menü bei definierter Dokumentart
    if(stricmp(MenuName, "Kunde") == 0)
    {
        // Menüitem in bestehendes Kundenmenü einbauen
        if(MenuHandle3 = FindPopupMenu(Menu, "Kunde"))
            if(FindMenuItem(MenuHandle3, "Mein Kundeneintrag") < 0)
            AddMenuItem(MenuHandle3, "Mein Kundeneintrag", 3);
        // neues Popupmenü in bestehendes Kundenmenü einbauen
        if(FindPopupMenu(MenuHandle3, "Mein Kundenmenü") == 0)
        {
            AddPopupMenu(MenuHandle3, "Mein Kundenmenü", 3);
            if((MenuHandle4 = FindPopupMenu(MenuHandle3, "Mein Kundenmenü")) > 0)
            {
                if(FindMenuItem(MenuHandle4, "Mein Kunden Untermenü 1") < 0)
                    AddMenuItem(MenuHandle4, "Mein Kunden Untermenü 1");
                if(FindMenuItem(MenuHandle4, "Mein Kunden Untermenü 2") < 0)
                    AddMenuItem(MenuHandle4, "Mein Kunden Untermenü 2");
            }
        }
        if(FindPopupMenu(Menu, "Mein Kunden Hauptmenü") == 0)
        {
            AddPopupMenu(Menu, "Mein Kunden Hauptmenü", 3);
            if((MenuHandle5 = FindPopupMenu(Menu, "Mein Kunden Hauptmenü")) > 0)
            {
                if(FindMenuItem(MenuHandle5, "Mein Kunden Untermenü 1") < 0)
                    AddMenuItem(MenuHandle5, "Mein Kunden Untermenü 1");
                if(FindMenuItem(MenuHandle5, "Mein Kunden Untermenü 2") < 0)
                    AddMenuItem(MenuHandle5, "Mein Kunden Untermenü 2");
            }
        }
    }
    // Neues Dokumentspezifisches Menü
    if(stricmp(MenuName, "MakroTest") == 0)
    {
        if(FindPopupMenu(Menu, "MakroTest") == 0)
        {
            AddPopupMenu(Menu, "MakroTest", 3);
            if((MenuHandle6 = FindPopupMenu(Menu, "MakroTest")) > 0)
            {
                if(FindMenuItem(MenuHandle6, "Mein Untermenü 1") < 0)
                    AddMenuItem(MenuHandle6, "Mein Untermenü 1");
                if(FindMenuItem(MenuHandle6, "Mein Untermenü 2") < 0)
                    AddMenuItem(MenuHandle6, "Mein Untermenü 2");
            }
        }
    }
}
OnCommand(Form, Cmd)
{
    if(stricmp(Cmd, "Mein Eintrag") == 0)
    {
        MessageBox("Mein Eintrag", "Menü");
        return(1);
    }
    if(stricmp(Cmd, "Mein Kundeneintrag") == 0)
    {
        MessageBox("Mein Kundeneintrag", "Menü");
        return(1);
    }
    if(stricmp(Cmd, "Mein Kunden Untermenü 1") == 0)
    {
        MessageBox("Mein Kunden Untermenü 1", "Menü");
        return(1);
    }
    if(stricmp(Cmd, "Mein Kunden Untermenü 2") == 0)
    {
        MessageBox("Mein Kunden Untermenü 2", "Menü");
        return(1);
    }
    if(stricmp(Cmd, "Mein Untermenü 1") == 0)
    {
        MessageBox("Mein Untermenü 1", "Menü");
        return(1);
    }
    if(stricmp(Cmd, "Mein Untermenü 2") == 0)
    {
        MessageBox("Mein Untermenü 2", "Menü");
        return(1);
    }
    return(0);
}

OnModified(Field,Form)

Wird bei Verlassen aller geänderter Eingabefelder aufgerufen

Parameter

Nr. Parameter Beschreibung
1 Field Feldname
2 Form Formularnummer

Rückgabewert

Diese Funktion gibt keinen Wert zurück.

Verfügbarkeit

Standard

Beispiel

// Vorbelegung bei geänderten Feldinhalten
OnModified(Field, Form)
{
    if(stricmp (Field, "Kundensuche") == 0)
    {
        if(StartEdit (Form))
        {
            SetFldData (GetCurrentForm(), "Auftragstext", "Vorbelegung nach Kundenauswahl");
            // Mitarbeiterkurz immer mit dem angemeldeten Benutzer belegen
            SetFldData (GetCurrentForm(), "Mitarbeiterkurz", LoginInfo ("Kennung"));
        }
    }
}

OnModifiedDelay(Field,Form)

Wird nach Verlassen aller geänderter Eingabefelder aufgerufen

Parameter

Nr. Parameter Beschreibung
1 Field Feldname
2 Form Formularnummer

Rückgabewert

Diese Funktion gibt keinen Wert zurück.

Verfügbarkeit

Standard


OnOpenForm(Form)

Wird nach Öffnen des Formulares aufgerufen

Parameter

Nr. Parameter Beschreibung
1 Form Formularnummer

Rückgabewert

Diese Funktion gibt keinen Wert zurück.

Verfügbarkeit

Standard


OnQueryDeleteRow(Form,Field,Value)

Wird vor Löschen einer Zeile innerhalb eines Datenbank-Listenfeldes aufgerufen

Parameter

Nr. Parameter Beschreibung
1 Form Formularnummer
2 Field Feldname
3 Value Zeile

Rückgabewert

0=Löschen wird durchgeführt, 1=Löschen verhindern

Verfügbarkeit

Standard


OnReloadForm(Form)

Wird nach Speichern bevor Laden aufgerufen

Parameter

Nr. Parameter Beschreibung
1 Form Formularnummer

Rückgabewert

Diese Funktion gibt keinen Wert zurück.

Verfügbarkeit

Standard


OnResetForm(Form)

Wird nach Initialisierung eines neuen Dokuments durch den Benutzer aufgerufen

Parameter

Nr. Parameter Beschreibung
1 Form Formularnummer

Rückgabewert

Diese Funktion gibt keinen Wert zurück.

Verfügbarkeit

Standard


OnResetRow(Form,Field)

Wird nach Initialisierung eines neuen Datensatzes innerhalb eines Datenbank-Listenfeldes durch den Benutzer aufgerufen

Parameter

Nr. Parameter Beschreibung
1 Form Formularnummer
2 Field Feldname

Rückgabewert

Diese Funktion gibt keinen Wert zurück.

Verfügbarkeit

42 Makro Runtime


OnSavedRecord(DocType,Table,NewFlag)

Wird nach Archivierung eines Datensatzes aufgerufen. (Nur im System-Makro möglich)

Parameter

Nr. Parameter Beschreibung
1 DocType Dokumentart
2 Table Tabellennummer
3 NewFlag Neu-Kennzeichen: 0=vorhandener Eintrag, 1=neuer Eintrag

Rückgabewert

Diese Funktion gibt keinen Wert zurück.

Verfügbarkeit

Standard

Beispiel

Ein Beispiel finden Sie in der Datei 42System.42m im Verzeichnis Makro / Beispiele / Programmierhandbuch Beispiele
OnSavedRecord(DocType, Table, NewFlag)
{
    if(stricmp(DocType, "Kunde") == 0)
    {
        Name = GetFld("Name", Table, 1);
        KndNr = GetFld("Kundennummer", Table, 1);
        MessageBox(fmt("Sie haben den Kunden {0} mit der Kundennummer {1} erfolgreich anleget!", Name, KndNr), "Information aus dem System-Makro");
    }
}

OnSaveModified(Form)

Wird zum Speichern eines geänderten Datensatzes aufgerufen

Parameter

Nr. Parameter Beschreibung
1 Form Formularnummer

Rückgabewert

-1:Daten verwerfen, 1:Abbruch 0:Speichern

Verfügbarkeit

Standard

Beispiel

OnSaveModified(Form)
{
    KndNr = GetFldData (Form, "Kundennummer");
    if(KndNr <> 666666)
        return(0);
    MessageBox ("Kundennummer "+KndNr+" nicht zulässig!");
    return(-1);
}
OnSaveModified(Form)
{
    TelefonNr = GetFldData (Form, "Telefon");
    Telefon = left (TelefonNr, 4);
    if(stricmp(Telefon, "0049") == 0)
        return(0);
    MessageBox("Die Telefonnummer "+Telefon+" ist nicht zulässig!\r\n\r\nDie Telefonnummer muß mit >> 0049 << beginnen"');
    return(-1);
}
// Initialisierungen bei geänderten Datensätzen
OnSaveModified(Form)
{
    // prüfen ob in dem Feld schon ein Inhalt vorhanden ist
    // nur bei leerem Feld das Feld Auftragstext befüllen
    erg = GetFldData (Form, "Auftragstext");
    if(strlen(erg) <= 0)
        SetFldData (GetCurrentForm (), "Auftragstext", "Vorbelegung bei SaveModified");
    // Feld Mitarbeiter immer mit dem angemeldeten Benutzer belegen
    SetFldData (GetCurrentForm (), "Mitarbeiterkurz", LoginInfo ("Kennung"));
    return(0);
}

OnSaveRecord(DocType,Table,NewFlag)

Wird vor Archivierung eines Datensatzes aufgerufen. (Nur im System-Makro möglich)

Parameter

Nr. Parameter Beschreibung
1 DocType Dokumentart
2 Table Tabellennummer
3 NewFlag Neu-Kennzeichen

Rückgabewert

0:Archivierung durchführen, 1:Archivierung nicht durchführen

Verfügbarkeit

Standard

Beispiel

Ein Beispiel finden Sie in der Datei 42System.42m im Verzeichnis Makro / Beispiele / Programmierhandbuch Beispiele
// Es darf keine Kunde mit dem Namen "Müll" angelegt werden
OnSaveRecord(DocType, Table, NewFlag)
{
    ret = 0;
    if(stricmp(DocType, "Kunde") == 0)
    {
        Name = GetFld("Name", Table, 1);
        if(stricmp(Name, "Müll") == 0)
        {
            MessageBox(fmt("Sie dürfen keinen Kunden mit dem Namen {0} anlegen!", Name), "Information aus dem System-Makro");
            ret = 1;
        }
    }
    return(ret);
}

OnSetFocus(Field,Form)

Wird bei Betreten aller Eingabefelder aufgerufen

Parameter

Nr. Parameter Beschreibung
1 Field Feldname
2 Form Formularnummer

Rückgabewert

Diese Funktion gibt keinen Wert zurück.

Verfügbarkeit

Standard

Beispiel

// Variante die verwendet werden soll
OnSetFocusStrasse(Field, Form)
{
    MessageBox (fmt("Es wurde das Feld {0} fokusiert", Field), "Information");
}
OnSetFocusOrt(Field, Form)
{
    MessageBox(fmt("Es wurde das Feld {0} fokusiert", Field), "Information");
}
// Variante die aus Performancegründen nicht mehr verwendet werden soll
OnSetFocus(Field, Form)
{
    if(stricmp(Field, "Name") == 0)
        MessageBox(fmt("Es wurde das Feld {0} fokusiert", Field), "Information");
    if(stricmp(Field, "Strasse") == 0)
        MessageBox(fmt("Es wurde das Feld {0} fokusiert", Field), "Information");
    if(stricmp(Field, "Plz") == 0)
        MessageBox(fmt("Es wurde das Feld {0} fokusiert", Field), "Information");
    if(stricmp(Field, "Ort") == 0)
        MessageBox(fmt("Es wurde das Feld {0} fokusiert", Field), "Information");
}

OnStartedSession()

Wird nach erfolgreichen Systemstart (inkl. Login) aufgerufen. (Nur im System-Makro möglich)

Parameter

Diese Funktion hat keine oder keine benannten Parameter.

Rückgabewert

Diese Funktion gibt keinen Wert zurück.

Verfügbarkeit

Standard

Beispiel

Ein Beispiel finden Sie in der Datei 42System.42m im Verzeichnis Makro / Beispiele / Programmierhandbuch Beispiele
OnStartedSession()
{
    // Dokumentart mit Datenbankdefinition registrieren
    // Datenbankdefinition und Formulare finden Sie im Verzeichnis Makro / Beispiele / Programmierhandbuch Beispiele
    RegisterDocType ("MakroTest", "XTabKey", "XMltKey", "1", "1", "1", "1");
    // Registierung für ein Dokumentspezifisches Menü
    RegisterDocMenu ("MakroTest");
    // Dokumentart ohne Datenbankdefiniton registrieren (Dokumentname = Formularname)
    // zum Test müssen Sie ein Formular mit dem Dateinamen MeineAuswertung.for" erstellen
    RegisterDocType ("MeineAuswertung");
}

OnStartSession()

Wird bei Systemstart aufgerufen. (Nur im System-Makro möglich)

Parameter

Diese Funktion hat keine oder keine benannten Parameter.

Rückgabewert

Diese Funktion gibt keinen Wert zurück.

Verfügbarkeit

Standard


OnTimer()

Parameter

Diese Funktion hat keine oder keine benannten Parameter.

Rückgabewert

Diese Funktion gibt keinen Wert zurück.

Verfügbarkeit

Standard

Beispiel

Ein Beispiel finden Sie in der Datei 42System.42m im Verzeichnis Makro / Beispiele / Programmierhandbuch Beispiele
Siehe auch StartTimer
OnTimer()
{
    print("Timer Aufruf alle 20 sec : "+SysTime())
}

OnUserBreak()

Wird bei Abbruch Benutzerabbruch des Makros aufgerufen.

Parameter

Diese Funktion hat keine oder keine benannten Parameter.

Rückgabewert

1:Abbruch, 0:Userabfrage, -1:Fortsetzen

Verfügbarkeit

Standard


OnUserMessage([Value],[Text],[Text],[Hyperlink],[Text])

Parameter

Nr. Parameter Beschreibung
1 Value Optional: Eindeutige Id dieser Meldung
2 Text Optional: Angezeigter Text
3 Text Optional: Kommando: Hyperlink=Ein Hyperlink im Text wurde angeklickt, Close=Meldung wurde geschlossen
4 Hyperlink Optional: Angeklickter Link / Text
5 Text Optional: Eventdaten: Die übergebenen Parameter von UserMessage() zur Verarbeitung

Rückgabewert

Diese Funktion gibt keinen Wert zurück.

Verfügbarkeit

Standard


OnValidatedField(Form,Field,Value)

Wird nach Prüfung des Inhaltes innerhalb eines Datenbank-Listenfeldes nach Eingabe durch den Benutzer aufgerufen

Parameter

Nr. Parameter Beschreibung
1 Form Formularnummer
2 Field Feldname
3 Value Feldinhalt

Rückgabewert

0=Feldinhalt okay, 1=Inhalt nicht gültig, ggf. Korrektur oder Vorbelegung anderer Felder durch SetFldProperty() erfolgt

Verfügbarkeit

Standard


OnValidateField(Form,Field,Value)

Wird vor Prüfung des Inhaltes innerhalb eines Datenbank-Listenfeldes nach Eingabe durch den Benutzer aufgerufen

Parameter

Nr. Parameter Beschreibung
1 Form Formularnummer
2 Field Feldname
3 Value Feldinhalt

Rückgabewert

0=Feldinhalt okay, 1=Inhalt nicht gültig, ggf. Korrektur oder Vorbelegung anderer Felder durch SetFldProperty() erfolgt

Verfügbarkeit

Standard