SAP Jobsuche bei DV-Treff
milly
  • milly
  • SAP Forum - User Thema Starter
vor 13 Jahre

Hallo zusammen,

Ich habe ein neues Z-Programm geschrieben, das Daten in einem ALV ausgibt. In unserem Testsystem gibt die Ausgabe ein super Bild - alle Spalten werden in der richtigen Breite angezeigt. Nach dem Transport habe ich die gleiche Transaktion im Qualitätssystem getestet. Diesmal ist bloss eine einzige Spalte erschienen. Wie ich bei "Variante auswählen" feststellen konnte, ist der Grund anscheinend, dass er sich aus einem Pool von 5 Varianten, die eigentlich zu anderen Reports gehören, eine ausgewählt hat. Und in meinem neuen Report gibt es nun mal bloss eins der dort verwendeten Felder. Also zeigt er bloss dieses eine Feld an.

Wenn ich dann einfach alle Felder markiere und auch anzeigen lasse, dann werden die in einer wilden Breite angezeigt - von optimaler Breite keine Spur.

So wie ich das sehe, hat das mit dem SELECT auf der Tabelle LTDX zu tun, wo er mit dem entsprechenden Schlüssel nun mal genau zu diesen Variaten kommt.

Kann mir jemand helfen zu verstehen, was ich tun muss, um einfach die normale und korrekte Anzeige wie im Testsystem zu erreichen? In einem früheren Fall habe ich dann am Selektionsbildschirm die Möglichkeit hinterlegt, eine Variante mitzugeben, die ich dann eben noch manuell im Zielsystem anlegen musste - aber das kann doch nicht so gedacht sein, oder?

Besten Dank im voraus für jegliche Unterstützung und Anregung.

Milly

anavolver
vor 12 Jahre
hallo Milly

Hast Du das ALV über ein Control ausgegeben oder über die FUBA's REUSE_ALV_FIELDCATALOG_MERGE und REUSE_ALV_GRID_DISPLAY ?

Normalerweise werden die entsprechenden Varianten lokal auf dem PC pro Benutzer abgespeichert.

Beim xxx_GRID_DISPLAY kannst Du diesen Parameter mitgeben: wf_layout-colwidth_optimize = 'X' . , damit deine Kolonnen immer die optimale Breite haben.

Gruss Urs

hier ein Auszug Coding:

* Layout des ALV

CLEAR wf_layout.

wf_layout-zebra = 'X'.

wf_layout-get_selinfos = 'X'.

wf_layout-colwidth_optimize = 'X' .

* Ausgabe einer einfachen Liste (einzeilig)

CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'

EXPORTING

i_buffer_active = ' '

i_callback_program = wf_repid

i_callback_user_command = 'USER_COMMAND'

is_layout = wf_layout

it_fieldcat = wf_fieldcat_tab[]

i_callback_pf_status_set = 'SET_PF_STATUS'

i_default = 'X'

i_save = 'A'

i_grid_title = wf_title

is_variant = wf_variant

is_print = wf_print

i_screen_start_column = 0

i_screen_start_line = 0

i_screen_end_column = 0

i_screen_end_line = 0

TABLES

t_outtab = outtab

EXCEPTIONS

program_error = 1

OTHERS = 2.