Funktionen können anwendungsspezifisch über das Customizing ausgeblendet werden. Zur Anwendungsdefinition können nicht erwünschte Funktionen zur Tabelle Inaktive Funktionen hinzugefügt werden.
Sollen Funktionen jedoch dynamisch ausgeblendet oder geändert werden, muss dies über das BAdI /PCH/CFW_CTRL_FUNCTION des Erweiterungsspot /PCH/CFW_APPLICATION erfolgen. Das BAdI verfügt über einen Filter, mit dem definiert werden kann, in welchen Anwendungen die Erweiterung aktiviert werden soll.
- Die Methode PROVIDE wird aufgerufen, nachdem die Funktion durch den Standardcode vollständig ausgeprägt wurde. Die Methode stellt verschiedene Informationen bereit:
- IV_FUNCTION, der Name der Funktion
- IO_NODE / IT_NODES, das Objekte (oder mehrere Objekte) auf denen die Funktion angewendet werden soll
- IO_REFERENCE_NODE, je nach Funktion ein indirektes Referenzobjekt
In der Methode können folgende Informationen geändert werden:
- CV_HIDDEN, Sichtbarkeit der Funktion
- CV_DISABLED, Aktivierung der Funktion
- CV_TEXT, CV_TEXT_MULTI, Text bei einem oder mehreren Objekten
- CV_MIME_OBJECT_ID, Name der Ikone
- CT_SUB_ENTRIES, allfälliges Untermenü, das die oben beschriebenen Attribute ebenfalls enthält.
Ausblenden vs. Deaktivieren
Funktionen die durch den Standard bereits ausgeblendet oder deaktiviert wurden, sollten nie wieder aktiviert oder eingeblendet werden.
Das ProFramework verfolgt ein klares Konzept bzgl. Ausblenden und Deaktivieren von Funktionen. Es ist eine Stärke des Frameworks, dass dem Benutzer zu jedem Zeitpunkt nur die Funktionen angeboten werden, die er auch ausführen kann. Dabei werden Funktionen, die der Benutzer nie ausführen kann immer ausgeblendet. Funktionen werden nur dann deaktiviert, wenn der Benutzer diese Funktionen zwar grundsätzlich ausführen darf, dies zum aktuellen Zeitpunkt jedoch nicht möglich ist (z.B. wegen einer Sperre durch einen anderen Benutzer).