Zeitspanne in Monate aufteilen

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

Zeitspanne in Monate aufteilen

Beitrag von Micha_ela (ForumUser / 29 / 0 / 0 ) »
Hallo,

ich bin neu bei in der ABAP Programmierung und habe folgendes Problem.
Über einen Screen soll ein Start und ein Enddatum eingegeben werden (über mehrere Monate).
In dem Programm soll dann in dieser Zeitspanne monatsweise (vom ersten bis letzten) ein Programm aufgerufen werden.
Beispiel: 7.5.2022 - 31.8.2022
Dann müsste das Programm das 2. Programm 4 Mal aufrufen mit
Parameter 1.5.2022 31.5.2022, 1.6.2022 30.6.2022, 1.7.2022 31.7.2022 und 1.8.2022 31.8.2022.
Auf die 4mal komme ich, aber dann?
Meine Idee war, eine Tabelle mit jeweiligem Start und Endedatum aufzubauen ......

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


Re: Zeitspanne in Monate aufteilen

Beitrag von kon97 (ForumUser / 11 / 3 / 0 ) »
Hallo,
du kannst Jobs für die Hintergrundverarbeitung einplanen.

Einen Ansatz, wie man das macht, findest du hier:
viewtopic.php?t=20916

Re: Zeitspanne in Monate aufteilen

Beitrag von Shortcut IT (ForumUser / 52 / 2 / 18 ) »
Hallo,
@kon97: ich glaube, deine Antwort geht an der Fragestellung vorbei.

@Micha_ela: in ABAP gibt es Datentypen für kalendarische Daten, damit kann man auch rechnen.

Code: Alles auswählen.

program z_test.
parameters: pFrom type d obligatory,
            pUntil type d obligatory.
data: firstOfMonth type d,
      lastOfMonth type d,
      firstOfNextMonth type d.

at selection-screen.
  if ( pFrom > pUntil ).
    message 'Enter a valid date range' type 'E'.
  endif.
start-of-selection.
  perform setFirstAndLastOfMonth using pFrom.
  while ( firstOfMonth < pUntil ).
    write:/ 'First of month:', firstOfMonth, 'last of Month:', lastOfMonth.
    " here: submit your program using parameters firstOfMonth and lastOfMonth.
    firstOfNextMonth = lastOfMonth + 1.
    perform setFirstAndLastOfMonth using firstOfNextMonth.
  endwhile.

form setFirstAndLastOfMonth using pDate    " 20221117
    type d.
  firstOfMonth = pDate.                    "  20221117
  firstOfMonth+6(2) = '01'.                "  20221101
  lastOfMonth = pDate.                     "  20221117
  lastOfMonth+6(2) = '28'.                 "  20221128
  add 4 to lastOfMonth.                    "  20221202
  lastOfMonth+6(2) = '01'.                 "  20221201
  subtract 1 from lastOfMonth.             "  20221130
endform.
Viele Grüße
Shortcut IT
Zuletzt geändert von Shortcut IT am 18.11.2022 09:53, insgesamt 1-mal geändert.

Re: Zeitspanne in Monate aufteilen

Beitrag von kon97 (ForumUser / 11 / 3 / 0 ) »
Shortcut IT hat geschrieben:
17.11.2022 09:29
@kon97: ich glaube, deine Antwort geht an der Fragestellung vorbei.
Ja, ich glaube du hast recht. Dann macht das auch mit den "Ende-Daten" mehr Sinn... Ich habe es so verstanden, dass wirklich monatsweise ein Programm aufgerufen werden soll... Sorry 😅

Seite 1 von 1

Vergleichbare Themen

4
Antw.
3351
Views
Abwesenheitsübersicht für mehrere Monate und Mitarbeiter
von donny » 22.06.2007 10:39 • Verfasst in Human Resources
3
Antw.
2575
Views
Report Painter Bericht 0F-EX001 12 Monate rollierend
von Buetzy » 05.12.2007 09:41 • Verfasst in Financials
2
Antw.
3311
Views
char-Feld aufteilen
von liberado » 19.07.2007 12:38 • Verfasst in ABAP® für Anfänger
13
Antw.
1916
Views
Laufzeitproblem - COMMIT aufteilen?
von ralf.wenzel » 08.03.2023 20:00 • Verfasst in ABAP® Core
3
Antw.
2871
Views
String in mehrere Teilstrings aufteilen
von Evo » 16.10.2007 09:17 • 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

Banf anlegen
Gestern von wreichelt 2 / 1263
Banf anlegen
Gestern von Manfred K. 1 / 1195
IBAN und BUT0BK
vor 5 Tagen von waltersen gelöst 10 / 14859
SAPGui 8.00 32 Bit vs 64 Bit
vor einer Woche von DeathAndPain 3 / 7606

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

Banf anlegen
Gestern von wreichelt 2 / 1263
Banf anlegen
Gestern von Manfred K. 1 / 1195
IBAN und BUT0BK
vor 5 Tagen von waltersen gelöst 10 / 14859
SAPGui 8.00 32 Bit vs 64 Bit
vor einer Woche von DeathAndPain 3 / 7606