SAP Jobsuche bei DV-Treff
thunder
  • thunder
  • SAP Forum - Neuling Thema Starter
vor 21 Jahre
Hallo zusammen.
Ich habe folgendes Problem.
Ich habe eine Tabelle, die etwa so aussieht:

Kundennr.....Auftragsnr.....Auftragsdatum...Auftragswert
1015510......10000416.....28.11.2001........64784 €
1015510......10000417.....13.10.2002........64454 €
1015510......10000418.....25.09.2003..........4584 €
1274039......10000582.....28.01.2003........38947 €
...

(Die Punkte zwischen den Werten sind nur dafür da,daß mir das Tabellen Layout hier nicht verzogen wird...)
 
Ich soll nun für jeden Kunden (Kundenummer) seinen letzten Auftrag (Auftragsdatum)  mit Auftragnummer und Auftragwert rausholen.

Funktioniert die Funktion max() auf Datum?

Und selbst wenn sie funktioniert, dann liefert er das absolute Maximum der Tabelle.
Ich brauche aber das Maximum des Datums für jeden Kunden. Ich habe übrigens auch eine Referenztabelle wo nur die Kundennummern mit Kundennamen drinstehen. Ich glaube fast, daß man die noch irgendwie braucht. :)

Ich habs auch schon in 2 Schritten versucht, daß erst alle Datensätze mit einer best. Kundennummer in eine interne Tab geschrieben werden und dann die Max Funktion auf diese Datensätze angewendet wird.
Schön in der Theorie, nur leider kann man bei SAP auf interne Tabelle nicht mit SQL zugreifen, da sie nicht in diesem "Data Dictionary" liegen.  >:(
Manchmal denk ich echt warum einem SAP das Leben so schwer machen muß.
Also wer hilft mir aus meiner Depression?
SAP wurde für BWLer erfunden...

Aber ich bin Informatiker...

Tequila69
vor 21 Jahre
Hallo Thunder,

eine relativ einfache Lösung Deines Problems wäre:

1. Sortiere interne Tabelle nach Kundennummer, Datum

2. Lese interne Tabelle mit KEY Kundennummer.

Du bekommst dann immer den ersten Eintrag des Kunden geliefert. Und die wenn die Sortierung des Datums richtig rum war, so ist der Eintrag mit dem max. Datum der erste.

Gruß,

 Tequila69
Benutzer, die gerade dieses Thema lesen