cancel
Showing results for 
Search instead for 
Did you mean: 

Message Mapping: Signature/Parameters: Where to get values for these fields

Former Member
0 Kudos

Hello All,

We have a custom interface which after getting data from 3rd party, does an RFC lookup to ECC to get default data and then creates an IDOC in PI and pushs it finally to ECC. (JDBC-get-rfc-data-IDOC)

It was working fine but has stopped working throwing a message mapping error when transported to a new system.

I realised the earlier developer had used an RFC function in mapping and also created some constants which are defined in the Message-Mapping>Signature tab>Sub-tab PARAMETERS .

these Constants have been used in some CONSTANT function where value for the constant is defined as a word enclosed withing $ sign (dollar sign) e.g Constant = $compcode$

I do not know how does the sytem get value for this $constant$. Can we define the values for these $constants$ somewhere or is some RFC function responsible for this. I am unable to find out. ( This error is encountered when I test the message payload directly in Message Mapping test tab)

Also wanted to add that during the message mapping test, the error message apart from being about the constants also mentions "No value assigned to parameter DEVRFC_GETVAL"._

"DEVRFC_GETVAL" is a comm channel and is being used in the mapping program to get values from ECC._

Appreciate if you could point me to to right direction. I am on PI - 7.10

Many thanks

SK

Edited by: Shirin K on Jun 4, 2009 9:39 PM

Accepted Solutions (0)

Answers (2)

Answers (2)

Former Member
0 Kudos

Issue was with Interface determination. I found that in Operation mapping(used in Int-Determination), parameters tab was emty. Not sure why...but anyways populating the data there sorted the issue.

Many thanks for pointuing me in right direction. Learnt something new about PI 710 RFC lookup

Former Member
0 Kudos

Hi,

It looks like the Developer used RFC Lookup's to perform the lookup. Business system & Communication channel are needed to perform a successful lookup.

So when the object is transported, it is unable to obtain "Business System" name. (as they are generally diff in DEV & QA & PRD). The developer might either have Hardcoded them in UDF or would have obtained the value from a Value-Mapping. But the value for this constant will be populated in UDF itself.

-Siva Maranani

Former Member
0 Kudos

Hi Siva,

We are on PI 7.1 and the developer has used graphical RFC function.

Since the error that we are getting is "NO value passed to the parameter ..". which contains the actual comm-channel name, I suspect you may be right that somewhere the BS value is hardcoded. Shall have a look at system tomorrow morning.

Apart from the hardcoded BS and Comm Channel name, can there be anything else thats going wrong.

Many thanks

SK

Former Member
0 Kudos

Hi Shirin,

Once you define the parameters in the signature TAB, The values should be passed in INTERFACE DETERMINATION.

Refer this blog..

/people/jin.shin/blog/2008/02/14/sap-pi-71-mapping-enhancements-series-parameterized-message-mappings

Hope it helps...

Thanks,

Kumar.

Former Member
0 Kudos

Thankyou Kumar.

I found the constants are getting mapped in the Binding of the Operation mapping.

Now that leaves me with only 1 error message "No value assigned to parameter DEV_RFC_GETVAL".

DEV_RFC_GETVAL is the name of RFC comm channel. It has been defined in the ID and configured. Not sure what could be causing the issue.

Any idea.

Many thanks for all the help.

Regards

SK

former_member200962
Active Contributor
0 Kudos
No value assigned to parameter DEV_RFC_GETVAL

check this out: