Call transaction in abap server proxy
Hallo
We have a problem with one of our server proxys.
Scenario: SAP - backend system
The functionality implemented is the creation of a service notification
(IW51). The creation is made using batch input/call transaction and is
capsuled in an function module. In case of error by creation, the
message table will be read and a application error will be raise.
In the implementation of the proxy class the function module will be called
and the exceptions will be read and put in the response.
In case of success by the creation of the notification, everything is working ok.
In case of error in the call transaction, we will receive a "server
error" in XI, even if the error is catched and treated. In the trace we can see the error message from the call transaction, even if we do not send these messages in our response anymore.
<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
- <!-- Call Adapter
-->
- <SAP:Error xmlns:SAP="http://sap.com/xi/XI/Message/30" xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/" SOAP:mustUnderstand="1">
<SAP:Category>XIServer</SAP:Category>
<SAP:Code area="INTERNAL">HTTP_RESP_STATUS_CODE_NOT_OK</SAP:Code>
<SAP:P1>500</SAP:P1>
<SAP:P2>Internal Server Error</SAP:P2>
<SAP:P3 />
<SAP:P4 />
<SAP:AdditionalText><html> <body> <H1> 500 SAP Internal Server Error </H1> <B> Error message: </B> Counter reading smaller than in previous document 10000009340 ( <B> type of termination: </B> ERROR_MESSAGE_STATE ) <BR /> </body> </html></SAP:AdditionalText>
<SAP:ApplicationFaultMessage namespace="" />
<SAP:Stack>HTTP response contains status code 500 with the description Internal Server Error XML element Envelope missing in SOAP message header (SAP XI Extension)</SAP:Stack>
<SAP:Retry>N</SAP:Retry>
</SAP:Error>
Ex: if by call transaction we have at the end 2 messages ( first W and second E) , we will see in the tracing in XI the second message ( so the error one ).
In the backend system (SAP), under sxmb_moni the message in question has the status : "green flag".
We used the same way of implemenation for all our interfaces. The only difference is that we are now using a batch and not a bapi or SAP function module for objects creation.
Has someone any idea? . Any suggestion will be really helpful.
Thanks.
Anca
Hi Udo
My response has the following structure:
notification nr
+ 3 fields: message type (E,W,I,S,A)
message nr
message text
In case of error I should receive this filled structure and not a internal service error.
When I am testing the class in SAP is working very good.
Proxy Class implementation:
CALL FUNCTION 'Z_B2_CREATENOTIFICATION1'
EXPORTING
P_SERNR = i_sernr
P_MATNR = i_matnr
P_CDGRP = i_cdgrp
P_CODE = i_code
P_KUNAG = i_kunag
P_DATE = i_data
P_COUNT = i_counter
P_NTYPE = 'Z7'
P_VKORG = '2730'
P_VTWEG = '20'
P_SPART = '10'
P_PARVW = 'AG'
P_NAME =
P_EMAIL = i_email
IMPORTING
E_QMNUM = e_qmnum
e_return = e_error
TABLES
T_SPARES = t_spares
EXCEPTIONS
EQUI_NOT_FOUND = 1
ERROR_EMAIL = 2
MEAS_POINT = 3
ERROR_NOTIF = 4
OTHERS = 5
output-MT_CREATE_NOTIFICATION1RESPON-returncode = sy-subrc.
case SY-SUBRC.
when 1.
output-MT_CREATE_NOTIFICATION1RESPON-rctxt = 'equi'.
when 2.
output-MT_CREATE_NOTIFICATION1RESPON-rctxt = 'error email'.
when 3.
output-MT_CREATE_NOTIFICATION1RESPON-rctxt = 'meas point'.
when 4.
output-MT_CREATE_NOTIFICATION1RESPON-rctxt = 'notification'.
when 5.
data mess type ZB2_EXCHANGE_FAULT_DATA22.
mess-fault_text = 'others'.
raise exception type ZB2_CX_FM_CREATE_NOTIFICATION1
exporting standard = mess.
endcase.
output-MT_CREATE_NOTIFICATION1RESPON-qmnum = e_qmnum.
data out_return type ZB2_DT_RETURN2.
IF e_error-type is not initial.
out_return-type = e_error-type.
out_return-number = e_error-number.
out_return-message = e_error-message.
append out_return to output-MT_CREATE_NOTIFICATION1RESPON-DT_RETURNS.
endif.
Regards,
Anca
Similar Messages
-
Call transaction in ABAP Inbound proxy
Hi All,
I am processing transaction KKPAN in inbound proxy. As per my knowledge, there is no BAPI or other way of processing this transaction. I have recorded a BDC, and I am calling this BDC using Call Transaction in my Inbound proxy.
The problem is, control never returns back to the proxy after I call this BDC using Call Transaction. However, interestingly, If there is an error in BDC, the control comes back to the proxy. Any ideas, why it does not successfully update data using BDC in inbound proxy?
Your inputs are appreciated.
Thanks,
NavdeepThanks for you response Akshay !
However, It didn't solve my problem. In my case, the inbound proxy class is being called successfully. The problem comes, when I use Call Transaction in the class. The call transaction works and returns error message, if there is some error in the processing; however, for when there is no error in the BDC data, the control never comes back after call transaction.
However, if I use SPROXY to test this interface, by copying the payload of the message and using the same user (As in Comm Channel), I am able to call Call Transaction without any problem. The data gets created successfully.
Now this is getting really tricky.
Still looking for ideas
Regards,
Navdeep
Message was edited by:
Navdeep Singla -
Error when Calling Transaction in ABAP Proxy
Hi All,
I'm trying to call a transaction in synchronous ABAP Proxy, but there's a CNTL_ERROR in the details of SXMB_MONI.
I've checked some threads related to this problem, but they're not solved yet.
Please advise, can I use "call transaction" in synchronous ABAP Proxy ? Is there any additional setting / code to prevent the error ?
Thanks in advance,
Andy SHi Stefan,
I'm trying to assign marketing attributes in our CRM Business Partner Transaction, which is triggered by messages sent from some 3rd party application.
Recently, I find out that this transaction (TCode BP) raise the same error (CNTL_ERROR) if run background from SM35. So the problem is not about calling transaction in ABAP Proxy, but due to the TCode BP itself.......
My ABAPER friend is trying to find the BAPI to replace this call transaction .........
Thanks a lot for your response........
Regards,
Andy S -
Create a abap server proxy and consume the service with the pi WS Navigator
hi all:
i create a abap server proxy ,i use the t_code "sproxy" to generate the proxy, and then write the abap code to implemente the method; then i use the T-code (soamanager) to define the endpoint, but when i click the " Open WSDL document for selected binding" to get the WSDL file ; some error occur,the error is follow:
==========================================================================
Service cannot be reached
What has happened?
URL http://foxxi:50000/sap/bc/srt/wsdl/bndg_000C2938EF591DEE8A9A8D3DD5CCB6AD/wsdl11/allinone/ws_policy/document call was terminated because the corresponding service is not available.
Note
The termination occurred in system XIF with error code 403 and for the reason Forbidden.
The selected virtual host was 0 .
What can I do?
Please select a valid URL.
If it is a valid URL, check whether service /sap/bc/srt/wsdl/bndg_000C2938EF591DEE8A9A8D3DD5CCB6AD/wsdl11/allinone/ws_policy/document is active in transaction SICF.
If you do not yet have a user ID, contact your system administrator.
ErrorCode:ICF-NF-http-c:000-u:SAPSYS-l:E-i:FOXXI_XIF_00-v:0-s:403-r:Forbidden
HTTP 403 - Forbidden
Your SAP Internet Communication Framework Team
==========================================================================
when i go to the ws navigator to consume the service i can not find the service which i define, but some system content display , what's the problemhad a chance to look at this?
/people/jitender.chauhan/blog/2009/04/20/service-enabling-in-abap -
ABAP server proxy as web service provider ??
Hi friends,
I am wondering that if is possible to expose an ABAP server proxy as a web service on NetWeaver ABAP. I tried that, but failed to call it.
I generated a ABAP server proxy by using the PI inbound interface. I can call the ABAP server proxy by PI. From SOAMANAGER of the beckend system, i saw that this just generated ABAP server proxy is a service. Then i curious if this generated ABAP server proxy can be exposed as the web service like other RFC function modules on the same beckend system. So i generated a ABAP client proxy by using the binding WSDL of the ABAP server proxy. But the testing of the generated ABAP client proxy failed.
So my question is if it is possible to expose an ABAP server proxy as a web service on NetWeaver ABAP?
The beckend system is SAP ERP 6.0 EHP4. The PI is 7.11.
Thanks!In other words, is it possible to consume a server proxy by client proxy? If yes, how to consume it?
Edited by: Chris Xu on Jan 16, 2011 8:59 PM -
Abap Server Proxy acknowledgment
Hi All,
Typicall scenerio FILE->PI->ERP(abap server proxy).
is there any possibility(excluding BPM) to request acknowledgment from erp to be sent to pi and fill second column in sxi_monitor. similar situation to aleaud in idoc processing..
BR
Maciejis possible
take a loko to this.
http://help.sap.com/saphelp_nw04/helpdata/en/f4/8620c6b58c422c960c53f3ed71b432/frameset.htm
Acknowledgment Types
SYSTEM_OK
Positive system acknowledgment.
The receiver was reached successfully. For server proxies, this means that the implementing class for the server proxy was found and that the method for inbound processing could be called. -
ABAP server proxy- parser-item missing error
Dear all,
I am working on File to proxy scenario (ABAP server proxy).
When I executing my scenario, I am getting following error at call adapter pipline step .
< SAP:Category>XIProtocol</SAP:Category>
<SAP:Code area="PARSER">ITEM_MISSING</SAP:Code>
<SAP:P1>Envelope</SAP:P1>
<SAP:Stack>XML element Envelope missing in SOAP message header (SAP XI Extension)</SAP:Stack>
I checked my message payload after message mapping it containing the perfect SOAP Envelop.
What may be the reason for the error?
Regards,
navneet.navneet
is your path determined ok.
/sap/xi/engine?type=entry
for SAP systems based on SAP BASIS 6.40 (XI 3.0 message protocol).
/sap/xi/engine?type=receiver
for SAP systems based on SAP BASIS 6.20 (XI 2.0 message protocol).
http://help.sap.com/saphelp_nw04/helpdata/EN/85/78af1bf407434796aaf8dbd6d4e7b7/frameset.htm
Sorry forget my message, this is not applicable for you
Greets
Edited by: Patrick Pot on Feb 25, 2009 10:42 AM -
File to ABAP Server Proxy Scenario
Hi 2 all,
I am running File to Server(ABAP) Proxy scenario...
I have checked the ABAP Server Proxy at application server only and it is working fine....But when i am running the whole scenario my server proxy is not getting executed..( i.e my file is being picked up but proxy is not getting called ..:(( )
Can i expect some valuable inputs regarding this issue..?
Regards,to debug the problem....
first check SXMB_MONI of R3 system... where proxy has been created.
1 .check whether your proxy has been called ... it will be evident you get any message in moni for you interface or namespace..
2. check you proxy message has not got stucked in queue... sometimes message get stucked in queue and hence proxy are not called.. release the messaeg using smq2.
ELSE
1 .go to SXMB_MONI...of XI..
2. select 'Call Adapter' in right hand of monitor.
3. check the 'trace' under Call Adapter.
4. if you go at end of trace or somewhat near to end.. there should trace like...this ...
Trace level="1" type="T">Receiver party normalized =</Trace>
<Trace level="1" type="T">Receiver party external =</Trace>
- <Trace level="1" type="B" name="CL_XMS_PLSRV_CALL_XMB-CALL_XMS_HTTP">
<Trace level="2" type="T">Addressing mode: destination</Trace>
<Trace level="3" type="T">Destination = D67CLNT103_HTTP</Trace>
<Trace level="3" type="T">Attributes of destination: D67CLNT103_HTTP</Trace>
<Trace level="3" type="T">Type = H</Trace>
<Trace level="3" type="T">Pipeline = ENTRY</Trace>
<Trace level="3" type="T">Action = EXECUTE</Trace>
<Trace level="3" type="T">Host = XXXXXXX</Trace>
<Trace level="3" type="T">Port = XXXX7</Trace>
<Trace level="3" type="T">Client = 103</Trace>
<Trace level="3" type="T">User = XIAPPLUSER</Trace>
<Trace level="3" type="T">Language = E</Trace>
<Trace level="1" type="T">----
</Trace>
<Trace level="1" type="T">SSL not active</Trace>
<Trace level="1" type="T">----
</Trace>
<Trace level="3" type="T">Creating HTTP-client</Trace>
<Trace level="3" type="T">HTTP-client: creation finished</Trace>
<Trace level="3" type="T">Serializing message object...</Trace>
<Trace level="3" type="T">HTTP-client: sending http-request...</Trace>
<Trace level="3" type="T">HTTP-client: request sent</Trace>
<Trace level="3" type="T">HTTP-client: Receiving http-response...</Trace>
<Trace level="3" type="T">HTTP-client: response received</Trace>
<Trace level="3" type="T">HTTP-client: checking status code...</Trace>
<Trace level="3" type="T">HTTP-client: status code = 200</Trace>
<Trace level="3" type="T">Deserializing message object...</Trace>
<Trace level="3" type="T">HTTP-client: closing...</Trace>
</Trace>
check whether connection establishment between XI and R3 is successful or not...
if you are getting same message as above ,,that means ur RFC is working fine...
problem is on r3 side.. for this go to r3 and check moni... -
Superclass for ABAP server proxy?
Hi Experts,
I generated an ABAP server proxy by using a synchronous inbound interface of XI.
Can someone tell me which superclass does the server proxy use? I am trying to send an attachment back to XI in the proxy response but am not able to write the code of it.
Please help.
Thanks,
ShobhitHi Prateek,
This blog is for sending attachment in client proxy. (Sending data from ECC to XI using a trigger in ECC)
But my requirement is to send the attachment in server proxy (XI calling the ECC proxy program which returns the attachment back to XI synchronously)
For this purpose Im not able to use the code in https://weblogs.sdn.sap.com/pub/wlg/3509. [original link is broken] [original link is broken] [original link is broken]
The server prxoy does not recognize the statement
attachment_protocol ?= prxy->get_protocol(
if_wsprotocol=>attachments ).
as the superclass of this method is not accessable by this proxy interface.
HELP!!
Regards,
Shobhit -
HOW TO RUN ABAP SERVER PROXY IN BACKGROUND?
Hi All,
I have a ABAP Server Proxy running in WAS 6.20. This Server Proxy runs as a foreground Process when the scenario is executed. if we run a scenario with huge load or run scenarios with continuous load, due to the fact that the server proxy runs as a foreground process, the system slows down and has some performance issues. How to handle this issue.Is there a way to run the Server Proxy as a background Job. Please do help me out.
Regards,
Sundararamaprasad.hi,
here's an idea: encapsulate your proxy call inside an object which can be ran in background.... like an IDoc !
Steps:
create a zidoc in ECC and use it from PI to ECC to send data (instead of your direct abap proxy call).
Afer that, in z_function_module which is used to intregate your zidoc, call your abap proxy.
in WE20 (partner profile), the process mode of your idoc should be of course "Triggered by background program", and then use a job on program RBDAPP01 (with a variant limited to your zidoc) to process your idocs.
Note:
1. the only interest to do that compare to create a real IDoc interface is just (in my mind) to call a common proxy or to want to reuse an existing proxy without too more effort.
2. of course your current proxy call should be asynchronous.
I never tested it, so it's without warranty !
Regards.
Mickael -
HOW TO EXECUTE ABAP SERVER PROXY?
Hi,
I am working on a scenario in which message is passed from Integration Server to ABAP server proxy.
In case of client proxy we execute EXECUTE_SYNCHRONOUS methjod of proxy,but I am bit confused in case of server proxies.
How do we execute server proxy method?Hi Similar to Client proxy, you will have the method EXECUTE_SYNCHRONOUS or EXECUTE_ASYNCHRONOUS for your server proxy. If your WebAS is based on 6.4 or above you can test the server proxy with a sample pay load very easily. In T-code sproxy, you will see a menu called proxy, Click on that and click test proxy, check the XML payload and you can enter the payload in the next screen and check your proxy..
Regards,
Jai Shankar. -
Internal table in ABAP Server Proxy
Hi Experts,
I have developed a JDBC to ABAP Proxy scenario.
I have a problem. In my ABAP server proxy I have to import the values into an internal table and pass them to a BAPI for GR creation.
I get an error like. OCCURS 0 is not allowed in OO concept.
Can anyone give me examples on declaring internal table in an ABAP Proxy(OO Concept).
Thanks
AKHi
Check this out.
http://help.sap.com/saphelp_nw70/helpdata/EN/fc/eb3660358411d1829f0000e829fbfe/frameset.htm
Cheers -
ABAP Server Proxy OR RFC - for attaching a file
Hello ABAP gurus,
Just to give a brief background, systems involved are ERP and PI
Certain Files (3 files to be exact) are generated in the ERP directory/file system
I need to transfer these files to PI "without" using the readily available FTP/NFS adapters (this is a limitation - no use of direct FTP is allowed)
Making the directory as a "shared" directory between ERP and PI is also not an option.
With the scenario above, I though of using an RFC or an ABAP Server Proxy to attach the said files to send them to PI
Which is the better way to do it?
I've seen a documentation for the ABAP Server Proxy that makes it possible to attach files to the proxy message, but for RFC I don't know if this is possible?
Your expert advise is highly appreciatedhI,
Use class CL_PROXY_CLIENT in the program and method IF_PROXY_CLIENT~EXECUTE.
You can refer documentation of this class as well as if you will search on any search portal using name of this class, you will get the briefe idea with the refernce procedure too.
Unfortunately I am unable to post you few links but try search on it, hopefully you will get it.
try below link.
<link to blocked site removed by moderator>
Edited by: Thomas Zloch on Oct 7, 2011 10:37 AM -
ABAP Server Proxy development for creation of IDOC
Hi all,
I am working on JDBC to ABAP Server Proxy where i need to populate fields and then i need to mapp to the standard IDOC ie, SHIPMENT_CREATEFROMDATA01 which will create shipment idoc this is my requirement.Can anyone provide me the proxy development part for creation of IDOC.
Regards,
BhojHi,
Create server proxy at the receiver end and deploy it using the following links:
ABAP Server proxies
/people/siva.maranani/blog/2005/04/03/abap-server-proxies
Debugging of Inbound ABAP proxies
/people/stefan.grube/blog/2006/07/28/xi-debug-your-inbound-abap-proxy-implementation
File to R/3 via ABAP Proxy
/people/prateek.shah/blog/2005/06/14/file-to-r3-via-abap-proxy
How to push data from BI to XI using proxy
https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/e698aa90-0201-0010-7982-b498e02af76b
How to push data into BW from XI using proxy
https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/18dfe590-0201-0010-6b8b-d21dfa9929c9
http://help.sap.com/saphelp_nw04s/helpdata/en/2d/b9766df88f4a24967dae38cb672fe1/frameset.htm
http://help.sap.com/saphelp_nw04/helpdata/en/11/e2bc3d9ecc6b3be10000000a114084/frameset.htm
Server proxy part1 and part2:
/people/sap.user72/blog/2005/12/08/integration-builders-through-proxy-server-part--1
/people/sap.user72/blog/2005/12/13/integration-builders-through-proxy-server-part--2
Regards,
Vinod. -
ABAP server proxy help required
Hello,
I want to make two simple ABAP server proxy scenarios
1. File to ABAP server proxy (async scenario)
2. File to ABAP server proxy (sync scenario)
Pls send me the blogs/docs for the above scenarios.
RegardsHenry,
Please go through the below links.
<b>File to R/3 via ABAP Proxy with good example</b>
/people/prateek.shah/blog/2005/06/14/file-to-r3-via-abap-proxy
/people/siva.maranani/blog/2005/04/03/abap-server-proxies
<b>Synchronous Proxies:</b>
<b>Outbound Synchronous Proxy</b>
https://www.sdn.sap.com/irj/sdn/wiki?path=/display/profile/abap%2bproxy%2boutbound%2bprogram%2b-%2bpurchase%2border%2bsend
<b>Inbound Synchronous Proxy</b>
https://www.sdn.sap.com/irj/sdn/wiki?path=/display/profile/abap%2bproxy%2binbound%2bprogram%2b-%2bsales%2border%2bcreation
Also go through this, if you have problems in your proxy connection.
<b>How to Activate Proxy.</b>
/people/vijaya.kumari2/blog/2006/01/26/how-do-you-activate-abap-proxies
Regards,
Sarvesh
Maybe you are looking for
-
VIRUS in my Mac BOOK .. When I bought my mac book 6 months ago, everything was perfect.. but then when I open some webpage..it comes a lot of ads or pages unsafe .. that before it didn't appear.. I don't know if have to download a anti virus program.
-
Is there any way to stop the top from scrolling left in the iTunes store?
The top part of the iTunes store...where it lists new stuff keeps swiping left. It's driving me crazy! How can I stop it?
-
i have an ipad mini my little brother lock the ipad and i dont remember de apple id how can i recover it i´m so desesperate
-
CR Report Reload Duration Tracking
Hi, I am reloading crystal reports thru BI Launchpad. Report is scheduled to deliver PDF output to a file location and option selected NOT to save instance in the History. This is a recurring report. After each successful reload PDF gets saved to des
-
Hello I want to use Corel Draw, and was thinking of installing the program onto an iMac, into a Windows partition created with Bootcamp. I was thinking of using the iMac only for windows software, with my existing iMac for Mac programs. So, what I wa