Skip to Content
author's profile photo Former Member
Former Member

Moifying values in PA30 through exit/BADI

Hi experts,

I have a requiremnt whrein when the user enters a value for wagetype in PA30 for infotypes 0008, 0015, 0759 and hits the enter key or saves the data, the value should get rounded off based on some custom logic.

Can you tell me any exit/BADI where I can implment this?

I tried to used BADI: HRPAD00INFTY but did not get the updated value on the screen.

Waiting for your replies.

regards

Ashwini

Add comment
10|10000 characters needed characters exceeded

5 Answers

  • Posted on Jun 08, 2009 at 11:10 AM

    Rounded off means

    the wage type figures shd get rounded off

    it yes

    this can be met with configureing V_T7INY1

    and also thru PCR

    Add comment
    10|10000 characters needed characters exceeded

  • author's profile photo Former Member
    Former Member
    Posted on Jun 08, 2009 at 11:19 AM

    Hi,

    Try using exit HRPBAS01.

    Regards,

    Kanupriya

    Add comment
    10|10000 characters needed characters exceeded

  • author's profile photo Former Member
    Former Member
    Posted on Jun 08, 2009 at 05:21 PM

    Create Project thru CMOD, assign PBAS0001 to your project and activate.

    Then go to ZXPADU02 and write your logic. Do 1st step only if you are newly implementing this user exit.

    Add comment
    10|10000 characters needed characters exceeded

  • author's profile photo Former Member
    Former Member
    Posted on Jun 08, 2009 at 05:33 PM
    Add comment
    10|10000 characters needed characters exceeded

  • author's profile photo Former Member
    Former Member
    Posted on Jun 09, 2009 at 06:05 AM

    Hi All

    I am modifying the infotype 0008 value (ANSAL) through PA30 using BADI (HRPAD00INFTY ), but I am not able to get the modified value relected back in PA30 screen.

    Can anyone suggest how to achieve this?

    regards

    Ashwini

    Add comment
    10|10000 characters needed characters exceeded

    • Former Member Former Member

      IF i001p-molga = '01' .

      TYPES: BEGIN OF ty_trfgr,

      trfgr TYPE p0008-trfgr,

      END OF ty_trfgr.

      DATA: gt_trfgr TYPE TABLE OF ty_trfgr,

      gs_trfgr LIKE LINE OF gt_trfgr.

      DATA: r_trfgb TYPE RANGE OF char10,

      rs_trfgb LIKE LINE OF r_trfgb,

      v_bet TYPE ansal_15,

      v_betrg(9) TYPE p DECIMALS 2.

      * v_betrg TYPE pad_amt7s.

      DATA: v_sal_type TYPE lgart,

      v_freq TYPE ansal_15,

      v_sal TYPE ansal_15,

      v_others TYPE ansal_15.

      DATA: gt_t511 TYPE TABLE OF t511,

      gs_t511 LIKE LINE OF gt_t511,

      gt_t510i TYPE TABLE OF t510i,

      gs_t510i LIKE LINE OF gt_t510i,

      v_longpack(16) TYPE p,

      v_result TYPE p.

      * IF ipsyst-inpst = '2'.

      * get the ps group

      SELECT trfgr INTO TABLE gt_trfgr FROM t510 WHERE molga = '01' AND

      ( trfar = 'Z2' OR trfar = 'Z7' OR

      trfar = 'Z4' OR trfar = 'Z5' OR

      trfar = 'Z6' ).

      IF gt_trfgr[] IS NOT INITIAL.

      LOOP AT gt_trfgr INTO gs_trfgr.

      rs_trfgb-sign = 'I'.

      rs_trfgb-option = 'EQ'.

      rs_trfgb-low = gs_trfgr-trfgr.

      APPEND rs_trfgb TO r_trfgb.

      CLEAR: rs_trfgb , gs_trfgr.

      ENDLOOP.

      ENDIF.

      IF wa_p0008-trfar = 'Z7' AND wa_p0008-trfgb = 'Z1' AND

      wa_p0008-trfgr IN r_trfgb[] AND v_sal_type = '9010'.

      v_ansal = ( v_others + v_bet ) * 13.

      ELSEIF wa_p0008-trfar = 'Z5' AND wa_p0008-trfgb = 'Z4' AND

      wa_p0008-trfgr IN r_trfgb[] AND v_sal_type = '9010'.

      v_freq = '13.7' .

      v_ansal = ( v_others + v_bet ) * v_freq .

       

      ELSEIF wa_p0008-trfar = 'Z2' AND wa_p0008-trfgb = 'Z1' AND

      wa_p0008-trfgr IN r_trfgb[] AND v_sal_type = '9010'.

      v_ansal = ( v_others + v_bet ) * 12.

      endif.

      * pass the new value to screen

      CALL METHOD cl_hr_pnnnn_type_cast=>pnnnn_to_prelp

      EXPORTING

      pnnnn = wa_p0008

      IMPORTING

      prelp = innnn.

      Please sap Gurus reply asap as the values are not reflecting in the pa30 screen .willcalling the function popup_to_confirm solve the problem . as the values are there in db but not reflectingthe in the screen