29.07.2015
Anton Grening
Autor: Anton Grening

Spre­chen­de Na­men bei be­rech­net­en Fel­dern im ACL™ Skript

Heute werde ich auf den Unterschied zwischen technischen Feldnamen und angezeigten Spaltentitel eingehen und erklären wo die Unterschiede liegen und wie diese Texte anzugeben bzw. zu ändern sind. Dabei werden Sie beide Wege kennenlernen, zum einen über die ACL™ GUI und zum anderen innerhalb eines Skriptes. Denn vielleicht haben Sie es auch manchmal mit schwer verständlichen Spaltenbezeichnungen in ACL™ zu tun, evtl. arbeiten Sie sogar mit SAP® Daten und versuchen Herr über die vielen Abkürzungen in Tabellen- und Feldnamen zu werden. Dann geht es Ihnen ähnlich wie uns, wenn wir Daten aus SAP® Systemen extrahieren und darauf Skripte für die verschiedensten Analysen entwickeln. Damit aber unsere Kunden bei der Betrachtung der exportierten Tabellen und der Auswertungsergebnisse sofort sprechende Spaltenbezeichnungen erhalten, erweitert unser dab:Exporter schon beim Extrahieren der Daten die technischen Namen ganz automatisch um einen alternativen Spaltentitel. (Diese Felder werden den SAP® Logondaten entsprechend aus dem System gezogen)

SAP® - Felder

Bild 1: Auszug aus SAP® - Feldbezeichnungen

Der technische Name wird programmintern verwendet und stellt sicher, dass ein Feld immer richtig angesprochen werden kann, z.B. auch unabhängig von der Systemsprache. Dieser Name ist meistens eher unverständlich und abgekürzt, da es sinnvoll ist diese Bezeichnung möglichst kurz zu halten. Aus diesem Grund bietet auch ACL™ die Möglichkeit diesen technischen Namen (begrenzt auf 31 Zeichen), um einen alternativen Spaltentitel zu erweitern. Dieser wird ausschließlich für die Anzeige verwendet und kann deutlich ausführlicher und sprechender ausfallen (max. 150 Zeichen). Im Rahmen des Datenexports passen wir diese Namen sogar an Ihre gewünschte Sprache an, wodurch das Sichten und Deuten der Ergebnisse noch einfacher ausfällt. Dies erleichtert die Sache enorm, wenn Sie z.B. auf einem internationalen Audit mit englischsprachigen Kollegen zusammenarbeiten – deutsche Spaltentitel wären dabei nicht sehr hilfreich.
Wie schon angedeutet, sind die Daten direkt nach dem Export mit einem Exporttool wie dem dab:Exporter ohnehin sprechend bezeichnet. Leicht anders gelagert ist der Fall, dass man selber berechnete Felder (sog. computed fields) in ACL™ kreiert, z.B. in Rahmen eigener Skripte. Der Großteil unter Ihnen hat sicherlich die Vorzüge der ACL™ Skriptsprache bereits erkannt und kennt den Befehl für das Erzeugen eines solchen Feldes. Hier am Beispiel für die Berechnung des Gesamtwertes aus Menge mal Preis in der Audit Command Language, der Skriptsprache von ACL™:

DEFINE FIELD c_Wert COMPUTED Menge * Preis

„c_Wert“ ist dabei der technische Name dieses einfach berechneten Feldes und wird gleichzeitig auch der Spaltentitel in der Datenansicht.

Spaltentitel alternativ

Bild 2: Berechnetes Feld ohne sprechenden Spaltentitel

Nun ist das nicht sonderlich aussagekräftig. Schöner wäre, wenn man eine Bezeichnung hätte wie „Gesamtwert Menge * Preis (in Belegwährung)“ oder ähnliches. Das aber lässt sich aber auf Grund von Restriktionen (Länge, Sonderzeichen, Umlaute) nicht direkt als technischer Name verwenden: Was also tun? Es lässt sich so lösen, dass beide Anforderungen erfüllt sind, also der technische Name kurz und einfach, und die Bezeichnung aussagekräftig und gut lesbar ist.

Dazu gibt es grundsätzlich zwei Möglichkeiten, einmal über die GUI und einmal direkt im Skriptcode: Möchte man diesem neu berechneten Feld mit dem technischen Namen c_Wert einen sprechenden Namen geben, so muss es entweder im Tabellenlayout bearbeitet werden (STRG + i und Doppelklick auf das Feld) – oder aber man erledigt das gleich beim Erzeugen des Feldes im Skript. In diesem Fall muss der Befehl nur um den Parameter „AS“ ergänzt und folgende Syntax beachtet werden:

DEFINE FIELD c_Wert COMPUTED
AS „Gesamtwert Bestellanforderung (c)“
Menge * Preis

Spaltentitel sprechend

Bild 3: Berechnetes Feld mit sprechendem Spaltentitel

So erhält man einen sprechenden Namen in der Datenansicht und kann diese Spalte viel einfacher zuordnen. Ein häufiger Fehler bei der Vergabe eines alternativen Spaltentitels im Skript ist, dass der Befehl nicht in drei Zeilen geschrieben wird. Das setzt ACL™ allerdings für den DEFINE-Befehl voraus, wenn mit optionalen Parametern wie dem „AS“ gearbeitet wird. Außerdem empfiehlt es sich stets anzugeben, dass dieses Feld ein eigens berechnetes und kein importiertes Feld ist. Dazu verwenden wir ein kleines „c“ in Klammern (steht für computed) oder das führende „c_“ beim technischen Namen. So ist sofort ersichtlich, dass dieses Feld in ACL™ erzeugt wurde und nicht aus den original zu analysierenden Daten stammt.

Ein Tipp: Sollten Sie nun für Filter oder ähnliches wieder den technischen Namen benötigen, aber nicht mehr wissen, dann können Sie den Spaltennamen auch ganz einfach Doppelklicken und erhalten hier beide Namen gemeinsam angezeigt:

Spalteninformationen

Bild 4: Spalteninformationen – technischen Namen und alternativen Spaltentitel anzeigen

Achtung: Wenn Sie hier den alternativen Spaltentitel ändern, dann seien Sie sich bewusst, dass dies an dieser Stelle nur für diese gerade angewählte und angezeigte Spalte gilt (nur aktueller View). Möchten Sie den Titel generell für alle Ansichten und Vorkommnisse dieses Feldes ändern, müssen Sie das im Tabellenlayout erledigen.

Haben Sie noch Fragen oder Kommentare? Dann schreiben Sie uns doch einfach an info@dab-gmbh.de.


Kommentare (0)
Sei der erste, der diesen Blog-Beitrag kommentiert.
Blog Anmeldung

Sie sind nicht angemeldet. Bitte melden Sie sich an um diesen Blogbeitrag zu kommentieren.

anmelden