Zum Inhalt springen

Nutzung der OADP-Regeln im Fiori Teamkalender (V2)

Im Fiori-Teamkalender unter Version 2 werden die OADP-Regeln aus dem Customizing nicht mehr berücksichtigt. Die Logik muss wenn gewünscht selbst umgesetzt werden. (Hinweis 2557397)

Am einfachsten geht dies über die Implementierung des BAdIs HCMFAB_B_COMMON.
Über die Methode if_ex_hcmfab_common~get_colleagues kann man dann relativ einfach die Berücksichtigung der OADP-Regeln wie im alten Teamkalender umsetzen.

 METHOD if_ex_hcmfab_common~get_colleagues.
    DATA ls_team  TYPE ptreq_uia_teamid_struc.
    DATA lt_rowlabel TYPE ptarq_uia_rowlabel_tab.
    DATA lt_team_tab TYPE ptreq_uia_team_tab.
    DATA lt_weekday_tab     TYPE ptarq_uia_weekday_tab.
    DATA lt_legend_tab      TYPE ptreq_uia_legend_tab.
    DATA lt_commands        TYPE ptarq_uia_command_tab.
    DATA lt_custcolumns_tab TYPE ptarq_uia_custcolumns_tab.
    DATA lt_messages        TYPE ptarq_uia_messages_tab.

      CALL FUNCTION 'PT_ARQ_TEAMCALE_GET'
        EXPORTING
          im_command         = 'INIT'    " ESS-Kommando
          im_pernr           = iv_pernr    " Personalnummer
          im_team            = ls_team    " Team Struc für Team Kalender
          im_begda           = sy-datum   " Beginndatum
          im_endda           = sy-datum   " Endedatum
          im_cache_validity  = '1-'   " Natürliche Zahl
          im_modus           = 'R'    " Anwendungsmodus der Abwesenheitsmitteilung
        IMPORTING
          ex_rowlabel        = lt_rowlabel    " Structur für der Team Kalender
        TABLES
          ex_team_tab        = lt_team_tab    " Team und Teammitglieder
          ex_weekday_tab     = lt_weekday_tab    " Tag Table für Team Kalender
          ex_legend_tab      = lt_legend_tab    " Legende für Team Kanelnder Tab
          ex_commands        = lt_commands    " Abwesenheitsmitteilung: UI Kommandos
          ex_custcolumns_tab = lt_custcolumns_tab    " Tabelle für Kundenspalten der Team Kalender
          ex_messages        = lt_messages.     " Returnparameter

      et_colleagues = VALUE #( FOR <ls_rowlabel> IN lt_rowlabel ( CONV pernr_d( <ls_rowlabel>-row_id ) ) ).

    "Wenn keine Kollegen gefunden Standard
    IF et_colleagues IS INITIAL.
      super->get_colleagues(
        EXPORTING
          iv_application_id = iv_application_id
          iv_pernr          = iv_pernr
        IMPORTING
          et_colleagues     = et_colleagues
      ).
    ENDIF.

ENDMETHOD.
Facebooktwitterpinterestlinkedinmail
Published inESS/MSSFioriSAP HCM

Sei der Erste der einen Kommentar abgibt

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert