OBJ V9.18.3
[#13174] Neuer generischer Klassifizierungshandler für die Formula Engine
Die Formel Engine kann seit einiger Zeit nicht nur mit Tabellen sondern auch mit programmierten sog. Handlern umgehen. Neu wird ein universeller Klassifizierungshandler bereitgestellt, der anhand der bereits vorhandenen Tabellendaten ein Zugriff auf die Klassifizierung ermöglicht.
Der Zugriff auf die Klassifizierungsdaten, insbesondere bei der Anlage, ist je nach Objekt und Anwendung (Transaktion) sehr unterschiedlich im SAP Standard implementiert. Weiter stehen Klassifizierungsdaten, die nicht mittels Standardwerkzeugen, sondern z.B. über Exits angereichert werden, womöglich nicht im Zugriff. Die ausgelieferte Klasse ist deshalb als Beispielimplementierung zu interpretieren, die in der ausgelieferten Version funktionieren kann, aber je nach Anwendungsfall nicht funktionieren muss. In diesem Fall kann die Implementierung als Beispiel/Vorlage dienen, die Kunden- und Anwendungsfall-spezifisch implementiert wird.
ProNovia Produkte schreiben teilweise ebenfalls Klassifizierungsdaten (z.B. der ProConfiguration Konfigurationstyp). Dies erfolgt jedoch in einem nachgelagerten Schritt. Der Zugriff auf solche Daten ist über die Klassifizierung bei der Anlage nicht möglich. Stattdessen erlauben die meisten Produkte einen Zugriff auf diese Werte über Tabellendaten in der Formel Engine.
Die neue Handlerklasse /PCH/CL_FE_CLASSIF_HANDLER
kann grundsätzlich direkt verwendet werden. Dabei wird in der Pflege in der Formel Engine sowohl das Zielobjekt wie auch das auszuwertende Merkmal manuell ausgewählt. Die verfügbaren Objekttypen werden dabei automatisch von den verfügbaren Tabellen abgeleitet. Bei der Abfrage des Zielmerkmals erfolgt hingegen keine Einschränkung der Merkmale, da diese nur aufwendig anhand der zum Objekttypen definierten Klassenarten und Klassen ermittelt werden könnten. Der Handler unterstützt dabei auch mehrwertige Merkmale.
Der neue Klassifzierungs-Handler steht nicht automatisch in der Formel Engine zu Verfügung. Die Aktivierung des Handlers erfolgt im Kontext von konkreten Produkten, Arbeitsgebieten und weiteren Kriterien in jedem Fall über ein entsprechendes BAdI (siehe unten).
Ist der Handler für eine Formel aktiviert, kann der Objekttyp und das Merkmal mittels der Drucktasten hinter dem ausgegrauten Feld ausgewählt werden:
Es erfolgt zuerst die Auswahl des Zielobjekttyps. Ist nur ein Zielobjekttyp verfügbar wird dieser automatisch übernommen und es erfolgt keine zusätzliche Abfrage.
Anschliessend muss das Merkmal gesucht und ausgewählt werden. Hierzu steht die Standardsuchhilfe für Merkmale zu Verfügung.
Nach der Auswahl des Objekttyps und des Merkmals kann die Bedingung wie gewohnt definiert werden.
Es steht eine F4 Hilfe für die Werte zu Verfügung, welche die Standard-Wertehilfe des Merkmals anzeigt.
Kundenspezifische Erweiterung des Handlers
Durch einen Kundenspezifische Erweiterung kann die Pflege der Formel nochmals vereinfacht werden, indem Objekt- und/oder Merkmals-spezifische Handler implementiert werden. Hierzu kann die Wurzelklasse abgeleitet und der Objekttyp und/oder das Merkmal vorbelegt werden. Sind beide Informationen vollständig versorgt, erfolgt keine Auswahl mehr dieser beiden Attribute. Stattdessen steht direkt nach der Auswahl des Handler die Bedingungspflege zu Verfügung. Im folgenden Beispiel wurde sowohl der Objekttyp Dokument als auch das Merkmal Dokumenttyp in einer Z-Implementierung vorbelegt, sodass nur der Handler ausgewählt und anschliessend die Bedingung gepflegt werden muss.
Aktivierung von neuen Handlern
Sämtliche Produkte, die die Formel Engine verwenden definieren sowohl die Tabellen wie auch allfällige Handler statisch, da insbesondere bei Tabellen das Produkt auch entsprechende Daten der Formel Engine bereitstellen muss und somit die Tabellen bekannt sein müssen.
Die Formel Engine stellt den Erweiterungsspot /PRONOVIA/FE zu Verfügung. In der BAdI Methode AFTER_READ kann die Formel Engine kundenspezifisch durch weitere Tabellen und Handler angereichert werden. In der Methode steht das ProNovia Produkt (I_TOOL_ID), das teilweise verwendete Arbeitsgebiet (IV_ARBGB) die interne (I_ID) und externe (I_EXTERNAL_ID) zu Verfügung. Weiter werden die durch das Produkt definierten Tabellen und Handler ebenfalls bereitgestellt.
Bei der Anreicherung ist darauf zu achten, dass der Handler im Kontext der Formel auch funktionieren kann. Der beispielhafte Dokumenttyp-Handler sollte demnach nur bereitgestellt werden, wenn die Formel die Tabelle DRAW unterstützt. Aufgrund der Architektur der Formel Engine ist ein vollständige, konsistete Fehlerbehandlung nicht möglich. Werden Handler im falschen Kontext verwendet, können unerwartete Fehler (einschliesslich Laufzeitfehler) auftreten.
[#13171] Unterschiedliche Meldung bei Statusvalidierung in SAP Standard / ProFramework Anwendungen
Soll auf einem Objekt ein Status gewechselt werden, dann wird in den SAP Standardanwendungen eine konkrete Fehlermeldung ausgegeben. In ProNovia Anwendungen, die auf dem ProFramework basieren wird allerdings nur eine allgemeine Fehlermeldung ausgegeben, die keine Rückschlüsse auf die Ursache zulassen.
Dies wurde korrigiert.
© ProNovia AG | Imprint | Data Protection