Change pointers is the one of the IDOC processing method in ALE.
In this once we make the config to any
of messages type , if any changes are made in sending system then IDOC will be posted directly to destination with user interation. Changes pointers are configured using BD50,BD51,BD53,BD61. Change pointers are stored in tables BDCP and BDCPS (or BDCP2 in case of high-performance setting) - like CDHDR and CDPOS for change documents (but this is not a controlling table!). 1. Do you really need change pointers? You need change pointers to distribute changes with the ALE SMD tool. If you do not use this tool, you do not need to write change pointers. You can deactivate change pointers and activate them again with the transaction BD61. 2. Do you really need to activate change pointers for this messages type? If some messages types are no longer to be distributed by change pointers, you can deactivate change pointers for this message type. You can deactivate change pointers for the message type and reactivate them again in transaction BD50. For reduced message types, deactivate the change pointer with the Reduction tool (transaction BD53). Applications which write change documents will also try to write change pointers for ALE operations. These are log entries to remember all modified data records relevant for ALE. Most applications write change documents. These are primarily log entries in the tables CDHDR and CDPOS. Change documents remember the modified fields made to the database by an application. They also remember the user name and the time when the modification took place. The decision whether a field modification is relevant for a change document is triggered by a flag of the modified fields data element. You can set the flag with SE11 by modifying the data element. For the purpose of distributing data via ALE to other systems, you may want to choose other fields, which shall be regarded relevant for triggering a distribution. Therefore R/3 introduced the concept of change pointers, which are nothing else than a second log file specially designed for writing the change pointers which are meant to trigger IDoc distribution via ALE. So the change pointers will remember the key of the document every time when a relevant field has changed. Change pointers are then evaluated by an ABAP which calls the IDoc creation, for every modified document found in the change pointers. The Change pointers are written from the routine CHANGEDOCUMENT_CLOSE when saving the generated change document. So change pointers are automatically written when a relevant document changes. The following function is called from within CHANGEDOCUMENT_CLOSE in order to write the change pointers. CALL FUNCTION 'CHANGE_POINTERS_CREATE' EXPORTING change_document_header = cdhdr TABLES change_document_position = ins_cdpos. Activation of change pointer update : Change pointers are log entries to table BDCP which are written every time a transaction modifies certain fields. The change pointers are designed for ALE distribution and written by the function CHANGE_DOCUMENT_CLOSE. Change pointers are written for use with ALE. There are ABAPs like RBDMIDOC which can read the change pointers and trigger an IDoc for ALE distribution. The change pointers are mainly the same as change documents. They however can be set up differently, so fields which trigger change documents are not necessarily the same that cause change pointers to be written. In order to work with change pointers there are two steps to be performed 1) Turn on change pointer update generally 2) Decide which message types shall be included for change pointer update R3 allows to activate or deactivate the change pointer update. For this purpose it maintains a table TBDA1. The decision whether the change pointer update is active is done with a Function Ale_Component_Check This check does nothing else than to check, if this table has an entry or not. If there is an entry in TBDA1, the ALE change pointers are generally active. If this table is empty, change pointers are turned off for everybody and everything, regardless of the other settings. The two points read like you had the choice between turning it on generally or selectively. This is not the case: you always turn them on selectively. The switch to turn on generally is meant to activate or deactivate the whole mechanism. The change pointers which have not been processed yet, can be read with a function module. Call Function 'CHANGE_POINTERS_READ' The ABAP RBDMIDOC will process all open change pointers and distribute the matching IDocs. When you want to send out an IDoc unconditionally every time a transaction updates, you better use the workflow from the change documents. To generate the IDOCS in case of change pointers we need to use the standard report RBDMIDOC we need execute the follwing t.code BD61:to activate the change pointers globally BD50,BD52: to activate message types ,and to enable the fileds for change pointers Hope this link will help you regarding Change Pointer... http://help.sap.com/saphelp_erp2005vp/helpdata/en/ba/c9c1c31253ed4596e3bbb74922cd4a/frameset.htm Change Pointer Configuration and extraction in HRPay. Infotypes to be logged are in: V_T585A, V_T585B, & V_T585C Please view the table contents to understand the structure of these tables and how they are linked. These help you identify the cluster tables which store the data. Payroll Cluster Table PCL4 contains the cluster table reference. (Please refer to the table structure below: Payroll Custer Tables http://www.planetsap.com/HR_ABAP_payroll.htm Cluster tables combine the data from several tables with identical (or almost identical) keys into one physical record on the database. Data is written to a database in compressed form. Retrieval of data is very fast if the primary key is known. Cluster tables are defined in the data dictionary as transparent tables. External programs can NOT interpret the data in a cluster table. Special language elements EXPORT TO DATABASE, IMPORT TO DATABASE and DELETE FROM DATABASE are used to process data in the cluster tables. PCL1 - Database for HR work area; (long text, etc) PCL2 - Accounting Results (time, travel expense and payroll); (payroll results) PCL3 - Applicant tracking data; PCL4 - Documents, Payroll year-end Tax data (change logs, etc) Database Table PCL4 The database table PCL4 contains the following data areas: LA change logs (long term documents) SA Short- Term Documents for HR Master Data SB Short-Term Documents for Applicant Master SRTFD (PC400) = trans class always A for master data (1) pernr (8) info type (4) modified date (8) modified time (8) seqnr (4) Please note that for the extraction of data, you have to use the date portion of the SRTFD and not the field value AEDTM(since it is not primary key). Naming convention for INCLUDES when defining clusters. These INCLUDES will define the work area key above and the cluster data that is returned from an IMPORT: RPCnxxy0 n = 1, 2, 3 or 4 (for PCL1, PCL2, PCL3, PCL4) xx = cluster ID y = country grouping (0 for international otherwise country indicator T500L) Description of Cluster Data using Cluster RX as an Example The data description is stored in the include RPC2RX00 in accordance with the above naming conventions. RPC1TX00 - Long text cluster ID in table PCL1 RPC2RUU0 - Payroll results for the US cluster ID in table PCL2 RPC4LA00 - Change log cluster ID in table PCL4 Importing Data (I) The IMPORT command causes data objects with the specified key values to be read from PCLn. If the import is successful, SY-SUBRC is 0; if not, it is 4. REPORT ZRPIMPORT. TABLES: PCLn. INCLUDE RPCnxxy0. "Cluster definition Fill cluster Key Import record IMPORT TABLE1 FROM DATABASE PCLn(xx) ID xx-KEY. IF SY-SUBRC EQ 0. Display data object ENDIF. See sample program for long text. Importing data (II) Import data using macro RP-IMP-Cn-xy. Check return code SY-SUBRC. If 0, it is successful. If 4, error. Need include buffer management routines RPPPXM00 REPORT ZRPIMPORT. *Buffer definition INCLUDE RPPPXD00. DATA: BEGIN OF COMMON PART 'BUFFER'. INCLUDE RPPPXD10. DATA: END OF COMMON PART 'BUFFER'. *import data to buffer RP-IMP-Cn-xy. .... *Buffer management routines INCLUDE RPPPXM00. Cluster Authorization Simple EXPORT/IMPORT statement does not check for cluster authorization. Use EXPORT/IMPORT via buffer, the buffer management routines check for cluster authorization. rpcbdt00 - include needed for importing from database PCL4(la) (Change log cluster ID) Please note that data for change pointers is stored at two levels: 1) Header which has the key info and 2) BELEGE which has the changed info ie. Old value and new value. Check standard program RPUAUD00 Applications which write change documents will also try to write change pointers for ALE operations. These are log entries to remember all modified data records relevant for ALE. Most applications write change documents. These are primarily log entries in the tables CDHDR and CDPOS. Change documents remember the modified fields made to the database by an application. They also remember the user name and the time when the modification took place. The decision whether a field modification is relevant for a change document is triggered by a flag of the modified fields data element. You can set the flag with SE11 by modifying the data element. For the purpose of distributing data via ALE to other systems, you may want to choose other fields, which shall be regarded relevant for triggering a distribution. Therefore R/3 introduced the concept of change pointers, which are nothing else than a second log file specially designed for writing the change pointers which are meant to trigger IDoc distribution via ALE. So the change pointers will remember the key of the document every time when a relevant field has changed. Change pointers are then evaluated by an ABAP which calls the IDoc creation, for every modified document found in the change pointers. The Change pointers are written from the routine CHANGEDOCUMENT_CLOSE when saving the generated change document. So change pointers are automatically written when a relevant document changes. The following function is called from within CHANGEDOCUMENT_CLOSE in order to write the change pointers. CALL FUNCTION 'CHANGE_POINTERS_CREATE' EXPORTING change_document_header = cdhdr TABLES change_document_position = ins_cdpos. Activation of change pointer update : Change pointers are log entries to table BDCP which are written every time a transaction modifies certain fields. The change pointers are designed for ALE distribution and written by the function CHANGE_DOCUMENT_CLOSE. Change pointers are written for use with ALE. There are ABAPs like RBDMIDOC which can read the change pointers and trigger an IDoc for ALE distribution. The change pointers are mainly the same as change documents. They however can be set up differently, so fields which trigger change documents are not necessarily the same that cause change pointers to be written. In order to work with change pointers there are two steps to be performed 1) Turn on change pointer update generally 2) Decide which message types shall be included for change pointer update R3 allows to activate or deactivate the change pointer update. For this purpose it maintains a table TBDA1. The decision whether the change pointer update is active is done with a Function Ale_Component_Check This check does nothing else than to check, if this table has an entry or not. If there is an entry in TBDA1, the ALE change pointers are generally active. If this table is empty, change pointers are turned off for everybody and everything, regardless of the other settings. The two points read like you had the choice between turning it on generally or selectively. This is not the case: you always turn them on selectively. The switch to turn on generally is meant to activate or deactivate the whole mechanism. The change pointers which have not been processed yet, can be read with a function module. Call Function 'CHANGE_POINTERS_READ' The ABAP RBDMIDOC will process all open change pointers and distribute the matching IDocs. When you want to send out an IDoc unconditionally every time a transaction updates, you better use the workflow from the change documents. Arunsri Posts: 307 Registered: 12/3/07 Forum Points: 246 Re: change pointers method Posted: Feb 27, 2008 11:08 AM in response to: satish abap E-mail this message Reply hi,, Activating Change Pointers Use You can activate change pointers in the HR system to avoid distributing the entire structure when you make changes to the HR-ORG model, and distribute instead only the changes that you have made. Procedure ... 1. In the Implementation Guide (IMG, transaction SALE), choose Modeling and Implementing Master Data Distribution Replication of Modified Data Activate Change Pointers - Generally. 2. Set the activation status Activate Change Pointers - Generally, and save your entry. 3. Choose the activity Activate Change Pointers for Message Types. 4. Set the active indicator for the message type HRMD_ABA. 5. Save your entries. also see this link, http://help.sap.com/saphelp_47x200/helpdata/en/ba/c9c1c31253ed4596e3bbb74922cd4a/frameset.htm http://help.sap.com/saphelp_47x200/helpdata/en/ba/c9c1c31253ed4596e3bbb74922cd4a/frameset.htm Check the links below; http://help.sap.com/saphelp_nw70/helpdata/en/f1/035c8cae3d11d3b540006094192fe3/frameset.htm http://help.sap.com/saphelp_nw70/helpdata/en/12/83e03c19758e71e10000000a114084/frameset.htm Reward if useful 1.BD61 - Activate change pointers generally. 2.BD50 - Activate change pointers for message type. 3.SCDO- Chnage document objects. 4.BD52 - Maintain table views. 5.BD60 - Additional data for message types. 6.WE20 - Partner profile. 7.BD64 - Distribution model. 8.Create a material by using req T.code. 9. Run the program RBDMIDOC by passing message type. 10.WE02 - IDOC list.
THE STEP BY STEP GUIDE FOR SUCCESSFUL IMPLEMENTATION OF DATA LAKE-LAKEHOUSE-DATA WAREHOUSE: "THE STEP BY STEP GUIDE FOR SUCCESSFUL IMPLEMENTATION OF DATA LAKE-LAKEHOUSE-DATA WAREHOUSE"