Limitation to ABAP Proxy
Hi,
I have a scenario where ABAP program triggers a ABAP proxy and passes internal table as an input. I wanted to know what's the maximum limit a proxy can accept. I have around 400K records to sent to XI using ABAP proxy and XI writes it into a file after transformation.
Your suggestion and help would be appreciated.
Thanks in advance,
Shridhar.
Bhavesh,
Thanks for your reply. Yes, I am sending all 400K records in one shot in one internal table of ABAP Proxy. Is there any problem if I send them. If yes, how to do them in batches and at the same time write them in one file. I cannot split them into two or more files each one with 100K records or so..
Regards,
P.Shridhar.
Similar Messages
-
Hi
Could you plz tell me when should we select ABAP Proxy and when should java proxy ?? Is it like that in SAP systems we use ABAP proxy and non-sap systems we use JAVA proxy ??
Thanks
KumarTo connect to SAP system with WAS >= 6.4, ABAP proxy is used.
<i>
Is it like that in SAP systems we use ABAP proxy and non-sap systems we use JAVA proxy ?? </i>
Not always. As i mentioned the limitation of ABAP proxy.
Also, Java Proxies cannot be used for any non-SAP application. it is generally used for communication with Java Application
Regards,
Prateek -
ok. Guys and gals I have limited ABAP expierence and have a simple question around loops. I have an ABAP proxy setup that receives an XML file and stores the contents in the INPUT method. The two structures under Item I am working with are I_HEADER and I_ITEM.
I can access the values in I_HEADER with something like the following:
CLEAR w_header.
w_header-guid = v_header_guid.
w_header-description = input-I_HEADER-DESCRIPTION.
w_header-process_type = input-I_HEADER-PROCESS_TYPE.
w_header-posting_date = sy-datum.
now I currently have been testing the proxy with the following for my i_item structure. This is hard coded but I would like to import from the INPUT structure.
CLEAR w_item.
w_item-guid = v_item_guid.
w_item-parent = v_header_guid.
w_item-product = '00000000000000000000000000000000'.
w_item-description = 'Test Item Description'.
APPEND w_item TO i_item.
How would I setup my loop to read the I_ITEM-ITEM table and populate with the imported values instead of hard coded. For instance using this example I would need the values from I_ITEM-ITEM-DESCRIPTION and I_ITEM-ITEM-PRODUCT?
Thank You.Hi Joe,
You have to use to loops one for header and another for Item details in that header something like this
loop at it_header into wa_header
loop at it_item into wa_tem
endloop.
endloop. -
Bapi call in abap proxy reaching dialog timeout in async scenario
Hi all,
We have an XI interface to create sales orders. Legacy app sends a soap message async to XI with a group of orders. XI sends this group of orders to an Abap proxy async on ECC side. Into this Abap proxy we have a loop to process each order received in the group with BAPI_SALESORDER_CREATEFROMDAT2. Ending the loop, abap proxy start another async process to send the response to XI with an outbound abap proxy, and the response is redirected by XI to Legacy app.
The problem is, this group of orders can have two or two thousand orders... so, the async process guarantee that no timeout limit will be reached. This is working for the whole process. But when this BAPI is creating an order, the time out of BAPIs execution seems to be the same as the timeout of dialog processes (now set to 10 minutes). This is our problem. Some orders spend more than 10 minutes to process (orders with five hundreds items, for example)... when this occurs, BAPI throws a time out reached error and the async process stops on the inbound queue with status sysfail.
We are now trying to understand why this timeout is been triggered by the BAPI. As it is running into an Async process, it should execute without any kind of timeout limits...
If anybody has any idea, please, help us.
Thank you.
regards.
robertiMay be I was not so clear... the total spent time in the process can be many many hours, days, etc... no timeout is reached. I can post 10.000 orders, no timeout is reached. The problem is that if the processing of only one order with BAPI_SALESORDER_CREATEFROMDAT2 takes longer than 10 minutes, then the timeout is reached. This is the strange part. The processing of the bapi seems to get the same timeout of dialog processes, we already tested increasing the dialog process timeout and the timeout of bapi execution was the same...
We already monitor on SE66 to see if it opens a dialog process to execute the bapi call function, but it does not.
If anyone has any tip, please, provide us.
Thanks!
roberti -
Hi,
We have a scenario where we:
1. Modell an interface in SAP PI
This interface contains a complex type from a different namespace
2. Use it to create an ABAP proxy in backend system
3. Configure it with SOAManager
4. Call the ABAP proxy ws directly from a third-party system (biztalk)
We're currently testing calling the ABAP proxy from soapUI, but get a strange exception thrown by the SOAP framework in ABAP backend.
The test in soapUI is setup by importing the WSDL acquired from SOAMANAGER.
The error message we in the SOAP response is:
CX_SY_REF_IS_INITIAL:Exception CX_SOAP_ROOT occurred
(program: CL_SOAP_RUNTIME_ROOT==========CP, include: CL_SOAP_RUNTIME_ROOT==========CM004, line: 130)..
An exception with the type CX_SY_REF_IS_INITIAL occurred, but was neither handled locally,
nor declared in a RAISING clause.Dereferencing of the NULL reference
It is a very low level error from the CL_SOAP_RUNTIME_ROOT program and not a descriptive error message at all.
We've checked the user and the authorizations it has, we've redone the SOAManager config but the problem persists.
We find no dumps in the ABAP proxy since the request never reaches it.
For a limited time I'll make WSDL and SOAP response available
WSDL (some values anonymized) available at http://dl.dropbox.com/u/4379928/SOAP/project.wsdl
Complete SOAP response is available at http://dl.dropbox.com/u/4379928/SOAP/soap_data.xml
Any ideas on where to look?Hi,
We've now managed to implement a workaround.
The workaround was to create the endpoint in PI as well.
So that the traffic goes from third-party solution->PI-> WS-enabled ABAP Proxy
When we did this initially, we got some errors related to the asynch method of this call, but this was resolved by changing the channel from "best effort" to "Guaranteed delivery".
Still we don't know what the root cause of the initial problem was, but we assume it is related to the asynch nature of the service (though we have other asynch proxies that work without problems).
Regards
Dagfinn -
Error while activating ABAP proxy object
Hello,
I can see all the interfaces of PI7.0 in my ECC6.0 system.
I am able to create abap proxy object of a interface.
But when I try to activate that I am getting error as
"RFC system error for destination GTADIR_SERVER".
Pl can you suggest. appreciate quick help in this.
thanks in advance,
SharadaHi,
For more details take a look at note: [1063482 - Creating Dictionary objects - RFC error GTADIR_SERVER|https://service.sap.com/sap/support/notes/1063482]
It is written that: Message SGSUB 104 is not an error message, but is merely irrelevant information for customers. You can continue to create objects nevertheless.
To get rid of this annoying error you have to implement the corresponding support package.
Regards,
Jakub -
Activate abap proxy withou java stack on ECC side
Hi gurus,
Can we activate abap proxy on ECC side if the ECC don't hava java stack? As you know , we need to create two jco RFC provider in Visual Administrator, but without installing java stack, we can't do that. Any ideas? Thanks in advance.Thanks all.
Solved by using program id of XI system in the RFC of application system.
But we still face the issue in SPROXY. It gave the error "No connection to Integration Builder ".
Then I runned connection test, and found SPROX_CHECK_IFR_ADDRESS and SPROX_CHECK_HTTP_COMMUNICATION
are right, but SPROX_CHECK_IFR_RESPONSE and SPROX_CHECK_IFR_CONNECTION are giving the error "Integration Builder data not understood". Any ideas?
Edited by: xinjiang li on Sep 10, 2010 6:40 PM -
SAP PI 7.4 SOAP - ABAP Proxy Synchronous Webservice
Hi Everyone,
I am developing the following scenario:
3rd party makes a SOAP call to SAP (via PI) to determine whether a vendor exists or not in the SAP system. The link for the call is provided by us from the Integrated Configuration.
The request comes in, calls an ABAP Proxy to check if a vendor exists and sends a response back to the SOAP call with a 'Y' or an 'N'.
I've read a lot about various scenarios but I'm having trouble connecting the dots as I'm fairly new to PI. I'd appreciate any help.
I've made the following set-up based on assuming I need separate Service Interfaces for the SOAP Request & Proxy Response
ESR
1. Message Types
SOAP (MT_SOAP_REQ & MT_SOAP_RESP) - PROXY (MT_PRXY_REQ & MT_PRXY_REQ)
2. Message Mappings
MM_REQUEST which maps MT_SOAP_REQ to MT_PRXY_REQ)
MM_RESPONSE which maps MT_PRXY_RESP to MT_SOAP_RESP)
3. Service Interfaces (Synchronous)
(SOAP Request)
SI_IN (Inbound Interface) with Request = MT_SOAP_REQ and Response = MT_SOAP_RESP
(Proxy Response)
SI_OUT (Outbound Interface) with Request = MT_PRXY_REQ and Response = MT_PRXY_RESP
4. Operation Mapping
OM_LOOKUP which maps SI_IN to SI_OUT with Request (MT_SOAP_REQ to MT_PRXY_REQ)
and Response (MT_SOAP_RESP to MT_PRXY_RESP)
I create the ABAP Proxies for each Service Interface. SI_IN contains the required coded method to check if there is a vendor.
I create the webservice and binding for SI_IN in SOAMANAGER
At this point I'm somewhat unsure - what do I need to do for SI_OUT ? Do I need to create a logical port ? how is SI_OUT associated to SI_IN (apart from the Operation) to get the response.
ID
In the Integration Directory I've created a SOAP_SENDER communication channel for System A and SOAP_RECEIVER channel for SAP. For the SOAP Receiver I need to specify a URL - what should this be ? Is it meant to point to the web service for SI_IN in SICF or just to the generic http://host:8000/sap/xi/engine?type=entry
Do I need to use the HTTP_AAE adapter for the receiver instead of SOAP ?
I created an Integrated Configuration for the SI_IN Service Interface with comm channel SOAP_SENDER from System A and SOAP_RECEIVER for SAP backend. I then got the WSDL for this to provide to the 3rd Party to test (via SOAP UI) . Again my concern is how is the SI_IN linked to the SI_OUT to achieve the response ?
I appreciate you taking the time to go through this . Any help is greatly appreciated.
Thanks very much
GaryI create the webservice and binding for SI_IN in SOAMANAGER
At this point I'm somewhat unsure - what do I need to do for SI_OUT ? Do I need to create a logical port ? how is SI_OUT associated to SI_IN (apart from the Operation) to get the response.
>>>>No need to do anything in SOAMANAGER
Do I need to use the HTTP_AAE adapter for the receiver instead of SOAP ?
>>> No. Soap adapter is fine. Configure your receiver channel as explianed in the below blog (section 4.3)
http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/70066f78-7794-2c10-2e8c-cb967cef407b?overridelayout=t…
Again my concern is how is the SI_IN linked to the SI_OUT to achieve the response ?
>>>>Your receiver determination and interface determination takes care of this.(receiver interface & outbound processing tabs in ICo) -
How to change default PIRWBUSER password for ABAP Proxy monitoring ?
Hi,
Please advise how to change setting for PIRWBUSER in PI so no need to use master password PI in ECC server.
In the Message monitoring you can have option to monitoring ABAP Proxy transaction in the other SAP Instance. But of course you need to have PIRWBUSER in that target SAP instance.
How to change this configuration for PIRWBUSER for other SAP Instance. because other SAP instance it migh have different password for PIRWBUSER ?
Regards
FernandHello there.
Please check the note below according to your system:
#999962 - PI 7.10: Change passwords of PI service users
#936093 - XI 7.0: Changing the passwords of XI service users
#721548 - XI 3.0: Changing the passwords of the XI service users
Regards,
Caio Cagnani -
Problem with Configuration in Production ( ABAP Proxy - XI - FILE)
Hi All,
I have a ABAP Proxy -> XI -> FILE scenario wich is working perfectly in DEV and QAS environment.
When the person responsible for transporting tried to transport the objects in QAS to PRD, the following error happened:
Direction of communication channel |BS_MA_FileServer_PRD | CC_File_PedidosServ_MA_FileServer_IA is incorrect.
Correct the direction or choose another communication channel
BS_MA_FileServer_PRD - Business System (FILE)
CC_File_PedidosServ_MA_FileServer_IA - My FILE Communication Channel
This was what the Basis person sent to me. I don't have access to know exactly what happened. And I really don't know what could be wrong or if maybe a component was created wrongly in Production.
Hope you can help.
Points will be given.
tks.. DanielaYou have mentioned FILE is on the receiving side and ABAP proxy is on sender side.
But the error pasted by you clearly shows syntax of a Sender Agreement .
For receiver agreement it should be |<Sender Service>| |BS_MA_FileServer_PRD | CC_File_PedidosServ_MA_FileServer_IA
Bipin -
Can ABAP proxy to consume WSDL file be run as background job for every10min
Hi all,
I have a requirement where I need to build an interface which gatheru2019s the purchase order details and send to external third party software in their required format (as an XML file).
So I should be the first point of contact and should trigger the interface each time a purchase order is generated.
So I am thinking that I should develop a background job for every 10 minutes which will look for new purchase orders and gathers the information of the purchase orders and send them to external third party software in their required format.
I have gone through all the SAP forums and e-Learning but still I have confusion in regards to how is it possible technically? Can some one guide me with some information on the same.
I have a little bit of confusion and want to know few things.
1) Should I create a web service or should I consume a web service?
2) If I need to consume a web service, then can I write an ABAP proxy to be run in background fro evry 10 minutes? I mean can we run ABAP proxy as a batch job in the background?
3) Is there a difference between consuming an XML file and WSDL File?
Any Help will be highly appreciated.
Regards,
Jessica.There are two options (as I know) to generate XML file.
1. Use XML TRANSFORMATION to get the XML string based your TRANSFORMATION. You can input your data and get back the XML string. Download this string to a file
Test XML generation program is:
types: begin of ty_data,
num type i,
end of ty_data.
DATA: itab TYPE standard table of ty_Data,
la_data like line of itab,
xmlstr TYPE string.
DO 3 TIMES.
la_data-num = sy-index.
APPEND la_data TO itab.
ENDDO.
CALL TRANSFORMATION ztest_np1
SOURCE table = itab
RESULT XML xmlstr.
CALL FUNCTION 'DISPLAY_XML_STRING'
EXPORTING xml_string = xmlstr.
My ZTEST_NP1 transformation. To create a transformation, click on the transformation in the "CALL TRANSFORMATION ztest_np1" statement. Select Simple transformation type.
<?sap.transform simple?>
<tt:transform xmlns:tt="http://www.sap.com/transformation-templates">
<tt:root name="table"/>
<tt:template>
<table>
<tt:loop ref=".table">
<item>
<tt:value ref="NUM"/>
</item>
</tt:loop>
</table>
</tt:template>
</tt:transform>
XML string is like:
<?xml version="1.0" encoding="utf-8" ?>
<table>
<item>1</item>
<item>2</item>
<item>3</item>
</table>
To use this option, you have to create a transformation and than use it to generate the XML string.
Check this SAP Help
http://help.sap.com/saphelp_nw04s/helpdata/en/e3/7d4719ca581441b6841f1054ff1326/frameset.htm
2. You can concatenate and create an XML string and download that string into a file.
Regards,
Naimesh Patel -
How can I call a ABAP proxy class from BADI? PLease help
hi Experts,
I have a scenario where I have to call a ABAP proxy class from a BADI. How can I do this? Does anybody has sample code for the same?
Please help.
Thanks
GopalHi,
You can call a method of a class from BADI. Here are the steps.
1) In the BADI implementation create a object for the proxy class.
2) Call the Execute_Synchronous method.
You can define a BADI by using SE18 and you can implement it by using SE19.
Sample code...
================================================
METHOD ZIF_EX_VBADI~CONVERTUPPER.
DATA: OBJ TYPE REF TO ZTESTCLASS.
DATA: IT_DATA TYPE ZIN_MT,
IT_RES TYPE ZOUT_MT,
SEXCEPTION TYPE REF TO CX_AI_SYSTEM_FAULT.
TRY.
CREATE OBJECT OBJ
EXPORTING
LOGICAL_PORT_NAME = 'TESTPORT'.
CATCH CX_AI_SYSTEM_FAULT INTO SEXCEPTION.
ENDTRY.
ENDMETHOD.
================================================
Thanks,
Vivek LR -
Error while invoking the ABAP Proxy via SOAP Adapter
Hi,
My scenario involves SOAP Client invoking a webservice hosted in PI which in turn invokes the ABAP Proxy asyncronously.
SOAP Client -> PI -> ECC (ABAP Proxy) . This works fine.
Next , I have exposed the ECC Service Interface as webservice using SOA Manager transaction. Now, once the service is created using SOAManager, i replaced the XI Adapter with SOAP Adapter and provided the target URL as the URL provided by the SOAManager.
SOAP Client -> PI -> ECC (ABAP Proxy via SOAP Adapter)
With this approach, i am encountering the below error message
2009-05-29 12:17:55 Error Adapter Framework caught exception: null
2009-05-29 12:17:55 Error Delivering the message to the application using connection SOAP_http://sap.com/xi/XI/System failed, due to: com.sap.engine.interfaces.messaging.api.exception.MessagingException.
Any ideas on the above errror message? Any pointers or inputs will be appreciated.
Thanks,
Vinayak Kamath> 2009-05-29 12:17:55 Error Adapter Framework caught exception: null
> 2009-05-29 12:17:55 Error Delivering the message to the application using connection SOAP_http://sap.com/xi/XI/System failed, due to: com.sap.engine.interfaces.messaging.api.exception.MessagingException.
This is a generic error message which does not have any information about the error which has occurred.
Do you see any error messages in the SOAP client?
Regards
Stefan -
HI all
I´m developing a BPM, this has the following steps:
1º
Reciver Step: this is to read a file , comunication channel type file.
2º transformation Step: maps the MT of the file to a new MT
3º Send step: send syncronously the result of the the map.Using an ABAP proxy. XI adapter.
4ºSwitch step: compares de the value of the result of the syncronous call, with a constant.First branch Send Step to write a file
Second branch nothing.
My question is? Do i have to insert something before the switch. Because i cannot activate the BPM, In the SXI_CACHE i can see and error that says that the value that i´m using to compare the value it is not an object of the payload.
Any idea?
Many thanks
NoeliaHi,
Last try...
salida_proxy./p1:MT_salidaproxy/row/valor = 0
In the condition editor:
When you do a f4 for the left operanfd text box:
The expression editor opens:
You need to click on the "Interface Variable" radio button and select your container salida_proxy and prove the correct xpath.
Make sure that the Type specified next to the xpath in the expression editor is String.
A f4 in the right operand text box opens a expression ediote, where:
You need to click on the constant radio button, and provide the constant 0.
Again make sure that the xsd trype is String.
In case all this has been done perfectly, then try deleting the switch and recreating it again. You never know, this might do the trick!
Regards,
Smitha.
Message was edited by:
Smitha Rao -
OBJECTS_OBJREF_NOT_ASSIGNED error while executing ABAP proxy
Hi ,
I am getting the following error when i try to execute an abap proxy .
Unit ID in Background RFC 001EC9D184F702ECAA8DBC7401DC13E0
Name of First Function Module SRT_SEQ_SCD_DLV_TRM_QRFC_NEW_C
Inbound Destination Name WS_SERVICE_02DCA4961A0B_IN
Transaction Code SE38
Name of qRFC Queue SRTQC_001EC9D184F702ECAA8DBC6FE29753DB
Created On 28.01.2009
No. of Predecessors 1
Created At 12:44:10
Executed At 12:44:13
Created At (Time Stamp) 20.090.128.114.410,9989340
User name DEVELOPER
Tcode/program CL_SOAP_SCHEDULER_QRFC_NEW====CP
ID of Lock in Background RFC 001EC9D184F702DCAA8DBCA25EC41F5E
Lock Reason System error; not executed
Background RFC Scheduler ID 1
Message number 341
Language Key EN
Status Text Unit has execution errors
Execution State Access using a 'ZERO' object reference is not possible.
Number of Called Function Modules 1
Number of Locks 1
Commit Check Disabled X
Message Class 0
Message Variable OBJECTS_OBJREF_NOT_ASSIGNED
Executed On 28.01.2009
and in ST22 transaction i am getting the following dump
Runtime Errors : OBJECTS_OBJREF_NOT_ASSIGNED
Exception :CX_SY_RF_IS_INITIAL
Error analysis
An exception occurred that is explained in detail below.
The exception, which is assigned to class 'CX_SY_REF_IS_INITIAL', was not
caught in
procedure "WSRM_CLONE_FOR_SPECIFIC_OPS" "(METHOD)", nor was it propagated by a
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:
An attempt was made to access a component (variable: "ME->M_CTX") with a 'ZERO'
object reference (points to 'nothing').
An object reference must point to an object (an instance of a class)
before it can be used to access a component.
Either the reference has not yet been set or it was set to 'ZERO' using
a CLEAR statement.
Please help in solving this issue.
Thanks&Regards,
Hamsa ShreeHi
Runtime Errors : OBJECTS_OBJREF_NOT_ASSIGNED
Check with the SAP Notes Note
557770 - SAP BP: Short dump OBJECTS_OBJREF_NOT_ASSIGNED
may be you get the exact help
Regards
Abhishek
Maybe you are looking for
-
Installing SBO/BI on windows server 2012 R2
hello guys, I get error while installing SBO business suit installation and when i use existing database and then select DB2 or MySQL in CMS and CMS_AUDIT in both windows installation screen...it gives same error while i trying to install SBO on DB2
-
How To create a custom tag in jsf
I'm trying to create a custom tag in jsf.what should be the approach to create it.it would be better if somebody will explain me from the skretch.
-
For instance, if i were to select the next seven words and then over-write or delete them, the next few words would automatically become selected and, because i'm already typing, i would over-write them as well. The more words that i initially selec
-
Mise a jour iPod iOS 5 connection expiré
Bonsoir, je possède un iPod touch 4G et je voulais faire la mise a jour de l'iOs 5. Le téléchargement se passait bien mais des la mise a jour iTune m'afficha que la mise a jour a échouer et que la connection du reseau a expirer . Sauf que je n'est au
-
Microsoft Azure - The Rise of Event Stream-Oriented Systems
With the rise in prominence of event data streams, managing and processing those streams becomes more essential. The new Azure Event Hubs helps you predict and parse data streams. Read the article