Dieses Entwicklungstool (Java-Package) setzt sich im wesentlichen aus 5 Bereichen (Package) zusammen. 3 Definitionsbereiche und 2 Funktionsbereiche. Die Definitionsbereiche beschreiben den Aufbau und die Struktur einer EDIFACT-Nachricht. Die Funktionsbereiche steuern und verarbeiten die EDIFACT-Nachricht bzw. die EDIFACT-Daten.
- edifact.datenelemente.*
- Dieses Datenelementverzeichnis enthält eine Aufstellung einiger Datenelemente, die in den Segmenten der EDIFACT-Nachrichtentypen vorkommen können, die bis einschließlich Juli 2001 veröffentlicht wurden. Für codierte Datenelemente sind die entsprechenden Codewerte einzutragen. Jedes Datenelement ist mit folgenden Informationen versehen: Definition, Name und Beschreibung. Ein Datenelement ist der Grundbaustein, der eine Information darstellt. Es ist vergleichbar mit einem Datenfeld. Die Datenelemente stehen innerhalb eines Segmentes immer in einer fest definierten Reihenfolge. Anhand ihrer Position im Segment können sie identifiziert werden.
- edifact.gruppen.*
- Die Datenelementgruppe ist eine Zusammenfassung von Datenelementen mit Informationen, die in einem sachlichen oder logischen Zusammenhang stehen. Die Datenelemente und Datenelementgruppen stehen innerhalb eines Segmentes immer in einer fest definierten Reihenfolge. Anhand ihrer Position im Segment können sie identifiziert werden.
- edifact.segmente.*
- Das Segment ist die Zusammenfassung von logisch zusammenhängenden Datenelementen und/oder Datenelementgruppen. Es ist vergleichbar mit einem Datensatz. Die Segmente stehen innerhalb einer Nachricht immer in der im Nachrichtenaufbau-Diagramm definierten Reihenfolge. Jedes Segment wird durch einen Segment-Bezeichner identifiziert. Es werden Nutzdaten-Segmente und Service-Segmente unterschieden. Die Nutzdaten-Segmente enthalten alle Informationen des Geschäftsvorgangs. Die Service-Segmente dienen als Nutzdatenrahmen der Identifikation und Strukturierung der Übertragungsdatei.
- edifact.funktionen.*
- EDIFACT-Daten einlesen. Die Klasse EDIDataReader liest EDI-Daten entweder als Datei oder als InputStream ein und gibt als Ergebnis ein Vector mit den Segmenten und Feldinhalten zurück. Struktur des Ergebis: Vector(Segmente)->Vector(Feldinhalt;Nr. Datenelement;Nr. Gruppendatenelement). Folgende Parameter können an die Klasse übergeben werden:
- ohne: Ein Datei-Öffnen Dialog wird angezeigt. Eine EDI-Datei kann manuell ausgewählt werden.
- Dateiname der EDI-Datei: Die EDI-Datei wird eingelesen und an die Verarbeitung übergeben.
- InputStream: EDI-Daten werden als Stream an die Klasse übergeben und an die Verarbeitung weitergeleitet.
- EDIFACT-Daten schreiben. Mit der Klasse EDIDataWriter kann eine Datei geöffnet werden, indem der Dateiname als String-Parameter StringEDIData übergeben wird. Falls StringEDIData eine bereits vorhandene Datei bezeichnet, wird sie geöffnet und ihr bisheriger Inhalt gelöscht, andernfalls wird eine neue Datei mit diesem Namen angelegt. Sukzessive Aufrufe von outputEDIRecord(String StringEDIData) schreibt weitere Segmente in diese Datei.
- EDIFACT-Segment komprimieren. Die Klasse CompressSegment() ist Bestandteil der Segmentdefinitionen und wird hier nicht weiter beschrieben.
- EDIFACT-Segment dekomprimieren. Die Klasse DeCompressSegment() ist Bestandteil des EDIDataReader und wird hier nicht weiter beschrieben.
- edifact.funktionen.xml.*
- XML-Daten generieren. Die Klasse GenerateEdiToXml
generiert EDIFACT-Strukturen/Daten in XML-Strukturen/Daten.
- setXmlFileForEDIKeys(String xmlfile): Dateiname der XML-Datei mit den EDI/XML Umschlüsselungen
- changeEdiToXml(Vector ediRecords): Generiert die XML-Daten aus dem EDI-Vector (Siehe bitte EDIDataReader)
- org.w3c.dom.Document getXmlDocument(): Gibt die generierten XML-Daten als DOM Document zurück.
- petools.*
- Systemdatum lesen. Die Methode getdatum() der Klasse EDITools liest das Systemdatum ein und gibt das Datum im Format JJMMTT wieder zurück. Das gelesene Datum kann dann in die entspr. EDIFACT-Felder übertragen werden.
- Systemzeit lesen. Die Methode getzeit() der Klasse EDITools liest die Systemzeit ein und gibt die Uhrzeit im Format HHMM wieder zurück. Die gelesene Uhrzeit kann dann in die entspr. EDIFACT-Felder übertragen werden.
- Referenznummer vergeben. Die Methode getReferenzNummer() der Klasse EDITools generiert eine eindeutige Referenznummer. Das Generieren einer Referenznummer wird nur benötigt, wenn keine eigenen Referenznummern gebildet werden können. Eine eindeutige Referenznummern wird z.B. im UNB-Segment - Feld 0020 - Datenaustauschreferenz - benötigt. Die Datenaustauschreferenz wird vom Sender der Übertragungsdatei generiert und dient der eindeutigen Identifikation jeder Übertragungsdatei.
- saptools.*
-
Mit dieser Funktion kann aus einer Idoc-Beschreibung ein SQL-Script generiert werden.
Die IDOC-Beschreibung kann mit der Transaktion WE60 (unkonvertiert) exportiert werden.
Als Ergebnis wird eine SQL-Statement-Datei erzeugt/generiert. Dieses Statement auf der Zieldatenbank ausgeführt,
erstellt die entspr. Datenbanktabellen um EDI-Daten in IDOC-Strukturen abzulegen.
Wird kein Parameter mitgegeben, wird ein Datei-Oeffnen-Dialog gestartet.
Hier kann dann die aus SAP exportierte IDOC-Beschreibung ausgewählt werden.