Ansicht
Dokumentation

FRML984_STATCHNG_AT_CHECK - Rezeptformel: Prüfungen bei Statusänderungen

FRML984_STATCHNG_AT_CHECK - Rezeptformel: Prüfungen bei Statusänderungen

CL_GUI_FRONTEND_SERVICES - Frontend Services   BAL Application Log Documentation  
Diese Dokumentation steht unter dem Copyright der SAP AG.
SAP E-Book

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_TAB
I_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_INPUT
INTERNAL_ERROR

Funktionsgruppe

FRML984

CL_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 )