Ansicht
Dokumentation
FRML984_STATCHNG_AT_CHECK - Rezeptformel: Prüfungen bei Statusänderungen
CL_GUI_FRONTEND_SERVICES - Frontend Services BAL Application Log DocumentationDiese Dokumentation steht unter dem Copyright der SAP AG.
Funktionalität
Mit dieser Funktion prüfen Sie die Zulässigkeit von Statusänderungen in den Geltungsbereichen einer Formel. Die Funktion wird in der Standardauslieferung gerufen, wenn Sie auf der Formelsicht Geltungsbereich eine Eingabe mit Enter bestätigen (siehe Umgebungsparameter FRML_ASCP_UEXIT_CHK).
Umfang der Prüfung
Geprüft wird, ob zu einer Formel zwar Einsatzmaterialien, jedoch keine Ausbeutematerialien gepflegt sind. Liegt diese Inkonsistenz vor, so gilt:
- Sie können den Status Freigegeben im Geltungsbereich nicht setzen.
- Wenn Sie den Status Zur Freigabe setzen, erhalten Sie eine entsprechende Warnung.
Einschränkung:
Abhängige
Formeln haben keinen eigenen Status. Für sie gilt der Status des zugehörigen Rezepts. Die beschriebene Prüfung ist daher nur bei eigenständigen Formeln wirksam.
Hinweise zur Anpassung
Wenn Sie Statusänderungen anhand unternehmensspezifischer Kriterien prüfen wollen, können Sie dem Umgebungsparameter FRML_ASCP_UEXIT_CHK eine eigene Funktion zuordnen. Verwenden Sie als Kopiervorlage den vorliegenden Funktionsbaustein. Die Schnittstelle des Funktionsbausteins darf nicht verändert werden.
Die Funktion erhält von der Aufrufumgebung die Menge an Statuswechseln, die beim Sichern vorliegt. In der Funktion können Sie die einzelnen Statuswechsel prüfen und ggf. ablehnen. Sie können zu jedem abgelehnten Statuswechsel eine individuelle Fehlermeldung angeben, die später von der Aufrufumgebung zum geeigneten Zeitpunkt ausgegeben wird. Wenn Sie keine Nachricht angeben, wird eine Standardnachricht ausgegeben.
Schnittstelle: Importierte Daten
Die Importparameter enthalten Informationen über den übergeordneten Kontext an (Formelschlüssel, Änderungsnummer und Stichtag, OK-Code etc.).
Der boolscher Parameter I_FLG_DIALOG teilt außerdem mit, ob der Aufruf in der Dialog- oder in der API-Logik stattfindet.
Die Menge der Statuswechsel wird in Form von drei Tabellenparametern angegeben:
- Tabelle der aktuellen Statuseinträge (I_IOTAB_SAV)
- Tabelle der Statuseinträge, wie sie nach den geplanten Änderungen aussehen würden (I_IOTAB)
- In dieser Tabelle befindet sich das Attribut LINEMOD. Mit diesem Attribut wird für jeden Datensatz festgehalten, wie er geändert worden ist:
- 'I': Der Datensatz wurde neu angelegt.
- 'U': Der Datensatz wurde geändert.
- ' ': Der Datensatz war schon vorher vorhanden und ist nicht verändert worden.
- Tabelle der geplanten Löschungen von Statuseinträgen (I_IOTAB_DEL)
- Diese Tabelle zeigt die zu löschenden Datensätze an. Mit dem Attribut LINENO, das in allen Tabellen vorhanden ist und die Zeilennummer angibt, können die Datensätze identifiziert werden. Um bei Datensätzen in der zweiten Tabelle mit dem LINEMOD-Wert 'U' den neuen mit dem alten Stand zu vergleichen, muß der Funktionsbaustein den Datensatz in der ersten Tabelle ermitteln, der denselben Wert im Attribut RECN besitzt.
- Die Tabellen müssen nicht immer nach dem Attribut LINENO sortiert sein. Änderungen an den Eingabeparametern haben keine Wirkung, da sie lokale Kopien der tatsächlichen Parameter sind. Sie können die Tabellen bei Bedarf also auch umsortieren.
Schnittstelle: Exportierte Daten
Im Funktionsbaustein können Sie den Tabellenparameter E_STATUS_CHANGES_REFUSED_TAB mit folgenden Attributen befüllen, um geplante Änderungen von Statuseinträgen abzulehnen:
- DEL (= initial: LINENO bezieht sich auf die zweite Tabelle;
- = 'X': LINENO bezieht sich auf die dritte Tabelle)
- LINENO
- Nachrichtennummer
- Nachrichtenklasse
- Nachrichtentyp
- Nachrichtenplatzhalter Nr. 1
- Nachrichtenplatzhalter Nr. 2
- Nachrichtenplatzhalter Nr. 3
- Nachrichtenplatzhalter Nr. 4
Dabei verweist die Kombination DEL, LINENO auf die Zeile der Eingabetabellenparameter, deren Änderung Sie ablehnen wollen. In den übrigen, optionalen Attributen können Sie eine eigene Fehlermeldung ausgeben. Während der Sicherung der Daten werden Ihre Angaben in der Ausgabetabelle ignoriert.
Beispiel
Hinweise
Weiterführende Informationen
IMG-Aktivität Umgebungsparameter definieren und bewerten
Parameter
E_STATUS_CHANGES_REFUSED_TABI_ACTYPE
I_ADDINF
I_FLG_DIALOG
I_IOTAB
I_IOTAB_DEL
I_IOTAB_SAV
I_KEYPATH
I_OKCODE
I_TRTYPE
X_ADD_PARAMS
Ausnahmen
ILLEGAL_INPUTINTERNAL_ERROR
Funktionsgruppe
FRML984CL_GUI_FRONTEND_SERVICES - Frontend Services BAL_S_LOG - Application Log: Log header data
Diese Dokumentation steht unter dem Copyright der SAP AG.
Length: 6157 Date: 20240604 Time: 105036 sap01-206 ( 92 ms )