SAP bietet hier zwei Varianten an, einmal als Greenfield und einmal als Brownfield Ansatz. Beide Projekte sind Greenfield Projekte. Der zweite Fall ist eine vollständige Migration. Die Daten werden von Teamcenter nach SAP übertragen.
Datenmigration nach dem Greenfield Ansatz.
Die ALE Kommunikation zwischen den SAP-Systemen wird implementiert. Ziel ist es, dass die SAP ECTR Metadaten auf das HANA System übertragen werden können. Die geometrischen Originale werden durch eine Anpassung des symbolischen Links auf dem neuen System bereitgestellt. Die Metadaten werden per IDoc vom ERP auf das HANA System übertragen. Eine Problemstellung hierbei: Jedes IDoc Datensegment ist 1000 Zeichen gross. Die zu übertragenden Zeilen aus mehren ECTR Tabellen müssen entsprechend gesplittet und auf der Empfängerseite wieder konkateniert werden. Die Übertragung erfolgt in ASCII. D. h. numerische Felder müssen nach ASCII konvertiert werden. Tausender Positionen und Kommata sind entsprechend zu korrigieren. Die übertragenen Daten werden auf der Empfängerseite über eine neu erstellte SAP Klasse importiert. Der SAP ATC Check erlaubt keine ?Perform Form? Routinen mehr.
Datenmigration mittels SAP LSMW.
Auch hier spielen nur die Metadaten eine Rolle. Diese werden von einem weiteren Team aus Teamcenter abgezogen und im CSV Format aufbereitet. Die Textdateien im CSV sind der Input für den LSWM Import.
Der
Datenimport soll aus Dokumentationsgründen über das SAP Tool LSMW
erfolgen. Es gab etwas zu lernen. Im ersten Schritt erstelle ich RFC
taugliche BADIs zum Import der Daten, da das von SAP nicht in dieser
Art vorgesehen ist. Die Basis
für einen
Import per LSMW.
Das
Datenformat der CSV Dateien und das Format, welches die BADIs
erwarten wird in LSMW Oberfläche spezifiziert. Im letzten Schritt
der LSMW Oberfläche werden IDoc erstellt, die dann ablaufen und die
Daten in die SAP Tabellen einbringen. Der
Import erfolgt durch die entwickelten BADIs.
ABAP OO Programmierung für eine kundenspezifische Anwendung: APM Advanced Planning Methode. Die Oberfläche des APM Tools ist als Web-Dynpro realisiert. Die Darstellung erfolgt im MS-Edge.
Die Aufgabe war eine Erweiterungsimplementierung, um weitere SAP Objekte in der Oberfläche anzeigen und bearbeiten zu können. Die Objekte: Material, Dokumente, Stücklisten sind der Standard, mit der Programmierung sollen Q-Meldungen und IPPE Objekte hinzukommen. Eine Anpassung der Web-Dynpro Oberfläche ist notwendig um die objektspezifischen Attribute unterbringen zu können. Eine Erweiterung ist im Design vorgesehen, sodass Enhancements zu einem Ergebnis führen. Zum internen Handling der neuen Objekte sind neue Implementierung und Redefinitionen in den SAP Klassen notwendig.
Andere Erweiterungen, wie ?Entscheidungen? und ?Filter? lassen sich durch Inheritance und weitere OO Prinzipien implementieren.
Per individueller ABAP Programmierung wird die Anwendung kundenspezifisch angepasst.
Die Aufgabe umfasst eine Neuanlage, Änderung und Deaktivierung von Datensätzen. Die Anzeige und Eingabe der Kostensätze hat in deutscher Notation zu erfolgen unabhängig davon, dass die Datenbank Datumswerte und Beträge in US Format speichert.
Um
kompatibel zu sein, erfolgt die Implementierung mittels Spring Boot
Web-Service und Thymeleaf. Thymeleaf erzeugt die Webseiten aus den
übergebenen Parametern des Spring Boot Controllers.
Es werden
drei Thymeleaf Webseiten erstellt und mittels CSS (Cascading Style
Sheets) formatiert. Im Spring Boot Web-Service Controller gibt es 5
Einsprünge um die Funktionalitäten ?anzeigen, neu, ändern? zu
ermöglichen. In allen drei Aktionen wird der aktuelle Tabelleninhalt
formatiert ausgegeben. Eine Änderung wird in Tabellensicht in Html
durchgeführt. Der Betrag, als auch die Gültigkeit lässt sich
direkt ändern und speichern. Eine Neuanlage erfolgt via Form Input
Felder über die Datenbankzeile.
März 2021 ? Juni 2021
Pflegetool zur Anpassung von Kostensätzen in einer Datenbanktabelle. Die Aufgabe umfasst eine Neuanlage, Änderung und Deaktivierung von Datensätzen. Die Anzeige und Eingabe der Kostensätze hat in deutscher Notation zu erfolgen unabhängig davon, dass die Datenbank Datumswerte und Beträge in US Format speichert.
Um kompatibel zu sein, erfolgt die Implementierung mittels Spring Boot Web-Service und Thymeleaf. Thymeleaf erzeugt die Webseiten aus den übergebenen Parametern des Spring Boot Controllers.
Es werden drei Thymeleaf Webseiten erstellt und mittels CSS (Cascading Style Sheets) formatiert. Im Spring Boot Web-Service Controller gibt es 5 Einsprünge um die Funktionalitäten ?anzeigen, neu, ändern? zu ermöglichen. In allen drei Aktionen wird der aktuelle Tabelleninhalt formatiert ausgegeben. Eine Änderung wird in Tabellensicht in Html durchgeführt. Der Betrag, als auch die Gültigkeit lässt sich direkt ändern und speichern. Eine Neuanlage erfolgt via Form Input Felder über die Datenbankzeile.
Eclipse, Java, Maven
Spring Boot, JPA, Thymeleaf
MindMap, Dokumentation
Postgresql
Juni 2020 ? heute
Aufbereitung von Kundendaten im XML Format zur Generierung von Material-Stücklisten (BOM) in SAP. Musterimplementierung.
Der Auftraggeber erstellt täglich aus seinem PLM System einen Abzug mit den Änderungen zum Vortag. Die Abholung erfolgt täglich über eine Datenaustausch-Website. Das Datenpaket enthält mehr Informationen als zur Herstellung des beauftragen Produktes notwendig sind. Da lt. GF Vorgabe nur ?abrechnungsrelevante Teile ins SAP kommen?, ist vor dem SAP-Import die exakte Stückliste zu ermitteln.
Das Datenpaket besteht aus mehrere Dateien im XML-Format. Der XML DOM wird per JAVA Programm aufgelöst und in eine Relationale Datenbank importiert. Die einzelnen Dateien enthalten z.B. Assemblies, Parts, Standardparts, Zukaufteile und Strukturinformationen. Ein einzelnes Datenpaket ist wertlos. Erst die Summe aller Datenpakete, bis zum heutigen Tag, erlaubt die Erstellung einer aktuellen Stückliste aufgrund der Delta-Lieferungen.
Der Prozess zur Abholung, Aufbereitung und Import ist Aufgabenmanager gesteuert. Die Daten verbleiben in der Datenbank, da zu einem späteren Zeitpunkt ein Zugriff auf ältere Datenpunkte, die nie eine Revision erhalten haben, notwendig sein könnte.
Die Erzeugung der Stückliste ist in einem Spring Boot 2 RESTful Service implementiert. Der Service läuft auf einem Tomcat-Server in einer Endlosschleife. Die Datenbank mit den extrahierten XML Datenpunkten ist dieQuelle. Die notwendigen Parameter zur Selektion der Stückliste werden für eine manuelle Erzeugung aus einer SAP WebDynpro Anwendung an den RESTful Service übergeben. Die Stücklistenkomponenten werden aus der Datenbank selektiert und als Stückliste im JSON Format an SAP zurück geliefert. SAP stellt eine Klasse zur Deserialisierung der JSON Daten in eine interne Tabelle zur Verfügung. Die Stücklistenkomponentensind nun in einer internen SAP-Tabelle. Im nächsten Schritt wird überprüft, ob alle Materialien angelegt sind. Im negativen Fall wird das Material angelegt. Die Stückliste wird gepflegt oder sofern noch nicht existent, angelegt.
Die WebDynpro Implementierung dient nur für eine manuelle Anlage. Im Regelfall wird der SAP HTTP ? Zugriff aus den MRP Lauf, mit den entsprechenden Parametern, dunkel aufgerufen. Das gesamte Projekt zur Stücklistengenerierung sind so angelegt, dass keine manuelle Interaktion notwendig ist. Der SAP HTTP Implementierung ist in einer eigenen Klasse implementiert, sodass sie von mehreren Punkten aufgerufen werden kann.
SAP WebDynpro; SAP Classes; JSON, XML
relationale Datenbank, SQL,
Java, Spring Boot, Eclipse
Oktober 2019 ? Juli 2020
Einführung von SAP S4/HANA als Greenfield Ansatz.
Mein Teilprojekt umfasst das Dokumentenmanagement, die Betreuung der Einführung des SAP/ECTR, Customizing der Module CA-DMS und MM zur Datenmigration und den Themen aus dem Requirements- engineering.
Bereits vor meinem Eintritt in das Projekt, war die Entscheidung zugunsten des SAP/ECTR gefallen. Die Implementierung erfolgt durch den CAD Anbieter. Dieser ist für die Entwicklung der Schnittstelle SAP - CAD verantwortlich und somit die beste Wahl. Verfolgt wird die Systemreife der Installation, sowie die Schulungstermine, in denen die MA in die Arbeitsweise mit dem ECTR eingeführt werden. Da der ECTR ein lokales Programm, welches auf dem Arbeitsplatzcomputer des MA zu installieren ist, bleibt noch die Bereitstellung der angepassten Software als Installationsimage. Die IT-Abteilung übernimmt die Paketierung.
Da bereits ein SAP ERP im Einsatz ist, müssen die Dokumenten- und Materialdaten übernommen werden. Problem ist hierbei, das mehrere interne Firmen auf dem Campus das aktuelle SAP nutzen. Es ergibt sich ein Carveout, da die Daten im Legacy ERP erhalten bleiben müssen. In regelmässigen Terminen wird definiert, welche Datenpunkte migriert werden und ob Anpassungen oder Korrekturen notwendig sind. Der Datenexport, die Anpassungen bzw. Korrekturen und die späteren Migration, wird durch ein externes Unternehmen durchgeführt.
Ein weiterer Auftraggeber liefert seine Stücklisten in einem speziellen XML-Format an. Die XML Dateien sind zu analysieren, sodass eine Material- und Dokumentenstückliste hieraus erzeugt werden kann. Die technische Aufbereitung der Daten erfolgt durch, das Migrationstool des CAD Anbieters. Ziel ist eine Dokument-und Materialstückliste, die der SAP/ECTR lesen kann. Es werden Musterapplikationen aufgebaut.
Die Parallelität soll eine Einführung innerhalb von zwei Jahren nach Projektstart zulassen.
Im Projektverlauf wird auf die SAP S/4 HANA Cloud Lösung gewechselt. Hierdurch ergeben sich Zugriffsprobleme in der Firewall. Hauptsächlich ist die Anbindung des Content-Servers nicht gegeben. Der Content-Server ist aus Sicherheitsgründen lokal installiert und wird von zwei Standorten genutzt.
Für die Abstimmtermine, auch mit den nachfolgenden Modulbetreuern, sind drei Tage pro Woche eingeplant. Nach März 2020 erfolgt die weitere Entwicklung nur noch Remote. Die Besprechungen, Dokumentation und gemeinsame Tests am System entsprechend via Teams.
SAP GUI; ECTR; CATIA, XML-Files
Office; Teams
SCRUM
März 2019 ? Oktober 2019
Oracle Datenbanksystem mit manuellem Logshiping. Der Wechsel der Datensicherung Software hat zur Folge, dass die bereits gesicherten Archivelog Dateien sich nicht mehr einzeln aus dem Sicherungscontainer extrahieren lassen.
Bisher erfolgte eine tägliche Datensicherung mit Archivelog Sicherung. Mit der Freitagssicherung wurden, die in einer Woche aufgelaufenen Archivelog Dateien gesichert und gelöscht. Dabei wurde auch die aktuell genutzte Archivelog Datei gelöscht. Diese Datei war noch nicht auf das Standby DB-System kopiert. Dateien im Zugriff, können nicht per Robocopy kopiert werden. Diese Archivelog Datei ist bisher nach der Datensicherung per manueller Rücksicherung aus dem Datensicherungscontainer zurück geholt worden. Mit der neuen Software funktioniert dieser Schritt nicht mehr zuverlässig.
Da der Softwarehersteller diesen Vorgang nicht als spezifiziert ansieht, muss eine Alternative her.
Mittlerweile erfolgt eine tägliche Datensicherung mit Archivelog Sicherung über die Datensicherungssoftware per Oracle Agent wie bisher. Die Archivelogs werden zu keinem Zeitpunkt gelöscht. Gegen drei Uhr morgens wird per Aufgabenplaner ein Skript gestartet. Dieses startet das Oracle eigene Datensicherungstool RMAN. RMAN löscht per Kommando alle Archivelogs, die mindestens zweimal mit der regulären Datensicherung gespeichert worden sind. Damit hat das System ausreichend Zeit, alle Archivelogs auf das Standby DB-System zu kopieren.
Um den Support zu unterstützen wird der Backup Status auf Erfolg geprüft. Im Normalfall hätte der Support per Enterprise-Manager den Status des Backups prüfen müssen.
Um die Arbeit zu erleichtern, wird per Java Programm und JDBC der Status der Datensicherung in den RMAN Tabellen/Views abgefragt. Ist kein Fehler aufgetreten, beendet sich das Java Programm. Der Programmablauf wird in einem Systemlog protokolliert. Im Falle einer Fehlermeldung wird eine Mail per Javamail erstellt und an die Inbox des Supports verschickt. Somit ist dieser informiert und kann weitere Schritte vornehmen. Ein genaueres Fehlerbild erstellt das Datensicherungstool, das auf einem anderen Server läuft und dort per eigenem GUI abgefragt werden muss.
Oracle SQL, RMAN, PL/SQL Funktion
Shell-Scripte
Java 12.2, Netbeans 11, Javamail, JDBC, jlog2, Javafx
März 2017 ? März 2019
Einführung SAP/PLM.
Das Projekt läuft bereits seit 2013 und steht vor dem GoLive. Dieses Projekt umfasst die Einführung des SAP/ECTR und als Arbeitsumgebung SAP WebDynpro. Zur Umstellung gehören auch Anpassungen am Entwicklungsprozess. Da noch nicht alle Standorte mit SAP die Produktion steuern, ist derzeit Metaphase PLM das führende System im Betrieb. Die Kommunikation zwischen SAP und Metaphase PLM erfolgt via HTTP Service.
Meine Aufgabe ist, die Möglichkeit zu implementieren, Materialnummern ausserhalb des Serienmaterials reservieren zu können. Diese Materialnummern werden später für den Aftersales Market benötigt. Diese Reservierungen erlauben es mit der Anzahl an Materialnummern bis zum Freigabezeitpunkt zu variieren. Einmal angelegt Materialien können in SAP nicht mehr gelöscht werden. Erst, wenn die Produktreife vom Prototyp bzw. Vorserie in Serie übergeht, kann überhaupt eine Materialreservierung angelegt werden.
Um das Material in der definierten Materialart anzulegen, ist die Klassifikation des Dokuments und des Serienmaterials zu lesen und zu prüfen. Mit den gewonnenen Daten wird per HTTP Service eine Materialnummer von Metaphase PLM angefordert. Die Materialnummer wird, ohne das Material in SAP anzulegen, nur als Objektlink am Dokument zu einem nicht existierenden Material abgelegt. Um später die Daten für eine Materialanlage zu haben, ist der Objektlink klassifiziert. Ein Löschen einer Materialreservierung bedeutet, dass der Objektlink vom Dokument für diese Materialnummer gelöscht wird.
Mit der Freigabe des Dokuments und dem damit verbundenen Statuswechsel des Werksübergreifenden Materialstatus werden alle reservierten Materialien aus dem Objektlink als Material angelegt. Vorlage ist das Serienmaterial.
SAP BAPI Dokumentenmanagement
SAP Class / Methods
Oktober 2017 ? Februar 2018
Umstellung einer Oracle 11g DB auf manuelles Logship.
Durch einen Downgrade der Editionen von Enterprise auf Standard wird dieser Schritt notwendig. Das automatische Importieren der aufgezeichneten Archivelog Dateien auf der Standby Seite funktioniert in der Standard Edition nicht mehr. Für beide Datenbankserver Primary und Standby ist neue Hardware notwendig, da aufgrund der Lizenzbedingungen nur noch ein Board mit zwei CPU Sockel zulässig ist.
Nach der Inbetriebnahme der neuen Hardware wird von mir auf dem Primary und dem Standby System eine identische Verzeichnisstruktur für die Datenbankdateien angelegt. Der ERP Softwarehersteller kopiert vom Vorgängersystem die DB Tablespaces auf das Primary System. Die Standby Datenbank wird von mir mit den kopierten Tablespaces aufgesetzt. Um die Lizenzbedingungen nicht zu verletzten, wird die Standby Datenbank nicht für Abfragen geöffnet. Ein Recovery/Update ist im Mount Status möglich.
Per Cronjob werden die Datenbank Archivelog Verzeichnisse zwischen dem Primary und Standby Server synchron gehalten.
Der nächste Schritt ist das manuelle Logship. Mittels eines von mir erstellen Java Programms wird per JDBC der Timestamp des letzten Archivelog Wechsels vom Primary Server abgeholt. Das Java Programm erzeugt mit dieser Information ein SQL Skript, das gespeichert wird.
Das Datenbank Management Programm SQLPlus wird gestartet und das erstellte SQL Skript als Parameter übergeben und abgearbeitet. Damit werden die Archivelog Dateien, vom Primary Server erstellt, nun auf dem Standby Server als Datenbank Recovery Vorgang importiert. Beide System haben nach diesem Prozess, bis auf das aktuelle Archivelog, den gleichen Datenstand. Im Falle eines Systemausfalls der Primary Datenbank kann auf das Standby System umgeschaltet werden. Beide Datenbanken werden per Tool überwacht.
Oracle DB 11g
Java 8, JDBC, Eclipse
Windows Server
Shell-Scripte
Implementierung des Unternehmensprozesses in SAP für die Konstruktion mit
CADIntegration. Bereits existierende CAD-Daten werden aus dem PLM System
WINDCHILL übernommen. Zu implementieren ist der Business Prozess in
SAP Klassen. SAP/ECTR als CAD-Integration ist für den Standort neu. Die ECTR
Umgebung selbst, ist bereits durch ein Partnerteam eingestellt. Ebenso ist der
definiertbare Teil des Unternehmensprozesses durch das Team in ein
Lasten-/Pflichtenheft überführt worden. Die Programmierung erfolgt in ABAP-OO,
wobei die Datensicherheit innerhalb der Konstruktion oberste Priorität hat.
mySAP Productlifecycle Management,
Beschreibung CDI Schnittstelle CENIT AG Stuttgart
gedas/T-Systems CAD-Integration für SAP
PERL
GNU Tools
ABAP
Dassault SolidWorks
gedas/T-Systems CAD-Integration für SAP
PERL
GNU Tools
ABAP
CENIT AG CAD Integration für SAP CAD Desktop
Dassault CATIA V5 R12 - R16
PERL
GNU Tools for Windows
PTC-Tools, ProductView,
ClientAccess
Erstellung von Spezifikation, Handbuch und Templates.
c-Shell
Netscape Webserver
Appl: Perl, Korn-Shell, awk, PL/SQL,SAP bietet hier zwei Varianten an, einmal als Greenfield und einmal als Brownfield Ansatz. Beide Projekte sind Greenfield Projekte. Der zweite Fall ist eine vollständige Migration. Die Daten werden von Teamcenter nach SAP übertragen.
Datenmigration nach dem Greenfield Ansatz.
Die ALE Kommunikation zwischen den SAP-Systemen wird implementiert. Ziel ist es, dass die SAP ECTR Metadaten auf das HANA System übertragen werden können. Die geometrischen Originale werden durch eine Anpassung des symbolischen Links auf dem neuen System bereitgestellt. Die Metadaten werden per IDoc vom ERP auf das HANA System übertragen. Eine Problemstellung hierbei: Jedes IDoc Datensegment ist 1000 Zeichen gross. Die zu übertragenden Zeilen aus mehren ECTR Tabellen müssen entsprechend gesplittet und auf der Empfängerseite wieder konkateniert werden. Die Übertragung erfolgt in ASCII. D. h. numerische Felder müssen nach ASCII konvertiert werden. Tausender Positionen und Kommata sind entsprechend zu korrigieren. Die übertragenen Daten werden auf der Empfängerseite über eine neu erstellte SAP Klasse importiert. Der SAP ATC Check erlaubt keine ?Perform Form? Routinen mehr.
Datenmigration mittels SAP LSMW.
Auch hier spielen nur die Metadaten eine Rolle. Diese werden von einem weiteren Team aus Teamcenter abgezogen und im CSV Format aufbereitet. Die Textdateien im CSV sind der Input für den LSWM Import.
Der
Datenimport soll aus Dokumentationsgründen über das SAP Tool LSMW
erfolgen. Es gab etwas zu lernen. Im ersten Schritt erstelle ich RFC
taugliche BADIs zum Import der Daten, da das von SAP nicht in dieser
Art vorgesehen ist. Die Basis
für einen
Import per LSMW.
Das
Datenformat der CSV Dateien und das Format, welches die BADIs
erwarten wird in LSMW Oberfläche spezifiziert. Im letzten Schritt
der LSMW Oberfläche werden IDoc erstellt, die dann ablaufen und die
Daten in die SAP Tabellen einbringen. Der
Import erfolgt durch die entwickelten BADIs.
ABAP OO Programmierung für eine kundenspezifische Anwendung: APM Advanced Planning Methode. Die Oberfläche des APM Tools ist als Web-Dynpro realisiert. Die Darstellung erfolgt im MS-Edge.
Die Aufgabe war eine Erweiterungsimplementierung, um weitere SAP Objekte in der Oberfläche anzeigen und bearbeiten zu können. Die Objekte: Material, Dokumente, Stücklisten sind der Standard, mit der Programmierung sollen Q-Meldungen und IPPE Objekte hinzukommen. Eine Anpassung der Web-Dynpro Oberfläche ist notwendig um die objektspezifischen Attribute unterbringen zu können. Eine Erweiterung ist im Design vorgesehen, sodass Enhancements zu einem Ergebnis führen. Zum internen Handling der neuen Objekte sind neue Implementierung und Redefinitionen in den SAP Klassen notwendig.
Andere Erweiterungen, wie ?Entscheidungen? und ?Filter? lassen sich durch Inheritance und weitere OO Prinzipien implementieren.
Per individueller ABAP Programmierung wird die Anwendung kundenspezifisch angepasst.
Die Aufgabe umfasst eine Neuanlage, Änderung und Deaktivierung von Datensätzen. Die Anzeige und Eingabe der Kostensätze hat in deutscher Notation zu erfolgen unabhängig davon, dass die Datenbank Datumswerte und Beträge in US Format speichert.
Um
kompatibel zu sein, erfolgt die Implementierung mittels Spring Boot
Web-Service und Thymeleaf. Thymeleaf erzeugt die Webseiten aus den
übergebenen Parametern des Spring Boot Controllers.
Es werden
drei Thymeleaf Webseiten erstellt und mittels CSS (Cascading Style
Sheets) formatiert. Im Spring Boot Web-Service Controller gibt es 5
Einsprünge um die Funktionalitäten ?anzeigen, neu, ändern? zu
ermöglichen. In allen drei Aktionen wird der aktuelle Tabelleninhalt
formatiert ausgegeben. Eine Änderung wird in Tabellensicht in Html
durchgeführt. Der Betrag, als auch die Gültigkeit lässt sich
direkt ändern und speichern. Eine Neuanlage erfolgt via Form Input
Felder über die Datenbankzeile.
März 2021 ? Juni 2021
Pflegetool zur Anpassung von Kostensätzen in einer Datenbanktabelle. Die Aufgabe umfasst eine Neuanlage, Änderung und Deaktivierung von Datensätzen. Die Anzeige und Eingabe der Kostensätze hat in deutscher Notation zu erfolgen unabhängig davon, dass die Datenbank Datumswerte und Beträge in US Format speichert.
Um kompatibel zu sein, erfolgt die Implementierung mittels Spring Boot Web-Service und Thymeleaf. Thymeleaf erzeugt die Webseiten aus den übergebenen Parametern des Spring Boot Controllers.
Es werden drei Thymeleaf Webseiten erstellt und mittels CSS (Cascading Style Sheets) formatiert. Im Spring Boot Web-Service Controller gibt es 5 Einsprünge um die Funktionalitäten ?anzeigen, neu, ändern? zu ermöglichen. In allen drei Aktionen wird der aktuelle Tabelleninhalt formatiert ausgegeben. Eine Änderung wird in Tabellensicht in Html durchgeführt. Der Betrag, als auch die Gültigkeit lässt sich direkt ändern und speichern. Eine Neuanlage erfolgt via Form Input Felder über die Datenbankzeile.
Eclipse, Java, Maven
Spring Boot, JPA, Thymeleaf
MindMap, Dokumentation
Postgresql
Juni 2020 ? heute
Aufbereitung von Kundendaten im XML Format zur Generierung von Material-Stücklisten (BOM) in SAP. Musterimplementierung.
Der Auftraggeber erstellt täglich aus seinem PLM System einen Abzug mit den Änderungen zum Vortag. Die Abholung erfolgt täglich über eine Datenaustausch-Website. Das Datenpaket enthält mehr Informationen als zur Herstellung des beauftragen Produktes notwendig sind. Da lt. GF Vorgabe nur ?abrechnungsrelevante Teile ins SAP kommen?, ist vor dem SAP-Import die exakte Stückliste zu ermitteln.
Das Datenpaket besteht aus mehrere Dateien im XML-Format. Der XML DOM wird per JAVA Programm aufgelöst und in eine Relationale Datenbank importiert. Die einzelnen Dateien enthalten z.B. Assemblies, Parts, Standardparts, Zukaufteile und Strukturinformationen. Ein einzelnes Datenpaket ist wertlos. Erst die Summe aller Datenpakete, bis zum heutigen Tag, erlaubt die Erstellung einer aktuellen Stückliste aufgrund der Delta-Lieferungen.
Der Prozess zur Abholung, Aufbereitung und Import ist Aufgabenmanager gesteuert. Die Daten verbleiben in der Datenbank, da zu einem späteren Zeitpunkt ein Zugriff auf ältere Datenpunkte, die nie eine Revision erhalten haben, notwendig sein könnte.
Die Erzeugung der Stückliste ist in einem Spring Boot 2 RESTful Service implementiert. Der Service läuft auf einem Tomcat-Server in einer Endlosschleife. Die Datenbank mit den extrahierten XML Datenpunkten ist dieQuelle. Die notwendigen Parameter zur Selektion der Stückliste werden für eine manuelle Erzeugung aus einer SAP WebDynpro Anwendung an den RESTful Service übergeben. Die Stücklistenkomponenten werden aus der Datenbank selektiert und als Stückliste im JSON Format an SAP zurück geliefert. SAP stellt eine Klasse zur Deserialisierung der JSON Daten in eine interne Tabelle zur Verfügung. Die Stücklistenkomponentensind nun in einer internen SAP-Tabelle. Im nächsten Schritt wird überprüft, ob alle Materialien angelegt sind. Im negativen Fall wird das Material angelegt. Die Stückliste wird gepflegt oder sofern noch nicht existent, angelegt.
Die WebDynpro Implementierung dient nur für eine manuelle Anlage. Im Regelfall wird der SAP HTTP ? Zugriff aus den MRP Lauf, mit den entsprechenden Parametern, dunkel aufgerufen. Das gesamte Projekt zur Stücklistengenerierung sind so angelegt, dass keine manuelle Interaktion notwendig ist. Der SAP HTTP Implementierung ist in einer eigenen Klasse implementiert, sodass sie von mehreren Punkten aufgerufen werden kann.
SAP WebDynpro; SAP Classes; JSON, XML
relationale Datenbank, SQL,
Java, Spring Boot, Eclipse
Oktober 2019 ? Juli 2020
Einführung von SAP S4/HANA als Greenfield Ansatz.
Mein Teilprojekt umfasst das Dokumentenmanagement, die Betreuung der Einführung des SAP/ECTR, Customizing der Module CA-DMS und MM zur Datenmigration und den Themen aus dem Requirements- engineering.
Bereits vor meinem Eintritt in das Projekt, war die Entscheidung zugunsten des SAP/ECTR gefallen. Die Implementierung erfolgt durch den CAD Anbieter. Dieser ist für die Entwicklung der Schnittstelle SAP - CAD verantwortlich und somit die beste Wahl. Verfolgt wird die Systemreife der Installation, sowie die Schulungstermine, in denen die MA in die Arbeitsweise mit dem ECTR eingeführt werden. Da der ECTR ein lokales Programm, welches auf dem Arbeitsplatzcomputer des MA zu installieren ist, bleibt noch die Bereitstellung der angepassten Software als Installationsimage. Die IT-Abteilung übernimmt die Paketierung.
Da bereits ein SAP ERP im Einsatz ist, müssen die Dokumenten- und Materialdaten übernommen werden. Problem ist hierbei, das mehrere interne Firmen auf dem Campus das aktuelle SAP nutzen. Es ergibt sich ein Carveout, da die Daten im Legacy ERP erhalten bleiben müssen. In regelmässigen Terminen wird definiert, welche Datenpunkte migriert werden und ob Anpassungen oder Korrekturen notwendig sind. Der Datenexport, die Anpassungen bzw. Korrekturen und die späteren Migration, wird durch ein externes Unternehmen durchgeführt.
Ein weiterer Auftraggeber liefert seine Stücklisten in einem speziellen XML-Format an. Die XML Dateien sind zu analysieren, sodass eine Material- und Dokumentenstückliste hieraus erzeugt werden kann. Die technische Aufbereitung der Daten erfolgt durch, das Migrationstool des CAD Anbieters. Ziel ist eine Dokument-und Materialstückliste, die der SAP/ECTR lesen kann. Es werden Musterapplikationen aufgebaut.
Die Parallelität soll eine Einführung innerhalb von zwei Jahren nach Projektstart zulassen.
Im Projektverlauf wird auf die SAP S/4 HANA Cloud Lösung gewechselt. Hierdurch ergeben sich Zugriffsprobleme in der Firewall. Hauptsächlich ist die Anbindung des Content-Servers nicht gegeben. Der Content-Server ist aus Sicherheitsgründen lokal installiert und wird von zwei Standorten genutzt.
Für die Abstimmtermine, auch mit den nachfolgenden Modulbetreuern, sind drei Tage pro Woche eingeplant. Nach März 2020 erfolgt die weitere Entwicklung nur noch Remote. Die Besprechungen, Dokumentation und gemeinsame Tests am System entsprechend via Teams.
SAP GUI; ECTR; CATIA, XML-Files
Office; Teams
SCRUM
März 2019 ? Oktober 2019
Oracle Datenbanksystem mit manuellem Logshiping. Der Wechsel der Datensicherung Software hat zur Folge, dass die bereits gesicherten Archivelog Dateien sich nicht mehr einzeln aus dem Sicherungscontainer extrahieren lassen.
Bisher erfolgte eine tägliche Datensicherung mit Archivelog Sicherung. Mit der Freitagssicherung wurden, die in einer Woche aufgelaufenen Archivelog Dateien gesichert und gelöscht. Dabei wurde auch die aktuell genutzte Archivelog Datei gelöscht. Diese Datei war noch nicht auf das Standby DB-System kopiert. Dateien im Zugriff, können nicht per Robocopy kopiert werden. Diese Archivelog Datei ist bisher nach der Datensicherung per manueller Rücksicherung aus dem Datensicherungscontainer zurück geholt worden. Mit der neuen Software funktioniert dieser Schritt nicht mehr zuverlässig.
Da der Softwarehersteller diesen Vorgang nicht als spezifiziert ansieht, muss eine Alternative her.
Mittlerweile erfolgt eine tägliche Datensicherung mit Archivelog Sicherung über die Datensicherungssoftware per Oracle Agent wie bisher. Die Archivelogs werden zu keinem Zeitpunkt gelöscht. Gegen drei Uhr morgens wird per Aufgabenplaner ein Skript gestartet. Dieses startet das Oracle eigene Datensicherungstool RMAN. RMAN löscht per Kommando alle Archivelogs, die mindestens zweimal mit der regulären Datensicherung gespeichert worden sind. Damit hat das System ausreichend Zeit, alle Archivelogs auf das Standby DB-System zu kopieren.
Um den Support zu unterstützen wird der Backup Status auf Erfolg geprüft. Im Normalfall hätte der Support per Enterprise-Manager den Status des Backups prüfen müssen.
Um die Arbeit zu erleichtern, wird per Java Programm und JDBC der Status der Datensicherung in den RMAN Tabellen/Views abgefragt. Ist kein Fehler aufgetreten, beendet sich das Java Programm. Der Programmablauf wird in einem Systemlog protokolliert. Im Falle einer Fehlermeldung wird eine Mail per Javamail erstellt und an die Inbox des Supports verschickt. Somit ist dieser informiert und kann weitere Schritte vornehmen. Ein genaueres Fehlerbild erstellt das Datensicherungstool, das auf einem anderen Server läuft und dort per eigenem GUI abgefragt werden muss.
Oracle SQL, RMAN, PL/SQL Funktion
Shell-Scripte
Java 12.2, Netbeans 11, Javamail, JDBC, jlog2, Javafx
März 2017 ? März 2019
Einführung SAP/PLM.
Das Projekt läuft bereits seit 2013 und steht vor dem GoLive. Dieses Projekt umfasst die Einführung des SAP/ECTR und als Arbeitsumgebung SAP WebDynpro. Zur Umstellung gehören auch Anpassungen am Entwicklungsprozess. Da noch nicht alle Standorte mit SAP die Produktion steuern, ist derzeit Metaphase PLM das führende System im Betrieb. Die Kommunikation zwischen SAP und Metaphase PLM erfolgt via HTTP Service.
Meine Aufgabe ist, die Möglichkeit zu implementieren, Materialnummern ausserhalb des Serienmaterials reservieren zu können. Diese Materialnummern werden später für den Aftersales Market benötigt. Diese Reservierungen erlauben es mit der Anzahl an Materialnummern bis zum Freigabezeitpunkt zu variieren. Einmal angelegt Materialien können in SAP nicht mehr gelöscht werden. Erst, wenn die Produktreife vom Prototyp bzw. Vorserie in Serie übergeht, kann überhaupt eine Materialreservierung angelegt werden.
Um das Material in der definierten Materialart anzulegen, ist die Klassifikation des Dokuments und des Serienmaterials zu lesen und zu prüfen. Mit den gewonnenen Daten wird per HTTP Service eine Materialnummer von Metaphase PLM angefordert. Die Materialnummer wird, ohne das Material in SAP anzulegen, nur als Objektlink am Dokument zu einem nicht existierenden Material abgelegt. Um später die Daten für eine Materialanlage zu haben, ist der Objektlink klassifiziert. Ein Löschen einer Materialreservierung bedeutet, dass der Objektlink vom Dokument für diese Materialnummer gelöscht wird.
Mit der Freigabe des Dokuments und dem damit verbundenen Statuswechsel des Werksübergreifenden Materialstatus werden alle reservierten Materialien aus dem Objektlink als Material angelegt. Vorlage ist das Serienmaterial.
SAP BAPI Dokumentenmanagement
SAP Class / Methods
Oktober 2017 ? Februar 2018
Umstellung einer Oracle 11g DB auf manuelles Logship.
Durch einen Downgrade der Editionen von Enterprise auf Standard wird dieser Schritt notwendig. Das automatische Importieren der aufgezeichneten Archivelog Dateien auf der Standby Seite funktioniert in der Standard Edition nicht mehr. Für beide Datenbankserver Primary und Standby ist neue Hardware notwendig, da aufgrund der Lizenzbedingungen nur noch ein Board mit zwei CPU Sockel zulässig ist.
Nach der Inbetriebnahme der neuen Hardware wird von mir auf dem Primary und dem Standby System eine identische Verzeichnisstruktur für die Datenbankdateien angelegt. Der ERP Softwarehersteller kopiert vom Vorgängersystem die DB Tablespaces auf das Primary System. Die Standby Datenbank wird von mir mit den kopierten Tablespaces aufgesetzt. Um die Lizenzbedingungen nicht zu verletzten, wird die Standby Datenbank nicht für Abfragen geöffnet. Ein Recovery/Update ist im Mount Status möglich.
Per Cronjob werden die Datenbank Archivelog Verzeichnisse zwischen dem Primary und Standby Server synchron gehalten.
Der nächste Schritt ist das manuelle Logship. Mittels eines von mir erstellen Java Programms wird per JDBC der Timestamp des letzten Archivelog Wechsels vom Primary Server abgeholt. Das Java Programm erzeugt mit dieser Information ein SQL Skript, das gespeichert wird.
Das Datenbank Management Programm SQLPlus wird gestartet und das erstellte SQL Skript als Parameter übergeben und abgearbeitet. Damit werden die Archivelog Dateien, vom Primary Server erstellt, nun auf dem Standby Server als Datenbank Recovery Vorgang importiert. Beide System haben nach diesem Prozess, bis auf das aktuelle Archivelog, den gleichen Datenstand. Im Falle eines Systemausfalls der Primary Datenbank kann auf das Standby System umgeschaltet werden. Beide Datenbanken werden per Tool überwacht.
Oracle DB 11g
Java 8, JDBC, Eclipse
Windows Server
Shell-Scripte
Implementierung des Unternehmensprozesses in SAP für die Konstruktion mit
CADIntegration. Bereits existierende CAD-Daten werden aus dem PLM System
WINDCHILL übernommen. Zu implementieren ist der Business Prozess in
SAP Klassen. SAP/ECTR als CAD-Integration ist für den Standort neu. Die ECTR
Umgebung selbst, ist bereits durch ein Partnerteam eingestellt. Ebenso ist der
definiertbare Teil des Unternehmensprozesses durch das Team in ein
Lasten-/Pflichtenheft überführt worden. Die Programmierung erfolgt in ABAP-OO,
wobei die Datensicherheit innerhalb der Konstruktion oberste Priorität hat.
mySAP Productlifecycle Management,
Beschreibung CDI Schnittstelle CENIT AG Stuttgart
gedas/T-Systems CAD-Integration für SAP
PERL
GNU Tools
ABAP
Dassault SolidWorks
gedas/T-Systems CAD-Integration für SAP
PERL
GNU Tools
ABAP
CENIT AG CAD Integration für SAP CAD Desktop
Dassault CATIA V5 R12 - R16
PERL
GNU Tools for Windows
PTC-Tools, ProductView,
ClientAccess
Erstellung von Spezifikation, Handbuch und Templates.
c-Shell
Netscape Webserver
Appl: Perl, Korn-Shell, awk, PL/SQL,