cancel
Showing results for 
Search instead for 
Did you mean: 
Read only

E-Recruiting Error/Short Dump in Roadmap Step - Education

Former Member
0 Likes
591

Hi,

There is short dump due to Uncaught exception in the function module ‘HRRCF_MDL_CAND_EDU_RETRIEVE’ because the Candidate Object is not set in Web Dynpro Component ‘HRRCF_C_EDUCATION_UI’s  method ‘SET_HROBJECT’.

This error happens to only random candidates. I am still trying to find the reason. I have also searched in SCN and market place but couldn't figure out the cause and solution.

I have attached screen shots of ST22 dump overview, SLG1 log and  Function Module where the exception raised.

Have you come across error like this? Do you need more info to guide me find out why this error occurs?

…Naddy

Accepted Solutions (1)

Accepted Solutions (1)

NicoleGeischnek
Product and Topic Expert
Product and Topic Expert
0 Likes

Hi Naddy,

In that case the method call CL_HRRCF_CANDIDATE_ADMIN_BL => GET_CANDIDATE() went already wrong.

You can check in ST22 dump with which value sy-uname was filled and check if that is the correct user of that candidate or if it exists at all.

Regards,

Nicole

Former Member
0 Likes

In shortdump, the sy-uname was filled with the correct user of that candidate.

Yes, CL_HRRCF_CANDIDATE_ADMIN_BL => GET_CANDIDATE() went already wrong because the 'cand_hrobject' supplied with 'null' in the check of ' IF cl_hrrcf_candidate_admin_bl=>is_cand_of_current_user( is_cand = cand_hrobject ) = abap_true.' at line 38 of Function Module HRRCF_MDL_CAND_EDU_RETRIEVE.

The IF condition fails, and Raised exception 'cx_hrrcf_authority' line no 43. it was not caught. So the short dump occurs in application.

...Naddy

Function Module HRRCF_MDL_CAND_EDU_RETRIEVE code extract line no 30 to 52

IF NOT cand_hrobject IS SUPPLIED.

        CALL METHOD cl_hrrcf_candidate_admin_bl=>get_candidate

          EXPORTING

            p_user          = sy-uname

          IMPORTING

            p_cand_hrobject = ls_cand_hrobject.

      ELSE.

*--   Check whether imported candidate object belongs to user

        IF cl_hrrcf_candidate_admin_bl=>is_cand_of_current_user( is_cand = cand_hrobject ) = abap_true.

          ls_cand_hrobject = cand_hrobject.

        ELSE.

          AUTHORITY-CHECK OBJECT 'P_RCF_POOL' ID 'RCF_POOL' FIELD 'DIRECT_ACC'.

          IF sy-subrc <> 0.

            RAISE EXCEPTION TYPE cx_hrrcf_authority

              EXPORTING

                message_class  = 'HRRCF0002'

                message_number = '300'

                message_type   = 'A'.

          ELSE.

            ls_cand_hrobject = cand_hrobject.

          ENDIF.

        ENDIF.

      ENDIF.

NicoleGeischnek
Product and Topic Expert
Product and Topic Expert
0 Likes

Hi Naddy,

That's what I meant. Please check method cl_hrrcf_candidate_admin_bl=>get_candidate in transaction SE24 for that username and if you get there the candidate object or not.

Regards,

Nicole

Former Member
0 Likes

No, The Candidate Object is not passed to the method cl_hrrcf_candidate_admin_bl=>get_candidate by ‘HRRCF_C_EDUCATION_UI’.

 

the flow is,

1) Candidate Object is not set in Web Dynpro Component ‘HRRCF_C_EDUCATION_UI’s  method ‘SET_HROBJECT’. FM '‘HRRCF_MDL_CAND_EDU_RETRIEVE’ called with 'Null' 'cand_hrobject'.

3) In FM,

CL_HRRCF_CANDIDATE_ADMIN_BL => GET_CANDIDATE() went wrong because the 'cand_hrobject' supplied with 'null' in the check of ' IF cl_hrrcf_candidate_admin_bl=>is_cand_of_current_user( is_cand = cand_hrobject ) = abap_true.' at line 38 of Function Module HRRCF_MDL_CAND_EDU_RETRIEVE.

The IF condition fails, and Raised exception 'cx_hrrcf_authority' line no 43. it was not caught. So the short dump occurs in application.

...Naddy

P.S but The Candidate Object is passed to the method cl_hrrcf_candidate_admin_bl=>get_candidate by HRRCF_C_PERSONL_DATA_UI.

NicoleGeischnek
Product and Topic Expert
Product and Topic Expert
0 Likes

Have you implemented note 1511915?

Former Member
0 Likes

Yes, the System is running on EhP5 + Support Level 04.

the correction of 1511915 is delievered with the package

SAPK-60504INERECRUIT. We are on the same level.

...Naddy

NicoleGeischnek
Product and Topic Expert
Product and Topic Expert
0 Likes

Hi Naddy,

I would set a breakpoint in HRRCF_C_EDUCATION_UI => COMPONENTCONTROLLER => LOAD_EDUCATION_DATA() at:

      lo_node_candidate = wd_context->get_child_node( name = if_componentcontroller=>wdctx_candidate ).

      lo_node_candidate->get_attribute( EXPORTING name `HROBJECT`

                                        IMPORTING value = ls_hrobject ).

Regards,

Nicole

Former Member
0 Likes

I did debug already but ls_hrobject is null.

...Naddy

NicoleGeischnek
Product and Topic Expert
Product and Topic Expert
0 Likes

Hi Naddy,

The context attribute candidate-HROBJECT is filled in HRRCF_C_STARTPAGE => COMPONENTCONTROLLER => INITIALIZE()

*    get candidate object

      CALL METHOD cl_hrrcf_m_candprofile=>sc_get_cand_hrobject

        EXPORTING

          iv_user     = sy-uname

        RECEIVING

          rs_hrobject = ls_cand_hrobject.



      lo_node_candidate = wd_context->get_child_node( name = if_componentcontroller=>wdctx_candidate ).

      lo_node_candidate->set_attribute(

        EXPORTING

          name = 'HROBJECT'

          value = ls_cand_hrobject ).

Is this done?

Best regards,

Nicole

Answers (0)