In diesem Artikel möchte ich dem Grund nachgehen, warum SAP® Tabellen über den Transaktionscode SE16 in der SAP® GUI betrachtet, anders aufgebaut sind, verglichen zu den über ein Extraktionstool heruntergeladenen. Dazu werde ich erklären wie SAP® Daten scheinbar in lediglich einer Tabelle abspeichert, diese aber tatsächlich in Tabellen mit Einstellungen und technischen Informationen („Customizing-Tabellen“) und Tabellen mit Beschreibungen und sprachabhängigen Langtexten („Text-Tabellen“) verwaltet werden. Außerdem werden Sie erfahren wo SAP® diese zwei Tabellen verbindet und wie Sie ermitteln können, in welchen Datenbanktabellen die benötigten Informationen eigentlich zu finden sind.
Der heutige Blogeintrag richtet sich an erfahrene ACL™ Anwender, die unter Umständen mit verschiedenen ACL™ Versionen, insbesondere den UNICODE und NONE-UNICODE Varianten der Software, arbeiten.
Am 01. und 02. Juni haben wir auch in diesem Jahr in Kooperation mit unserer Tochtergesellschaft AM:DataConsult, die DIIR – IT-Tagung in Frankfurt als Silber-Sponsor begleitet. Die Veranstaltung beschäftigte sich wie gewohnt mit den „Aktuellen Entwicklungen, Methoden, IT-Sicherheit, Tools und Technik“ und konnte in diesem Jahr über 250 Teilnehmer zählen.
Im ersten Teil dieser Reihe haben wir einige praktische ACL™-Funktionen auf Textfelder kennengelernt und haben gesehen wie einfach es ist diese Felder zu kombinieren.
In der Regel gehören alle Informationen möglichst in separate Spalten (Felder) gespeichert, damit diese einzeln angesprochen und ohne Umwege ausgewertet werden können. Allerdings kann es auch vorkommen, dass es sinnvoller ist, mehrere Informationen in einem Feld gemeinsam zu speichern - (Beispielsweise Straßenname und Hausnummer). Oder man benötigt zwei Felder kombiniert in einem, um sie zusammen analysieren zu können, so wie wir das im vorherigen Blogeintrag mit der Anschrift getan haben. Sollen also zwei Textfelder zu einem zusammengefügt werden, so lassen sich diese in ACL™ ganz einfach über ein Pluszeichen (z.B.: Straße + Nr) verbinden. (sog. Konkatenation) Was hierbei nicht vergessen werden darf, ist der Datentyp. Zwar lautet der Feldname in diesem Beispiel „Nr“ (für Hausnummer) verbirgt sich dahinter jedoch ein Textfeld, da man diese Angabe für gewöhnlich nicht für Berechnungen verwendet. Diese Vorgehensweise zum Verbinden setzt also voraus, dass es sich bei allen zu kombinierenden Felder um Texte handeln muss. Textfelder haben eine feste Länge, was dazu führt, dass auch die Leerzeichen zum Auffüllen in das neu erzeugte Feld übernommen werden (Ausnahme: Der Text schöpft, die volle Feldbreite aus). Ein möglicher Lösungsansatz für das saubere Verbinden wurde bereits in unserem vorherigen Blogeintrag geliefert. Heute zeige ich Ihnen wie das in ACL™ aussehen könnte