RFC Sync Call
Hello All,
I am new the SAP-ABAP and XI environment.
I am integrating HCM-Payroll/GL Posting to FI.
i add BAPI_ACC_EMPLOYEE_EXP_CHECK a special method call at BD97. Since i need to check before create the IDOC i add as RFC Sync.
Then I ran the report RPCIPE00. I am getting following the error message.
The error Message.
"The function module "BAPI_ACC_EMPLOYEE_EXP_CHECK" has been called remotely and has generated a progam termination in the receiving system "XI_XD1". For more information, see the dump analysis in the receiving system."
Could you please guide what i am doing wrong.
If i remove the BAPI from BD97 then the documents are created but no messages on SXMB_MONI.
Thanks
SV
Hi SV,
logging for synchronous messages is turned off by default but you can activate it by :-
TCODE
SXMB_ADM
-> Integration Engine Configuration
-> Specific Configuration
Add the entry
<u><b>Category Parameters Value</b></u>
RUNTIME LOGGING_SYNC 1
Regards
Kenny
Similar Messages
-
SOAP TO RFC SYNC call time out
Hi,
Did anyone know how to set the rfc timeout? I try to set it at visual admin but it didn't work. Is that others place to set it?
Thanks.Hi,
Thanks for respond. This is what i set on visual admin but seem it not work. For testing i put the value 10 after restart the adapter and test it the function still respond after 10ms.
thanks. -
Reg: JDBC -- RFC Sync call
Hi All,
I have created a scenario between JDBC and SAP, which is a synchronous communication. In SXMB_MONI and in communication channel monitoring it is successful. JDBC synchronous communication channel is able to fetch the data, However it is not able to push the data to AS400 DB2 database. Can anybody suggest regarding the same. (I want to avoid BPM)
Regards,
Venu VThats the way SAP has implemented JDBC adapter.
May be the reason could be that opening a JDBC connection and waiting for a response would increase the performance overhead highly. To avoid this JDBC connection are made async so that once the message is sent, the database connection is closed and table could be used for other transactions maintaining the integrity of data.
Regards,
Prateek -
Error while executing WS to RFC sync on 7.4 single stack
Hi Experts
I am working in ws..>sap pi..>Rfc sync scerio
when I have entered the data in RFC its working fi9 but I am using SOAPUI to test it, it's giving me error:
<text>com.sap.engine.interfaces.messaging.api.exception.MessagingException: com.sap.engine.interfaces.messaging.api.exception.MessagingException: com.sap.aii.adapter.rfc.afcommunication.RfcAFWException: error while processing message to remote system:com.sap.aii.adapter.rfc.core.client.RfcClientException: functiontemplate from repository was <null>
pls note that I have reimported the RFC
pls suggest!Refer to question no 16 under the below note
730870 - FAQ XI 3.0/ PI 7.0/ PI 7.1/ PI 7.11/ PI 7.2/ 7.3 RFC Adapter
Q 16: While sending a message to the RFC Adapter the error "... functiontemplate from repository was <null>" is shown. What is the reason?
A: After receiving a message from the Adapter Engine, the RFC Adapter extracts the payload from the message. Normally this should be an XML document in the RFC-XML format. In this format the root element of the XML document represents the name of the function module and is enclosed in the fixed RFC namespace 'urn:sap-com:document:sap:rfc:functions'. But this only will be checked at a later point, when the conversion from XML to native RFC is done. As prerequisite of this conversion the structures and types of the function module parameters has to be known. This is also called metadata or function template. To get this function template the name of the function module is extracted from the root element of the XML document and is queried against the metadata repository of the communication channel. If the metadata repository doesn't have a function module with this name, the exception named above is thrown. Possible reasons are
The XML document, which was sent to the RFC Adapter, is not a RFC-XML document. So the root element name of this document is not the name of a function module and thus can't be found in the metadata repository.
The metadata repository doesn't contain an entry for this function module name. Normally the metadata repository will be an R/3 system and it's function module repository can be searched with the transaction SE37. -
Hello members:
we have a business scenario: SOAP to RFC sync
an external system (ABC) sends documentrequest thru XI SOAP adapter and makes an RFC call to a BAPI and gets back the resposne to the ABC system.we are handling 4 mappings. 1. request msg to a common msg 2. common msg to BAPI request3.bapi response to common msg 4. common msg to response msg(which is same as the req msg)
i have the request msg and common msg as external definitions. I did the following steps and wanted to
know if i am right.
1. there are no data type & msg type needed for this
2. 4 msg interfaces
i) document o/b sysnc
ii) document i/b sync
iii)common o/b sync
iiii) common i/b sync
3) 4 mappings
i) document to common
ii) common to bapi req
iii) bapi resp to common
iiii) common to req/response
4) 3 intf mappings
source intf********** target intf
i)document o/b common o/b uses mapping #1
ii)request :common i/b bapi i/b uses mapping #2
resposne:bapi i/b common i/b uses mapping #3
iii) common i/b document i/b uses mapping # 4
pls provide your inputs if my approach is rite? do i need to have 4 msg intefaces?has any made mappings where 4 mappings are involved ( without BPM)
Thanks in advanceHi,
I think you will have only 2 interfaces.
1. Sync Outbound interface (SOAP Structure)
Two message types Req and Res
2. Sync Inbound interface (RFC Structure)
Two message types Req and Res
Then two message mapping
1. SOAP Request to RFC Request
2. RFC Response to SOAP Response
and finally one Interface mapping.
Thanks,
Prakash -
Doubt Regarding Sender Rfc adapter calls
Hi Experts,
When we call RFC in R3 system by giving destination as XI system,
1) where exaxtly RFC cal executes either in R3 or XI?
In case of sender RFC syncronouse call? where exaxtly RFC cal executes either in R3 or XI?
In case of sender RFC asyncronse call? where exaxtly RFC cal executes either in R3 or XI?
2) In case of Recever RFC syncronouse call, where exactly RFC call executes, is it in XI or R3 system?
Please help me out.
thanks
siva<i>1) where exaxtly RFC cal executes either in R3 or XI? </i>
It is at R3 for bothe sync and asyn sender scenario.
<i>2) In case of Recever RFC syncronouse call, where exactly RFC call executes, is it in XI or R3 system?</i>
RFC is called from XI. The call is actually executed at R3 receiver
Regards,
Prateek -
Message expired during sync call from BPM to ECC
Hi guys,
I'm doing a sync call to ECC during my BPM processing and it takes approx 2 minutes to the function module there to process the data. And since it takes so long I'm getting following exception for the message in SXMB MONI
com.sap.aii.af.ra.ms.api.MessageExpiredException: Message xxxxxxxxxxxxxxxxxxxxx (INBOUND) expired
Any ideas why does this happen and how to solve it?
Thanks
OlianHi,
Check this links
Timeout when calling a RFC
http://www.sdn.sap.com/irj/scn/weblogs;jsessionid=(J2EE3414900)ID1430683750DB10832347498039929799End?blog=/pub/wlg/3802
Regards
Ramesh -
Dispay RFC sync payload in SXMB_MONI
Hi all,
I hava a synchronous scenario RCF-TO-SOAP (RFC sender is R3 client).
On XI I want that the parameter LOGGING_SYNC is set to 0, but at the same time I want
to see the inbound payload in SXMB_MONI. I want to see it only for this specific scenario.
How to achive this ? (maybe to do some setting or programming on R/3 before making a synch rfc call ?)
Thanx, JanosThanx for the answers, but I wonder if it is possible to set up logging just for one type of messages -
when RFC sync sender is R/3, as it is stated in the link below:
http://help.sap.com/saphelp_nw70/helpdata/EN/d6/49543b1e49bc1fe10000000a114084/content.htm
Set logging in the message header. This means that this message is logged even if logging
is deactivated explicitly in the configuration. The logging information is part of the message
header:
<SAP:Logging>1</SAP:Logging>
Thanx, Janos -
Is there a way to disable program sync calls for filesystem writes?
First of all I'm only 80% sure I know what I'm talking about with some of these terms regarding how the kernel handles file operations. If I get something wrong pointing me to documentation to help me understand would be appreciated.
So I'm setting up Arch on a USB key as sort of a rescue disk/use Linux when I'm not allowed to install install Linux on the computer (like at my inlaw's house) solution. I'm still early enough in the process that starting over is fine. I'm going to be using this for a full Arch system, that does things like run pacman updates and a very lightweight Xorg GUI setup.
Right now I'm going with btrfs, but some other file system that's at least as stable would be fine as well.
One of the things I'm wanting to have for this is to have as few rewrites to the USB key as possible, while at the same time be workable on computers that have limited RAM. I'm thinking that if I could tell the kernel to only write to the USB key when it has to, such as running out of memory, unmounting, or shutting down, then that would be one way to accomplish that. Is there any way to do that? I would prefer it to be something I can set when I mount a given drive, but if it has to be system wide that would be acceptable as well as long as I could still sometimes run a swap file properly on the computer's hard disk (if I'm in a situation where I am able to do so). The important thing is that the individual programs don't actually write to the disk when they send a sync call to the kernel, because I'm thinking most programs won't be able to be configured to work the way I want them to directly.
I understand that this means I would lose everything "written" since the last flush to the drive, but that's fine by me. Having a way to explicitly have me (as root) say "OK, now flush changes to disk" would be useful as well, but not necessary.In iTunes go to Edit > Preferences > Advanced and select the option to prevent automatic syncing of iDevices when plugged in.
-
How can i debug a rfc being called from sap
hello Gurus,
We made a RFC call from SAP r3 to sap grc nfe......we did not receive any data in sap grc .......we go to SM58 and there it gives
the message "Name or password is incorrect (repeat logon)u201D.
How can i find out where the data has stuck.
Please help.
BR
HoneyHI,
please have a look at the link below..
this may help u !!!
[Re: how can i debug a rfc being called from .net connector (NCO) v2.0?;
Best of Luck !!1
Regards
Ravi -
Hi,
I have an RFC that calls an adobe form to display the pdf output back in a bsp page...the RFC fails at the call to the adobe form (next call after after getting the form name) ...while debugging it looks like within this call it is trying to call fpcomp_job_open and failing on the call check_job_open ...
The code in my RFC looks like this....
DATA:
gs_outputparams TYPE sfpoutputparams,
fn_name TYPE rs38l_fnam,
fp_docparams TYPE sfpdocparams,
fp_formoutput TYPE fpformoutput,
frm_result TYPE sfpjoboutput,
lv_form TYPE fpname.
DATA: l_pdf_xstring TYPE xstring,
l_pdf_len TYPE i.
lv_form = 'ZHR_ASSESSMENT_FORM'.
Start formrocessing - OPEN spool job to send to printer
gs_outputparams-getpdf = 'X'.
call function 'FP_JOB_OPEN'
changing
ie_outputparams = gs_outputparams
exceptions
others = 1.
IF sy-subrc <> 0.
*// RAISE FP Open Error.
exit.
ENDIF.
Get name of the generated function module for the form
CALL FUNCTION 'FP_FUNCTION_MODULE_NAME'
EXPORTING
i_name = lv_form
IMPORTING
e_funcname = fn_name.
IF sy-subrc <> 0.
*// RAISE FP Get Form Module Name Error.
exit.
ENDIF.
Call the Adobe Form
CALL FUNCTION fn_name
EXPORTING
/1bcdwb/docparams = fp_docparams
gv_appraisal_id = gv_appraisal_id
IMPORTING
/1bcdwb/formoutput = fp_formoutput
EXCEPTIONS
usage_error = 1
system_error = 2
internal_error = 3
others = 4.
IF sy-subrc <> 0.
*// RAISE Call Form Module Error.
perform f_build_message using 'E'
'ZEXT'
012
changing return.
exit.
ENDIF.
End from processing - Close spool job
CALL FUNCTION 'FP_JOB_CLOSE'
IMPORTING
e_result = frm_result
EXCEPTIONS
usage_error = 1
system_error = 2
internal_error = 3
OTHERS = 4.
IF sy-subrc <> 0.
*// RAISE FP Close Error.
exit.
ENDIF.
form = fp_formoutput-pdf.
Thanks,
Venkateshwhat is the solution for this problem? I have the same problem. I get sy-subrc = 1 after CALL FUNCTION 'FPCOMP_JOB_OPEN'.
If I look more in detail I see that "Perform check_job_open" is creating the problem:
FORM check_job_open.
IF fpstat-is_opened = c_true. (--> exactly here is the problem. This condition is true so the program is terminated.)
PERFORM reset_status.
MESSAGE ID 'FPRUNX' TYPE 'E' NUMBER '101' RAISING usage_error.
ENDIF.
fpstat-is_opened = c_true.
fpstat-is_started = c_false.
ENDFORM.
Does somebody know why my job is open and what is the solution to have the job closed at the beginning of my processing?
Thanks in advance. -
Xml validation in File to RFC Sync Scenario with Validation fails message
Hi All,
We are using PI 7.4 (Dual Stack) the Requirement is File to RFC Sync Scenario(File <---> RFC).and need to do XML validation against XSD Schema. if any Validations fails Response message should send back to sender.RequestResponseBean standard module is using for File to RFC Sync scenario but how to send the response message to sender if any validation fails. adapter level XML validation is not helpful for this requirement. please help out me how to achieve the requirement with graphical mapping.
Thanks in advance.to validate schema you cannot solve it with graphical mapping but validating the schema in the AAE or the integration engine.
y recomend you to use the AAE validation at sender side, coz the sender system will be notified in case of schema errors.
The response will be validated at Integration Server level.
you can search in the forum, you will get many document about how to configure it.
take a look to my blog: PI 7.3 - XML Validation -
SOAP to RFC - Sync Scenario. How to find where the response is going to?
Hello All
I have a SOAP to RFC sync scenario.
In SXMB_MONI, i see that both the initial message and the response message are successfully processed.
But, the SOAP sender is not receiving the response message.
How can i trouble shoot this scenario? How can i findout what is going wrong?
Most importantly, How can i find out the web address of the SOAP sender? I do not see it anywhere.
ThanksHi Chandra,
Please check this blog.
/people/shabarish.vijayakumar/blog/2008/01/08/troubleshooting--rfc-and-soap-scenarios-updated-on-20042009
You can by pass your message through a TCPIP gateway , this will help you to see the message contnet and the SOAP header information.
TCPIPGW application is availabel in one of the SAP notes for Monitoring SOAP adapter. and 2 SAP SDN PI blogs are also there on how to use this application...
Regards
Sunil. -
How to implement Exception Handling for soap to RFC sync interface...
Dear Experts,
we have an interface like soap to Rfc sync, already develepment is done and moved to production. but we are getting some quatitity is greater than item then it is throwing an error below. i want to handle that exception in XI level.
please guide i am not found any document for this type of interface.
Please suggest what can i do for this. Please share me the screen shot for this.
Error Log:
<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
- <!-- Request Message Mapping
-->
- <SAP:Error xmlns:SAP="http://sap.com/xi/XI/Message/30" xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/" SOAP:mustUnderstand="1">
<SAP:Category>Application</SAP:Category>
<SAP:Code area="RFC_ADAPTER">APPLICATION_ERROR</SAP:Code>
<SAP:P1 />
<SAP:P2 />
<SAP:P3 />
<SAP:P4 />
<SAP:AdditionalText />
<SAP:ApplicationFaultMessage namespace="urn:sap-com:document:sap:rfc:functions">Z_DEPOT_DISPATCH.Exception</SAP:ApplicationFaultMessage>
<SAP:Stack />
<SAP:Retry>M</SAP:Retry>
</SAP:Error>
<rfc:Z_DEPOT_DISPATCH.Exception xmlns:rfc="urn:sap-com:document:sap:rfc:functions"><Name>RFC_ERROR_SYSTEM_FAILURE</Name><Text>Delivery quantity is greater than target quantity 10.000 MT</Text><Message><ID>VL</ID><Number>363</Number></Message><Attributes><V1>10.000</V1><V2>MT</V2></Attributes></rfc:Z_DEPOT_DISPATCH.Exception>
Regards,
Kiran PolaniDear All,
This is clearly soap to rfc interface and we are using currently PI 7.0. This is a validation of BAPI, BAPI is not accepting the field of "Quantity is some value". The quatity is greater than the amount BAPI is throwing an error like "APPLICATION_ERROR". Is it possbile to validate in XI Level.
Soap --> XI--> BAPI(Request)
BAPI--> XI-->Soap(Response)( in this step what ever message return by bapi those error message not getting 3 rd party application).
here by catching that error and i should throw to 3rd party application.
is it possible to handle this or not.?
If it is possible in Fault Mapping/Fault message type please give me the steps or document for me.
I am new for fault mapping?
Please help me on this.
Regards,
Kiran Polani -
JMS Adapter - RFC (Sync ) RFC Repsonse- JMS Adapter
Hello,
We have 40K + messages coming in from a 3rd party system through JMS Adapter. We need to process the messages in R/3 using RFC (sync) adapter and send the response back to the 3rd party system with the messageID (CorrelationID) using a JMS adapter.
Is there any procedure to do the same without BPM?
Thanks,
PeterPeter,
Another easy way to decouple your process could be to send RFC data to R/3 asynchrounously (which means treat your function module as an asynch message interface, which is possible), and at the end of the inbound function module code invoke a "response function module" pointing at XI as RFC destination. This second flow will, of course, map to and write to JMS.
That should be little change to your code, right?
I've done the same story with ABAP proxies and it work perfectly.
Let me know.
Cheers,
Alex
Maybe you are looking for
-
How expensive are this calls and is there maybe a better way I would like to print a second after the epoch in a human redable way like with date.toString(); int[] secondsAfterEpoch = ....; for (int i = o ; i < secondsAfterEpoch ; i++) { out.println(
-
My form launches the email client, but does put anything in the message.
I've made an application form. however when I click on "submit" my Outlook opens but it's completely empty except for the "to" field is populated. I don't know what to change in order for the form to put it's data into an email message. code: <h
-
I was charged for some songs that I purchased but I had an iTunes card and they deducted that too how do I get my money back from itunes
-
Hp mini 1000 bios password reset
Hello, i got a hp mini 1000 from a freind but it is wont open it always ask for password at boot and after three trial it said Password check failed Fatal error. . , system halted 2MC84545YP I hope someone can help me . regards This question was solv
-
Whenever some one sends me a picture in a message, and I try to open the pic it will just keep trying to load the picture, but not get anywhere. I have an iPhone 5 with unlimited text. My wife has the exact same phone and text plan, but does not have