in SAP-Tabellen schreiben

Getting started ... Alles für einen gelungenen Start.
21 Beiträge • Seite 1 von 2 (current) Nächste
21 Beiträge Seite 1 von 2 (current) Nächste

in SAP-Tabellen schreiben

Beitrag von Gokar (ForumUser / 23 / 19 / 3 ) »
Hallo zusammen,

neulich wurde uns vom AG der direkte Zugriff auf SAP-Tabellen verboten. Begründung: Möglichkeit des Verlusts des SAP-Supports.
Ein paar Routinen bei uns laufen allerdings durch direktes Schreiben in SAP-Tabellen, zum Beispiel aktualisieren wir unsere Organisationseinheiten durch ein Programm, das auf Basis einer CSV-Datei die Tabelle T527X modifiziert.

Meine Frage:
Bei entsprechend vielen Änderungen nimmt das manuelle Abändern im Pflegeview viel Zeit in Anspruch. Welche Möglichkeiten gibt es, das ohne INSERT und UPDATE-Abap Anweisungen zu automatisieren?


Vielen Dank und Grüße,

PS: Einen BAPI hab ich in diesem Fall nicht gefunden. Die Alternative per Batch-Input gestaltet sich leider sehr unkomfortabel..
Zuletzt geändert von Gokar am 30.08.2013 09:14, insgesamt 1-mal geändert.

gesponsert
Stellenangebote auf ABAPforum.com schalten
kostenfrei für Ausbildungsberufe und Werksstudenten


Re: in SAP-Tabellen schreiben

Beitrag von black_adept (Top Expert / 4099 / 128 / 941 ) »
Falls sich das ( in meinem Augen absolut korrekte ) Tabellenupdateverbot auf das Produktivsystem beschränkt und eine RFC-Verbindung zu einem Testsystem besteht für das dieses Verbot nicht gilt könntet ihr den altbekannten Upload auf dem Testsytem ausführen und dann via RFC-Abgleich Produktiv- mit Testsystem synchronisieren.
live long and prosper
Stefan Schmöcker

email: stefan@schmoecker.de

Re: in SAP-Tabellen schreiben

Beitrag von ralf.wenzel (Top Expert / 3935 / 200 / 281 ) »
Das ist ein grundsätzliches Problem. Hinter vielen Tabellen stecken komplexe Fortschreibungsroutinen, die man so unterläuft. Ein Beispiel aus meiner Anfangszeit (die ist lange, laaange, laaaaaange her....): Ich hatte einen Testfall (den einzigen, den ich hatte) "verschossen" und wollte ihn reaktivieren. Es handelte sich um eine Bestellung, die ich löschen musste - aber eben nicht mit Löschkennzeichen, sondern wirklich weg von der DB. Ich habe also ein Programm geschrieben, das in allen mir bekannten Tabellen, in denen Bestellungen stehen können, eben diese Bestellung rausgelöscht. Mit dem Ergebnis: Ich konnte sie nicht mehr anlegen ("Bestellung schon vorhanden"), aber auch nicht mehr löschen ("Bestellung existiert nicht"). Nur gut, dass das Testsystem, das ich so "schiefgezogen" habe, eh vom Produktivsystem überschrieben werden sollte ;) (übrigens eine Praxis, die leider bei vielen Kunden gefahren wird - mit dem Erfolg, dass damit ganze Datenschutzkonzepte unterlaufen werden).

Man kann sich eine Menge im System kaputthauen.

Wenn es allerdings um eine Tabelle handelt, die in der SM30 gepflegt wird (da kann man dann davon ausgehen, dass es keine daraus folgenden Abhängigkeiten gibt), kann man SO viel nicht falsch machen. Man sollte halt die Feldprüfungen machen (ist der Wert überhaupt zulässig, den ich da eintrage?), damit man keinen Müll reinschreibt.
Bild
Ralf Wenzel Heuristika SAP-Development
25 Jahre SAP-Entwickler • 20 Jahre Freiberufler
PublikationenUngarische NotationXing

