cancel
Showing results for 
Search instead for 
Did you mean: 

Ways for SAP PI to interact with SAP ECC

Former Member
0 Kudos

Hi Experts,

We are not able to establish connection between SAP PI and ECC using RFC destination type t. SAP OSS is raised the issue will be fixed by SAP. Meanwhile is there any way in which ECC can interact with SAP PI? I have suggested FTP as an option in case the ECC can place files in a ftp server but thats ruled out by the client. Please suggest a method.

Regards,

Nishant

Accepted Solutions (1)

Accepted Solutions (1)

Former Member
0 Kudos

Hi,

FTP was only option left but that is not ok in your case then there is no other ways to connect ECC till RFC connection is established. Even for ABAP Proxy you will need to first establish the RFC connection.

Regards,

Sarvesh

Former Member
0 Kudos

Hi Sarvesh,

Can SOAP webservice be generated using SAP ECC? If this is possible, how can they change the IDOC or RFC created in ECC to throw data at the webservice?

Former Member
0 Kudos

Yes, you can generate webservices in ECC and then can push the data via BAPI but for IDOC there is no direct way to publish the same via webservice as far as I know.

http://www.convertigo.com/en/how-to/technical-blog/entry/how-to-publish-a-web-service-from-sap-ecc-t...

https://www.youtube.com/watch?v=UQK--LWp1xY

iaki_vila
Active Contributor
0 Kudos

Hi Nishant,

A few cents about to publish webservices in ECC directly. If you have a PI in your infrastructure, it is not a good choice to publish webservices in ECC because you are losing one of the PI benefits, to have the communications centralized in one system.

Regards.

Former Member
0 Kudos

Inaki,

We will use webservice only for testing purposes. Once the connection between PI and ECC is established via t RFC we will go for IDoc or RFC communication.

Former Member
0 Kudos

Hi Nishant

Why don't to you save the files in the central share ( AL11 ) in ECC and then use file adapter in PI to poll on those Al11 directories.

Thanks,

Indrajit

former_member184720
Active Contributor
0 Kudos

>>>We are not able to establish connection between SAP PI and ECC using RFC destination type t. SAP OSS is raised the issue will be fixed by SAP

Did you install a single stack system?

If so, have a look/ request your basis team to check below note - I saw several single stack installations facing these kind of issues.

1976188 - 748 not found error creating PI
RFC's SAPSLDAPI and LCRSAPRFC

If not can you share RFC connection test details?

>>>We will use webservice only for testing purposes. Once the connection between PI and ECC is established via t RFC we will go for IDoc or RFC communication.'

Are you sure, you really want to configure/develop your interfaces just for the testing purpose and then modify them later? If you deal with IDOC's/RFC then it's not just about changing communication channel but you'll have to change/create ESR objects as well.

I would prefer developing the actual interface (IDOC/RFC/Proxy) and then post the data soap UI to test the ICo.

che_eky
Active Contributor
0 Kudos

For a single stack install and as of 7.4 should you not use HTTP destinations of type G for the connection? The HTTP destinations are normally PI_AEX and SAP_PROXY_ESR. There is lots of help available on the required setup.

Che

Former Member
0 Kudos

Hi Indrajeet,

I am not sure if ECC application server can interact with PI using a file. Is it possible? if so, How?

Former Member
0 Kudos

Hi Nishant,

Yes it is possible. Using NFS you can connect ECC Application server.

Go to AL11 you'll get the list of directories. There you select the desired one.

and mention it in file communication channel.

Regards,

Suhale Shaik.

Former Member
0 Kudos

Check the below thread

Regards,

Shaik.

Former Member
0 Kudos

The Link Talks about getting Application server space mounted on PI, so that the NFS can be used. It also says that the al11 in PI will show the shared directory. Mine is a single stack PI, is it still possible to use this method? because I dont have a single stack to check al11.

Former Member
0 Kudos

Use AL11 Tcode in ECC system there you'll get the directories. the thread is saying this only.

ECC place the files in AL11 directory. PI picks the files from ECC AL11 directory.So this is also a way to connect ECC system to get the data.

You can use this method.

ECC(AL11) Directory --->File(NFS)----->PI----> Desired Target.

Regards,

Shaik.

Former Member
0 Kudos

Is it possible to convert idoc into xml and place it in al11 directory, from where PI can pick the file using NFS. I am already able to pick files from al11 using NFS. Next challenge is to convert the IDoc into xml in ecc and place xml file in al11.

Former Member
0 Kudos

Hi Nishant

You have to create a function module or re-use any standard function module to convert the idoc into idoc xml.

One example is FM    IDOCS_OUTPUT_IN_XML_FORMAT

Then you need to create an xml file port using WE21 and use this function module there

Then use this xml file port in partner profile ( WE20 )

If everything is correct, idoc xml file will be saved under the AL11 directory mentioned in the xml file port.

Reference blog

http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/80b8db75-e481-2d10-7e94-81e1e2959...

Thanks,

Indrajit

Answers (3)

Answers (3)

iaki_vila
Active Contributor
0 Kudos

Hi Nishant,

From my point of view about the below suggestions, the best way with better performance to connect an ECC with PI is using an ABAP proxy. If you also want to send files you have two options, you can send it like attachment from ABAP or to create a field of type RAWSTRING, I got successful transfer with  String data type as well and base64 encoding. You only need to convert your file data to this field. For example in the sender ABAP proxy:


"Path and file name
   DATA f_filename TYPE string.
" File in BASE64
   DATA f_base64 TYPE string.
"Fichero in Binary in Xstring
   DATA f_fxs TYPE xstring.

"Load the file in binary


   CONDENSE f_filename NO-GAPS.
   OPEN DATASET f_filename FOR INPUT IN BINARY MODE.


   IF sy-subrc <> 0.
" Error treatment
   ENDIF.

   CLEAR f_fxs.
   READ DATASET f_filename INTO f_fxs.
   IF sy-subrc = 0.
     CLOSE DATASET f_filename.
   ELSE.
  " Error treatment
   ENDIF.

   "Xstring in binary to BASE64 in string
   CLEAR f_base64.
   CALL FUNCTION 'SSFC_BASE64_ENCODE'
     EXPORTING
       bindata                  = f_fxs
*     BINLENG                  =
     IMPORTING
       b64data                  = f_base64
     EXCEPTIONS
       ssf_krn_error            = 1
       ssf_krn_noop             = 2
       ssf_krn_nomemory         = 3
       ssf_krn_opinv            = 4
       ssf_krn_input_data_error = 5
       ssf_krn_invalid_par      = 6
       ssf_krn_invalid_parlen   = 7
       OTHERS                   = 8.
   IF sy-subrc <> 0.
" Error treatment
   ENDIF.


Hope this helps.


Regards.

Former Member
0 Kudos

Thanks for your reply. Would ABAP Proxy not require the RFC connection set up?

iaki_vila
Active Contributor
0 Kudos

Hi Nishan,

You need to configure your sm59 transaction, but the communication will be via http. Depending your PI version the sm59 configuration is different.

Regards.

Former Member
0 Kudos

We are using PO 7.4. The RFC destination is type t for the connection. But this connection is not g etting established for some reason and SAP is looking into it.

Former Member
0 Kudos

Hi Nishant,

Have a look below.

Also google how to connect from ECC to PI using Web services etc. There is more than one way.

Regards,

Jannus Botha

former_member191435
Contributor
0 Kudos

Hi,

Please look into below thread

Thanks,

Sreenivas