Wie Preis alt / neu abfragen über Gültigkeitszeiträume

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

Wie Preis alt / neu abfragen über Gültigkeitszeiträume

Beitrag von thomasxy (ForumUser / 36 / 0 / 0 ) »
Hallo zusammen,

ich habe eine interne Tanelle die wie folgt aufgebaut ist

KNUMH MATNR Datum von Datum bis
1234 8888 01.10.2005 12.10.2006
1235 8888 13.10.2006 31.12.2007
1236 8888 01.01.2008 10.01.2008
1237 8888 11.01.2008 31.01.2008
1238 8888 01.02.2008 31.12.2008
1239 9999 01.11.2005 01.12.2005
....

Also in der Tabelle steht immer eine Materialnummer mit Gültigkeitszeiträumen
Datum von bis.

Ich starte jetzt meinen report mit Tagesdatum und möchte für Material 8888 einmal die
KNUMH wissen für aktuell gültigen Zeitraum
und einmal für den zuletzt gültigen Zeitraum

Ergenis: 1237 und 1236

Hat jemand eine Idee wie ich das geschickt in eine Abfrage schreiben kann.

Vielen dank

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


Beitrag von khb (Specialist / 184 / 7 / 1 ) »
Hallo,

zuerst würde ich den gültigen Satz über das Tagesdatum ermitteln (1237).
Danach über dessen gültig von Datum den anderen Satz:

neues Datum = gültig von - 1
über dieses Datum dann den neuen Satz.

lg khb

Beitrag von thomasxy (ForumUser / 36 / 0 / 0 ) »
habe folgendes versucht

Read table itab_a004 with key
matnr = wa_catalog-matnr
datab <= sy-datum
datbi >= sy-datum
into wa_a004.

Leider mag SAP das größer-gleich bzw kleiner-gleich Zeichen nicht.
Wie kann ich das umgehen ?

Beitrag von JHM (Top Expert / 1223 / 2 / 204 ) »
thomasxy hat geschrieben: Leider mag SAP das größer-gleich bzw kleiner-gleich Zeichen nicht.
Wie kann ich das umgehen ?
Mit einem LOOP:

Code: Alles auswählen.

* auf richtige Sortierung achten
SORT itab_a004 BY MATNR datab.

LOOP AT itab_a004 INTO wa_a004_akt WHERE matnr = wa_catalog-matnr
                                         datab <=  sy-datum
                                         datbi >= sy-datum.
* Index merken
  l_index = sy-tabix.
 EXIT.   "Eigentlich nicht nötig, es sei denn es gibt mehr als einen gültigen Satz s.u.
ENDLOOP.

* Den vorherigen Satz lesen
l_index = l_index - 1.
READ TABLE itab_a004 INTO wa_a004_vor INDEX l_index.

* Prüfen ob es einen Vorsatz überhabt gab
IF wa_a004_vor-matnr <> wa_catalog-matnr.
  CLEAR wa_a004_var.
ENDIF.
Vorraussetzung für das obenstehende Coding ist, dass es keine üerlappenden Zeiträume für ein Material gibt.
Gruß Hendrik

Beitrag von thomasxy (ForumUser / 36 / 0 / 0 ) »
super. vielen dank
funktioniert

gruß
thomas

Seite 1 von 1

Vergleichbare Themen

11
Antw.
1989
Views
Zuweisung-Preis
von HH_ABAP » 30.09.2023 15:07 • Verfasst in ABAP® für Anfänger
12
Antw.
9029
Views
Preis aus Einkaufsinfosatz
von cuncon » 19.12.2017 15:52 • Verfasst in ABAP® für Anfänger
0
Antw.
1219
Views
Preis pro Materialmerkmal
von liberado » 21.05.2007 10:55 • Verfasst in ABAP® Core
1
Antw.
1674
Views
Aktueller Preis
von 82kolu1bma » 17.12.2015 09:04 • Verfasst in ABAP® für Anfänger
1
Antw.
1975
Views
SUM( preis * menge ) in OpenSQL?
von sap-known » 18.06.2007 13:33 • Verfasst in ABAP® für Anfänger

Über diesen Beitrag


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

Aktuelle Forenbeiträge

BAPI zur ABSO?
vor 19 Stunden von DeathAndPain 2 / 397
Materialstammerweiterung: Neuer Reiter
vor einer Woche von DeathAndPain gelöst 4 / 1027
Ermittlung der Arbeitstage (Mosid)
vor einer Woche von Radinator 11 / 46699
LSMW-Problem
vor 3 Wochen von DeathAndPain gelöst 6 / 4584

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

BAPI zur ABSO?
vor 19 Stunden von DeathAndPain 2 / 397
Materialstammerweiterung: Neuer Reiter
vor einer Woche von DeathAndPain gelöst 4 / 1027
Ermittlung der Arbeitstage (Mosid)
vor einer Woche von Radinator 11 / 46699
LSMW-Problem
vor 3 Wochen von DeathAndPain gelöst 6 / 4584