Skip to content
Skip to content
Menu
SAP ABAP DWIMAN
  • About
SAP ABAP DWIMAN

SAP ABAP – Get Working Schedule

By juananda.satria on November 28, 2023

Basically, to get working schedule we just have to use FM ‘HR_PERSONAL_WORK_SCHEDULE’.

But when we are not using ABAP HR (Logical Database) this FM become not that simple to use.

Now, here I share my method to get working schedule


TYPES: BEGIN OF ty_work,
         pernr TYPE pernr-pernr,
         datum TYPE datum,
         kurzt TYPE t246-kurzt, " day name
         tprog TYPE tprog, " FREE = off
       END OF ty_work,
       tt_work TYPE TABLE OF ty_work WITH EMPTY KEY.

CLASS lcl_main DEFINITION.
  PUBLIC SECTION.
    METHODS:
      get_work_schedule
        RETURNING VALUE(rt_psp) TYPE tt_work.
ENDCLASS.


CLASS lcl_main IMPLEMENTATION.
  METHOD get_work_schedule.

    DATA:
      lo_data  TYPE REF TO data,
      lr_pernr TYPE RANGE OF p_pernr,
      lv_begda TYPE datum VALUE '20230101', " begin date
      lv_endda TYPE datum VALUE '20230131'. " end date
    FIELD-SYMBOLS:
      <lfs_t_data> TYPE ANY TABLE.

    " get all employees
    SELECT pernr
      FROM pa0000
      INTO TABLE t_0000
      WHERE ( begda <= sy-datum AND endda >= sy-datum ) AND stat2 = '3'.

    lr_pernr = VALUE #( FOR w IN t_0000 ( low = w-pernr sign = 'I' option = 'EQ' ) ).


    cl_salv_bs_runtime_info=>set( EXPORTING display  = abap_false
                                            metadata = abap_false
                                            data     = abap_true ).

    SUBMIT rptpsh10
      WITH pnppernr IN lr_pernr
      WITH pnpbegda EQ lv_begda
      WITH pnpendda EQ lv_endda
      WITH pnptimed EQ ''
      AND RETURN.

    TRY.
        cl_salv_bs_runtime_info=>get_data_ref(
          IMPORTING r_data = lo_data ).
        ASSIGN lo_data->* TO <lfs_t_data>.

        rt_psp = CORRESPONDING #( <lfs_t_data> ).

      CATCH cx_salv_bs_sc_runtime_info ##NO_HANDLER.
        MESSAGE 'Unable to retrieve ALV data' TYPE 'E'.
    ENDTRY.

    cl_salv_bs_runtime_info=>clear_all( ).
  ENDMETHOD. " get_work_schedule
ENDCLASS.

references:

https://saptrick.blogspot.com/2015/11/submit-for-hrhcm-related-reports-abap.html?m=1

https://abapmemo.com/get-alv-reports-output-into-internal-table-mb52/

Post navigation

SAP ABAP – Send Email with Smartforms Attachment
SAP ABAP – Knapsack

Leave a Reply Cancel reply

Your email address will not be published. Required fields are marked *

Recent Posts

  • SAP ABAP – Generate Fiori URL
  • SAP ABAP – Workflow Agents CDS
  • SAP ABAP – Workflow Level with Table Function
  • SAP ABAP – Download ALV to Excel with Total and Subtotal
  • SAP ABAP – BDC Template

Recent Comments

  1. SAP ABAP – Simple Interface FTP Inbound (SAP Consume File From FTP) – SAP ABAP DWIMAN on SAP ABAP – String Encode & Decode BASE64
  2. Upload file – SAP ABAP DWIMAN on F4 Search Help File

Archives

  • May 2025
  • August 2024
  • June 2024
  • May 2024
  • March 2024
  • February 2024
  • January 2024
  • December 2023
  • November 2023
  • October 2023
  • May 2023
  • April 2023

Categories

  • Uncategorized
©2026 SAP ABAP DWIMAN | WordPress Theme by SuperbThemes.com