Change pointers in case of purcahse order

The scenario is to send data through idoc when i create/change delete certain fields in purchase order.
I hace used change pointer scenario for it
can u plz see what i have missed out in my configuration ..
Here are the steps i followed .
1) created a logical custom message us we81 .
2) created custom idoc using we 30
3) Linked custom mesage and idoc using we 82
4) Activated my custom message using bd50 .
5) Assigned fields to message using bd52 ie
Einkbeleg EKKO waers , EKPO-netpr ..etc
6) Assigned cutom message and custom function module
(z...smd_custommsg) via bd60
7) tried to execute the message using BD21 ..
Now the issue is that entries are being created in change document table(cdhrd/cdpos)
but no entry in BDCP/BDCPS..
please give your valuable inputs to it
Thanks In advance

hi,
You can acheive this by writing a custom program.
in the program you need to use function module   'CHANGE_POINTERS_READ' for reading the change pointers.
Give document object class as the object name in bd52 and give read_not_processed_pointers as 'X'.
Looping at the output table and using function module CHANGE_POINTERS_CREATE_DIRECT you can create an entry in bdcp table for the respective purchase order.
After this you can use   SUBMIT rbdmidoc WITH mestyp = message_type AND RETURN.
Regards
Sridevi S

Similar Messages

  • Change pointers in CRM for Product Data Extraction using MDM_CLNT_EXTR

    Hi All,
    We want to extract Product data in Delta mode using MDM_CLNT_EXTR.
    I think change pointers are activated in CRM system in a different way. Please let me know steps to activate change pointers in CRM system for Product Data.
    Thanks in advance for your help.
    Regards,
    Shiv

    Hi,
       Please follow the below steps fro change pointers.
    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 (i.e BD61 Activate Change Pointers ).
    3.      Choose the activity Activate Change Pointers for Message Types like ORDERS.
    4.      Set the active indicator for the message type .
    5.      Save your entries.
    warm regards
    Mahesh.

  • Change pointers not being generated in case of Z fields (extension IDOC)

    Hello,
    My requirement is of generating change pointers when fields from customer master change ( z fields).
    Actually this is working for standard fields, but not for z fields .
    I have created a Z segment and added fields 'ADRC-STR_SUPPL3' & 'ADR3-FAX_NUMBER'  and have written appropriate code for populating them in 'ZXVSVU01' of exit 'EXIT_SAPLVV01_001' .
    However, when I try to run change pointers transaction BD21, it says 0 idocs and 0 communication params generated.I have added those fields properly in BD52 (object class - ADDRESSE).
    If you change standard fields along with Z fields, it works, but if you change only the Z fields , it doesn't trigger a change pointer.
    Is there something extra that we need to do in case of object class 'ADRESSE' ?
    Please help.
    Thanks,
    Rachna.

    Were you able to resolve the issue?
    If yes, could you please share what was done to resolve it.
    Your help will be greatly appreciated.

  • Process order change pointers - not getting logged

    Hi,
    I have defined change pointers for Process order for one custom message type in BD52 (and BD50 as well.). I have included AFKO, AFPO and AUFK tables (e.g. fields like KEY, GAMNG).
    But no change pointers are getting logged when ever I create or change a process order through COR1/2.
    Am I missing something?.. (and yes Change pointer are active 'Globally'.)
    Thanks.

    hi,
    generally change pointers (table: BDCP) are saved during change document creation (table CDHDR),
    but due to performance reasons this funcionality was switched off...
    see oss note 390635...
    I think, if you want - you must write own code in which change pointers will be created,
    look at these function modules, should be helpful:
    ORDER_WRITE_DOCUMENT
    CHANGEDOCUMENT_CLOSE
    CHANGE_POINTERS_CREATE_LONG
    regards, darek

  • How to implement Change pointers for Purchase order - ME22N - Custom Fields

    Hi Experts,
    Can you please tell me how to implement - Change Pointer for Custom fields in IDOC.
    I am working on IDOC - For purchase order - acknowledgements - in custom screen/tab in ME22N.
    Everything is working fine according to my requirement.
    All i need to know is the process of - Creating/Change - Change pointers for Custom fields.
    1.How to implement change pointers for custom fields.
    2.Can we maintain - Change Document - for custom fields at data element level?
    P.S. - I have browsed many previous - forums before posting a new discussion.
    please share your inputs...
    explaining how to create/implement - change pointers for custom fields will help me .
    Regards,
    Karthik Rali.

    Hi,
    To maintain Change Document for custom field:
    1. Check if "Change document" checkbox is set in data element.
    2. Find Change Document Object for transaction.
       You can use SQL trace - ST05.
       Look there for line with table CDHDR and statement insert values
       (for example for transaction KA02 Change Document Object is KSTAR)
    3. Regenerate update program for this Change Document Object in transaction SCDO
    Change documents for z-fields schould be generated.
    I am not sure about change pointers but they are configured somehow in BD61 and BD50.

  • Using change pointers for Process orders

    Hi Experts,
    We have a requirement where we need to send idocs when a process order is changed. Since process order data is a transactional data, can we still use change pointers?
    We tried using the message type LOIPRO and it is giving an error saying that this message type cannot be sent with change pointers.
    Can anyone guide me with the process and steps to get this done?
    Thanks.

    For change pointer, you would have to deligate the business object with t.code SWO1. To handle it, it would take too much time to explaint.
    If you use the BAdI, and call function in this way : "  CALL FUNCTION 'FUNCTION_NAME' IN BACKGROUND TASK AS SEPARATE UNIT EXPORTING ....." the function would executed only after commit (when you call the funtion, it holds in a queue for commit. In roll back, it get disapeared).
    User method in_update from the BAdI.
    Edited by: Lior Tabib on Oct 19, 2010 4:18 PM
    Edited by: Lior Tabib on Oct 22, 2010 7:27 PM

  • Activate Change Pointers for Purchase Orders

    I thought that change pointers would be active by default for purchase orders, but when I change a purchase order field that should be change pointer enabled, nothing is written in table BDCP.
    Here's what I have done:
    1) Used transaction SCDO to look at the change Documents.
    2) Identified object EINKBELEG (Purchasing Document) as the likely object.
    3) Verified that table EKKO is one of the tables in the object.
    4) Verified that the data element of the field that I am changing in the PO - ZBD2T - is change pointer enabled (it is).
    I cannot get any entry created in BDCP with these settings; change pointers are working for other documents.
    I also put a breakpoint on the sebugger for the function module EINKBELEG_WRITE_DOCUMENT in the update task, and I cannot see it being triggered, so I am wondering if I am doing the correct thing here.
    Can somebody please tell me what I am doing wrong?
    BR,
    Tony.

    Hi Guys,
    This issue was solved by implementing the BTE 4005 (OPEN_FI_PERFORM_00004005_E). This particular event is triggered in the update task for saving changes to business object. So In my function module (corresponding to BTE), I have explicitly called the method to write an entry in COM_SE_CPOINTER, because we just need the reference of business object for which classification data is changed.
    Please refer the below code for more clarity.
    BTE position: -
    method called in FM to write change pointer.
    Thanks anyways, for all the responses.
    Cheers,
    Shreya

  • Change pointers in ALE/IDOCs

    Hi guys,
                Can any let me know step by procedure to implenent change pointers using IDocs including ALE settings as i am new to this concept.
            Any step by step example will be helpful. useful answers will be rewarded.
    Thanks in advance.
    Regards,
    vinay

    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 field’s 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 field’s 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

  • Change Pointers Issue

    Hi
    Pls any body can give me step by step settings to save the changes to the DB tables(Change Log)
    I am trying to read change pointers for a 1) FAGL_011PC  table.But when ever i change the data using T Code FSE2 the data is saving in this table but the changes are not getting saved in CDHDR/CDPOS.
    Chagne Log Check Box in tech Settings I Activated.
    What shouls i Do ?
    Thanks in Advance
    PREETI Raj

    Hi,
    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 field’s 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.
    Regards,
    Shiva Kumar

  • Why change pointers for master data, why not change message?

    Hi Gurus,
    I have one doubt about Idoc.
    When changes to master data has to be sent Change pointers are configured and used. (CDPOS & CDHDR). In case of the transaction data change change idoc is used as is the case with orders (we use ORDCHG for ORDERS message type to send the chnage details to a order which was already sent to other system.
    Why we can't use change idoc or message type whatever, instead of Chnage pointers in case of master data or vice versa in case of transaction data.
    Your valuable input will be rewarded with suitable points!!
    -B S B.

    Change pointers are getting stored in the tables BDCP and BDCPS. As SAP suggests these tables should be as small as possible. And Master data are not much frequently changed data.
    As you compare with the transactional data, you need to change them many times in the real scenario. If we also process the transaction data via chnage pointer, these changes BDCP is getting more and more entries.
    RBDCPCLR is the program used to process the change pointer. If you have much data in the BDCP table, this program will take much time to run.
    So, we use the change pointers for the master data only.
    Regards,
    Naimesh Patel

  • Change pointers to trigger the IDOC

    HI
    I am having a selection screen with fields to create a custom info record (transaction VD51/ VD52 )
    Customer
    material
    salesorganisation
    distribution channel
    division
    if we can use change pointers to determine when procedure is triggered.
    Please provide the steps for that (including change document)or we need to check the CDHDR table using the following fields.
    Plz suggest

    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 field’s 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.
    Reward if useful

  • UOM changes from CS to CCM in Order Modification.

    Dear ISA Experts,
       When I view the old orders and click the "Change" button to modify the order, all the line items UOM changes from CS(Case) to CCM(Cubic CentiMeter). However it works well in the regular order simulation. Appreciate any pointers towards the solution.
    Thanks!

    Mark,
      I have issues displaying the session tracing which I am working on to display the session log. I figured out that the FM :  ISA_GET_UNITS_FOR_MATERIALS is returning 18 records with different UOMs for each material. The first one being CCM. The java class : SalesDocumentHelpValues.java calls this RFC and consider only the first record for each material and hence returning CCM as UOM for every material.
         String lastProductId = "";
         do{
              String currentProductId = unitsPerProduct.getString("MATNR");
                    if (!currentProductId.equals(lastProductId))
              lastProductId = currentProductId;
         }while (unitsPerProduct.nextRow());
    Thanks!
    Vivek.

  • Change Pointers Needed

    Hi All,
    Please give me a scenario to expalin about change pointers.
    Regards,
    Srik

    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 field’s 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 points hope this helps u,

  • What are change pointers

    What are change pointers?
    where do we process them,
    where do we configure them
    and what is its fuinctionality
    please advice
    Edited by: kittu reddy on Feb 11, 2008 5:02 AM
    Edited by: kittu reddy on Feb 11, 2008 5:03 AM

    hi,
    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 field’s 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.

  • Yoga 2 pro continually changes mode while case is closed

    I love my Yoga 2 Pro but there is one thing I've been unable to figure out:  It seems as though the mode (e.g. tent vs. tablet vs. laptop) keeps changing when the case is closed and the computer is moving around.
    I'll close the lid which, based on my power settings should put it to sleep (though I guess I have no way of really knowing because the lid is closed), put it in my bag, and as I'm walking around it keeps making the sound that it makes when I explicitly change the mode (e.g. when I fold the keyboard back to go from laptop mode to tablet mode).
    This is incredibly annoying - either I have to constantly hear this tone coming from my bag, or I have to stop, get the computer out, log in, shut it down, and lose the state of what I was doing (browser tabs, window position, etc.).  
    This also makes me worry that the battery is draining while the lid is closed.
    Is this a known issue, and is there a fix?  Thank you!

    I have this exact same problem, and after having my new Yoga 2 11 for only a week, it has become increasingly annoying. Is there anyway to fix this? It's frustrating to have to shut my computer down completely in order to get it not to battery drain or to continue to switch mode. I find that whenever I put it to sleep and close the lid, it powers down for a few seconds but then makes the notification sound - upon opening the lid it says that I am in "Tablet Mode" even though the computer had been compeltely closed. I would really like to fix this, or I may just end up taking the computer back.

Maybe you are looking for

  • How to track Letter of credit in FI Module.

    Dear Gurus, (Exports scenarios) I have configured letter of credit for customer's export scenario. At end user level we are creating letter for credit using VX11N. Once the letter of credit is created, we link it to the sales order at header level in

  • Stop Firefox from reverting back to Google Search Results when opening a page from results list

    When I click on one of the results from a Google search, I have it open the page in a new window. The page opens in the new window just fine, but instead of letting me view the page in the new window, Firefox takes me back to the Google Search result

  • SQL server Database - Command based Crystal reports parameters issue

    Hi, We are migrating Oracle to SQL server database and trying to point our crystal reports  to new database. In command based reports, the parameters are defined in the where clause like this    (' All' in {?Country} or loc.country in {?Country} ) On

  • What's updated in the User Guide?

    Does anyone know what was specifically updated in the User Guide? (Is there a PDF comparison tool? I do have the original Guide saved on my desktop.) iPhone User's Guide (Manual) Posted: 08/01/2007 http://manuals.info.apple.com/en/iPhoneUserGuide.pdf

  • ICA-compatible device + ImageCapture Tiger SDK

    I have a brand new iMac running Leopard 10.5.2. I ran the CameraCheck program from the ImageCaptureTigerSDK, and it reports "number of ICA devices found: 0". Question 1: Isn't iMac's built-in camera ICA-compatible? Question 2: Is it true any camera/s