Once again: Tabelleninhalte nach Excel

Alles rund um die Sprache ABAP®: Funktionsbausteine, Listen, ALV
5 Beiträge • Seite 1 von 1
5 Beiträge Seite 1 von 1

Once again: Tabelleninhalte nach Excel

Beitrag von ralf.wenzel (Top Expert / 3776 / 176 / 262 ) »
Hallo,

gegeben sei eine kundeneigene Tabelle, deren Inhalte selektiv nach Excel exportiert werden sollen.

Ich überlege gerade, was die einfachste Möglichkeit (die mit dem geringsten Aufwand) ist, es könnte zum Beispiel ein Programm sein, welches ein eigenes Selektionsbild hat und über die Eingaben die SE16 aufruft. Hinter diese Transaktion könnte man eigene Berechtigungen legen.

Ich weiß dass es sich hierbei um eine Minimallösung handelt, aber genau DAS ist gewünscht: Eine provisorische Minimallösung.

Am ehesten wäre es das, was die Transaktionen

SE16_*

leisten. Z.B. liegt hinter SE16_BKPF das Programm /1BCDWB/DBBKPF -- was aber ein generiertes Programm ist und ich weiß nicht, wie und durch was generiert.

Frage daher: Kann mir jemand einen Denkanstoß geben, wie ich so etwas für eine kundeneigene Tabelle selbst erzeuge? Ich werd da gerade nicht so ganz schlau draus.

Oder gibts nen besseren Weg?


Danke

Ralf
Bild
Ralf Wenzel Heuristika SAP-Development
25 Jahre SAP-Entwickler • 20 Jahre Freiberufler
PublikationenUngarische NotationXing

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


Beitrag von ewx (Top Expert / 4784 / 294 / 628 ) »
Fb REUSE_ALV_GRID_DISPLAY_LVC.
Der braucht nur mit Strukturnamen und Interner Tabelle aufgerufen werden und schwupps hat man einen schönen ALV-Grid aus dem man einfach Excel aufrufen kann.

Gruß, Enno.

Beitrag von black_adept (Top Expert / 3946 / 105 / 886 ) »
Wenn du keine Lust hast die komfortable Lösung von Enno zu nehmen könntest du auch den Weg der Faulheit nehmen.

- SE16 aufrufen für die eigenen Tabelle.
- Auswählen welche Felder auf dem Selektionsbild zu sehen sein sollen .
- Via SYSTEM -> STATUS den (generierten) Programmnamen abgreifen
- In SE38 dieses generierte Programm kopieren auf ein eigenes Z-Programm.
- Fertig
live long and prosper
Stefan Schmöcker

email: stefan@schmoecker.de

Beitrag von ralf.wenzel (Top Expert / 3776 / 176 / 262 ) »
Danke, ihr seid echt ein Schatz -- bzw. zwei *g


Ralf

P.S.: Hab mich für die erste Lösung entschieden.
Bild
Ralf Wenzel Heuristika SAP-Development
25 Jahre SAP-Entwickler • 20 Jahre Freiberufler
PublikationenUngarische NotationXing

Re: Once again: Tabelleninhalte nach Excel

Beitrag von Frank Dittrich (Expert / 674 / 0 / 15 ) »
ralf.wenzel hat geschrieben:Am ehesten wäre es das, was die Transaktionen

SE16_*

leisten. Z.B. liegt hinter SE16_BKPF das Programm /1BCDWB/DBBKPF -- was aber ein generiertes Programm ist und ich weiß nicht, wie und durch was generiert.
/1BCDWB/DB<tabname> ist doch schon seit 4.0 der Name der in SE16 für eine Tabelle generierten Programme. (Oder war es 4.5/4.6, als die @lfdnr-Programme abgelöst wurden?)

Und wenn Du Dir die Definition von SE16_BKPF ansiehst, siehst Du eine Parameter-Transaktion mit Bezug auf SE16, wobei BKPF als Tabellenname übergeben und das Einstiegsbild übersprungen wird.

Das heißt aber auch: jeder, der Felder aus dem Selektionsbild löscht oder neue aufnimmt, ändert dadurch das Aussehen des Reports für alle anderen User.
Und da SAP hier die Select-Options einfach "durchnummeriert",
kann man auch Report-Varianten nicht sinnvoll nutzen.

Also vor dem Kopieren eine sinnvolle Liste von Feldern ins Selektionsbild aufnehmen.
Außerdem beachten, dass die Berechtigungs-Prüfung auf S_TABU_DIS in der SE16 (SAPLSETB) erfolgt, und nicht IM generierten Report. (Apropos "Report": jeder darf mal raten, warum der Report mit einer FUNCTION-POOL-Anweisung beginnt.)

Eine Neugenerierung findet übrigens neben der direkt vom Benutzer erzwungenen Änderung des Selektionsbildes auch statt, wenn sich die Definition der Tabelle seit der letzten Genererung geändert hat.
Damit trotz identischer Tabellen-Definition und unveränderter Auswahl von Feldern für das Selektionsbild ein abweichender Quelltext generiert wird, müssen in einem Support Package oder OSS-Hinweis Änderungen an LSETB*-Includes vorgenommen worden sein, und aus SAPLSETB muss bei initgen ein neuer "Parameter" mitgegeben werden.

Wem das jetzt spanisch vorkommt, der kann mal mit globaler Suche in SAPLSETB nach initgen suchen, per Doppelklick zur Makrodefinition springen, sich die anderen Makros ansehen,
den Quelltext von LSETBTXT und darin verwendeter "Includes" ansehen, in Tabelle AGDB nachsehen, an welchen Stellen der gleiche Generierungs-Mechanismus verwendet wird, und spaßeshalber mal RSGENPAT mit den Parametern LSETBTXT, SAPLSETB und X starten.
(RSGENPAT ist auch bestens geeignet, um Fehler in eigenen Pattern-Dateien zu finden.
Ich benutze den Mechanismus jedenfalls ganz gerne, wenn mal etwas komplexere Quelltexte zu erzeugen sind.)

Frank

Seite 1 von 1

Vergleichbare Themen

1
Antw.
337
Views
Tabelleninhalte abgleichen
von Lucyalison » 19.10.2022 15:42 • Verfasst in ABAP® Core
1
Antw.
648
Views
Tabelleninhalte transportieren (TR_OBJECTS_INSERT)
von abapnewbie » 26.10.2020 18:28 • Verfasst in ABAP® für Anfänger
2
Antw.
6150
Views
Tabelleninhalte ändern mit Hilfsprogramm ähnlich wie SE16
von ITEL » 13.01.2006 15:38 • Verfasst in Tips + Tricks & FAQs
0
Antw.
1445
Views
Excel Upload ohne Excel aber OpenOffice
von MarkusW » 23.01.2008 17:07 • Verfasst in ABAP® Core
1
Antw.
2703
Views
interne Tabelle in Excel übertragen, Excel starten
von stm » 23.07.2004 11:34 • Verfasst in ABAP® Core

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.