Mitarbeiter nach Alter in Gruppen zuteilen

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

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

Mitarbeiter nach Alter in Gruppen zuteilen

Beitrag von HansPeter (ForumUser / 13 / 0 / 0 ) »
Hallo,

wie kann ich Mitarbeiter im Alter von 20-30 und 30-40 usw. in eine Gruppe teilen? Ein einfaches Leerzeichen nach jedem Jahrzehnt genügt.

Code: Alles auswählen.

REPORT zyr_test_logidb.


TABLES pernr.

INFOTYPES: 0001,               "Org. Zuorndung
           0002.               "Daten zur Person


DATA alter TYPE p.


START-OF-SELECTION.

  WRITE 'Vorname'(fsn).
  WRITE 42 'Nachname'(lsn).
  WRITE 83 'Geburtsdatum'(dob).
  WRITE 105 'Alter'(age).
  SKIP.

*  GET pernr liefert jedes mal eine Personalnummer und füllt die Infotypen
*  get pernr füllt außerdem die in infotypes angegebenen infotyp tabellen p0001, p0002 -  Tabellen mit Kopzeile

GET pernr.

  CHECK p0001-persg = '1' AND p0001-persk ='01'.   "Es werden nur Daten von Personen angezeigt,
                                                   "die i.d Mitarbeitergruppe "1" und -kreis "01" sind.
  PERFORM get_pernr.

*&---------------------------------------------------------------------*
*&      Form  GET_PERNR
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
*  -->  p1        text
*  <--  p2        text
*----------------------------------------------------------------------*
FORM get_pernr.

*Berechnen des Alters
  CALL FUNCTION 'COMPUTE_YEARS_BETWEEN_DATES'
    EXPORTING
      first_date                  = p0002-gbdat
      "MODIFY_INTERVAL                   =  ' '
      second_date                 = sy-datum
    IMPORTING
      years_between_dates         = alter
    EXCEPTIONS
      sequence_of_dates_not_valid = 1
      OTHERS                      = 2.
  IF sy-subrc <> 0.
    "
  ENDIF.

  LOOP AT p0001.
*    WRITE: /    p0001-persg,
*                p0001-persk.
  ENDLOOP.

  LOOP AT p0002.

    WRITE: /    p0002-vorna,
                p0002-nachn,
                p0002-gbdat COLOR 2,
                alter       COLOR 2.

  ENDLOOP.
  SORT p0002 BY gbdat DESCENDING.
ENDFORM.

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


Re: Mitarbeiter nach Alter in Gruppen zuteilen

Beitrag von HansPeter (ForumUser / 13 / 0 / 0 ) »
Hat sich erledigt.

Code: Alles auswählen.

    IF ( p0002-gbjhr <= 1970 ).
      WRITE        alter COLOR 1.
*    ELSEIF ( p0002-gbjhr <= 1980 ).
*      WRITE        alter COLOR 2.
*    ELSEIF ( p0002-gbjhr <= 1990 ).
*      WRITE        alter COLOR 3.
    ELSEIF ( p0002-gbjhr <= 2001 ).
      WRITE        alter COLOR 4.
    ENDIF.

Seite 1 von 1

Vergleichbare Themen

1
Antw.
1833
Views
Gruppen bilden und summieren ALV
von Studi » 15.02.2017 15:02 • Verfasst in ABAP® für Anfänger
2
Antw.
1779
Views
Smartforms alter Tabellenknoten
von Caesarrr » 24.08.2012 11:06 • Verfasst in ABAP® Core
2
Antw.
1503
Views
Alter eines Mitarbeiters berechnen
von HansPeter » 23.01.2019 07:52 • Verfasst in ABAP® für Anfänger
5
Antw.
7534
Views
Alter ermitteln anhand Geburtsdatum
von Andreas Schlender » 23.05.2007 12:11 • Verfasst in ABAP® für Anfänger
0
Antw.
1767
Views
Umsetzen alter PLZ Portugal in neues Format
von gbi7 » 27.11.2015 10:07 • Verfasst in ABAP® für Anfänger

Über diesen Beitrag

HansPeter
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

GUIXT Tabellen in Container ansprechen
vor 4 Wochen von Denaris 1 / 26613
Speichern Popup in MM42 verhindern
vor 4 Wochen von Noodl 1 / 27082
Meine Inbox
letzen Monat von Rabea1103 1 / 42281