Hallo Peter,
Probier einfach mal den beispielreport BCALV_GRID_DEMO.
In wesentlichen brauchst du auf deinem Dynpro einen CustomControl. Das wird der Platzhalter für dein ALV Grid. Im PBO mußt du dann nur einen Customcontainer erzeugen, der sich auf dein CustomControl bezieht und dein grid, der auf den CustomContainer verweist.
Initial befüllen tust du dein ALV über die Methode SET_TABLE_FOR_FIRST_DISPLAY. Dieser kannst du einen DDIC Struktur mitgeben und eine Tabelle. Und der ALV macht dann den rest für dich
Wenn du mehr zum ALV wissen möchtest kannst du gern mal in diesem Forum suchen. Sind schon einige Fragen beantwortet worden.
es geht auch ohne einen Container auf einem Dynpro. Versuch´s mal mit dem Funktionsbaustein REUSE_ALV_GRID_DISPLAY. Der Aufbau des Feldkataloges und der Events etc. funktioniert wie bei einer "normalen" ALV-Liste .
Nun, es gibt ja den Funktionsbaustein REUSE_ALV_LIST_DISPLAY mit dem man eine klassische (nicht-hierarchische) ALV-Liste erzeugen kann. Zum Aufbau des Feldkataloges verwendet kann man ja den FuBa REUSE_ALV_FIELDCATALOG_MERGE verwenden (wenn man sich auf eine DDIC-Strukur bezieht) und um die möglichen Events zu ermitteln den FuBa REUSE_ALV_EVENTS_GET. Natürlich benötigt man dann noch die Wertetabelle, die ausgegeben werden soll.
Will man aber statt einer "klassischen" ein ALV-GRID-Liste haben, ist es m.E. am einfachsten, wenn man den FuBa REUSE_ALV_GRID_DISPLAY verwendet. Der Baustein wird genauso verwendet wie bei der anderen Variante. Dabei ist es also nicht erforderlich einen Screen und einen Container über den Screen-Painter zu erzeugen.
Hier mal ein Beispiel des Aufrufs aus einem Report: