Menübefehl wird ausgeführt

Das Ereignis wird ausgeführt, wenn ein Menübefehl ausgeführt wird.

Hinweis: Das Ereignis erfordert das etwaige Beenden des Bearbeiten-Modus (die Rückfrage nach dem Speichern etwaiger Änderungen). Wählt der Benutzer bei der Rückfrage "Abbrechen", so wird das Ereignis nicht ausgeführt. Scripte für dieses Event unterstützen jedoch <!--#pragma keepeditmode--> und <!--#pragma autosave-->.

Menü:

      Data: <MenuID> (siehe Kapitel Menü-IDs für die entsprechenden Menü-IDs, mehrere Menü-IDs können semikolonsepariert angegeben werden)

Relationen-Container:

      Data: <MenuID>|<RelationFieldName#RelationContainerID>|<FieldName>|<FieldContent> (siehe Kapitel Menü-IDs für die entsprechenden Menü-IDs, mehrere Menü-IDs können semikolonsepariert angegeben werden)

Hinweis: <FieldName> und <FieldContent> werden nur dann relevant und gefüllt, wenn der Container-(Kontext-)Menüpunkt im Zusammenhang mit dem konkret angeklickten Feld steht. Also bspw. wenn ein Anwender per Rechtsklick auf ein im Container angezeigtes Dokument klickt und "Dokument mit verknüpfter Anwendung öffnen" ausführt, oder bei einem Rechtsklick auf eine Telefonnummer und dort "Anrufen" ausgeführt wird.

Führt der Anwender auf einen Container-Datensatz einen Doppelklick aus, werden die Data-Elemente <MenuID>, <RelationFieldName#RelationContainerID> und <FieldName> befüllt. Bei einem Doppelklick hinter die letzte Spalte oder per Eingabetaste wird das Data-Element <FieldName> mit dem Feldnamen des ersten Felds befüllt, das der Container kennt (dieses muss nicht zwingend sichtbar sein). In beiden Fällen bleibt das Data-Element <FieldContent> leer.

Termin-Container:

      Data: <MenuID>|:AppointmentsContainer (siehe Kapitel Menü-IDs für die entsprechenden Menü-IDs, mehrere Menü-IDs können semikolonsepariert angegeben werden)

Aufgaben-Container:

      Data: <MenuID>|:TodosContainer (siehe Kapitel Menü-IDs für die entsprechenden Menü-IDs, mehrere Menü-IDs können semikolonsepariert angegeben werden)

Funktionsdefinitionen:

      Data: <MenuID>|<RelationFieldName#RelationContainerID>

Hinweis: Hierbei handelt es sich um die Funktionsdefinitionen, welche als Schaltflächen im Eingabemaskendesigner platziert werden können - bspw. "Container.Löschen" oder "Funktionsdefinition Übernahmemaske". Dabei werden diese Funktionsdefinitionen auf entsprechend passende Menübefehle interpretiert - bspw. wird für die Funktionsdefinition "Container.Löschen" der Menüpunkt "Kontextmenü - Container-Datensatz: Löschen" (ID: 32847) verwendet. Siehe Kapitel Menü-IDs für die entsprechenden Menü-IDs.

Beispiel zum Verhindern des Löschen-Menübefehls (Menü-ID 32774)

VBScript:

MsgBox "Löschen ist nicht erlaubt!"

WScript.Event.Cancel = True ' Verhindern des Befehls

C#-Script:

MessageBox.Show("Löschen ist nicht erlaubt!", cRM.AppTitle, MessageBoxButtons.OK);

Event.Cancel = true; // Verhindern des Befehls

Beispiel zum Verhindern einer Aktion eines Menüpunkts aus dem Container-Kontextmenü

VBScript:

Option Explicit

Dim dataItems

dataItems = Split(WScript.Event.Data, "|", -1, 1)

Dim menuID

menuID = dataItems(0)

Dim relationContainerID

relationContainerID = dataItems(1)

If (relationContainerID = "ID.Aktivitäten.CompanyID#{45F5CAD2-73A1-4D48-B21E-F38D27093D12}") Then

    MsgBox "Sie dürfen hier im Aktivitäten-Container keinen neuen Datensatz anlegen. Daher wird die Aktion nun abgebrochen.", vbOKOnly + vbInformation, "Hinweis/Info"

    WScript.Event.Cancel = True

End If

C#-Script:

string[] dataItems = Event.Data.Split('|');

if (dataItems.Length > 1)

{

    string menuID = dataItems[0];

    string relationContainerID = dataItems[1];

 

    if (relationContainerID == "ID.Aktivitäten.CompanyID#{45F5CAD2-73A1-4D48-B21E-F38D27093D12}")

    {

        MessageBox.Show("Sie dürfen im Aktivitäten-Container keinen neuen Datensatz anlegen. Daher wird die Aktion nun abgebrochen.", cRM.AppTitle + " - Hinweis/Info" , MessageBoxButtons.OK, MessageBoxIcon.Information);

        Event.Cancel = true;

    }

}