Wednesday, June 18, 2014

SAP and Ariba Network integration with SAP PI & customizing the data type for standard data type and proxy generation

Om



AN(Airba Network) is Integrated with SAP in two ways,
a)      with SAP PI,
b)      without SAP PI( via Files, ITK(Integration tool kit)

With SAP PI
1.       Asynchronous  ( a) supplier connection   b)SAP ADDON
2.       Synchronous mode  (  Ondemand)
SAP To Ariba integration via SAP PI

11)      To login in SAP, We use SAP LOG on pad   
  2) to login AN buyer: we use  http:///buyer/xxxx   
         a) Outbox: Here also , we can see the the Purchase, what ever we created in SAP & also see all transaction
             info, which was created in SAP
         b) Inbox: Also monitor, all messages are gone/pending state to SAP, Which are from AN supplier. 


33)to Login AN supplier: we use   http:///Supplier/xxxx
         a) Inbox: Automatically, all messages are appeared , which are there in outbox of aAN buyer.
             able to create , Order response, ShipNotice, ServiceEntry, Invoice for PO, & other actions for other transactions.
         b) Outbox: all messages which are sent again(after processing ) to AN buyer.
  



Here SAP ECC system , AN Buyer is connected via SAP PI middleware( using AN adapters, IDOC,proxy’s,RFC) asynchronous calls.

List of various transactions in between SAP and AribaNetwork as follows.

a)Supplier connection adapter( PI message mapping are there)

ADDON_(No message mappings, SOAP and Proxies communication & synchronous calls) 

Few more transactions will be added soon
--------------------------------------------------------------------------------------------------

ONDemand
1.       SAP ECC and AN buyer are integrated with SAP PI(using RFC and SOAP ) synchronous call.

All calls are initiated from AN to SAP.  i.e. SAP gives response for all requiests.







Reference Links: http://scn.sap.com/community/pi-and-soa-middleware/blog/2013/02/26/how-to-connect-sap-to-the-ariba-sn-using-netweaver-p-integrationorchestration



Data type enhacement for ariba interfaces ( custom fields are to be added for standard )  and activating in sap side.

Key words: Custom fields for standard Data types, activating these in sproxy in perticular order. creating new software component with dependency
http://scn.sap.com/docs/DOC-62041


Initiating transactions from (SAP/Ariba buyer)<---->Ariba Supplier.



SAP on-primise and Ariba cloud services (Road map)




Tuesday, June 17, 2014

Understanding MM life cycle between buyer vendor

                                                                        Om


Transactions in between buyer and seller.
buyer supplier transactions in SAP



*PO(generally we can see, service po, goods/material po: we can identify this difference with item category with ‘D’)
      For service po, we are not creating Good receipt , instead of, we are creating ServiceEntrySheet for this( ML81N).
               Once the approver approves this, again ServiceEntrysheetResponse is generated from SAP.

      Blanket PO( is similar to PO, for this PO no need to create GoodsReceipt for this,  Blanket po is identify with Document type ‘FO’ and item category ‘B’ )
      Outline Agreement PO( 1.Schedule agreement    2.Contract  )
1.       Schedule agreement PO:  ( for this material, for this Quantity, For this plant, For this Date & time, Delivary is scheduled )
2.       Contract: contract is created from this time to this time( EX: 6months), PO is to be created based on Contract. Some times this PO is also called , Release order

Change Purchase Order:  we(buyer) can change purchase order, 
Cancel Purchase Order:if the buyer wants to cancel ,he can cancel purchase order.

*Order Confirmation: is initiated from vendor, for the particular order, if change PO request came, vendor create’s for latest update only, not for old information. some times we see partial order confirmation also.
ASN(Advance ship Notice): is initiated from vendor, before goods are to be shipped.
           In some cases, We can also create ASN in SAP with quantity 0, but in oracle, we can not create ASN with 0 quantity. 

Goods Receipt GR: has taken place, once goods are arrived to buyer/it's plant. then GR document has to be placed for particular purchase order in buyer system.

*Invoice: ( is a bill from vendor for the payment against Goods delivery, it is initiated by vendor).Partial invoice also there some times. In some transactions, Invoice is directly created with out having Purchage order( i.e. depends up on the business).

PaymeNow:  is initiated from vendor,
Payment proposal: (initiated from buyer; Before payment, initiate to other departments about this, this helps them, to do necessary activities in their account, preparing cash in accounts and others ).

*Payment Remittance: Payment to vendor, initiated from SAP, ( some times, we see partial payments also)

Purchage Order document tcodes:
ME21N (Create)
ME22N( Update/chage)
ME23N( Delete)

Similarly tcode are there for Create Update and Delete.


As similar to Purchase order , We can see the Change Purchase Order .

Other Good info from SDN

