Das Year als 4 stellig abgeben.

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

Das Year als 4 stellig abgeben.

Beitrag von seco_neu (ForumUser / 16 / 0 / 0 ) »
Hallo zusamen,
Ich habe ein problem was für mich natürlich schwerig ist aber es kann sein dass einer oder der anderer damit schon was gemacht hat. Ich bin sehr Dankbar auf jede Antwort.

Also ich habe das Jahr als parameter definiert und referenziert auf ein field in einer DBtab. Aber das jahr in DBtab ist 8 stellig(20050604). Ich möchte aber das jahr nur als 4stellig(2005) eingeben und in der WHERE bedingung benutzen.

Code: Alles auswählen.

parameters: p_year type dbtab-year
 
select *  from dbtab
 into corresponding fields of table it_tab  where year = p_year.
Da aber DBtab-jahr(8stellig) ist kann ich sowas in moment nicht machen. Kennt jemanden, wie man so was machen kann?

Danke
Nina

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


Beitrag von scott111 (ForumUser / 49 / 0 / 0 ) »
Hallo zusamen,
Ich habe ein problem was für mich natürlich schwerig ist aber es kann sein dass einer oder der anderer damit schon was gemacht hat. Ich bin sehr Dankbar auf jede Antwort.

Also ich habe das Jahr als parameter definiert und referenziert auf ein field in einer DBtab. Aber das jahr in DBtab ist 8 stellig(20050604). Ich möchte aber das jahr nur als 4stellig(2005) eingeben und in der WHERE bedingung benutzen.

Hallo

Warum scheidest Du Dir die passenden werte nicht einfach aus.

Bsp.

DATA: DBtab like (20050604),
seldatum(4) Type C.

Move DBtab(4) to seldatum.

Einfach mal im Beispielcodung schaun

Tscha Chris

Beitrag von seco_neu (ForumUser / 16 / 0 / 0 ) »
Hallo Chris,
vielen Dank. So ist nicht möglich denke ich, weil (20050604) ist ein beispiel. Das field in DBtab wo die spalte mit dem year steht is 8 stellig. Das daten element des feldes ist 8 stellig aber ich mochte das jahr als 4 stellig eingeben. Z.B. 2005.
Also wie folgendes:

Code: Alles auswählen.

parameters: p_jahr type gjahr.

select *  from dbtab
 into corresponding fields of table it_tab  where jahr = p_jahr.
p_jahr ist aber 4stellig.
Nach dem ich nur das Jahr eingegeben habe möchte ich alle daten sätze die zum Jahr gehören lesen, obwohl das Datum im field DBtab-jahr 8 stellig ist.
Da habe ich probleme. Ich weiss nicht wie man das macht.

Wer bitte kann mir helfen.
Danke
Nina

Beitrag von sv07 (ForumUser / 6 / 0 / 1 ) »
Hallo Nina,

lege doch eine Range-Tabelle an.

Fülle die Range-Tabelle mit Hilfswerten die anhand des eingegebene Jahres ermittelst.
Beispiel:

Code: Alles auswählen.

p_jahr = '2005'.

Ranges: r_date for sy-datum.

r_date-low = '20050101'.
r_date-high = 20051231'.
r_date-option = 'BT'.
r_date-sign = 'I'.
append r_date.

select *  from dbtab 
 into corresponding fields of table it_tab  where jahr in r_date
Gruß Stefan

Beitrag von khb (Specialist / 184 / 7 / 1 ) »
wie wär's mit ranges:

Code: Alles auswählen.

DATA: g_date_low LIKE sy-datum  VALUE '99990101',
           g_date_high LIKE sy-datum VALUE '99991231'.

parameters: p_jahr type gjahr obligatory. 

ranges: r_jahr for dbtab-jahr.


r_jahr-low = r_jahr-high = p_jahr.

OVERLAY r_jahr-low WITH g_date_low.
OVERLAY r_jahr-high WITH g_date_high.

r_jahr-sign = 'I'.
r_jahr-option = 'EQ'.
APPEND r_jahr.


select *  from dbtab 
 into corresponding fields of table it_tab  where jahr in r_jahr.
Nur den Eingabeparameter als Pflichtfeld nicht vergessen, sonst werden alle selektiert, falls keine Eingabe gemacht wurde.


LG khb

Seite 1 von 1

Vergleichbare Themen

1
Antw.
1148
Views
Adobe forms Wert 2-stellig
von Lucyalison » 06.09.2018 16:18 • Verfasst in ABAP® Core

Über diesen Beitrag


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

Aktuelle Forenbeiträge

Materialstammerweiterung: Neuer Reiter
vor 4 Tagen von DeathAndPain gelöst 4 / 538
Ermittlung der Arbeitstage (Mosid)
vor 5 Tagen von Radinator 11 / 46192
LSMW-Problem
vor 2 Wochen von DeathAndPain gelöst 6 / 4085

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.