Zum Inhalt springen

ABAP Datum/KW Validierung


LadyPreis

Empfohlene Beiträge

Hallo zusammen,

mal wieder eine Sache, bei der ich nicht weiterkomme ;-)

Folgender Sachverhalt:

Ich hab eine interne Tabelle mit Daten gefüllt. Diese Daten sind aufsteigend sortiert (nach Spalte "Datum").

Die Werte dabei können wochen-und monatsübergreifend sein.

Ich möchte nun herausfinden, ob zu jeder darin enthaltenen kaldenderwoche für jeden Werktag mindestens ein Datensatz vorhanden ist. Finde dabei aber keine Ansatz. Habt ihr ne Idee?

Hier nochmal zur Verdeutlichung:

Bsp.. für Daten in der Tabelle:

11.01.2010

12.01.2010

13.01.2010

14.01.2010

15.01.2010

15.01.2010

18.01.2010

19.01.2010

20.01.2010

21.01.2010

hier müsste ich nun feststellen, dass zu der 2.ten Woche ein Datensatz fehlt (22.01.2010)

Hoffe, ihr könnt mir helfen

Gruß,

Die Lady

Link zu diesem Kommentar
Auf anderen Seiten teilen

Naja, du müsstest denke ich einen algorithmus schreiben, welcher zu jedem Datum (Kalenderwoche) den Wochentag berechnet und von diesem aus, wenn du z.b weißt es war ein Mittwoch, 2 Tage zurückgehst, wobei du dann natürlich wenn du "0" erreichst den Monat um eins verringerst und mit dem entsprechendem Maximaldatum des Vormonats fortfährst, ebenso wenn du nach vorne schaust und das Maximaldatum des zu prüfenden Monats überschreitest... Gibt halt einige Sonderfälle...

Das wäre meine intuitive Lösung, wie viele Tage ein Monat hat ist leicht über den gregorianischen Kalender zu errechnen

Link zu diesem Kommentar
Auf anderen Seiten teilen

Werktage sind keine IT-genormte Bezeichnung. Was ist mit gesetzlichen Feiertagen in Bundesländern?

Wenn Du Dir eine Liste mit distinct Datum (max 1 Datensatz pro Datum) zurückgeben lassen kannst, könnstest Du einfach in einer Schleife die Anzahl der Tage pro KW hochzählen.

Das ginge sogar mit einem KW-Merker und einer Anzahl nach dem Motto:

Pseudo-Code:

KWmerker = -1

Tage = 0

schleife über alle Datensätze/Array

{

  kw = DATE_GET_WEEK(Array[Datumsfeld])

  wenn KWmerker == -1 dann KWmerker = kw


  wenn kw != KWmerker dann // neue KW

  {

     wenn Tage < 5 dann "in KW "+KWmerker+" fehlen "+5(-Tage)+" Datensätze"


     KWmerker = kw

     Tage = 0

  }


  Tage++

}

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...