Re: in SAP-Tabellen schreiben

Beitrag von Unit605 (Expert / 975 / 37 / 93 ) »
ralf.wenzel hat geschrieben:Man kann sich eine Menge im System kaputthauen.

Wenn es allerdings um eine Tabelle handelt, die in der SM30 gepflegt wird (da kann man dann davon ausgehen, dass es keine daraus folgenden Abhängigkeiten gibt), kann man SO viel nicht falsch machen. Man sollte halt die Feldprüfungen machen (ist der Wert überhaupt zulässig, den ich da eintrage?), damit man keinen Müll reinschreibt.
Und genau das sehe und erfahre ich immer wieder Probleme.

Der Threadersteller ist, wie er selber schreibt, Anfaenger. Fuer ihn gibt es nur den sicheren Weg ueber den Standard (Batch Input, Bapi, Fuba).

Wer prueft das Coding, ob alle Pruefungen fuer zulaessigen Wert korrekt abgefragt werden? Wer entscheidet, welche Tabellen "unbedenklich" sind und welche nicht? Ein Anfaenger? Jeder wie er meint?

Re: in SAP-Tabellen schreiben

Beitrag von Gokar (ForumUser / 23 / 19 / 3 ) »
Ich verstehe, dass das Thema ziemlich heikel ist und eine Grundsatzdiskussion zur Folge hat, aber die Ursprungsfrage war nicht, ob es okay ist direkt auf Tabellen zuzugreifen, sondern welche Alternativen es dazu gibt.

Was machen wenn kein Bapi oder Fuba vorhanden ist und der RFC-Abgleich nicht eingerichtet?
Kann man mit Batch Input überhaupt so dynamisch arbeiten?

Re: in SAP-Tabellen schreiben

Beitrag von Unit605 (Expert / 975 / 37 / 93 ) »
Gokar hat geschrieben:Kann man mit Batch Input überhaupt so dynamisch arbeiten?
Normalerweise, JA. Solange man keine Enjony Funkitionalitaeten nutzten will.

Re: in SAP-Tabellen schreiben

Beitrag von Gokar (ForumUser / 23 / 19 / 3 ) »
Unit605 hat geschrieben:
Gokar hat geschrieben:Kann man mit Batch Input überhaupt so dynamisch arbeiten?
Normalerweise, JA. Solange man keine Enjony Funkitionalitaeten nutzten will.
Was für Funktionalitäten meinst du damit?

Ich stell mir auf jeden Fall vor, dass es deutlich mehr Aufwand ist.
Und wüsste auch nicht, wie ich vorgehen müsste..
Einen Eintrag auf ein, zwei festen Dynpros machen ist ja kein Problem. Aber wie man eine Tabelle editiert / abgrenzt incl. Transportauftrag mit Blättern in der Listansicht, ist deutlich komplizierter..

Re: in SAP-Tabellen schreiben

Beitrag von ralf.wenzel (Top Expert / 3935 / 200 / 281 ) »
Gokar hat geschrieben:Was für Funktionalitäten meinst du damit?
Siehe Transaktion ME23N.
Bild
Ralf Wenzel Heuristika SAP-Development
25 Jahre SAP-Entwickler • 20 Jahre Freiberufler
PublikationenUngarische NotationXing

Re: in SAP-Tabellen schreiben

Beitrag von JHM (Top Expert / 1197 / 1 / 197 ) »
Gokar hat geschrieben:Kann man mit Batch Input überhaupt so dynamisch arbeiten?
Jein, es kommt ein wenig drauf an, was genau gemacht werden soll und wie die Transaktion ansich aufgebaut (wenn es keine Positionierungsmöglichkeit gibt, sind TabelControls wirklich in graus für BI).

