SAP Jobsuche bei DV-Treff
pit850
  • pit850
  • SAP Forum - User Thema Starter
vor 7 Jahre
Hallo,

ich habe ein kleines Problem in unser Druckerumgebung.

Wir haben ein 4 System Landschaft und das Anlegen der Drucker erfolgt im Testsystem und wird über die Transportschiene in alle Systeme verteilt.

Leider kommt es immer wieder vor das Entwickler in den nicht prod. System einen Drucker per Hand anlegen. Dann kommt es bei eventuell namensähnlichen Druckern zum Schiefstand so das ein Drucker unterschiedliche Kurznamen in den Systemen besitzt.

Jetzt habe ich versuch die Drucker aus dem Prod. System zu exportieren und in das Test System zu importieren und dann weiter zu transportieren. Der Import funktioniert soweit nur wird Kurzname beim Import nicht geändert.

ich kenn mich leider nicht so gut in ABAP aus um mir ein kleines Programm zu bauen mit dem ich die Tabellen TSP03D und TSP03L ändern könnte.

Gibt es jemanden aus der community der mir da weiterhelfen kann oder kennt jemand noch eine anderen Weg den Kurznamen zu ändern?

Beste Grüße

Peter

pit850
  • pit850
  • SAP Forum - User Thema Starter
vor 7 Jahre
hab mich dann mal durch gequält und etwas hin bekommen was auch funktioniert.

nicht das schönste Programm aber es erfüllt seinen Zweck.

REPORT z_update_printer.

DATA lv_short_name TYPE tsp03d-padest.

DATA lv_printer TYPE tsp03d-name.

DATA lt_tsp03d TYPE TABLE OF tsp03d.

DATA ls_tsp03d TYPE tsp03d.

DATA lt_tsp03l TYPE TABLE OF tsp03l.

DATA ls_tsp03l TYPE tsp03l.

RANGES s_buffer FOR lv_printer.

SELECT-OPTIONS s_name FOR lv_printer.

SELECT-OPTIONS s_short FOR lv_short_name.

LOOP AT s_name.

ls_tsp03d-name = s_name-low.

ls_tsp03l-lname = s_name-low.

READ TABLE s_short INTO s_buffer INDEX sy-tabix.

ls_tsp03d-padest = s_buffer-low.

ls_tsp03l-padest = s_buffer-low.

APPEND ls_tsp03d TO lt_tsp03d.

APPEND ls_tsp03l TO lt_tsp03l.

CLEAR: ls_tsp03d, ls_tsp03l.

ENDLOOP.

LOOP AT lt_tsp03d INTO ls_tsp03d.

UPDATE tsp03d SET padest = ls_tsp03d-padest WHERE name = ls_tsp03d-name.

ENDLOOP.

LOOP AT lt_tsp03l INTO ls_tsp03l.

UPDATE tsp03l SET padest = ls_tsp03l-padest WHERE lname = ls_tsp03l-lname.

ENDLOOP.