generische Typisierung

Alles rund um die Sprache ABAP®: Funktionsbausteine, Listen, ALV

generische Typisierung

Postby Cecilia1751 » Thu Jan 09, 2003 5:59 pm

Hallo liebe Forumgemeinde,

kann mir bitte jemand sagen, ob man interne tabellen auch generisch erzeugen kann?

Konkret möchte ich ueber einen Funktionsbaustein im Importparameter zunaechst den Namen eines DDIC-Objekt benennen und dann im Quellcode des FuBa entsprechend dieses Importparameters eine interne Tabelle samt Arbeitsbereich anlegen.
D.h. der Typ fuer die Typisierung des Arbeitsbereichs wird erst zur Laufzeit bekannt sein.

Probiert habe ich das Ganze schon mal wie folgt: (haut aba nich hin! :oops:

Code: [Select all] [Expand/Collapse] [Download] (Untitled.txt)
  1.  
  2.   FIELD-SYMBOLS <lm_tabname> like I_TABNAME.
  3.  
  4. Data: wa_tab TYPE <IM_tabname>,
  5.          it_tab   LIKE STANDARD TABLE OF wa_tab.
  6.  
GeSHi ©


Hat jemand eine Idee bzw. ein klitzekleines Beispiel?
Freue mich auf Anregungen, Kommentare jeder Art

Gruss

gse
Cecilia1751
...
...
 
Posts: 110
Joined: Wed Dec 18, 2002 11:04 am

Postby Emre397 » Thu Jan 09, 2003 6:43 pm

Hi Gse,
FROHES NEUES!

hier dein beispiel:
Code: [Select all] [Expand/Collapse] [Download] (Untitled.txt)
  1. FIELD-SYMBOLS: <it_test> TYPE any.
  2.  
  3. DATA: TypeName TYPE string.
  4. TypeName = 'CRMT_ORDERADM_I_COMT'.
  5. CREATE DATA dref TYPE &#40;TypeName&#41;.
  6.  
  7. assign dref->* to <it_test>.
GeSHi ©


Gruß Azreal
Emre397
...
...
 
Posts: 141
Joined: Mon Dec 09, 2002 1:53 pm

Postby Dion4903 » Thu Jan 09, 2003 6:45 pm

folgendes könnte es funktionieren:

* in lv_tab_name type C steht der Name von DDIC Structure
Code: [Select all] [Expand/Collapse] [Download] (Untitled.txt)
  1.   DATA: lv_wa_type type ref to data,
  2.             lv_tab_type type ref to data.
  3.  
  4.       <lt_tab> type any,
  5.       <ls_tab> type any.
  6. * Create workarea
  7.     create data lv_wa_type type &#40;lv_tab_name&#41;.
  8.     assign lv_type->* to <ls_tab>.
  9. * Create in tab
  10.     create data lv_tab_type standard table of &#40;lv_tab_name&#41;.
  11.     assign lv_tab_type->* to <lt_tab>.
GeSHi ©


Gruss, tom
Dion4903
..
..
 
Posts: 78
Joined: Tue Dec 03, 2002 3:53 pm

type standard table of

Postby Cecilia1751 » Thu Jan 09, 2003 7:37 pm

hi azreal, hi tom, EUCH beiden auch noch ein FROHES NEUES!

azreal,

die derefernzierung haut hin, wenn man zusätzlich
Code: [Select all] [Expand/Collapse] [Download] (Untitled.txt)
  1. dref als type ref to data
  2.  
GeSHi ©

deklariert. nur, habe ich dann erst eine struktur, schwer tue ich mir noch in der deklaration der internen tabelle passend zum arbeitsbereich

tom,

bei Dir mag der syntax-checker die zeile
Code: [Select all] [Expand/Collapse] [Download] (Untitled.txt)
  1. create data lv_tab_type standard table of &#40;lv_tab_name&#41;.
  2.  
GeSHi ©
nicht und stört sich an der definition.
fehlermeldung:
Code: [Select all] [Expand/Collapse] [Download] (Untitled.txt)
  1. statt"STANDARD TABLE" wurde "TYPE LINE" oder "LIKE LINE" erwartet.
  2.  
GeSHi ©


muss jetzt dann leider weg.... :(
bin aber morgen frueh wieder am start.

EUCH beiden noch einen schoenen abend und vielen dank fuer die hilfe!

gruss gse
Cecilia1751
...
...
 
Posts: 110
Joined: Wed Dec 18, 2002 11:04 am

Postby Dion4903 » Fri Jan 10, 2003 9:38 am

Hi gse,

sorry.....schreibfehler.... es sollte so sein:
Code: [Select all] [Expand/Collapse] [Download] (Untitled.txt)
  1. create data lv_tab_type TYPE STANDARD TABLE OF &#40;lv_tab_name&#41;.
GeSHi ©

ich muss leider zugeben dass die coding noch nicht getestet wurde.
Gruss, tom
Dion4903
..
..
 
Posts: 78
Joined: Tue Dec 03, 2002 3:53 pm

mag der syntax-checker auch nicht

Postby Cecilia1751 » Fri Jan 10, 2003 10:35 am

guten morgen tom,

kein problem, den TYPE STANDARD TABLE OF....hatte ich gestern auch noch probiert, nur mag der syntax-checker immer noch nicht. ;)

diesmal meldet er:

Code: [Select all] [Expand/Collapse] [Download] (Untitled.txt)
  1. TABLE konnte nicht interpretiert werden. Mögliche Fehlerursachen: Falsche Schreibweise oder Kommafehler.
  2.  
GeSHi ©


leider bringt die F1-Hilfe auch zum CREATE DATA als Variante nur:

Code: [Select all] [Expand/Collapse] [Download] (Untitled.txt)
  1. 1. CREATE DATA dref TYPE type.        
  2. 2. CREATE DATA dref TYPE &#40;c&#41;.        
  3. 3. CREATE DATA dref LIKE f.          
  4. 4. CREATE DATA dref TYPE LINE OF itab.
  5. 5. CREATE DATA dref LIKE LINE OF itab.
  6.  
GeSHi ©


werde mal weitersuchen. DIR auf jeden Fall mal noch einen schönen Tag und Danke für Deine Mühe!

gse
Cecilia1751
...
...
 
Posts: 110
Joined: Wed Dec 18, 2002 11:04 am

Postby Walter4536 » Fri Jan 10, 2003 10:52 am

Hallo gse,

so wie tom das geschrieben hat muss es funktionieren. Hab ich selbst kurz eben noch mal getestet.

Schau mal:

Code: [Select all] [Expand/Collapse] [Download] (Untitled.txt)
  1. data: lt_gentab type ref to data,
  2.          lv_type&#40;30&#41; type c value 'CDHDR'.
  3.  
  4.  
  5.  create data lt_gentab type standard table of &#40;lv_type&#41;.
  6.  
  7.  
GeSHi ©


Hab genau dieses coding in einen kleinen Testreport reingehängt. Funktioniert tadellos. Insofern vermute ich, dass der Fehler bei Dir an anderer Stelle zu suchen ist.

Gruss,
Steff
Walter4536
...
...
 
Posts: 315
Joined: Mon Dec 02, 2002 12:09 pm

Postby Willy1492 » Fri Jan 10, 2003 11:42 am

Steff hat geschrieben:so wie tom das geschrieben hat muss es funktionieren. Hab ich selbst kurz eben noch mal getestet.

Kann es sein, daß gse einfach noch nicht mit Release 6.20 arbeitet?
Willy1492
....
....
 
Posts: 581
Joined: Tue Dec 03, 2002 4:44 pm

funzt nich!

Postby Alva1590 » Fri Jan 10, 2003 12:14 pm

hallo leute,

kann machen was ich will, es bleibt bei der Fehlermeldung :roll:

Code: [Select all] [Expand/Collapse] [Download] (Untitled.txt)
  1. "TABLE" konnte nicht interpretiert werden. Mögliche Fehlerursachen: Falsche Schreibweise oder Kommafehler.
  2.  
GeSHi ©



vielleicht liegt es wirlich am release (4.6B). weiss jemand einen workaround?

gruss gse
Alva1590
.....
.....
 
Posts: 4387
Joined: Mon Dec 02, 2002 3:01 pm

Postby Walter4536 » Fri Jan 10, 2003 12:17 pm

@Frank:

Wieso Rel. 620? Hab 610 und funktioniert problemlos. Da gse aber 46B hat, scheint es in diesem Falle am Release zu hängen.

@gse
Werd mal nachschauen, was man in 46B machen kann.

Gruß,
Steff
Walter4536
...
...
 
Posts: 315
Joined: Mon Dec 02, 2002 12:09 pm

Next

Return to ABAP® Core

Who is online

Users browsing this forum: No registered users and 1 guest

cron