PR-ME51n
RFQ-ME41
Quotation-ME47
Quotation comparison-ME49
PO-Me21n
GRN-MIGO- Movement type-101
Invoice-MIRO
Payment to Vendor-FI work( F110 (Automatic, F-53(Manual payment).


Create purchase requstion              ME51
Create request for quatation           ME41
Maintaion the quatation from differnt vendors ME47
compare price comparision               ME49
Create purchase order.Change send to vendors  ME21N ; ME22N
Goods reciepts                  MIGO  ( in case of service PO ML81N for SES: Service entry sheet)
Logistic invoice verification   MIRO

About blanket PO and outline
http://scn.sap.com/thread/2135107

Difference between schedule aggrement and contract
http://scn.sap.com/thread/1164403

Thursday, June 12, 2014

posting mass idocs from SAP ECC to SAP PI for performance testing using BD87

                                                                               Om

                                                                         


                                    PONum - 4501206010  - 4501207009
                                   IDOC range - 0000000001438701 – 0000000001439700  

tcode:  se38 ;   RC1_IDOC_SET_STATUS



(uncheck checkbox for test) changing idoc status from 03 to 30( Because, these are already sent to PI system, now we want to retest these again)


 Now go for 2nd option, enter idoc range for these check boxes


                                     


Tcode: Bd87(again enter the idoc range) and execute, resending these idoc to pi system



Now check in we02/ we05 tcode.

Frequent RFC lookup-errors in messages mapping invalid data, sap dump, cache issues

Om

SAP DUMP in ECC for this mapping(for this test data)





callRfcReadTable[[Ljava.lang.String;@3026784d, [Ljava.lang.String;@2da41fed, [Ljava.lang.String;@722c1803, [Ljava.lang.String;@2cdca784, [Ljava.lang.String;@4a79e21e, [Ljava.lang.String;@7ec45c5, com.sap.aii.mappingtool.tf7.rt.ResultListImpl@28d88c93, com.sap.aii.mappingtool.tf7.rt.Context@20f51bd8]
com.sap.aii.utilxi.misc.api.BaseRuntimeException: Exception:[com.ariba.asc.sap.netweaver.xiadapter.mappings.MappingException: [XI RFC Lookups ERROR]: The _-ARBA_-RFC_READ_TABLE call returned an Exception message : [NAME]:RFC_ERROR_SYSTEM_FAILURE [TEXT]:No more storage space available for extending an internal table. [REQUEST]:null] in class com.sap.xi.tf._MM_CDF_FulFill_XSD_AdvanceShipNotice_2_DESADV_DELVRY06_ method callRfcReadTable[[Ljava.lang.String;@3026784d, [Ljava.lang.String;@2da41fed, [Ljava.lang.String;@722c1803, [Ljava.lang.String;@2cdca784, [Ljava.lang.String;@4a79e21e, [Ljava.lang.String;@7ec45c5, com.sap.aii.mappingtool.tf7.rt.ResultListImpl@28d88c93, com.sap.aii.mappingtool.tf7.rt.Context@20f51bd8]
at com.sap.aii.mappingtool.tf7.rt.MethodImplementedIteratorHelper.executeMethod(MethodImplementedIteratorHelper.java:188) 


2) Mapping issues due to rfc communication chaneel



Abap stack error
com/sap/xi/tf/_MM_ORDERS_ORDERS05_2_CDF_cXML_XSD_com.sap.aii.mappingtool.tf7.MessageMappingException: Runtime exception when processing target-fieldmapping /ns0:Messages/ns0:Message2/cXML/Header/To~


for the same payload, message mapping unittest 
Error in message mapping unit test:
Exception:[com.ariba.asc.sap.netweaver.xiadapter.mappings.MappingException: Error when calling the function RFC_READ_TABLE : Plain exception:Error when calling an adapter by using the communication channel CC_RFC_Receiver1 (Party: , Service: BS_SAPECC46, Object ID: 864b0be98845349faee9abf4d837fcd2) The channel with object ID 864b0be98845349faee9abf4d837fcd2 could not be found in the Integration Server Java Cache. Check if the channel exists in the Integration Builder Directory and execute a refresh of the Java Cache.
com.sap.aii.mapping.lookup.LookupException: Error when calling an adapter by using the communication channel CC_RFC_Receiver1 (Party: , Service: BS_SAPECC46, Object ID: 864b0be98845349faee9abf4d837fcd2) The channel with object ID 864b0be98845349faee9abf4d837fcd2 could not be found in the Integration Server Java Cache. Check if the channel exists in the Integration Builder Directory and execute a refresh of the Java Cache.

Solution:
1) check the communication channel is active or not
2) check the if the error is resolved by using cache refresh for not
  http://host:port/CPACache/refresh?mode=full    delta
3) if not, remove the communication channel and create again and activate (simple method is copy the cc to cc1, again delete cc, again copy cc1 to cc and activate).
Now resend the failed messages in ABAP stack
                                   

 3) Mapping errors are due to incorrect payload in message mapping(certain fields are mandatory to proceed mapping execution,those are missed)





Values missing in queue context. Target XSD requires values for this element. but the target-filed mapping does not create one.