ALV-Grid: 2 Strukturen für einen Feldkatalog......

Die Objektorientierung mit ABAP®: Vererbung, Dynamische Programmierung, GUI Controls (u.a. ALV im OO).
7 Beiträge • Seite 1 von 1
7 Beiträge Seite 1 von 1

ALV-Grid: 2 Strukturen für einen Feldkatalog......

Beitrag von Arno Simon (ForumUser / 84 / 0 / 1 ) »
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

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


Beitrag von CAT ( / / 0 / 3 ) »
Probier es doch mal mit so einfachen Sachen wie:

- wird dein Dynpro vom Programm aufgerufen
- ist die Ablauflogik im Dynpro aktiv
- gibt es die Module, die in der Ablauflogik
angesporchen werden

Gruß

Thomas

Beitrag von Arno Simon (ForumUser / 84 / 0 / 1 ) »
--- gelöscht, da das referenzierte Posting gelöscht wurde ---
Black_Adept


Wieder mal ein Beispiel für die äußerst üble Art von Zensur, die hier im Forum vorgenommen wird
Stefan ( Black_Adept)



@CAT:
- Dynpro wird aufgerufen,
- Ablauflogik und Module sind aktiv

Ich bin ja mit dem Debugger durchgelaufen und auf Sy-Subrc = 0 gekommen ;)

vG

Arno

Beitrag von black_adept (Top Expert / 4135 / 131 / 956 ) »
Hi Arno,

was wird denn angezeigt?

1.)
a) gar nichts
b) ein völlig leerer Grid ohne Überschriften
c) ein Grid ohne Zeilen, aber mit Überschriften
d) noch was anderes.


2.) Ich hoffe mal, dass nicht ALLE Felder auf "tech" gesetzt sind - sonst gibts wahrscheinlich auch keine Ausgabe

3.) Funktioniert die Anzeige, wenn du dieses "Überschriftenersetzen" nicht machst? Also bekommst du dann immer die Überschrift Charakter100 sowie ein paar Zeilen im Grid zu sehen?
live long and prosper
Stefan Schmöcker

email: stefan@schmoecker.de

Beitrag von Arno Simon (ForumUser / 84 / 0 / 1 ) »
Hallo Stefan,

das PopUp-Dynpro (mit Status) wird angezeigt, so das ich das wenigsten noch normal beenden kann :)

Nein, es sind nicht alle Felder auf "Tech = 'X'" gesetzt, nur die die wirklich nicht angezeigt werden sollen.

Die Prüfung des Feldcustomizing auf die relevanten Felder läuft so, das im Feldkatalog in jedem Fall entsprechend Felder aktiviert werden. Wenn kein Customizing vorliegt, werden die ersten 6 Felder der Ursprungsstruktur für die Anzeigefelder verwendet.

Mit dem Überschriften setzen, das Test ich gerade... Melde mich gleich wieder.

vG

Arno

Beitrag von Arno Simon (ForumUser / 84 / 0 / 1 ) »
Hallo Stefan,

nein, das Ausschalten der Routine die den Feldkatalog neu zusammenstellt und die Datenübermittlung an die Zieltabelle durchführt, hat leider auch kein Ergebnis gebracht. Den Teil, der den eigentlichen Feldkatalog aufbaut habe ich natürlich weiterhin aktiv gelassen.

vG

Arno

Beitrag von Arno Simon (ForumUser / 84 / 0 / 1 ) »
kann mal jemand das ganze posting hier löschen? ;) :D

Die Lösung ist fast schon zu peinlich um Wahr zu sein :( :oops: :oops:

2 bzw. 3 Ursachen:

1. ein Bug seitens der SAP (oder ist das der Bug?!) ;)
2. ein klitzekleiner (wirklich kleiner!) Schreibfehler meinerseits *dummdiddeldumm*

und

3. eine RIESENPORTION Betriebsblindheit meinerseits, ansonsten hätte ich mir jetzt nicht die letzten 3 Tage in die Haare schmieren können :(

1. Der Bug und 2. der Schreibfehler

Wird bei

Code: Alles auswählen.

Data go_container type ref to cl_gui_custom_container.
create object go_container
  exporting
    container_name = 'SO_CONTAINER'
  exceptions
    others         = 1.
in der Textkonstanten für "container_name" auch nur 1 Zeichen vergessen, läuft das ganze nicht (und das war mein Schreibfehler). Warum? Auch wenn der Sy-Subrc abgeprüft wird, bleibt das ohne folgen! Das kommt daher das die entsprechende Klasse seitens der SAP einen Bug hat und SY-SUBRC = 0 emitiert, auch wenn es den benannten Container auf dem Dynpro gar nicht gibt!

Das peinliche daran ist, das ich das nicht gesehen habe, obwohl ich die Routine in den vergangenen 3 Tagen mindestens 40 mal mit dem Debugger und noch öfter mit dem Editor "beglückt" habe... :( Da mußte mir gerade erstmal ein Kollege über die Schulter schauen und der hat's dann (zum Glück) gesehen, sonst hätte ich hier noch länger in den Bohnen gestochert und versucht Kaffeesatz zu lesen :(

vG

Arno

PS auch wenn die Exceptions wie im Construktor angegeben emitiert werden, kommt 0 raus!

Seite 1 von 1

Vergleichbare Themen

3
Antw.
4168
Views
Feldkatalog modifizieren für ALV-GRID
von void » 21.06.2007 13:20 • Verfasst in ABAP Objects®
1
Antw.
2970
Views
Feldkatalog aktualisieren @ ALV Grid Control
von m4rkusr » 21.09.2006 15:40 • Verfasst in Dialogprogrammierung
3
Antw.
2828
Views
Anzeige von Strukturen
von -hawkeye- » 29.08.2007 08:18 • Verfasst in Financials
1
Antw.
1304
Views
Auswahlliste der Strukturen
von nkuhn » 22.05.2007 11:13 • Verfasst in ABAP® für Anfänger
1
Antw.
3977
Views
Fremdschlüsselprüfung bei Include-Strukturen
von mfromg » 09.02.2018 08:53 • Verfasst in Dialogprogrammierung

Über diesen Beitrag


Unterstütze die Community und teile den Beitrag für mehr Leser und Austausch

Aktuelle Forenbeiträge

IBAN und BUT0BK
vor 3 Tagen von waltersen gelöst 10 / 12103
SAPGui 8.00 32 Bit vs 64 Bit
vor 5 Tagen von DeathAndPain 3 / 4902
Programm per Fremdtransport einspielen
vor 5 Tagen von IHe 3 / 4268
Splitter-AlV erscheint nicht
vor 5 Tagen von qyurryus 2 / 4209

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.

Aktuelle Forenbeiträge

IBAN und BUT0BK
vor 3 Tagen von waltersen gelöst 10 / 12103
SAPGui 8.00 32 Bit vs 64 Bit
vor 5 Tagen von DeathAndPain 3 / 4902
Programm per Fremdtransport einspielen
vor 5 Tagen von IHe 3 / 4268
Splitter-AlV erscheint nicht
vor 5 Tagen von qyurryus 2 / 4209