Datumsberechnung /-fallunterscheidung im SELECT-Statement

Die Frage ist als "gelöst" markiert. Den entsprechend Beitrag findest du hier.

Alles rund um die Sprache ABAP®: Funktionsbausteine, Listen, ALV
3 Beiträge • Seite 1 von 1
3 Beiträge Seite 1 von 1

Datumsberechnung /-fallunterscheidung im SELECT-Statement

Beitrag von Ingo (ForumUser / 46 / 20 / 0 ) »
Hallo zusammen,

ich habe eine kurze Frage zum Thema OPEN SQL. Ich möchte aus verschiedenen Tabellen das jeweils höchste Buchungsdatum selektieren, und zwar mit folgenden Statement:

Code: Alles auswählen.

    SELECT FROM tiban
      LEFT OUTER JOIN febep
        ON tiban~iban = febep~piban
      LEFT OUTER JOIN dpayh
        ON tiban~iban = dpayh~ziban
      LEFT OUTER JOIN reguh
        ON tiban~iban = reguh~ziban
      FIELDS iban,
             MAX( febep~budat ) as deposit,
             MAX( dpayh~laufd ) as debit_charge,
             MAX( reguh~laufd ) as payout

          " höchter Wert der drei Datumsspalten in extra Spalte
             
        WHERE iban IN @mrt_iban[]
        GROUP BY iban,
        INTO TABLE @DATA(lt_join).
Ist es möglich, das im Selectstatement noch eine zusätzliche Spalte hinzuzufügen, die aus den drei Datumswerten den "höchsten/aktuellsten" Wert darstellt? Ich wollte es mit einer CASE-Struktur machen, bekomme aber immer Fehlermeldungen wegen des Datentyps (mit CAST hat es leider auch nicht geklappt). Würde gerne auf weitere Anwendungslogik verzichten und es im Select abfackeln .

VG
Save a tree - eat a beaver

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


Re: Datumsberechnung /-fallunterscheidung im SELECT-Statement

Beitrag von jocoder (Specialist / 343 / 3 / 102 ) »
Das wäre ein Anwendungsfall für CDS-Views. Die einzelnen Tabellen könnten in einem UNION-SELECT zusammengefasst werden.
So in etwa:

Code: Alles auswählen.

define view zpayments as select from febep{
  key iban,
  budat 
} union select from dpayh {
  key iban,
  laufd as budat
}union select from reguh {
  key iban,
  laufd as budat
}
In einem zweiten View

Code: Alles auswählen.

define view zlast_payment as select from tiban as i
  association to zpayments as p on p.iban = i.iban
  association to febep as d on d.iban = i.iban
  association to dpayh as dc on dc.iban = i.iban
  association to reguh as po on po.iban = i.iban{
  key i.iban,
  max( d.budat ) as deposit,
  max( dc.laufd ) as depit_charge,
  max( po.laufd ) as payout,
  max( p.budat ) as last_posting_date
} group by i.iban

Folgende Benutzer bedankten sich beim Autor jocoder für den Beitrag (Insgesamt 3):
IngoewxIcke0801


Re: Datumsberechnung /-fallunterscheidung im SELECT-Statement

Beitrag von Ingo (ForumUser / 46 / 20 / 0 ) »
Besten Dank für die schnelle Hilfe! Läuft wie gewünscht!
Save a tree - eat a beaver

Seite 1 von 1

Vergleichbare Themen

2
Antw.
1977
Views
Variable Datumsberechnung bei Select-Options
von ewx » 19.07.2007 11:24 • Verfasst in ABAP® Core
13
Antw.
4569
Views
Select-Statement
von Chilledkroete » 01.07.2013 12:23 • Verfasst in ABAP® für Anfänger
6
Antw.
1270
Views
Select Statement mit inner und outer
von Bernd_AD » 08.06.2020 15:56 • Verfasst in ABAP® für Anfänger
18
Antw.
9495
Views
ABAP 7.40 - SELECT-Statement
von ralf.wenzel » 05.03.2016 12:19 • Verfasst in ABAP® Core
1
Antw.
1354
Views
problem mit Select - Statement
von liberado » 31.07.2007 08:26 • Verfasst in ABAP® für Anfänger

Über diesen Beitrag



Die Frage ist als "gelöst" markiert. Den entsprechend Beitrag findest du hier.

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

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.

Unbeantwortete Forenbeiträge

Daten an Tabelle binden
vor 16 Stunden von Bright4.5 1 / 353
aRFC im OO-Kontext
vor 4 Wochen von ralf.wenzel 1 / 1995
Hilfe bei SWEC/SWE2
letzen Monat von retsch 1 / 8595