Hallo zusammen,
ich habe ein etwas "verschrobenes" Konstrukt:
Für eines meiner Projekte schreibe ich gerade an einem Funktionsbaustein. Dieser soll, anhand einer Übergabetabelle die Werte aus dieser Tabelle anhand der Ursprungs-Struktur (variabel!) extrahieren und nur die Werte bzw. Felder die zuvor an anderer Stelle gecustomized wurden, an eine Ausgabetabelle übertragen. Die Ausgabetabelle ist notwendig, da ALV-Grids ja nur Eingabetabellen vom Type Standard Table akzeptieren und die Übergabetabelle - aus diversen Gründen die zu Erklären jetzt zu lange dauern würde und auch zu Ausufern würde - nunmal eine TabellenTyp-Tabelle ist.
Nun, die Übergabe der Daten und das Extrahieren sowie das Übergeben der Daten an die Ausgabetabelle funktioniert alles - wunderbar....
Nun kommt mein Problem: 
Zur Anzeige der Daten bediene ich mich, wen wunderts 

 , eines ALV-Grids, das auf einer Tabelle folgender TypBeschreibung basiert:
Data: gt_distab   Type Z_DISSTRUCT.
wobei Z_DISSTRUCT folgende Felder und Attribute aufweißt:
Code: Alles auswählen.
Komponente Komp.Typ.  Dtyp    Länge    Kurzbeschreibung
FIELD1     CHAR100    CHAR     100     Charakter 100
FIELD2     CHAR100    CHAR     100     Charakter 100
FIELD3     CHAR100    CHAR     100     Charakter 100
FIELD4     CHAR100    CHAR     100     Charakter 100
FIELD5     CHAR100    CHAR     100     Charakter 100
FIELD6     CHAR100    CHAR     100     Charakter 100
Für diese Struktur lasse ich mir natürlich über den Baustein LVC_FIELDCATALOG_MERGE die lvc_t_fcat erstellen. Nennen wir Ihn FeldKatalogA.
Nun, sieht es ja nicht gut aus, wenn man Daten zu einem spezifischen Objekt präsentiert, das als Überschrift über den Spalten überall nur 'Charakter 100' steht.
Also ermittel ich Anhand der Import-Parameter den Namen der dynamischen (zu vergebenden, die Strukturen existieren schon im DDic) Struktur, auf welcher die Daten in der Import-Tabelle beruhen, auch dafür noch den Feldkataog. Nennen wir diesen FeldKatalogB.
Um nun meine Anzeigetabelle - von den Überschriften her - auf die Ursprungsstruktur der Eingabedaten anzupassen, setze ich für den FeldKatalogA die zu belegenden Spalten wie folgt um:
Code: Alles auswählen.
    clear: FeldKatalogA-coltext,
           FeldKatalogA-scrtext_l,
           FeldKatalogA-scrtext_m,
           FeldKatalogA-scrtext_s,
           FeldKatalogA-ref_field,
           FeldKatalogA-ref_table.
    move:
     space                  to FeldKatalogA-tech,
     FeldKatalogB-scrtext_m to FeldKatalogA-reptext.
Die nicht zu besetzenden Felder des FeldKatalogsA werden im Feld Tech auf 'X' gesetzt, sind also in der Anzeige nicht mehr wirksam.
Durch löschen der Felder ref_field und ref_table wird ja, wie ich die Doku verstanden habe, die Dictionary-Beziehung der Felder aufgehoben, so das im Feld reptext die anzuzeigende Spaltenüberschrift stehen sollte.
Soweit zur Beschreibung der Vorbereitungen. Da dies nicht mein erstes OO-Alv_Grid ist, das ich verwende, habe ich natürlich auf dem Dynpro ein CustomControl, für welches ein cl_gui_custom_control-Objekt angelegt wird. Dieses wiederrum dient als Parent-Objekt für die cl_gui_alv_grid-Instanz. Beide werden sauber angelegt und befinden sich auf einem PopUp-Dynpro.
Setze ich nun mit einen Set_Table_For_First_Display meine interne Anzeigetabelle an das Grid ab, übergebe ich das Layout (sel_mode = 'B' und zebra = 'X') und den FeldKatalogA ebenfalls an die Methode...
Phänomen: Es kommt zu keinem Laufzeitfehler, aber das Grid wird dennoch nicht angezeigt!?!?!
Laaanger Rede kurzer Sinn: Hat einer von Euch eine Erklärung dafür, bzw. kann mir Erklären (ich hoffe meine Auführungen waren ausführlich genug), was ich falsch mache?
Besten Dank im voraus und
vG
Arno