cancel
Showing results for 
Search instead for 
Did you mean: 

URGENT - RFC Call from EP6.0

dan_spitzig
Explorer
0 Kudos

Hi folks,

We are creating a custom iView for creating and editing employee competency appraisals. While creating a new appraisal, we call an RFC to validate whether an appraisal should be allowed to be created for that particular employee, based on the employee's Job Competency Profile.

When we log onto R/3 and test the function we get RETURNCODE (of type SY-SUBRC) = 1. This is the expected result, meaning that the appraisal can not be created because the competency is not in the employee's profile.

However, when we log onto the portal with the same user, and submit the exact same parameters to the RFC call, we get a RETURNCODE=0, and the appraisal is created.

Has any of you experts out there ever run into a similar problem? Any assistance you can provide would be most appreciated.

Thank you,

Dan

Accepted Solutions (1)

Accepted Solutions (1)

Former Member
0 Kudos

Hi Dan,

can u just tell me the what is the RETURNCODE type u used in ur RFC?

it should be SY_SUBRC, if not it will give u zero.

Regards,

sireesha.

dan_spitzig
Explorer
0 Kudos

Hi sireesha,

The RETURNCODE, which is an output parameter of the RFC, is of type SY_SUBRC. We check the parameter in Java as soon as the RFC is called. Again, different value in Java than what we got when executing in R/3.

Thanks,

Dan

Former Member
0 Kudos

Hi Dan,

Sorry for the late reply!

do u got solution for that?

Otherwise, try with this!

Just intialize the variable in java with 0 or 1,

otherwise define 2 constants one is for having the value 0 and one is for having 1 and then check with the ouput value u r getting from r/3 to java.

Generally, whatever the value u will get to the export parameter will be passed to the variable on java side.

Just check it and let me know the status.

Regards,

Sireesha.

dan_spitzig
Explorer
0 Kudos

Hi Sireesha,

Yes, we have the problem resolved. We were logging all the values that we passed into the RFC call, and also logged all the values that were returned from the call. As it turns out, one of the values that we were passing in wasn't the same as what we were logging.

Thanks for you replies.

Answers (0)