gelöst strukturkomponente als feldsymbol


Getting started ... Alles für einen gelungenen Start.

Moderatoren: Jan, Steff

gelöst strukturkomponente als feldsymbol

Beitragvon Pinguincommander » 10.08.2012, 09:33

Hallo alle miteinander,
ich habe einmal wieder ein problem und da die Suche mir kein brauchbares Ergebnis ausgibt, hier der Post.
Ich habe in meinem ALV-Grid 2 Spalten die Checkboxen sind wenn nun jemand eine anklickt soll diese gesetzt oder eben nicht gesetzt werden und beim setzen soll noch eine Überprüfung laufen, da in einer Spalte innerhalb eines bestimmten Bereichs nur ein kästchen angekreuzt werden darf.
Nun zu meiner eigentlichen Frage, da ich nicht das ganze für jede Spalte einzeln programmieren möchte sondern der ablauf gleich ist möchte ich gerne die Strukturkomponente also den Feldname als feldsymbol umsetzen um so auf diesen zuzugreifen.
Hier einmal mein bisheriger code:
Code: Alles auswählen
FORM SET_CHECKBOX USING LWA_SELFIELD TYPE SLIS_SELFIELD.

 READ TABLE I_DATA INDEX W_INDEX INTO WA_DATA.
 FIELD-SYMBOLS: <feld> type slis_fieldname.
 ASSIGN lwa_selfield-tabname TO <feld>.

 IF WA_DATA-<feld> = ' '.
     wa_data-<feld> = 'X'.
 endif.

ENDFORM.
 


Nun bekomme ich immer die Meldung wa_data hat keine komponente namens <feld>.
Was mache ich falsch ?
Pinguincommander
ForumUser
 
Beiträge: 72
Registriert: 12.06.2012, 06:15
Dank erhalten: 0 mal
Ich bin: Entwickler/in

Sponsor

Alte ABAP-Entwicklerweisheit: Weißt du weder aus noch ein, baust du einen BADI ein

Re: strukturkomponente als feldsymbol

Beitragvon JHM » 10.08.2012, 09:52

Code: Alles auswählen
 ASSIGIN COMPONENT (fieldname) OF STRUCTURE wa TO <feld>.     "Über den Feldnamen den Zeiger auf genau ein Feld der Strucktur stellen

 IF <feld> = ' '.      "nur mit Fieldsysmbols, die WA brauchst du nicht mehr!
     <feld> = 'X'.
 endif.
 
Gruß Hendrik

Für diese Nachricht hat JHM einen Dank bekommen :
Pinguincommander
JHM
Expert
 
Beiträge: 850
Registriert: 15.02.2006, 12:39
Wohnort: Aachen
Dank erhalten: 91 mal

Re: strukturkomponente als feldsymbol

Beitragvon Pinguincommander » 10.08.2012, 10:08

darf fieldname auch eine Variable sein hierbei oder muss ich dass hardcodiert mitgeben ?
Pinguincommander
ForumUser
 
Beiträge: 72
Registriert: 12.06.2012, 06:15
Dank erhalten: 0 mal
Ich bin: Entwickler/in

Re: strukturkomponente als feldsymbol

Beitragvon JHM » 10.08.2012, 10:13

Pinguincommander hat geschrieben:darf fieldname auch eine Variable sein hierbei oder muss ich dass hardcodiert mitgeben ?


FIELDNAME sollte eine Variable sein, sonst braucht man ja den Fieldsymbol nicht mehr.....wichtig ist die Klammer um den Variablenname.
Gruß Hendrik

Für diese Nachricht hat JHM einen Dank bekommen :
Pinguincommander
JHM
Expert
 
Beiträge: 850
Registriert: 15.02.2006, 12:39
Wohnort: Aachen
Dank erhalten: 91 mal

Re: strukturkomponente als feldsymbol

Beitragvon Pinguincommander » 10.08.2012, 10:37

ahh ok dankeschön
Pinguincommander
ForumUser
 
Beiträge: 72
Registriert: 12.06.2012, 06:15
Dank erhalten: 0 mal
Ich bin: Entwickler/in

Re: strukturkomponente als feldsymbol

Beitragvon ewx » 10.08.2012, 12:36

JHM hat geschrieben:
Pinguincommander hat geschrieben:darf fieldname auch eine Variable sein hierbei oder muss ich dass hardcodiert mitgeben ?


FIELDNAME sollte eine Variable sein, sonst braucht man ja den Fieldsymbol nicht mehr.....wichtig ist die Klammer um den Variablenname.

Es kann durchaus sinnvoll sein, die Zuweisung hart zu kodieren.
Z.B. dann, wenn man - weswegen auch immer - unterschiedliche Strukturen bearbeiten möchte, von denen man aber nicht genau weiß, wie sie aussehen. Entweder, weil sie erst zur Laufzeit erzeugt wurden oder weil die Übergabe generisch erfolgt oder einfach, weil das zu bearbeitende Feld mal so und mal anders heißt.
Beispiel: Du möchtest eine generelle Routine schreiben, die in einer Struktur immer das aktuelle Datum und Uhrzeit in das AEDAT und AETIM schreibt. Es kann aber auch sein, dass UDATE und UTIME verwendet werden. Oder dass der Zeitstempel gar nicht vorhanden ist.
In der Routine kann man dann hart codiert einen Assign probieren und damit prüfen, ob eines der Felder überhaupt vorhanden ist.

