Making infotype 41 mandatory while hiring...

Hi Experts,
We have a requirement of making 41 IT as mandatory while hiring.
We have added the infotype in the info group, but the user is still able to skip it using the next button while hiring.
Request you to let me know, whether it is possible through any user exit or badi or any other way?
Best Regards
Manas Nayak

Hi All,
Actually the issue is here that IT 41 should be updated with a customized data type Z4 which use union senority date specific to USA employee. And it does not have any logic to determine the value while run time. So we could not place a user exit or dynamic action for it.
Client requires the user should enter it while hiring or rehire and should not be able to skip 41 without entering the date type Z4.
From all the replies I conclude that stoping the user from skipping a infotype is impossible. Only we can initialize the Z4 value or display pop-up information.
Thank you all for the help.

Similar Messages

  • Effects of making PR mandatory while creating PO?

    Hi,
    What will be the effect of making PR mandatory while creating PO?

    Dear Ujjwal
    Go to SPRO-Material Managamant-Purchasing--Authorization Managmant-2) Define Functional Auth for buyers---Function Authorizations: Purchase Order Create New function Authority(02- PO With Ref to PR) Mark Ref to Purchase Req.As per require condition.
    Then Go to SU01 pass your SAP ID then goto select parameter and pass Parameter ID as EFB ,Parameter Value 02(as per your confi, and save.)

  • Error while hiring an employee in pa40

    HI
    This occurs while hiring an employee in PA40.
    Runtime Errors         GETWA_NOT_ASSIGNED
    Short text
         Field symbol has not yet been assigned.
         Error in the ABAP Application Program
         The current ABAP program "SAPLHRWF" had to be terminated because it has
         come across a statement that unfortunately cannot be executed.
        You attempted to access an unassigned field symbol
        (data segment 32770).
        Thanks in advance

    Hi,
    first tell me exactly where the error is coming?
    is it coming as soon as you entered in PA40? or
    is it coming in a particular infotype? if so what is that infotype and what value you are inputing in that screen?
    please make sure the value you are giving in the screen is properly configured. also check the T588D & T529A with respect to UGR and IGMOD.
    Gayathri N

  • How to make the Infotype as mandatory

    Hi All,
             I need to make the Infotype as mandatory. E.g., In PA40,  the user should not skip the screen without entering the data in the infotype. How can i make it.
    Thanks
    Yogesh

    Not sure bout making an infotype mandatory in PA40. but i give below some info i know..maybe u can dig further in there and see how to make use of that info.
    Ignore if u know this already.
    SE37 >  RS_SCREEN_IMPORT  > DYNNR (Screen number) and Module Program name – MPxxxxxxx etc (this u get from F1 on infotype field)
    then execute>Go to F_G  table in there Flag 1  refers to I/O field and Flag3 refers to Mandatory /Obligatory.
    Also have you explored if any possibilities are there from screen painter???

  • While hiring, how to display subtype to the employees

    Hi,
    can any one help me out.....
    how to display the subtype 002 (temporary addresses )  to the infotype 0006 while hiring employees?
    Thanks & Regards
    Padmasree

    Hi,
    You might have defined your action type (Table T529A)). For that action, you might have defined an infogroup. Go to that infogroup (Table V_T588D) and select your User group. For example, if your Infogroup is 10 and User group is 01, entry should be in the following manner:
    User Group              No            Operation   Infotype                   Infotype Text    Subtype
    01                 03     INS     0006            Addresses           002
    This should work.
    Regards,
    Suhasini

  • Sort Field to be made mandatory while creating maintenance plan(IP42)

    Hi Experts,
    Please suggest me the way by which i can make the field "Sort field" mandatory while creating maintenance plan (IP42).
    Regards,
    Vivek

    Vivek,
    There is no std config to acheive this. Please use IPRM0004 Maintenance plan/item: Customer check for "Save" to accomplish the same.
    Mahee

  • Set sap Component mandatory while creating the support desk message

    Hi,
       When create the support desk message from any application sysytem, the sap component get selected automatically but when we create the suppport desk message from the Easy Access the component wiil be blank, so some user create the support message without giving the component. So we want to make the component as mandatory while createing the support desk message from application system and also  set mandatory  when we create support message in solman.can anybody help me in setting component mandatory.
      Regards
      charan

    Dear Charan,
    The logic of setting the SAP Component mandatory is explained in the note 640532.
    Kindly use the note to resolve the purpose.
    Hope this solution helps.
    Regards
    Amit

  • BOM Selection Mandatory while creation of Production Order

    Hello Friends,
    I would like to know that is there any option other than production version which makes it mandatory to have valid BOM must for creation of Production order / coversion of planned order to Production order.
    I have tried with Production version option but it doesnt throw any error in case BOM with inactive status has been selected in it & also Production order gets created & released.
    Before going for user exit / enhancement option, I just wanted to ensure that it is not possible with standard SAP.
    Kindly share your views on the same.
    Your urgent replies will be highly appreciated.
    Regards,
    Tejas

    Hello Tejas,
    I think this is standard SAP Behaviour.
    Try with following exits:
    PPCO0018
    PPCO0012
    Also check out the following link:
    [How To Make BOM Mandatory while creating Production Order;
    Regards,
    Vinod

  • How to make the fields of the table mandatory while creating new entries..?

    Hi,
    I have created a new Z table which has 6 fields. All the 6 fields are KEY fields and all are of CHAR type. I have generated the table maintenance generator for the same. My requirement is all the fields should be MANDATORY while creating the entries. No field should be BLANK.
    When creating the new entries in the table, even if I don't give any values to some of the fields, it is saving the entry. But, it shouldn't happen like that. If any of the field is kept blank, it should not allow the user to save the entry. Can someone tell me how to approach this. Will there be any settings while creating the table which takes care of this.
    I read somewhere that this can be done using the Table EVENTS. Can someone tell me what is the code that we should write there in the Events which prevents the user from saving the blank fields. While writing the logic in the events, how to check whether the particular field is BLANK or not. Will the values be stored in any internal table kind of thing..?
    My table name is ZCRF_TAB and the fields are FLD!, FLD2, FLD3, FLD4, FLD5 & FLD6. Can someone provide me sample code for my requirement. Thanks in advance.
    Best regards,
    Paddu.

    Hi,I think u have generated Table Maintainance Generator, goto Environment->Modifications->Events
    Select appropriate option by using F4,I think value 05 is appropriate for u r requirement.Enter From routine name.Dbl click on the routine.
    Write the appropriate code like:
    If ZTABLE-FIELD1 is initial.
    Message (E000) with "Fill all the manadatory fields".
    Thats it.Just look at the following docu with screenshots,by this understand how u can use Table Events:
    https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/com.sap.km.cm.docs/library/abap/how%20to%20implement%20events%20in%20table%20maintenance.doc
    Regards,
    Rock.

  • What keeps making the cyclical noise while in sleep.  Sounds like iMac is loading a graphic or different screen.

    What keeps making the cyclical noise while in sleep?  Sounds like iMac is loading a graphic or different screen.  Does it periodically while in sleep mode.  How do I correct this?  Just started doing it in the last few months.

    I finally figured out how to fix this.  First I reviewed "Mac OS X: Why your Mac might not sleep of stay in sleep mode."  I noted the bullet:  "Do you have any other external USB or Firewire devices connected?"  I have an CP685AVR for a UPS for my Mac.  I replaced the battery a few months ago.  I also hooked up Apple's 'Energy Saver' power management software to the CP685AVR using the USB connection.  I disconnected it, and that solved the problem.  I still have the UPS and battery back-up; I just can't "monitor" the battery.  What's to monitor?  It always said the battery was 100% charged even right up to the time the previous battery failed.  Thanks for listening, uh... reading.

  • How to make UOM as mandatory while creating PR in ME51N

    Hi all,
    While creating PR, UOM is not populated automatically. The PR also created without entering UOM.
    So, here UOM is optional. how to make this UOM as mandatory while creating PR in ME51N?
    Thanks
    pabi

    Hi Pabitra
    Go to SPRO>Materials Management>Purchasing>Purchase Requisition>Define Document Types ( CHECK which type of field selection is assigned to your PR Document type)
    and then go to
    Go to SPRO>Materials Management>Purchasing>Purchase Requisition>Define Screen Layout at Document Level>select that field selction here eg NBB  then go to details, then double click Quantity and Price ( Filed selection group) there make filed label Unit of measure as Required quantity
    and then  slect the filed selection ME51N and do the same settings as above.
    Cheers
    Kris

  • MAKING PROFIT CENTRE MANDATORY FIELD IN ECC 6.00 AFTER GOLIVE

    Can we activate the Profit centre mandatory field for all the entries after the system gone live?.   The details are as under:
    1.     System : ECC 6.00
    2.     Document splitting activated without making Profit Centre Mandatory field.
    If we are going to activate now, system is throwing a very strong message of Data Inconsistency and informing us not to change the settings now.
    Is there any other way where in we can make Profit Centre a mandatory field.
    Appreciate if any one  who  worked on this / has knowledge on this please revert back on the solution.

    Hi
    You should raise an OSS message and take SAP's support...
    If you add any new dimension now, all the previous docs where PC was not populated would throw an error during clearing, payments, etc
    You might be having PC as a doc spliting char already, but if you did not make it mandatory, then chances are that some docs might have been posted w/o PC
    BR,Ajay M

  • Making Text ID mandatory in Invoice

    Hi Folks,
      Can some one tell me how can you make a TEXT ID mandatory while saving/creating an Invoice( SD Billing Doc) T code VF01/Vf02
    I can see that we can make text id mandatory in sales doc , but we can not for an Invoice. Requirement we  got is to make user commnuity enter a Text Id mandatorily before posting an Invoice. We can not make texd id mandatory in Sales Doc since there are documents which will have blank text types too.
    Is there an exit or any other solution for this problem..I could n't see the text ids in the exit I found . Any help would be appreciated. Thanks, Amit

    Hello Amit
    I am not asking you to make the text mandatory in preceding sales document.I understand that the users must be having the information for text only at the time of billing which they cannot enter at the time of sales order/delivery creation.
    You can put a code in the copying requirement so that at the time of creation of invoice users get the error if the relevant text is missing in order/delivery.The user will not be able to create a billing document without that information.Therefore you will not have to make text mandatory in sales documents at the same time you can ensure that proper text flows to the invoice.
    I will not recommend any checks or error  at the time of  invoice saving through user exits in billing documents...The reason being that most of the time SAP will skip the invoice numbers and every time you get an error you will miss an invoice number.This will generate gaps which is not allowed legally in most of the countries.You can try user exit in includes RV60AFZZ
    Hope it clarifies.
    Thanks
    Vikas

  • While hiring applicant getting error massage

    Hi experts,
    Can any one help on my issue.
    While hiring applicant details in PB60, getting warring massage that is "This standard test dose not have the correct format for SAP script.
    Thanks & regards
    Swapna

    Please see the following Oracle Support article for the solution to this:
    Enabling the Payroll Field for Offer Creation [ID 852654.1]

  • How do you know which fields are mandatory while uploading PO using BAPI.

    How do you know which fields are mandatory while uploading PO data using BAPI. in a structure how do you know which fields are mandatory.
    and also, where how do you check that, the BAPI function module is executed.
    Thanks in Advance.
    Naveen.

    hi
    hope it will help you.
    Reward if help.
    REPORT zpo_bapi_purchord_tej.
    DATA DECLARATIONS *
    TYPE-POOLS slis.
    TYPES: BEGIN OF ty_table,
    v_legacy(8),
    vendor TYPE bapimepoheader-vendor,
    purch_org TYPE bapimepoheader-purch_org,
    pur_group TYPE bapimepoheader-pur_group,
    material TYPE bapimepoitem-material,
    quantity(13),
    delivery_date TYPE bapimeposchedule-delivery_date,
    net_price(23),
    plant TYPE bapimepoitem-plant,
    END OF ty_table.
    TYPES: BEGIN OF ty_alv,
    v_legs(8),
    success(10),
    v_legf(8),
    END OF ty_alv.
    TYPES: BEGIN OF ty_alv1,
    v_legf1(8),
    v_msg(500),
    END OF ty_alv1.
    *-----Work area declarations.
    DATA: x_table TYPE ty_table,
    x_header TYPE bapimepoheader,
    x_headerx TYPE bapimepoheaderx,
    x_item TYPE bapimepoitem,
    x_itemx TYPE bapimepoitemx,
    x_sched TYPE bapimeposchedule,
    x_schedx TYPE bapimeposchedulx,
    x_commatable(255),
    x_alv TYPE ty_alv,
    x_alv1 TYPE ty_alv1,
    x_alv2 TYPE ty_alv1.
    *-----Internal table declarations.
    DATA: it_table TYPE TABLE OF ty_table,
    it_commatable LIKE TABLE OF x_commatable,
    it_item TYPE TABLE OF bapimepoitem,
    it_itemx TYPE TABLE OF bapimepoitemx,
    it_sched TYPE TABLE OF bapimeposchedule,
    it_schedx TYPE TABLE OF bapimeposchedulx,
    it_alv TYPE TABLE OF ty_alv,
    it_alv1 TYPE TABLE OF ty_alv1,
    it_alv2 TYPE TABLE OF ty_alv1.
    DATA: po_number TYPE bapimepoheader-po_number,
    x_return TYPE bapiret2,
    it_return TYPE TABLE OF bapiret2,
    v_file TYPE string,
    v_temp(8),
    v_succsount TYPE i VALUE 0,
    v_failcount TYPE i VALUE 0,
    v_total TYPE i.
    DATA: v_temp1(5) TYPE n VALUE 0.
    DATA: x_event TYPE slis_t_event,
    x_fieldcat TYPE slis_t_fieldcat_alv,
    x_list_header TYPE slis_t_listheader,
    x_event1 LIKE LINE OF x_event,
    x_layout1 TYPE slis_layout_alv,
    x_variant1 TYPE disvariant,
    x_repid2 LIKE sy-repid.
    DATA : it_fieldcat TYPE TABLE OF slis_t_fieldcat_alv.
    SELECTION-SCREEN *
    SELECTION-SCREEN BEGIN OF BLOCK v_b1 WITH FRAME.
    *-----To fetch the flat file.
    PARAMETERS: p_file TYPE rlgrap-filename.
    SELECTION-SCREEN END OF BLOCK v_b1.
    AT SELECTION-SCREEN *
    AT SELECTION-SCREEN.
    IF p_file IS INITIAL.
    MESSAGE text-001 TYPE 'E'.
    ENDIF.
    AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_file.
    *-----To use F4 help to find file path.
    CALL FUNCTION 'F4_FILENAME'
    EXPORTING
    program_name = syst-cprog
    dynpro_number = syst-dynnr
    IMPORTING
    file_name = p_file.
    v_file = p_file.
    START-OF-SELECTION *
    START-OF-SELECTION.
    PERFORM gui_upload.
    LOOP AT it_table INTO x_table.
    PERFORM header_details.
    v_temp = x_table-v_legacy.
    LOOP AT it_table INTO x_table WHERE v_legacy = v_temp.
    PERFORM lineitem.
    PERFORM schedule.
    ENDLOOP.
    DELETE it_table WHERE v_legacy = v_temp.
    PERFORM bapicall.
    MOVE po_number TO x_alv-success.
    APPEND x_alv TO it_alv.
    CLEAR x_alv.
    *-----To clear the item details in internal table after the operation for a header.
    REFRESH: it_item,
    it_itemx,
    it_sched,
    it_schedx.
    CLEAR: v_temp1.
    ENDLOOP.
    v_total = v_succsount + v_failcount.
    PERFORM display_alv.
    FORM GUI_UPLOAD *
    FORM gui_upload .
    CALL FUNCTION 'GUI_UPLOAD'
    EXPORTING
    filename = v_file
    filetype = 'ASC'
    TABLES
    data_tab = it_commatable
    EXCEPTIONS
    file_open_error = 1
    file_read_error = 2
    no_batch = 3
    gui_refuse_filetransfer = 4
    invalid_type = 5
    no_authority = 6
    unknown_error = 7
    bad_data_format = 8
    header_not_allowed = 9
    separator_not_allowed = 10
    header_too_long = 11
    unknown_dp_error = 12
    access_denied = 13
    dp_out_of_memory = 14
    disk_full = 15
    dp_timeout = 16
    OTHERS = 17
    IF sy-subrc = 0.
    *-----To fetch the comma seperated flat file into an internal table.
    LOOP AT it_commatable INTO x_commatable.
    IF x_commatable IS NOT INITIAL.
    SPLIT x_commatable AT ',' INTO
    x_table-v_legacy
    x_table-vendor
    x_table-purch_org
    x_table-pur_group
    x_table-material
    x_table-quantity
    x_table-delivery_date
    x_table-net_price
    x_table-plant.
    APPEND x_table TO it_table.
    ENDIF.
    CLEAR x_table.
    ENDLOOP.
    ENDIF.
    ENDFORM. " gui_upload
    FORM HEADER_DETAILS *
    FORM header_details .
    MOVE 'NB' TO x_header-doc_type.
    CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'
    EXPORTING
    input = x_table-vendor
    IMPORTING
    output = x_table-vendor
    MOVE x_table-vendor TO x_header-vendor.
    MOVE x_table-purch_org TO x_header-purch_org.
    MOVE x_table-pur_group TO x_header-pur_group.
    x_headerx-doc_type = 'X'.
    x_headerx-vendor = 'X'.
    x_headerx-purch_org = 'X'.
    x_headerx-pur_group = 'X'.
    ENDFORM. " header_details
    FORM LINEITEM *
    FORM lineitem .
    v_temp1 = v_temp1 + 10.
    CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'
    EXPORTING
    input = v_temp1
    IMPORTING
    output = v_temp1.
    MOVE v_temp1 TO x_item-po_item.
    CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'
    EXPORTING
    input = x_table-material
    IMPORTING
    output = x_table-material.
    MOVE x_table-material TO x_item-material.
    MOVE x_table-quantity TO x_item-quantity.
    MOVE x_table-net_price TO x_item-net_price.
    MOVE x_table-plant TO x_item-plant.
    x_itemx-po_item = v_temp1.
    x_itemx-material = 'X'.
    x_itemx-quantity = 'X'.
    x_itemx-net_price = 'X'.
    x_itemx-plant = 'X'.
    APPEND x_item TO it_item.
    APPEND x_itemx TO it_itemx.
    CLEAR: x_item, x_itemx.
    ENDFORM. " lineitem1
    FORM SCHEDULE *
    FORM schedule .
    MOVE x_table-delivery_date TO x_sched-delivery_date.
    MOVE v_temp1 TO x_sched-po_item.
    x_schedx-delivery_date = 'X'.
    x_schedx-po_item = v_temp1.
    APPEND x_sched TO it_sched.
    APPEND x_schedx TO it_schedx.
    CLEAR: x_sched, x_schedx.
    ENDFORM. " schedule
    FORM BAPICALL *
    FORM bapicall .
    CALL FUNCTION 'BAPI_PO_CREATE1'
    EXPORTING
    poheader = x_header
    poheaderx = x_headerx
    IMPORTING
    exppurchaseorder = po_number
    TABLES
    return = it_return
    poitem = it_item
    poitemx = it_itemx
    poschedule = it_sched
    poschedulex = it_schedx.
    IF po_number IS NOT INITIAL.
    v_succsount = v_succsount + 1.
    MOVE x_table-v_legacy TO x_alv-v_legs.
    CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'.
    ELSE.
    v_failcount = v_failcount + 1.
    MOVE x_table-v_legacy TO x_alv-v_legf.
    MOVE x_table-v_legacy TO x_alv1-v_legf1.
    LOOP AT it_return INTO x_return.
    IF x_alv1-v_msg IS INITIAL.
    MOVE x_return-message TO x_alv1-v_msg.
    ELSE.
    CONCATENATE x_alv1-v_msg x_return-message INTO x_alv1-v_msg SEPARATED BY space.
    ENDIF.
    ENDLOOP.
    APPEND x_alv1 TO it_alv1.
    CLEAR x_alv1.
    ENDIF.
    ENDFORM. " bapicall
    FORM DISPLAY_ALV *
    FORM display_alv .
    PERFORM x_list_header.
    PERFORM build_fieldcat CHANGING x_fieldcat.
    x_repid2 = sy-repid.
    x_event1-name = 'TOP_OF_PAGE'.
    x_event1-form = 'TOP_OF_PAGE'.
    APPEND x_event1 TO x_event.
    CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
    EXPORTING
    i_callback_program = x_repid2
    is_layout = x_layout1
    it_fieldcat = x_fieldcat
    i_callback_user_command = 'USER_COMMAND'
    i_callback_top_of_page = 'TOP_OF_PAGE'
    i_save = 'A'
    is_variant = x_variant1
    it_events = x_event
    TABLES
    t_outtab = it_alv
    EXCEPTIONS
    program_error = 1
    OTHERS = 2.
    IF sy-subrc <> 0.
    MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
    WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
    ENDIF.
    ENDFORM. " display_master_data
    FORM USER_COMMAND *
    FORM user_command USING ucomm LIKE sy-ucomm selfield
    TYPE slis_selfield.
    READ TABLE it_alv INTO x_alv INDEX selfield-tabindex.
    CLEAR : x_alv2,it_alv2[].
    LOOP AT it_alv1 INTO x_alv1 WHERE v_legf1 = x_alv-v_legf.
    x_alv2 = x_alv1.
    APPEND x_alv2 TO it_alv2 .
    ENDLOOP.
    DATA : it_fieldcat TYPE slis_t_fieldcat_alv.
    DATA : x3_fieldcat LIKE LINE OF it_fieldcat.
    CLEAR : x3_fieldcat,it_fieldcat[].
    CLEAR x3_fieldcat.
    x3_fieldcat-col_pos = '1'.
    x3_fieldcat-fieldname = 'V_LEGF1'.
    x3_fieldcat-reptext_ddic = text-111.
    x3_fieldcat-ref_tabname = 'IT_ALV2'.
    APPEND x3_fieldcat TO it_fieldcat.
    CLEAR x3_fieldcat.
    CLEAR x3_fieldcat.
    x3_fieldcat-col_pos = '1'.
    x3_fieldcat-fieldname = 'V_MSG'.
    x3_fieldcat-reptext_ddic = text-112.
    x3_fieldcat-ref_tabname = 'IT_ALV2'.
    APPEND x3_fieldcat TO it_fieldcat.
    CLEAR x3_fieldcat.
    x_layout1-colwidth_optimize = 'X'.
    x_layout1-zebra = 'X'.
    IF it_alv2[] IS NOT INITIAL.
    CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
    EXPORTING
    i_callback_program = x_repid2
    is_layout = x_layout1
    it_fieldcat = it_fieldcat
    i_save = 'A'
    i_callback_top_of_page = 'TOP'
    is_variant = x_variant1
    it_events = x_event
    TABLES
    t_outtab = it_alv2
    EXCEPTIONS
    program_error = 1
    OTHERS = 2.
    ENDIF.
    ENDFORM.
    FORM USER_COMMAND *
    FORM top.
    CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'
    EXPORTING
    it_list_commentary = 'Commentry'.
    ENDFORM.
    FORM BUILD_FIELDCAT *
    FORM build_fieldcat CHANGING et_fieldcat TYPE slis_t_fieldcat_alv.
    DATA: x1_fieldcat TYPE slis_fieldcat_alv.
    CLEAR x1_fieldcat.
    x1_fieldcat-col_pos = '1'.
    x1_fieldcat-fieldname = 'V_LEGS'.
    x1_fieldcat-reptext_ddic = text-108.
    x1_fieldcat-ref_tabname = 'IT_ALV'.
    APPEND x1_fieldcat TO et_fieldcat.
    CLEAR x1_fieldcat.
    x1_fieldcat-col_pos = '2'.
    x1_fieldcat-fieldname = 'SUCCESS'.
    x1_fieldcat-key = 'X'.
    x1_fieldcat-reptext_ddic = text-109.
    x1_fieldcat-ref_tabname = 'IT_ALV'.
    APPEND x1_fieldcat TO et_fieldcat.
    CLEAR x1_fieldcat.
    x1_fieldcat-col_pos = '3'.
    x1_fieldcat-fieldname = 'V_LEGF'.
    x1_fieldcat-key = 'X'.
    x1_fieldcat-reptext_ddic = text-110.
    x1_fieldcat-ref_tabname = 'IT_ALV'.
    APPEND x1_fieldcat TO et_fieldcat.
    CLEAR x1_fieldcat.
    ENDFORM. " build_fieldcat
    FORM BUILD_LIST_HEADER *
    FORM x_list_header.
    DATA: x_list_header1 TYPE slis_listheader.
    *-----List Header: type H
    CLEAR x_list_header1 .
    x_list_header1-typ = 'H'.
    x_list_header1-info = text-105.
    APPEND x_list_header1 TO x_list_header.
    *-----List Key: type S
    x_list_header1-typ = 'S'.
    x_list_header1-key = text-106.
    x_list_header1-info = v_total.
    APPEND x_list_header1 TO x_list_header.
    *-----List Key: Type S
    CLEAR x_list_header1 .
    x_list_header1-typ = 'S'.
    x_list_header1-key = text-107.
    x_list_header1-info = v_succsount.
    APPEND x_list_header1 TO x_list_header.
    ENDFORM. " build_list_header
    FORM TOP_OF_PAGE *
    FORM top_of_page.
    CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'
    EXPORTING
    it_list_commentary = x_list_header.
    ENDFORM. " TOP_OF_PAGE

Maybe you are looking for