Wednesday, January 16, 2013

SAP PI cutover activities( Dev->Quality->Production)



In Migration project 7.0->7.3), We frequently need to do cutover activities for various interfaces:

( By assuming all mapping logic works fine)
SAP ECC     ----->  SAP PI------>

( Check in your lower version of  pi system, if any processing or failed messages are there or not, if there, clear those and intimate to your business(ecc) to stop sending messages to your lower version of PI system).

1. IDoc interface:
     a. Identify the receiver partner number(we20). You can find the idoc xml file(test data received from lower version of pi system). for that partner number. look into the outbound message used. change port for that( pointing to your higher version of SAP PI system, before, we have to create t-rfc destination to your Higher version of PI system).

     b.Some times, if your interface is using sender http communication channel. then , your port is http_xml type. so change port for that. before this you should create http rfc destination in your ECC system.

2. Proxies:


MFT----->(file) SAP PI---->

( Check if any failed/processing message are there in your lower version of pi system, if there not there, you can proceed to start cutover activities by intimating business)

1. First stop service at MFT side to send message to lower version of PI system
2. check if any messages in lower version of pi system, then deactivate that communication channel.
3.Activate mft side to send message to higher version of pi system.


Wednesday, January 9, 2013

ABAP Server and client proxies, Test and Debug ABAP Proxies at back end ECC



Topics covered:

1. Calling Multiple SAP PI systems services in SAP ECC system.
2  ABAP client proxies
3. ABAP server proxies
4. coping DT,MT and SI, MM from on SAP PI(M01/001) to another PI system(XL1/001)
5. How to configure the SAP PI WS adapter both at sender and receiver side. and generating wsdl sender aggrement (S.A.) and passing user and pwd from receiver aggrement (R.A.) for their respective channels
5. Creating Webservice from existing ABAP class in SAP ECC system and generating WSDL and URL
    by using tcode: SOAMANAGER  ex: M62/002
6. Consuming webservices in SAP ECC system by using SOAMANAGER  by having WSDL /URL

Testing: 1.Aabp report at XR9/200.       2. ABAP Proxiy Service at M62/002 3.All Http RFC destinations pre-configured and not explained
Login:  XR9/200, Execute report and out put as follow, when u choose you required PI system, to call service at M62/200



Ref:  http://scn.sap.com/docs/DOC-3797
        http://help.sap.com/saphelp_nw04/helpdata/en/14/555f3c482a7331e10000000a114084/frameset.htm
Other ref:
Debugging inbound/Server abap proxies:
 http://scn.sap.com/people/stefan.grube/blog/2006/07/28/xi-debug-your-inbound-abap-proxy-implementation   
http://scn.sap.com/thread/901200
http://scn.sap.com/people/sandro.garofano2/blog
http://wiki.sdn.sap.com/wiki/display/XI/Step-by-step+FTP+to+ABAP+Proxy

Frequent errors in ABAP proxy
HTTP error (return code 400,message "ICM_HTTP_CONNECTION_FAILED")

solution:
for theproxy setting to work properly apart from setting server, uid/pwd you also need set the proxy setting as active in global settings tab (sicf->client->proxy settings)

by checking the check box "proxy setting is active"
Reference:
http://scn.sap.com/thread/226002

Wednesday, January 2, 2013

Working with SOAP UI for testing sender soap scenarios in client network




Basic knowledge on soap ui usage in SAP PI enviroment:
http://scn.sap.com/people/william.li/blog/2007/04/17/debugging-webservices-in-a-soap-receiver-scenario


SOAP UI web client usage in SAP PI environment for testing sending soap request to SAP PI.

 If you are using soap client, it is difficult to send send soap request to sap pi system. in that cases,

1. first install the soap ui software in your system.(With out putting client network).
2. Enable client network.
3. Open soap ui tool as follows


this option will be found once you are using client network.

4. Check if any proxy details are mentioned(By default,it details from your browser). remove those

5. Mention required user name and pwd(to login sap pi) refer first link.

By PDP ;-)


Ways to generate wsdl file from configured sender soap communication channel in PI



we have two approaches to generate WSDl file from sender side

1. in Sender Agreement ->  Click on Sender Agreement  -> display wsdl
2.from menu bar "tools" ->  Display WSDl -> have to provide parameters


sap comment on those:
You have configured the sender SOAP adapter. You can trigger a call to the sender SOAP adapter using either of the following URLs. However, SAP recommends you to use the second option.
      http://:/XISOAPAdapter/MessageServlet?channel=::. If you have not created a party, enter channel=::

host and port are the values, we can see those, from opening integration builder
http://host:port//dir/start/index.jsp  ( in most of the cases values >= 50000)

Else 2nd case, we can directly generate from sender aggrement. no need to provide any thing manually, morover, we can get the wsdl url from wizard text box, else get it from wsdl content, which has two address locations , one is http and https  

      http://:/XISOAPAdapter/MessageServlet?senderParty=&senderService=&interface=&receiverParty=&receiverService=&interfaceNamespace=




403 Forbidden - You are not authorized to view the requested resource


some times, when you use wsdl in soap ui, you may get the above error,

The reason is , you do not have required authorization to access the service.

How to check, if my user has required authorization or not,
simple, by opening integration builder , you can identify the PI system host and port name

After configuring the sender aggrement (also sender cc ), you are able to generate WSDL,

your wsdl target url: you can find it the wsdl file,(search for location).

http://:/XISOAPAdapter/MessageServlet?channel=:PurchaseOrderService:SOAP_SND_CreatePurchaseOrderService_001&version=3.0&Sender.Service=PurchaseOrderService&Interface=urn:bp:xi:dwn:rm:pf:pfcommonservice:sales:100^PurchaseOrder_OB

just copy this path in your client browser, if you are able to see the pop up to enter the user name and pwd.
that's fine.
else
This seems, you are not having required authorization to test this service.