Ansich ist der Weg aber immer wieder der gleiche: Transaktion SM35 und dann eine BI-Aufzeichnung erstellen, diese Aufzeichung in sein Programm überführen und dann die Werte entsprechend aus der CSV ersetzten.
Gruß Hendrik

Re: in SAP-Tabellen schreiben

Beitrag von JHM (Top Expert / 1197 / 1 / 197 ) »
ralf.wenzel hat geschrieben:Siehe Transaktion ME23N.
Dafür gibt es ein BAPI oder die alte Transaktion ME23. Kein Grund hart auf der DB rum zu spielen ;-)
Gruß Hendrik

Re: in SAP-Tabellen schreiben

Beitrag von Gokar (ForumUser / 23 / 19 / 3 ) »
JHM hat geschrieben:
Gokar hat geschrieben:Kann man mit Batch Input überhaupt so dynamisch arbeiten?
Jein, es kommt ein wenig drauf an, was genau gemacht werden soll und wie die Transaktion ansich aufgebaut (wenn es keine Positionierungsmöglichkeit gibt, sind TabelControls wirklich in graus für BI).

Ansich ist der Weg aber immer wieder der gleiche: Transaktion SM35 und dann eine BI-Aufzeichnung erstellen, diese Aufzeichung in sein Programm überführen und dann die Werte entsprechend aus der CSV ersetzten.
Dann muss ich wohl in den sauren Apfel beißen.
In meinem Fall kann ich wenigstens Positionieren.

Danke für alle Statements und Tipps erst mal :up:

Re: in SAP-Tabellen schreiben

Beitrag von ralf.wenzel (Top Expert / 3935 / 200 / 281 ) »
JHM hat geschrieben:
ralf.wenzel hat geschrieben:Siehe Transaktion ME23N.
Dafür gibt es ein BAPI oder die alte Transaktion ME23. Kein Grund hart auf der DB rum zu spielen ;-)
Natürlich. Ich habe nur die Frage beantwortet, was Enjoy-Funktionalitäten sind.
Bild
Ralf Wenzel Heuristika SAP-Development
25 Jahre SAP-Entwickler • 20 Jahre Freiberufler
PublikationenUngarische NotationXing

Re: in SAP-Tabellen schreiben

Beitrag von Unit605 (Expert / 975 / 37 / 93 ) »
Gokar hat geschrieben: Ich stell mir auf jeden Fall vor, dass es deutlich mehr Aufwand ist.
Und wüsste auch nicht, wie ich vorgehen müsste..
Einen Eintrag auf ein, zwei festen Dynpros machen ist ja kein Problem. Aber wie man eine Tabelle editiert / abgrenzt incl. Transportauftrag mit Blättern in der Listansicht, ist deutlich komplizierter..
Falls Du mit Batch Inpurt und Transportaufträgen zu tun hast und verschiedenen Systemen/Releaseständen, ein Tipp von mir. Frag das System ab etwas so:

Code: Alles auswählen.

 IF sy-saprl GE '46B'.   "SAP-Release 4.6b
       ........new program code ....
    else.
       ........old program code ....
    endif.
Der Grund: In 4.6b z.B. musste man erst den Transportauftrag anlegen und dann die Tabelle füllen. In höheren Releasen musste man erst Tabelle fuellen und dann den Transportauftrag erstellen.

Nur so als Hinweis... falls es bei Dir zutrifft....

Folgende Benutzer bedankten sich beim Autor Unit605 für den Beitrag:
Gokar


Re: in SAP-Tabellen schreiben

Beitrag von ewx (Top Expert / 4849 / 313 / 642 ) »
ralf.wenzel hat geschrieben:Wenn es allerdings um eine Tabelle handelt, die in der SM30 gepflegt wird (da kann man dann davon ausgehen, dass es keine daraus folgenden Abhängigkeiten gibt)[...]
Nein, kann man nicht! Es können in den Zeitpunkten zu einem Tabellenpflegedialog etliche Verarbeitungen laufen. Von Änderungszeigern über eigene Feldprüfungen bis hin zur Speicherung in anderen Tabellen oder Weitergabe in andere Systeme.

