SAP CIF Complete Guide
SAP CIF Complete Guide
SAP CIF Complete Guide
CIF Training
Integration
Contents
Introduction
CIF concepts and principles CIF administration CIF troubleshooting CIF configuration Summary Appendix I APO BAPIs
By : Rahul Mohnot
Aims
Understand why CIF is necessary Understand basic principles of CIF Learn how to administer CIF Learn how to troubleshoot CIF
By : Rahul Mohnot
1. Introduction
By : Rahul Mohnot
What is CIF?
Literally Core Interface Communication layer to be applied to R/3 to enable an exchange of data between SAP APO and R/3 APO Core Interface serves to connect APO to one or more R/3 systems in the form of a socalled tight coupling Guarantees an incremental supply of relevant data changes to APO Delivered as R3 Plug-in Set of transactions and programs for
Interface definition Data transfer Data reconciliation and Problem analysis & resolution
By : Rahul Mohnot
Why CIF?
APO has been designed to work with R3 as well as other systems APO has different hardware requirements to R/3 APO has Advanced features that not all clients require
APO & R3 are part of the same business system so must use the same data wherever possible.
Despite being separate systems, R3 & APO are commonly used together. SAP have therefore provided CIF as standard functionality.
By : Rahul Mohnot
SAP R/3
SD
LO
HR
CIF
(Core Interface)
BAPI BAPI
BAPIs
SAP APO
BAPI
By : Rahul Mohnot
CORE INTERFACE
Master data
R3
Transaction data Requirements/Consumption Planned orders Production Orders Purchase Orders Confirmations
APO
Planning results Purchase Order/Req Stock transfer Order/Req Customer (VMI) Production /Planned Order ATP Request
By : Rahul Mohnot
Contents - Review
Introduction CIF concepts and principles CIF administration CIF troubleshooting Summary Appendix I APO BAPIs
By : Rahul Mohnot
Integration models define shared data Queues ensure serialization Tools for consistency checking
Near real-time update of transactional data Minimization of data transferred for performance
By : Rahul Mohnot
APO Product
AW123456
MR123456
66123456
Integration model
R3 Material
SAP 2007 / Page 11
AW123456
MR123456
MR789101
66123456
By : Rahul Mohnot
Data changes made to a data object occur in the same order as they did in source system Queues also serve as buffer in case loss of R3-APO connection or excessive data exchange
By : Rahul Mohnot
R3
APO
R3 Outbound
APO Outbound
By : Rahul Mohnot
R3
APO
R3 Outbound
APO Inbound
R3 Inbound
APO Outbound
By : Rahul Mohnot
Once data is placed in outbound queue, it is assumed the other system will receive that data Queues are blocked Queue data may be accidentally (or purposefully) deleted
By : Rahul Mohnot
In R3, execution data relevant to planning is being created or changed (eg shipping notifications) In APO, planning data relevant to execution is being maintained (eg schedule releases) refer next slide on how R3 is updated.
CIF will automatically update transaction data whenever it is changed in the source system
Assuming the object being updated exists in an integration model OR In the case of planning results from APO, the publication definition is maintained in configuration.
By : Rahul Mohnot
* Master data transfer can be real-time if configured, using Business Transaction Events.
SAP 2007 / Page 17
By : Rahul Mohnot
Data Consistency & ConCurrency are important CIF principles Important concepts
Consistency checking
Difference between master data & transaction data
By : Rahul Mohnot
Contents - Review
Introduction CIF concepts and principles CIF administration CIF troubleshooting Summary Appendix I APO BAPIs
By : Rahul Mohnot
3. CIF Administration
Integration model maintenance Change transfer Queue monitoring, maintenance Consistency checking Batch processing Housekeeping
By : Rahul Mohnot
Creation CFM1 Activation CFM2/CFM3 Display CFM4 Search CFM5 Change CFM6 Delete CFM7
By : Rahul Mohnot
In transaction CFM1 you select the object types and objects to be included in the integration model Demonstration Save selection parameters as a variant
Variant effectively becomes your IM definition independent of the data objects that exist
By : Rahul Mohnot
Transfers master & transaction data defined in the integration model Starts automatic synchronisation of transaction data defined in the integration model
Data objects that are already in active integration models are NOT transferred
Demonstration
By : Rahul Mohnot
Transaction CFM4 will show a count of objects per object type. Drill-down to see objects Useful when you need to heck weather an object exist in IM or not.
Demonstration
By : Rahul Mohnot
Transaction CFM5 helps you find the integration model(s) to which a data object belongs Useful when you need to remove a data object from all integration models, eg production version
Demonstration
By : Rahul Mohnot
Transaction CFM6 allows you to add or delete objects from an integration model Useful when you want to make a small, temporary change to an integration model Use when you want to re-CIF a particular data object:
Remove object from active model Activate new IM (without object) Activate old IM delta update means only the object is transferred
Demonstration
By : Rahul Mohnot
Transaction CFM7 lets you delete inactive integration models Typically used in regular batch job Useful when you need to delete production version cant delete when part of IM (active or inactive) Demonstration
By : Rahul Mohnot
3. CIF Administration
Integration model maintenance Change transfer Queue monitoring, maintenance Consistency checking Batch processing Housekeeping
By : Rahul Mohnot
Remember the difference between initial transfer (with delta logic) and change transfer!
Change transfer works at the data field level (eg Material description) Initial transfer (with delta logic) works at the data object level (eg Material Master)
SAP help uses terminology Change transfer for the transfer of any changes to data. Here we are talking about transferring changes using ALE change pointers.
By : Rahul Mohnot
Table BDCPV
Object Field Old Value New Value
AW339701 Proc. E a field within F a master When a change is Type made to data object, it is recorded
By : Rahul Mohnot
Table BDCPV
Object Field Old Value
E Active X X
New Value
F Data object AW338699 AW339701 AW339701
AW339701 Proc. Type Integration Model MD_MAT_NV (19/2/05) MD_MAT_NV (19/2/05) MD_MAT_NV (18/2/05)
Change pointers are scanned Check object for a change pointer is in an active integration model Update corresponding field in APO
APO
By : Rahul Mohnot
3. CIF Administration
Integration model maintenance Change transfer Queue monitoring, maintenance Consistency checking Batch processing Housekeeping
By : Rahul Mohnot
Queue monitoring
Monitor queues for queue blockages so that R3-APO data are kept consistent SMQ1 Monitor outbound queues /SAPAPO/CQ Queue Monitor CFG1, /SAPAPO/C3 Monitor Application Logs /SAPAPO/CPP CIF Post-processing
By : Rahul Mohnot
R/3
APO
Error Data updating updated
Blockages occur when data cannot be updated in the destination system Queue entries (LUWs) behind the blockage are not processed until blockage resolved
By : Rahul Mohnot
See outbound queues Display queue entries (known as LUWs) and contents Activate queues Delete queues (be careful!) Lock queues Debug queues
Demonstration
By : Rahul Mohnot
Queue Manager (/SAPAPO/CQ) helps manage outbound queues for both R3 & APO Same functions available as SMQ1 Interface more user-friendly Double-clicking on blocked queue takes you to relevant Application Log entry. Demonstration
By : Rahul Mohnot
Application logs record CIF errors, warnings and information messages encountered during data transfer They usually provide some indication as to cause of error In APO, logs can be viewed in /SAPAPO/C3 In R3, logs can be viewed in CFG1 Demonstration
By : Rahul Mohnot
Much of the data sent from APO does not require strict serialisation
In this case, the CIF post-processing log is used to avoid queue blockages:
R/3
Error Data updating updated
APO
3. CIF Administration
Integration model maintenance Change transfer Queue monitoring, maintenance Consistency checking Batch processing Housekeeping
By : Rahul Mohnot
/SAPAPO/CCR is used to detect inconsistencies between R3 & APO in a range of transactional object types. Inconsistencies can then be corrected within same transaction.
Demonstration
By : Rahul Mohnot
By : Rahul Mohnot
3. CIF Administration
Integration model maintenance Change transfer Queue monitoring, maintenance Consistency checking Batch processing Housekeeping
By : Rahul Mohnot
PRDx_CIF_CHANGETRANSFERS_ddd PRD0_CIF_MATERIAL_MASTER PRD0_CIF_PPEDELTA PRD0_CIF_PRESSSHOPPLAN PRD0_CIF_SCHED_AGREEMENTS PRD0_CIF_REQUIREMENTS PRD0_CIF_STOCK PRD0_CIF_PPECHANGE PRD0_CIF_HOUSEKEEPING_DAILY PRW7_CIF_IPPECIF_EKG_COMPARE
By : Rahul Mohnot
RIMODGEN regenerates integration model. RIMODAC2 activates new integration modelRSPPMCHG sends PPM master data changes RCPTRAN4 sends other master data changes Use SE38 to manually run programs/change variants
By : Rahul Mohnot
PSD0_CIF_PWB_KILL_INCO_MAT_DAILY runs livecache consistency check for schedule lines PSR_CIF_MAIL_POSTPROCESS_2 HOUR sends email alerting of new post-processing logs PSR_CIF_MAIL_QUEUE_ERROR_2 HOUR sends email alerting of queue blockage PSD0_APPLOG_DELETE
By : Rahul Mohnot
3. CIF Administration
Integration model maintenance Change transfer Queue monitoring, maintenance Consistency checking Batch processing Housekeeping
By : Rahul Mohnot
/SAPAPO/RDELLOG, RDELALOG
RIMODDEL
/SAPAPO/CIF_POSTPROC_REORG
RBDCPCLR
/SAPAPO/CIF_DELTAREPORT3_REORG
RAPOKZFX
By : Rahul Mohnot
Integration models are maintained to keep shared data up-to-date Change transfers with change pointers also help keep shared data up to date Queues need to be monitored to detect and resolve errors during the transfer of data Consistency checking ensures shared data stays consistent Batch processing automates regular processing Housekeeping keeps CIF running smoothly
By : Rahul Mohnot
Contents - Review
Intoduction CIF concepts and principles CIF administration CIF troubleshooting Summary Appendix I APO BAPIs
By : Rahul Mohnot
4. CIF troubleshooting
Use the tools Online resources (SAP Notes, help) OSS messages General advice
By : Rahul Mohnot
Consistency checks
Integration model:
Programs
RIMODINI, RIMODAC2
By : Rahul Mohnot
CIF FAQ
http://service.sap.com/scm
By : Rahul Mohnot
OSS Messages
By : Rahul Mohnot
General advice
Always try and find the application log that is relevant to your problem When in doubt, re-activate (but not delta!) Best way to learn CIF troubleshooting is know the basic concepts and the tools. Experience will dictate when to apply them.
By : Rahul Mohnot
You are now able to: Appreciate why CIF is necessary Describe basic principles of CIF Describe how to administer CIF Know how to troubleshoot CIF
By : Rahul Mohnot
Contents - Review
Intoduction CIF concepts and principles CIF administration CIF troubleshooting CIF configuration Summary Appendix I APO BAPIs
By : Rahul Mohnot
CIF Configuration R3
Planning and Optimization
Set Target System and Queue Type defines what system R3 is connected to and whether outbound/inbound queues are used.
Configure Application Log could be useful for troubleshooting can define what data that is transferred gets logged
Initial Data Transfer > Set Filter and Selection Block Size defines packet sizes for data selection & transfer.
By : Rahul Mohnot
Basic Settings for the Data Transfer > Change Transfer > Change Transfer for Master Data > Configure Change Transfer for Master Data
Specify immediate or batch change transfer using change pointers Change parameters for resources Necessary for change transfers using change pointers CIF message types MUST be ticked
Application-Specific Settings and Enhancements This is where user-exits can be utilised to exercise greater control over data transfer Transfer Deactivated Materials to SAP APO may prove very useful Cross-Application Components > iPPE > General Settings > Define General iPPE Customizing Change documents must set to be ON (ie not OFF)
By : Rahul Mohnot
Function EXIT_SAPLCMAT_001 is where the code is contained This user exit could be coded, for example, to populate fields in product master that are not included in the standard material/product mapping. It might do this based on other fields in the material master.
By : Rahul Mohnot
Advanced Planning and Optimization > Basis Settings > Integration > Publication is where the types of data to be returned to R3 are defined
BSGs allow grouping of R3 systems with an APO system where there is common data (see next slide). If an R3 system is not in the same BSG as the APO system, conversions have to be done on the data to differentiate it from same data in other BSGs.
Business System Group > Assign Logical System and Queue Type
By : Rahul Mohnot
PK1 PK1CLI001
PE1 PE1CLI001
Legacy System
Legacy Systems
By : Rahul Mohnot
Function module EXIT_/SAPAPO/SAPLCIF_PROD_001 is where the code located Eg, could be coded to automatically create product masters at vendor locations for subcontracted manufacture.
By : Rahul Mohnot
SAP References
http://service.sap.com/scm
By : Rahul Mohnot
Contents - Review
Intoduction CIF concepts and principles CIF administration CIF troubleshooting CIF configuration Summary Appendix I APO BAPIs
By : Rahul Mohnot
Aims
Understand why CIF is necessary Understand basic principles of CIF Learn how to administer CIF Learn how to troubleshoot CIF CIF configuration
By : Rahul Mohnot
You are now able to: Describe why CIF is necessary Describe basic principles of CIF Describe how to administer CIF Describe how to troubleshoot CIF Perform CIF configuration
By : Rahul Mohnot
Contents - Review
Intoduction CIF concepts and principles CIF administration CIF troubleshooting CIF configuration Summary Appendix I APO BAPIs
By : Rahul Mohnot
BAPI BAPI
BAPIs
SAP APO
BAPI
By : Rahul Mohnot
Business Objects
ProductsAPS (BUS10001) LocationAPS (BUS10002) PPMAPS (BUS10003) ResourcesAPS (BUS10004) Other business Objects through Business Applications or BW services
SalesOrderAPS (BUS10501) ProcurementOrdersAPS (BUS10502) ManufacturingOrderAPS (BUS10503) StockAPS (BUS10501) Other business Objects through Business Applications or BW services
Eg factory calendars
By : Rahul Mohnot