Für diese Nachricht hat ewx einen Dank bekommen :
Pinguincommander
ewx
Top Expert
 
Beiträge: 2889
Registriert: 04.08.2003, 19:55
Wohnort: Schleswig-Holstein
Dank erhalten: 120 mal

Re: strukturkomponente als feldsymbol

Beitragvon Pinguincommander » 10.08.2012, 12:53

irgendwie will das mit der klammer nicht so wie ich will
hier mein code:

Code: Alles auswählen
FORM SET_CHECKBOX USING LWA_SELFIELD TYPE SLIS_SELFIELD.

FIELD-SYMBOLS: <feld> type any.

W_INDEX = LWA_SELFIELD-TABINDEX.
READ TABLE I_DATA INDEX W_INDEX INTO WA_DATA.

ASSIGN COMPONENT ( lwa_selfield-fieldname ) OF STRUCTURE wa_data
TO <feld>.
ENDFORM.
 


ich bekomme folgenden fehler:
"LWA_SELFIELD-FIELDNAME" konnte nicht interpretiert werden. Mögliche
Fehlerursachen: Falsche Schreibweise oder Kommafehler.

Wenn ich die klammern näher zusammensetze also so:
Code: Alles auswählen
(lwa_selfield-fieldname)

bekomme ich die meldung:
Feld "(LWA_SELFIELD-FIELDNAME)" unbekannt. Es ist weder in einer der
angegebenen Tabellen enthalten noch durch eine "DATA"-Anweisung
definiert.
Pinguincommander
ForumUser
 
Beiträge: 72
Registriert: 12.06.2012, 06:15
Dank erhalten: 0 mal
Ich bin: Entwickler/in

Re: strukturkomponente als feldsymbol

Beitragvon JHM » 10.08.2012, 14:42

Wieso kann man keine Post löschen die keinen Sinn machen?
Gruß Hendrik

Für diese Nachricht hat JHM einen Dank bekommen :
Pinguincommander
JHM
Expert
 
Beiträge: 850
Registriert: 15.02.2006, 12:39
Wohnort: Aachen
Dank erhalten: 91 mal

Re: strukturkomponente als feldsymbol

Beitragvon black_adept » 12.08.2012, 23:32

Hallo Pingi,

lass die Klammern weg denn diese Syntax ist für ASSIGN COMPONENT nicht vorgesehen.

( Die Klammern braucht man bei der dynamischen Zuweisung via ASSIGN (variable_die_den_feldnmamen_entält) to <...> ).
live long and prosper
Stefan Schmöcker

email: stefan@schmoecker.de

Für diese Nachricht hat black_adept einen Dank bekommen :
Pinguincommander
black_adept
Top Expert
 
Beiträge: 1987
Registriert: 08.01.2003, 13:33
Wohnort: Lehrte ( bei Hannover )
Dank erhalten: 201 mal
Ich bin: Freiberufler/in

Re: strukturkomponente als feldsymbol

Beitragvon Pinguincommander » 13.08.2012, 06:43

alles klar dankeschön,
jetzt hats endlich geklappt :-)
Pinguincommander
ForumUser
 
Beiträge: 72
Registriert: 12.06.2012, 06:15
Dank erhalten: 0 mal
Ich bin: Entwickler/in


Zurück zu ABAP® für Anfänger

  Aktuelle Beiträge   
vorgefertigte ALV-Klasse mit ZTabelle und Z-Struktur
vor 2 Stunden von JonPiero 0 Antw.
E-Mail Versand mit Sonderzeichen
vor 2 Stunden von Tipp 4 Antw.
Aufruf Variante plus Werte aus aktuellen Parametern
vor 3 Stunden von nikibert 2 Antw.
E-Mail senden aus Programm
vor 6 Stunden von Ibiza90 6 Antw.
gelöst Unklares Sprachkonstrukt
Gestern von Thanatos82 3 Antw.

  Ähnliche Beiträge beta
Feldsymbol
21.02.2013, 17:43 von edwin 1 Antw.
Datenreferenz vs. Feldsymbol
14.05.2009, 07:42 von adrian1338 3 Antw.
Feldsymbol den Typ dynamisch zuzuweisen.(4.6C)
02.09.2005, 13:54 von ereglam 1 Antw.
Dynamische Struktur bei Feldsymbol
10.08.2006, 09:57 von BesenWesen 4 Antw.
Feldsymbol an Unterprogramm übergeben
13.06.2007, 13:29 von ereglam 9 Antw.

 

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder

Feedback ...?

Was können wir verbessern? Hinterlasse deine Kontaktdaten, wenn du eine direkte Antwort möchtest.

... Absenden!