Um Daten ändern zu können, die mithilfe eines Tabellenpflegedialoges manuell verwaltet werden können, habe ich hier ein kurzes Demoprogrammgeschrieben. Leider wird bei der Verwendung des Bausteins, den ich gefunden haben, keine Datenprüfung vorgenommen. Es können so also Daten eingefügt werden, die im Dialog aufgrund von Fremdschlüsselprüfungen z.B. nicht möglich wären.
Vielleicht kennt jemand einen Baustein, der die Speicherung INKLUSIVE Prüfungen macht?
Ebenfalls möglich wäre die Verwendung des Bausteins VIEW_MAINTENANCE_CALL. Hier könnte der Import dann vom Anwender überprüft werden und könnte/ müsste die importierten Daten dann selbst sichern.

Re: in SAP-Tabellen schreiben

Beitrag von ralf.wenzel (Top Expert / 3935 / 200 / 281 ) »
ewx hat geschrieben:
ralf.wenzel hat geschrieben:Wenn es allerdings um eine Tabelle handelt, die in der SM30 gepflegt wird (da kann man dann davon ausgehen, dass es keine daraus folgenden Abhängigkeiten gibt)[...]
Nein, kann man nicht! Es können in den Zeitpunkten zu einem Tabellenpflegedialog etliche Verarbeitungen laufen.
Das ist richtig - aber nach meiner Erfahrung eher selten, weil solche Codings nach Generierung des Tabellenpflegedialoges weg sind.

Oder reden wir von unterschiedlichen Dingen?
Bild
Ralf Wenzel Heuristika SAP-Development
25 Jahre SAP-Entwickler • 20 Jahre Freiberufler
PublikationenUngarische NotationXing

Vergleichbare Themen

0
Antw.
1524
Views
3
Antw.
1347
Views
8
Antw.
16459
Views
Customizing-Tabellen vs. Anwendungs-Tabellen
von beterman » 02.11.2011 17:53 • Verfasst in SAP - Allgemeines
40
Antw.
17082
Views
Programm schreiben
von Improver » 12.10.2017 19:22 • Verfasst in Basis
0
Antw.
1089
Views
Was auf ein Bild schreiben...
von dimes » 21.11.2006 08:24 • Verfasst in ABAP Objects®

Aktuelle Forenbeiträge

Regex in where
vor 23 Stunden von tar 8 / 369
Daten an Tabelle binden
Gestern von Bright4.5 3 / 1636
Programm anlegen mit Vorlage
vor 2 Tagen von DeathAndPain 2 / 286
IT0024 Qualifikationen CP-ID
vor 2 Tagen von DeathAndPain 2 / 529

Newsletter Anmeldung

Keine Beiträge verpassen! Wöchentlich versenden wir lesenwerte Beiträge aus unserer Community.
Die letzte Ausgabe findest du hier.
Details zum Versandverfahren und zu Ihren Widerrufsmöglichkeiten findest du in unserer Datenschutzerklärung.

Aktuelle Forenbeiträge

Regex in where
vor 23 Stunden von tar 8 / 369
Daten an Tabelle binden
Gestern von Bright4.5 3 / 1636
Programm anlegen mit Vorlage
vor 2 Tagen von DeathAndPain 2 / 286
IT0024 Qualifikationen CP-ID
vor 2 Tagen von DeathAndPain 2 / 529

Unbeantwortete Forenbeiträge

BUSOBJEKT zu CMIS PHIO ermitteln
vor 2 Tagen von snooga87 1 / 221
aRFC im OO-Kontext
letzen Monat von ralf.wenzel 1 / 3403
Hilfe bei SWEC/SWE2
September 2024 von retsch 1 / 9953