Info de las tablas CDHDR y CDPOS
Estimadas (os)
Requiero obtener una serie de datos de las tablas CDHDR y CDPOS y quisiera consultarles si existe alguna tabla que integre la información de ambas (así como la transacción: s_alr_87101239 pero a nivel tabla (esta última transacción tiene asociada la estructura CDDISP_STR (que integra la CDHDR y CDPOS)
Muchas gracias,
Saludos,
Marco A. Cabrera
Marco:
Yo jugaría un poco con el comando "Referencia de utilización" de la SE11. Podrías ver las vistas que existen para cada tabla y verificar si hay alguna que integre a las dos.
Si no existe al nivel de tabla quizás existe integración al nivel de campo, también desde la SE11 podés ver dónde se usan los elementos de datos clave de ambas tablas, y ver si existe una tercer tabla que los relacione.
Espero haber sido de ayuda,
Saludos,
Federico.
Similar Messages
-
SMD Tool. No change pointers log on table CDHDR nor CDPOS.
Hi everyone.
I'm trying to use the SMD tool. I've created my Message Type, and my Change Document Object(Tcode SCDO).
Priorly, I've tested the ALE Layer configuration, by sending iDocs of my message type directly with the MASTER_IDOC_DISTRIBUTE Function Module, and it works fine. I mean, I have no problem with sending iDocs or the ALE configuration.
In the transaction SCDO I've logged my Object Type, and I've assigned the table THOC (Public Holiday Calendar), from wich I want to monitoring the field DATUM, wich is flagged as "Copy as Internal Table" and "Doc. for individual fields at delete". Also in this transaction (SCDO), I've created the Update pgm.
In transaction BD95, I've inserted my ALE Object Type, and I've assigned the table THOC and the field DATUM to my Object. Field DATUM is referenced to the DATUM Data Element. Due that the Data Element DATUM isn't flagged as "Change Document", I've changed the Data Element referenced by the field DATUM for one copy of the Data Element DATUM, wich I've flagged as "Change Document".
My Message Type is alredy on the following tables:
Tcode BD50: The checkbox for monitoring Change Pointers is on.
Tcode BD52: Where I've assigned my ALE Object, the table THOC and the field KEY.
Tcode BD59: Where I've assigned to it the segment of my Message Type, and the field (same field type) wich corresponds to the field DATUM of table THOC.
Tcode BD60: The ref. msg. is the same as my Message Type, i've created the function module to create the iDocs containing the delta information (via tcode BD21 I alredy reach this FM that I've created), there's no table nor Object Type Associated (in this step I've tried both cases, with table THOC and my Object Type assigned, and both not assigned), the checkboxes "ID for reducible message type" and "BDCP2 OK" are off.
The Change Pointers in Tcode BD61 is on.
After all this configuration steps, I still cannot see logs of my Change Document Type in tables CDHDR nor CDPOS. Besides, when I run Tcode BD21 with my message type, and when the program reaches my Function Module (Z_MASTERIDOC_CREATE_SMD_xxxxx), the function CHANGE_POINTERS_READ with my ALE Object gets no records. At this step, the same function (CHANGE_POINTERS_READ) with another ALE Object does get records.
Table BDCPS alredy contains records for my Message Type, and in those records, the "Process" field is empty.
Am I missing one step or something?
Can anyone help me please?
Thanks in advice.
Regards.Hi everyone.
I'm trying to use the SMD tool. I've created my Message Type, and my Change Document Object(Tcode SCDO).
Priorly, I've tested the ALE Layer configuration, by sending iDocs of my message type directly with the MASTER_IDOC_DISTRIBUTE Function Module, and it works fine. I mean, I have no problem with sending iDocs or the ALE configuration.
In the transaction SCDO I've logged my Object Type, and I've assigned the table THOC (Public Holiday Calendar), from wich I want to monitoring the field DATUM, wich is flagged as "Copy as Internal Table" and "Doc. for individual fields at delete". Also in this transaction (SCDO), I've created the Update pgm.
In transaction BD95, I've inserted my ALE Object Type, and I've assigned the table THOC and the field DATUM to my Object. Field DATUM is referenced to the DATUM Data Element. Due that the Data Element DATUM isn't flagged as "Change Document", I've changed the Data Element referenced by the field DATUM for one copy of the Data Element DATUM, wich I've flagged as "Change Document".
My Message Type is alredy on the following tables:
Tcode BD50: The checkbox for monitoring Change Pointers is on.
Tcode BD52: Where I've assigned my ALE Object, the table THOC and the field KEY.
Tcode BD59: Where I've assigned to it the segment of my Message Type, and the field (same field type) wich corresponds to the field DATUM of table THOC.
Tcode BD60: The ref. msg. is the same as my Message Type, i've created the function module to create the iDocs containing the delta information (via tcode BD21 I alredy reach this FM that I've created), there's no table nor Object Type Associated (in this step I've tried both cases, with table THOC and my Object Type assigned, and both not assigned), the checkboxes "ID for reducible message type" and "BDCP2 OK" are off.
The Change Pointers in Tcode BD61 is on.
After all this configuration steps, I still cannot see logs of my Change Document Type in tables CDHDR nor CDPOS. Besides, when I run Tcode BD21 with my message type, and when the program reaches my Function Module (Z_MASTERIDOC_CREATE_SMD_xxxxx), the function CHANGE_POINTERS_READ with my ALE Object gets no records. At this step, the same function (CHANGE_POINTERS_READ) with another ALE Object does get records.
Table BDCPS alredy contains records for my Message Type, and in those records, the "Process" field is empty.
Am I missing one step or something?
Can anyone help me please?
Thanks in advice.
Regards. -
Condition information is not reflecting in tables CDHDR and CDPOS
Hi,
When a Purchase order condition information is changed or created, the changes are not reflecting in the table CDHDR and CDPOS.
Please can someone suggest a solution .Hi Raj
When there are any changes in the conditions, the overall difference will be reflected in field <b>EFFWR i.e Effective Value of Item.</b> Please check...
Kind Regards
Eswar -
Problem in updating table's CDHDR and CDPOS
Hello Expert's ,
I have created one z' transaction code to update the VIEW name ZV_PO which is the combination of three tables: EKKO, EKPO and EKKN. These tables are getting updated with the changed values. But one thing the sap standard tables CDHDR and CDPOS are not getting updated .
Can any one please tell me , whether updating on VIEW's will not make update in the sap standard tables CDHDR and CDPOS as the activition log will not be there in VIEW's compared to table's and how to make it the changes reflected in the table's CDHDR and CDPOS.
Points will be rewarded 100%.
Thanks in advance .
Ashok
Edited by: ASHOK on Mar 17, 2008 11:56 AMHi Thomas,
Thanks for your reply . Can you please little bit brief about view maintanance and the transaction SCDO object EINKBELEG.
When i looked into the transaction SCDO i could seen the following tables ,
EKEK
EKES
EKET
EKKN
EKKO
EKPA
EKPO
KONVC
Kindly Liitle brief about your solution .
Assured Points 100% !
Thanks in advance for your support!
With Best Regards,
Ashok -
Reg : CDHDR and CDPOS.......
HiAll,
I need to capture the date at the schedule line level which was changed at sometime.
I know that I have to go to CDHDR and CDPOS tables to capture the changes.
But in order to access those tables, we need the object and key some fields .
For schedule lines what are the values do we need to pass?
Any suggestions are helpful.
Thanks and Regards
Abhilash.Hi Dude,
REPORT z_alv_cdhdr_cdpos.
*This ALV report displays tables CDHDR and CDPOS *
TYPE-POOLS slis. " Global ALV types
* constants
CONSTANTS : c_x VALUE 'X',
c_eb9 TYPE syucomm VALUE '&EB9',
c_refresh TYPE syucomm VALUE '&REFRESH'.
* types
TYPES :BEGIN OF ty_s_cdhdr.
INCLUDE TYPE cdhdr.
TYPES :checkbox TYPE xfeld,
END OF ty_s_cdhdr,
BEGIN OF ty_s_cdpos.
INCLUDE TYPE cdpos.
TYPES : checkbox TYPE xfeld,
END OF ty_s_cdpos.
* internal tables
DATA : gs_cdhdr TYPE cdhdr, " Change document header
* Layout for ALV
gs_layout TYPE slis_layout_alv,
* Change document header
t_cdhdr TYPE TABLE OF ty_s_cdhdr.
* selection screen design
SELECT-OPTIONS : s_objcls FOR gs_cdhdr-objectclas OBLIGATORY,
s_objtid FOR gs_cdhdr-objectid,
s_chngnr FOR gs_cdhdr-changenr,
s_usrnam FOR gs_cdhdr-username DEFAULT sy-uname,
s_udate FOR gs_cdhdr-udate DEFAULT sy-datum,
s_time FOR gs_cdhdr-utime,
s_tcode FOR gs_cdhdr-tcode,
s_plncnr FOR gs_cdhdr-planchngnr,
s_chngno FOR gs_cdhdr-act_chngno,
s_wsplnd FOR gs_cdhdr-was_plannd,
s_chngid FOR gs_cdhdr-change_ind.
SELECTION-SCREEN SKIP.
PARAMETERS p_max TYPE numc3 OBLIGATORY DEFAULT '200'.
* start-of-selection .
START-OF-SELECTION.
PERFORM f_read_data.
* end-of-selection .
END-OF-SELECTION.
PERFORM f_display_cdhdr.
*Form f_read_data
FORM f_read_data.
*Read Change document header
SELECT * INTO TABLE t_cdhdr
UP TO p_max ROWS
FROM cdhdr
WHERE objectclas IN s_objcls
AND objectid IN s_objtid
AND changenr IN s_chngnr
AND username IN s_usrnam
AND udate IN s_udate
AND utime IN s_time
AND tcode IN s_tcode
AND planchngnr IN s_plncnr
AND act_chngno IN s_chngno
AND was_plannd IN s_wsplnd
AND change_ind IN s_chngid.
ENDFORM. " F_READ_DATA
*Form f_display_cdhdr
FORM f_display_cdhdr.
DATA :ls_event_exit TYPE slis_event_exit,
lt_event_exit TYPE slis_t_event_exit.
gs_layout-zebra = c_x.
gs_layout-colwidth_optimize = c_x.
gs_layout-group_change_edit = c_x.
gs_layout-allow_switch_to_list = c_x.
gs_layout-box_fieldname = 'CHECKBOX'.
*Activate 'More' button
CLEAR ls_event_exit.
ls_event_exit-after = c_x.
ls_event_exit-ucomm = c_eb9. " More
APPEND ls_event_exit TO lt_event_exit.
*Activate refresh button
CLEAR ls_event_exit.
ls_event_exit-after = c_x.
ls_event_exit-ucomm = c_refresh. " Refresh
APPEND ls_event_exit TO lt_event_exit.
*Display ALV
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
i_callback_program = sy-cprog
i_callback_user_command = 'USER_COMMAND'
i_callback_pf_status_set = 'PF_STATUS_SET'
i_structure_name = 'CDHDR'
is_layout = gs_layout
it_event_exit = lt_event_exit
i_save = 'A'
TABLES
t_outtab = t_cdhdr.
ENDFORM. " F_DISPLAY_CDHDR
*FORM USER_COMMAND *
FORM user_command USING u_ucomm TYPE syucomm
us_selfield TYPE slis_selfield. "#EC CALLED
*Macro definition
DEFINE m_sort.
add 1 to ls_sort-spos.
ls_sort-fieldname = &1.
ls_sort-up = c_x.
append ls_sort to lt_sort.
END-OF-DEFINITION.
DATA :
ls_cdhdr TYPE ty_s_cdhdr,
ls_sort TYPE slis_sortinfo_alv,
lt_sort TYPE slis_t_sortinfo_alv,
*Change document items
lt_cdpos TYPE TABLE OF ty_s_cdpos.
CASE u_ucomm.
WHEN '&IC1' OR c_eb9.
PERFORM check_marked USING us_selfield.
*Read Change document items
LOOP AT t_cdhdr INTO ls_cdhdr WHERE checkbox = c_x.
SELECT * APPENDING TABLE lt_cdpos
FROM cdpos
WHERE objectclas = ls_cdhdr-objectclas
AND objectid = ls_cdhdr-objectid
AND changenr = ls_cdhdr-changenr.
ENDLOOP.
m_sort 'CHANGENR'.
*Display ALV
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
i_callback_program = sy-cprog
i_structure_name = 'CDPOS'
is_layout = gs_layout
it_sort = lt_sort
i_save = 'A'
TABLES
t_outtab = lt_cdpos.
WHEN c_refresh.
PERFORM f_read_data.
us_selfield-refresh = c_x.
ENDCASE.
ENDFORM. " USER_COMMAND
*Form CHECK_MARKED
*What has been marked in t_cdhdr
FORM check_marked USING us_selfield TYPE slis_selfield.
FIELD-SYMBOLS :
TYPE ty_s_cdhdr.
READ TABLE t_cdhdr TRANSPORTING NO FIELDS
WITH KEY checkbox = c_x.
IF NOT sy-subrc IS INITIAL AND
NOT us_selfield-tabindex IS INITIAL.
READ TABLE t_cdhdr INDEX us_selfield-tabindex ASSIGNING .
-checkbox = c_x.
ENDIF.
ENDFORM. " CHECK_MARKED
*FORM PF_STATUS_SET *
FORM pf_status_set USING ut_extab TYPE slis_t_extab. "#EC CALLED
*Display 'Refresh' button and 'More' button
DELETE ut_extab WHERE fcode = c_refresh
OR fcode = c_eb9.
SET PF-STATUS 'STANDARD_FULLSCREEN' OF PROGRAM 'SAPLKKBL'
EXCLUDING ut_extab.
ENDFORM. " PF_STATUS_SET
* how to use the function module
*--- how to use the function module CHANGEDOCUMENT_READ_HEADERS
REPORT zchange_headers .
DATA: BEGIN OF it_cdhdr OCCURS 0.
INCLUDE STRUCTURE cdhdr.
DATA: END OF it_cdhdr.
PARAMETERS: begdate LIKE cdhdr-udate ,
enddate LIKE cdhdr-udate ,
begtime LIKE cdhdr-utime ,
endtime LIKE cdhdr-utime .
INITIALIZATION .
begdate = sy-datum .
enddate = sy-datum .
begtime = '000001' .
endtime = '235959'.
CALL FUNCTION 'CHANGEDOCUMENT_READ_HEADERS'
EXPORTING
date_of_change = begdate
objectclass = 'EINKBELEG' "Object Class T-Code: SCDO
time_of_change = begtime
username = sy-uname
date_until = enddate
time_until = endtime
TABLES
i_cdhdr = it_cdhdr
EXCEPTIONS
no_position_found = 1
wrong_access_to_archive = 2
time_zone_conversion_error = 3
OTHERS = 4.
IF sy-subrc NE 0.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
* WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
IF sy-subrc = 0.
LOOP AT it_cdhdr.
WRITE:/ it_cdhdr-objectclas,
it_cdhdr-objectid,
it_cdhdr-changenr,
it_cdhdr-username,
it_cdhdr-udate,
it_cdhdr-utime,
it_cdhdr-tcode.
ENDLOOP.
ENDIF. -
Merging BSEG ,CDHDR and CDPOS.
How can i merge BSEG which is a cluster table,CDHDR and CDPOS(Cluster Table)??
>
sumanth reddy wrote:
YOU CAN MERGE THE FIELDS THROUGH INNER JOIN.
BSEG is a cluster table so u can not use an inner join on it.
кu03B1ятu03B9к -
How to Update CDHDR and CDPOS for a ZTable.
Hi Gurus,
I have created a change document to update tables CDHDR and CDPOS ,which updates these tables when i insert a new record to my ZTABLE.Insertion of a new record is working fine,but when i update a existing record the CHANGEID COLUMN in CDPOS table is 'D'.
Can anyone expalin be why this is happening.
Regards,
Venu.Hi Gautam,
Below is the code i have written. i guess, i have passed write values, if not let me know.
Hope u have worked on it.if possible can u send me the code.
CALL FUNCTION 'MAKTX_WRITE_DOCUMENT'
EXPORTING
objectid = 'MAKTX'
tcode = 'Z100'
utime = sy-uzeit
udate = sy-datum
username = sy-uname
PLANNED_CHANGE_NUMBER = ' '
object_change_indicator = 'U'
PLANNED_OR_REAL_CHANGES = ' '
NO_CHANGE_POINTERS = ' '
upd_icdtxt_maktx = 'U'
upd_zchg_doc = 'U'
TABLES
icdtxt_maktx = itab3
xzchg_doc = itab1 "New Values
yzchg_doc = itab2 "Old Values
Regards,
Venu. -
CDHDR and CDPOS tables are not updated
Hi,
When I am trying to change (or delete) Project definitions or WBS elements (changed all its related data which have change document ticked in its data element) those changes are not captured in CDHDR and CDPOS tables.
Here in our system PROJ object class exists in SCDO t-code and has all its generated programs, but still not able to find changes in CDHDR and CDPOS tables.
Can anybody plz let me know if I am missing anything or PROJ is not the appropriate object class or does BASIS team need to do any configuration to capture change documents in CDHDR or CDPOS tables because I do not see not even one record with PROJ object class in those tables.
Appriciated for quick response.
Regards,
M, ManoharHi Manohar,
Even we have project system in my project.We are able to see the changes and we did not done any settings for that.Just check with your basis people else raise an oss note.I did not see any sap notes also related to that.
Regards,
Madhu. -
How to use CDHDR and CDPOS tables
Hello Gurus,
How can the data be extracted from CDHDR and CDPOS tables ?
For example, I want to find the changes for the material master, what is the object need to be given in the OBJECT value etc..
I tried to use restricting the transaction MM02 and the date valid from and to, but it is taking longer time.
Appreciate, if you can provide the objects which can be used to track the changed data like Production orders etc..
Thanks
AadhyaHi Aadhya,
For the Change Document Object (OBJECTCLAS), you can use the following item:
MATERIAL = material master
ORDER = production order/maintenance order
EINKBELEG = purchasing document
VERKBELEG = sales document
The Object Value (OBJECTID) is usually the object's number, such as material number, production order number, etc.
Get the Document Number (CHANGENR) and go to CDPOS to see the changes detail.
Regards,
Julian -
Use of CDHDR and CDPOS Table in Query
Hi all,
I am having requirement where i need to fetch the data from the CDHDR and CDPOS by passing the release indicator from EKKO.
I would like to know whether the performance will b the issue with this as the CDHDR and CDPOS are the tables which consist of Huge data.
Pls let me know what will b the impact on performance and other things..
Regards
KKHi,
Pls chk this links, might be helpful;
https://forums.sdn.sap.com/click.jspa?searchID=5749799&messageID=1456945
Re: Delta - Records changed directly in table
Generic delta queue for CDHDR
LBWE, delta extraction without BW
http://www.sap123.com/showthread.php?t=47
Regards
CSM Reddy -
Unable to join the tables CDHDR, CDPOS
Hello,
I want to create a Query connecting tables CDHDR & CDPOS to extract cost center details which are changed. To be precise, when cost center details are changed using transactions KS02 & KS03, I want to extract those details and run the report. I am unable to join the tables using SAP Queries SQ01, SQ02, SQ03.
Kindly suggest me regarding the same.
Thanks in advance.
Regards
Sravan Mulumudi.Hi Jeve,
I was testing the report S_ALR_87012308, but this displays changes done to G/L accounts. I have tried every possibility. Could you please explain further ?
Regards
Sravan. -
Price change in Schedule agreement but not updated in CDHDR and CDPOS
Hi Experts
We have change price in SA ,please see the below screen shot. But these changes not update in CDHDR and CDPOS. We can see current rate in ME33L.
Please guide how to update these changes.
Regards
Parkash ChandGenerally in standard, the changes logs are saved into table CDPOS and CDHDR.
Its working fine in my system.
Can you see the changes log with regards to document number by running program RSSCD200.
Go to SE38 or SA38, enter the program RSSCD200 then press execute.
Enter * in object class and enter the document number
Then press execute. You can find more details into the wiki content Steps to enable logging of changes in change documents - Code Gallery - SCN Wiki -
To fetch from CDHDR and CDPOS using FM CHANGEDOCUMENT_READ_RANGES
Hi all,
Please let me know how to fetch the Details from CDHDR and CDPOS using Function Module CHANGEDOCUMENT_READ_RANGES. If possible Clear me with an Example. It has to fetch the datas of Table KNVV
KNV1 etcc.... Separately for the Corresponding Table Selected In Report..
With regards,
Sudhakar Govndaraj.Hi Sudhakar,
cdhdr-objectclas = 'MATERIAL'.
cdhdr-objectid = t_mara-matnr.
CALL FUNCTION 'CHANGEDOCUMENT_READ_HEADERS'
EXPORTING
date_of_change = cdhdr-udate
objectclass = cdhdr-objectclas
objectid = cdhdr-objectid
time_of_change = cdhdr-utime
username = cdhdr-username
TABLES
i_cdhdr = icdhdr
EXCEPTIONS
no_position_found = 1
OTHERS = 2.
CHECK sy-subrc EQ 0.
DELETE icdhdr WHERE change_ind EQ 'I'.
CHECK NOT icdhdr[] IS INITIAL.
LOOP AT icdhdr.
CHECK icdhdr-udate IN period.
CHECK icdhdr-username IN name.
CALL FUNCTION 'CHANGEDOCUMENT_READ_POSITIONS'
EXPORTING
changenumber = icdhdr-changenr
IMPORTING
header = cdhdr
TABLES
editpos = icdshw
EXCEPTIONS
no_position_found = 1
OTHERS = 2.
CHECK sy-subrc EQ 0.
LOOP AT icdshw.
CHECK icdshw-text_case EQ space.
MOVE-CORRESPONDING icdshw TO itab.
MOVE-CORRESPONDING icdhdr TO itab.
MOVE icdshw-tabkey+3 TO itab-matnr.
APPEND itab.
ENDLOOP.
ENDLOOP.
Please refer the blog
/people/erwan.lebrun/blog/2007/03/09/documents-how-to-track-changes-through-abap
Edited by: Rahul Babukuttan on Nov 26, 2010 11:38 AM -
Hi,
Currently we have a generic datasource on CDHDR for a limited TCODE.
Now the requirement is to include the line items as well.
When I use document number to fetch the line items. It has one to many relationship.
Could you please advise what should be the solution to get the informaiton from both CDHDR and CDPOS..
Thanks in advance
MuizHi,
There are two way to do that.
1: Create a data base view on both the table. And use the view for creating the generic DS in RSO2.
2: Create a FM base generic data source. In the FM you can use join condition to fetch the data from Both the table.
3: Query base generic data source is not advisable here.
Thanks -
Why do CDHDR and CDPOS have not logged my changes
CDHDR and CDPOS record numbers are still the same after I changed a material's characteristic value in MM02 (Classification tab).
They are supposed to have a new logged record, aren't they? or
Did I read data from the wrong table?
Any help would be appreciatedHi,
Change document are only created if the fields is set for change document.
This you set at DATA ELEMENT level. If you go to any table, take any field, double click the data element of that field. On the data element displat screen on the definition tab, you will see a block "Attribute". In this "Attribute" block, there is a field call "Change Document".
The change documents for table fields are only created if this "change document" flag is set. Check the documentation of this flag ( change document ) for more information.
Also, check transaction SCDO. It might help.
Regards,
RS
Maybe you are looking for
-
I don't want to show the e-mail address in the "from" line when I send out e-mails. Is there a way to hide that? Thank you!
-
Using an Excel file as a dynamic data source? Opinions needed...
I have posted this topic before, but as always; in order to get the relevant correct answer you have to ask the correct question. I'm trying to create a number of Pricelists linked to an Excel/CSV file. I have a Excel file that contains Pricelist inf
-
Navigating between applications on portal
Hello Experts, My scenario consists of one portal page with a wide narrow layout.Each of the columns contains a webdynpro application.On click of a link in the narrow column, i want to call an application in the wide column. I have already tried usin
-
Apple TV suddenly stopped playing any video
Yesterady my apple tv stopped playing any type of video. This includes movies I've purchased on iTunes, previews on iTunes, Hulu, Netflix. I click play on the video the spinner pops up and the video *almost* starts and then just cancels itself going
-
How to Use BAPI in Web dynpro?
Hi SDN, I am trying to use BAPI_FLIGHT_GETLIST in my web dypro application but my result table doesn't showing any data. can you please tell me the reason behind this? Regards, Rahul