10 Stimmen

Verwaltung von ABAP-Quellcode in der Versionsverwaltung

Unser Produkt umfasst derzeit eine große Anzahl von Technologien, darunter Java, PL/SQL, VB.Net und ABAP. Wir haben ein ziemlich ausgereiftes System zur Quellcodekontrolle und -erstellung für alle Sprachen außer ABAP, das noch in der Steinzeit steckt. Da SAP über ein eigenes Build-System verfügt, führen unsere Ingenieure ihre gesamte Entwicklung in einer SAP-Umgebung durch, exportieren Transporte und prüfen die in die Versionskontrolle. Da wir eine Reihe von SAP-Versionen unterstützen, wird es sehr schwierig, die Versionen zu verfolgen und Code zwischen 4.6, 4.7, 5.0 usw. zu migrieren.

Mein idealer Prozess wäre es, den ABAP-Code in Textdateien in die Versionskontrolle einzuchecken, ihn dann in SAP zu laden und die Transporte als Teil des Build-Prozesses zu generieren. Die SAP-Ingenieure sind der Meinung, dass es keine Werkzeuge gibt, die dieses Modell unterstützen.

Wenn Sie ABAP-Code in einem Versionskontrollsystem verwalten, wie sieht dann Ihr Prozess aus? Gibt es Werkzeuge (vorzugsweise für die Befehlszeile) zum Laden von ABAP-Code in SAP? Wie verwalten Ihre Ingenieure den Code/Test/Debug-Zyklus? Kodieren sie in SAP und dann den Code exportieren, wenn er fertig ist, oder in einem externen Editor bearbeiten?

5voto

Stefan Egli Punkte 17178

Zu diesem Zweck habe ich SAPLINK (wie in der vorherigen Antwort erwähnt) verwendet. Es gibt auch ein verwandtes Projekt namens "zake", das angeblich einige der Aufgaben automatisieren kann, aber ich habe es nie benutzt. Ich habe meinen Code einfach manuell in so genannte Slinkees exportiert (sie enthalten einzelne Objekte wie Funktionsgruppen; Nuggets hingegen enthalten mehrere Objekte).

Gründe für die Verwendung eines externen Versionskontrollsystems:

  • Korrelation zu Nicht-Abap-Quellcode (da unsere Software aus .net- und Abap-Code bestand)
  • SAP-Hosting und -Wartung waren nicht gerade unsere Stärke, daher war es gut zu wissen, dass Sie Ihren Code an einem sicheren Ort hatten.

Eine Sache jedoch: Sie benötigen mindestens WAS 620, um saplink verwenden zu können.

4voto

Dom Punkte 57

Mich interessiert, was der Nutzen einer Versionskontrolle außerhalb des ABAP-Stacks des SAP-Systems ist.

Ich habe noch nie jemanden gesehen, der eine externe Quellcodekontrolle für ABAP verwendet hat, da diese bereits integriert ist. Ich habe auch noch nie jemanden gesehen, der ABAP außerhalb des SAP-Systems programmiert. Das passt wirklich nicht in das Modell.

Der ABAP-Stack von SAP ist eine Einzelentwicklungssystemumgebung. Alle Entwickler melden sich bei dem einen System an und entwickeln dort. Das System zeichnet automatisch Versionen auf und gruppiert geänderte Objekte in Transporte. Ein Transport ist lediglich eine Liste geänderter Objekte. Sobald Sie den Transport exportieren, werden die Versionsnummern für jedes Objekt hochgezählt und Sie erhalten das Paket für die anderen Systeme.

Der ABAP-Stack hat auch nicht wirklich ein "Build"-Konzept als solches. Alles, was Sie tun, ist ein Patch.

0voto

Techboy Punkte 3950

Informieren Sie sich auch über SAP CTS+, das für die Verwaltung von Transporten und die Versionskontrolle von ABAP- und JAVA-basierten Komponenten verwendet wird.

https://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/e0249083-c0ab-2a10-78b8-b7a7854b1070

0voto

Taryck Punkte 1

Hy,

Wie Dom schon sagte, hat SAP eine eigene Versionsverwaltung. Um jedoch regelmäßig zwischen Transportfreigaben zu speichern, können Sie Werkzeuge wie :

können diese Werkzeuge verwendet werden, um ABAP-Komponenten in XML zu extrahieren. Von einem automatischen Import in SAP rate ich aus vielen Gründen ab: # diese Tools haben keine Garantien # nicht alle ABAP-Komponenten können auf diese Weise behandelt werden # Sie werden die SAP-Garantie verlieren, wenn Sie dies auf einem produktiven SAP-System tun.

Aber es könnte interessant sein, Werkzeuge wie (Google-Code) zu verwenden, um Softwareänderungen im Detail anzuzeigen, was bei ABAP Object komplizierter sein könnte.

Ich habe dies auf dem ZAP Link-Framework mit dem Programm ZAPLINK_EXTRACTOR entwickelt, das SAP-Komponenten in XML exportiert, wenn sie sich geändert haben. Dies verhindert, dass sich die XML-Datei ändert (neue Datei, aber gleicher Inhalt) und von Tools wie Mercurial als Änderung erkannt wird.

Ich hoffe, es hilft.

Beachten Sie, dass Sie SAP-Werkzeuge verwenden sollten, um SAP-Komponenten zu ändern. Ein SAP-Berater kann Ihnen dies im Detail erklären.

Taryck. [ http://www.steria.com Steria (Frankreich)]

0voto

Noah Punkte 988

Zumindest sollten die Änderungen in einem SAP-Entwicklungssystem durchgeführt und getestet werden. Niemand verwendet einen externen Editor mit ABAP. (SAP Java hingegen...) Es gibt keinen Grund, warum Sie nicht Sicherungen des SAP-Codes aufbewahren können, entweder direkt als Textdateien oder (vorzugsweise) mit SAPLink oder Transport-Dump-Dateien. (Fragen Sie Ihre BASIS-Mitarbeiter nach den Transportdateien). Beachten Sie, dass Sie bei der Verwendung von Textdateien möglicherweise Dinge wie Feldtexte usw. verpassen, die an anderer Stelle in der Datenbank gespeichert sind.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X