Application Development Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 

Getting Dump while using PYXX_READ_PAYROLL_RESULT FM

Former Member
0 Kudos

I m trying to get the gross salary and ESI contribution amount for an indian based employee. While using the FM 'PYXX_READ_PAYROLL_RESULT' i m getting the following dump.

-


************************************************************************************************************************************************************An exception occurred that is explained in detail below.The exception, which is assigned to class 'CX_SY_DYN_CALL_ILLEGAL_TYPE', wa not caught in procedure "PYXX_READ_PAYROLL_RESULT" "(FUNCTION)", nor was it propagated by RAISING clause.Since the caller of the procedure could not have anticipated that the exception would occur, the current program is terminated. The reason for the exception is:

Call to FORM "IMPORT_RESULT" is incorrect:

The actual parameter no. 2 has a different data type in the

PERFORM than requested for the FORM "IMPORT_RESULT" in program %_T06K40".

-


************************************************************************************************************************************************************

and it is showing the dump result here

ELSE.

PERFORM import_client_spec IN PROGRAM (subroutine_pool-name)

USING client

key

payroll_result

import_subrc

pcl2_version_number

typepool_version_number

IF FOUND.

-


Pls help me to solve the issue as it very high priroty work

1 ACCEPTED SOLUTION

Former Member
0 Kudos

Hi Faisal,

Before the FM the Sy-Subrc is zero only and i have declared the exception part also..

IF sy-subrc = 0.

CALL FUNCTION 'PYXX_READ_PAYROLL_RESULT'

EXPORTING

clusterid = 'IN'

employeenumber = P0001-pernr

sequencenumber = it_rgdir-seqnr

filter_cumulations = ''

CHANGING

payroll_result = it_payresult

EXCEPTIONS

illegal_isocode_or_clusterid = 1

error_generating_import = 2

import_mismatch_error = 3

subpool_dir_full = 4

no_read_authority = 5

no_record_found = 6

versions_do_not_match = 7

error_reading_archive = 8

error_reading_relid = 9

OTHERS = 10.

IF sy-subrc <> 0.

  • MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO

  • WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.

ENDIF.

Endif.

Thanks!

4 REPLIES 4

faisal_altaf2
Active Contributor
0 Kudos

Hi, Zakirriyaz

I think in FM Exceptions part is missing add it too as shown below, so that you will be able to get the proper error message, check SY-SUBRC just after FM.

CALL FUNCTION 'PYXX_READ_PAYROLL_RESULT'
    EXPORTING
      clusterid                    = 'RX'
      employeenumber               = pernr
      sequencenumber               = seqnr
    CHANGING
      payroll_result               = payroll_result
    EXCEPTIONS
      illegal_isocode_or_clusterid = 1
      error_generating_import      = 2
      import_mismatch_error        = 3
      subpool_dir_full             = 4
      no_read_authority            = 5
      no_record_found              = 6
      versions_do_not_match        = 7
      error_reading_archive        = 8
      error_reading_relid          = 9
      OTHERS                       = 10.

Please Reply if any Confusion?

Thanks and Regards,

Faisal

Former Member
0 Kudos

Hi Faisal,

Before the FM the Sy-Subrc is zero only and i have declared the exception part also..

IF sy-subrc = 0.

CALL FUNCTION 'PYXX_READ_PAYROLL_RESULT'

EXPORTING

clusterid = 'IN'

employeenumber = P0001-pernr

sequencenumber = it_rgdir-seqnr

filter_cumulations = ''

CHANGING

payroll_result = it_payresult

EXCEPTIONS

illegal_isocode_or_clusterid = 1

error_generating_import = 2

import_mismatch_error = 3

subpool_dir_full = 4

no_read_authority = 5

no_record_found = 6

versions_do_not_match = 7

error_reading_archive = 8

error_reading_relid = 9

OTHERS = 10.

IF sy-subrc <> 0.

  • MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO

  • WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.

ENDIF.

Endif.

Thanks!

0 Kudos

Hi,

I think the problem is with clusterid = 'IN'. Please Check hope this will solve out your problem.

Thanks and Regards,

Faisal

Former Member
0 Kudos

Hi Faisal,

Thanks. It is working fine....