Problem bei dynamischer Zugriff auf Z-Tabelle

Getting started ... Alles für einen gelungenen Start.
7 Beiträge • Seite 1 von 1
7 Beiträge Seite 1 von 1

Problem bei dynamischer Zugriff auf Z-Tabelle

Beitrag von rmuc (ForumUser / 7 / 0 / 0 ) »
Hallo,

ich habe eine Z-Tabelle mit den Spalten GJ und psp001 - psp012.
Je nach übergebenen Wert im Feld 'previous_period' muss ich ein X in der entsprechenden Spalte setzen.

Bsp.: es wird der Wert 005 übergeben, dann muss ich in der Spalte psp005 das 'X' setzen.

Ich weiß, dass man es mit Case einfach realisieren kann, aber ist es auch irgendwie dynamisch möglich?
Ein Select <fs1> auf ein Field-Symbol um nur die entsprechende Spalte auszulesen und dann zu ändern geht ja irgendwie nicht.

Danke für eure Hilfe!

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


Re: Problem bei dynamischer Zugriff auf Z-Tabelle

Beitrag von JHM (Top Expert / 1197 / 1 / 197 ) »
rmuc hat geschrieben: Ein Select <fs1> auf ein Field-Symbol um nur die entsprechende Spalte auszulesen und dann zu ändern geht ja irgendwie nicht.
Wieso Select? Wenn ich dich richtig verstanden habe willst du in der DB-Tabelle ein Feld auf X setzten. Das ganze dann dynamisch:

Code: Alles auswählen.

UPDATE ztabelle SET (expr_syntax) WHERE key = l_key.
Für expr_syntax wird ein zeichenartiges Datenobjekt oder eine interne Tabelle mit zeichenartigem Datentyp erwartet. Diese enthält die SET Anweisung wie sie auch hardcodiert angegeben würde.
Also:

Code: Alles auswählen.

DATA:  expr_syntax TYPE string.

CONCATENATE 'PSP' previous_period '= ''X''' INTO expr_syntax.
Und dann sollte das funktionieren.
Gruß Hendrik

Beitrag von rmuc (ForumUser / 7 / 0 / 0 ) »
Hi!

Das ist ja cool. Funktioniert wunderbar!

Dankeschön!!!!

Beitrag von rmuc (ForumUser / 7 / 0 / 0 ) »
Hallo,

ich nochmals :wink: Jetzt merke ich gerade was ich gestern eigentlich mit dem Select wollte.

Ich benötige das ganze auch umgekehrt. Sprich ich bekomme als Input 005 und muss dann schauen ob in der Spalte psp005 ein X hinterlegt ist oder nicht.

Deshalb wollte ich den Spaltenname psp0xx für die Selektion dynamisch erzeugen. Das mit Concatenate bekomme ich ja noch hin, aber wie bekomme ich das ganze in das Select?

Hat sich evtl. erledigt

Beitrag von rmuc (ForumUser / 7 / 0 / 0 ) »
Hi,

Problem ist glaube ich gelöst.

Habe jetzt folgendes Coding.
FIELD-SYMBOLS <fs1>.
CONCATENATE 'psp' PREVIOUS_PERIOD INTO psp0xx.
ASSIGN psp0xx to <fs1>.


SELECT SINGLE (<fs1>) FROM zcats_periode into sign WHERE kokrs = '0001'
AND gjahr = PREVIOUS_YEAR.
Hatte gestern das <fs1> nich in Klammer gesetzt. Oder geht das auch einfacher/eleganter ?

Re: Hat sich evtl. erledigt

Beitrag von JHM (Top Expert / 1197 / 1 / 197 ) »
rmuc hat geschrieben:Oder geht das auch einfacher/eleganter ?
Öhm Field-Symbols sind da nicht unbedingt nötig.

Du machst eigentlich genau das gleiche wie beim Update:

Code: Alles auswählen.

SELECT SINGLE (column_syntax) FROM zcats_periode into sign WHERE kokrs = '0001' 
AND gjahr = PREVIOUS_YEAR.
Nur das du hier die (column_syntax) sehr kompliziert übergibst. Du könntest genauso gut psp0xx übergeben:

Code: Alles auswählen.

SELECT SINGLE (psp0xx) FROM zcats_periode into sign WHERE kokrs = '0001' 
AND gjahr = PREVIOUS_YEAR.
Da psp0xx als zeichenartiges Datenelement definiert ist.
Gruß Hendrik

Beitrag von rmuc (ForumUser / 7 / 0 / 0 ) »
Achso wusste gar nicht, dass ich das psp0xx auch so einfach übergeben kann. Danke!
Irgendwie denke ich immer kompliziert um die Ecke... 8)

Seite 1 von 1

Vergleichbare Themen

2
Antw.
1486
Views
Dynamischer Zugriff im Select
von GERDLA » 01.11.2005 14:38 • Verfasst in ABAP® Core
1
Antw.
1042
Views
dynamischer Zugriff auf Spalteninhalt meiner Struktur
von JanR » 19.10.2020 15:11 • Verfasst in ABAP® für Anfänger
5
Antw.
4690
Views
Dynamischer Methodenaufruf mit dynamischer Tabelle
von Tommy Nightmare » 08.09.2017 13:23 • Verfasst in ABAP Objects®
2
Antw.
1950
Views
Dynamischer Methodenaufruf mit dynamischer Tabelle
von mark.thk » 12.12.2018 10:34 • Verfasst in ABAP Objects®
1
Antw.
1336
Views
Problem bei ASSIGN COMPONENT mit dynamischer Typisierung
von Luca2501 » 17.09.2020 11:09 • Verfasst in ABAP® Core

Über diesen Beitrag


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

Aktuelle Forenbeiträge

Dialog-Container mit Toolbar/Status
vor einer Stunde von DeathAndPain gelöst 20 / 2398
Zeilenumbrüche ersetzen
vor 21 Stunden von ralf.wenzel 6 / 183
SAP Trial Version für SAP Fiori
vor 2 Tagen von tar 2 / 1559

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

Dialog-Container mit Toolbar/Status
vor einer Stunde von DeathAndPain gelöst 20 / 2398
Zeilenumbrüche ersetzen
vor 21 Stunden von ralf.wenzel 6 / 183
SAP Trial Version für SAP Fiori
vor 2 Tagen von tar 2 / 1559

Unbeantwortete Forenbeiträge

Daten an Tabelle binden
vor 2 Tagen von Bright4.5 1 / 625
aRFC im OO-Kontext
vor 4 Wochen von ralf.wenzel 1 / 2252
Hilfe bei SWEC/SWE2
letzen Monat von retsch 1 / 8840