Field Specific Change Log
Hi All,
Is it possible to only log the changes for specific fields of a table? My guess is this is not possible but it is suggested not to log data changes due to performance issues. If we were to limit the tables to specific fields, perhaps we can limit the affect on performance.
Also, how big of a hit on performance can we expect if we only add logging for one additional table?
Thanks. Points will be awarded for helpful responses.
Thanks, Anji, but I was wondering if it was possible to set specific fields. So let's say I have table ADRC and I only want to see changes to field NAME1. Can I set only this field to be logged instead of the entire table?
Message was edited by:
John S
Similar Messages
-
E-Recruitment - Requisition - Infotype Field Level Change Log
Hi Experts,
We are implementing SAP E-Recruitment, and would like to know how to capture the changes made in Requisition at infotype field level.
For example: If a support team member is added/delete in the Requisition (Tab - Support Team), then these changes (NEW/DELETE) at the infotype field level are required.
I have tried to maintain the infotype and the required fields in V_T582A, V_T585A, V_T585B and V_T585C. But didnt get any result when I executed the report RPUAUD00. Is there any additional configuration required for this?
Please adivse.
Thanks and Regards,
Dinakaran RHi,
You can just to that with the infotype table log. Support team is stored in table HRP5131.
Regards,
Nicole -
Filled fields become blank in DSO change log
Hi experts,
I find an unusual behavior in DSO activation.
For some records for which I find in PSA, new data table (and in debug also!!!) correct data, when the request is activated I find in change log table all characteristic fields empty; the key fields and key figure fields are ok and correct in all tables.
It happen randomly for some orders and for a few requests.
It happen when I have one storno record, for example:
PSA (order, item, customer, material, storno, quantity)
10000, 10, AAA, YYY, , 25
10000, 10, AAA, YYY, X, -25
DEBUG (order, item, customer, material, storno, quantity)
10000, 10, AAA, YYY, , 25
10000, 10, AAA, YYY, X, -25
CHANGE LOG (order, item, customer, material, storno, quantity)
10000, 10, AAA, YYY, , 25
10000, 10, , , X, -25
ACTIVE DATA (order, item, customer, material, storno, quantity)
10000, 10, AAA, YYY, 25
In some other cases:
ACTIVE DATA (order, item, customer, material, storno, quantity)
10000, 10, , , -25
Have you some ideas? It is very strange.
We are on a 7.0 BW system, but with 3.5 data flow (update rule).
Thanks in advance.Vito,
This happens some times...
1. Did you transport any change to this DSO where characteristics were added and are these the ones that are blank...
When this happens - see if you can clear the change log ( if this is an option ) and then reactivate the cube.
Also there is a program to regenerate the activation program, I am not able to locate this - but then usually reactivating the ODS will usually clear this issue because it regenerates the activation program. -
Change log for Z field while doing a direct update
Hi ,
I have a Z field added to the EKKO table and the change log is activated . Any change to the Z field from the transaction ME52N is updated in the CDHDR , CDPOS tables .
The issue I have is now i have a requirement to update this Z field through a program . I could update this field but the change doesnt get into the change log . But the change done from the program appears in the front end screen i.e ME53N.
Please help me on this.
Regards,
Hari.Hi Hari hara Kumar,
As far as my thinking, there is only one solution for this, do a recording/BDC(I know that Enjoy transaction BDCs are not successfull but as you have only 1 field to update,you can have a try) to update the Customer fields or Using the BAPI you can update the same to get change records, but it will be a long procedure to add Z field in the BAPI structures and then do that required coding, better is to have a try a with the BDC. I will never ever do a direct DB table update using a Z program for Standard tables.
Thanks & Regards,
Faheem. -
How to get change log for z-fields in VBAk(Sales order)
Hi All,
Please help me in this.
My requirement is get the change log for z-fields in sales order.
In the sales order header level we have one tab Additioanl data.
In this we have z-fields, if we change any of the field value, it is accepting the same and updating in data base as well.
But it is not appearing in change log<. I.e. Environment->changes.
How to get the change log for the z-fields.
In data element level enable the check box of change document.
Please help me in this.
Thanks in advance
Jaya,GHi Jaya,
For this you need to do some coding. Here is a link which tells you, step by step procedure how to activate Change log for the Z tables.
THe Object that you need to use for Sales Document is VERKBELEG
[https://wiki.sdn.sap.com/wiki/display/ABAP/Maintaining%20Change%20Log%20for%20Database%20Tables]
Hope this helps..
This is Primarily a Technical Consultant Job. Take his help before you make any changes.
Thnks
Srini -
Hi All,
I need the change log for custom fields added in BP transaction codes.
Basically, for tracking the changes of master data in CDHDR and CDPOS tables we will enable the checkbox of dataelement related to custom field.
As for SAP fields in BP transaction code the change history is reflecting in CDHDR/CDPOS tables. i have enabled that for custom fields added to BP transaction code but i could not see the change history for such fields.
Please let us know if iam missing any other thing?Hi Amit Singh,
Apart from clicking the checkbox in dataelement...
There are some settings need to be done by BASIS
and some settings and entries should be made in SCOD t-code
create entriy for change document here..
also hv a look on below links...
http://help.sap.com/saphelp_nw2004s/helpdata/en/2a/fa015b493111d182b70000e829fbfe/frameset.htm
http://help.sap.com/saphelp_erp2004/helpdata/en/db/7a2a40ce93185de10000000a1550b0/content.htm
Custom Table values in CDPOS and CDHDR
scdo
wat do these fields in scdo stand for?
Hope it will solve your problem..
Thanks & Regards
ilesh 24x7 -
How to get change log for fields if change document flag is not maintained?
Hi experts,
My requirement is display the change log details for the transaction FAGLGA32.
In this transaction we have the Field Groups block.if any change is happened for field group we need to capture the change.
the field for the field group is RKAL1-FGFLG1 and the data element is FGFLG.
In the data element FGFLG, the flag CHANGE DOCUMENT is not maintained.
How to get the change log details for the fields for which the change document flag is not maintained at data element level?
Regards,
Rameshdo a modification for the data element or try Audit Trail (depends on your release)
Audit Trail (electronic records) / Tx AUT10, AUT01, XX-PROJ-ELR, OSS 564743,517613,564645
Note 1058984 - FAQ: Audit Trail (Transactions AUT01-AUT10)
http://help.sap.com/erp2005_ehp_03/helpdata/DE/fc/89683c1b5fb712e10000000a114084/frameset.htm
cheers
carsten -
Hi all, is there any way how to find history of changes of the above mentioned field? I am not able to find it via SU01->Change documents for users.
Hi Jaroslav
Sorry for late reply
Standard table USR06 change log is not there as there is no particular object maintained for recording log not allowed as technical settings. Below are some selected of US category for which you can search change log.
USLA04
USR21
USRACL
USREFUS
USOBT
USOBX
USOBT_C
USOBX_C
USMD120C
USMD120C
USR41
Sorry, can't help with standard available
But I have checked there is one Program which you can add in your system and that will help to record the changes in future.
for your reference program code is as below.
REPORT ZUSER_LICENSES_LOG.
TYPE-POOLS: ICON, ABAP, SLIS.
TABLES: ADCP,
USR02,
USR06,
USR21,
PA0002.
TYPES: BEGIN OF USER_TABLE,
PERSNUMBER TYPE USR21-PERSNUMBER,
BNAME TYPE USR21-BNAME,
VORNA TYPE PA0002-VORNA,
NACHN TYPE PA0002-NACHN,
LIC_TYPE TYPE USR06-LIC_TYPE,
FUNCTION TYPE ADCP-FUNCTION,
GLTGB TYPE USR02-GLTGB,
USTYP TYPE USR02-USTYP,
CLASS TYPE USR02-CLASS,
UFLAG TYPE USR02-UFLAG,
PWDSTATE TYPE USR02-PWDSTATE,
USRID TYPE PA0105-USRID,
PERNR TYPE PA0105-PERNR,
LICENSE_AX TYPE I,
LICENSE_AY TYPE I,
LICENSE_AZ TYPE I,
LICENSE_BA TYPE I,
LICENSE_BK TYPE I,
LICENSE_OT TYPE I,
END OF USER_TABLE.
DATA: IT_P2 TYPE STANDARD TABLE OF PA0002 WITH HEADER LINE,
IT_P0105 TYPE STANDARD TABLE OF PA0105 WITH HEADER LINE,
IT_TAB TYPE TABLE OF USER_TABLE WITH HEADER LINE,
WA_TAB LIKE LINE OF IT_TAB,
ITAB TYPE TABLE OF USER_TABLE.
DATA: GR_ALV TYPE REF TO CL_SALV_TABLE,
GR_FUNCTIONS TYPE REF TO CL_SALV_FUNCTIONS_LIST,
GR_DISPLAY TYPE REF TO CL_SALV_DISPLAY_SETTINGS,
GR_COLUMNS TYPE REF TO CL_SALV_COLUMNS_TABLE,
GR_COLUMN TYPE REF TO CL_SALV_COLUMN_TABLE,
GR_LAYOUT TYPE REF TO CL_SALV_LAYOUT,
GR_SELECTIONS TYPE REF TO CL_SALV_SELECTIONS,
GR_EVENTS TYPE REF TO CL_SALV_EVENTS_TABLE,
GR_LINES TYPE REF TO CL_SALV_FORM_LAYOUT_GRID,
G_LAYOUT TYPE SALV_S_LAYOUT_INFO,
KEY TYPE SALV_S_LAYOUT_KEY,
S_KEY TYPE SALV_S_LAYOUT_KEY,
COLOR TYPE LVC_S_COLO,
RIGHT_ALIGNED TYPE SALV_DE_ALIGNMENT,
LARGE_HEAD TYPE SALV_DE_HEADER_SIZE.
DATA: USER TYPE SY-UNAME,
USER_SALON TYPE SY-UNAME,
LIST_TITLE TYPE LVC_TITLE VALUE 'Multiple UPC Codes per Article'.
INITIALIZATION.
KEY = SY-REPID.
RIGHT_ALIGNED = 2. "1=left, 2=right, 3=centered. Must be TYPEd as SALV_DE_ALIGNMENT.
USER = SY-UNAME+0(3).
USER_SALON = SY-UNAME+3(4).
SELECTION-SCREEN BEGIN OF BLOCK BLOCK1 WITH FRAME TITLE TEXT-001.
SELECT-OPTIONS S_BNAME FOR USR21-BNAME.
SELECT-OPTIONS S_LTYPE FOR USR06-LIC_TYPE.
SELECT-OPTIONS S_TERM FOR USR02-GLTGB.
PARAMETERS P_VARI TYPE SLIS_VARI.
SELECTION-SCREEN END OF BLOCK BLOCK1.
AT SELECTION-SCREEN ON VALUE-REQUEST FOR P_VARI.
G_LAYOUT = CL_SALV_LAYOUT_SERVICE=>F4_LAYOUTS(
S_KEY = KEY
RESTRICT = IF_SALV_C_LAYOUT=>RESTRICT_NONE ).
P_VARI = G_LAYOUT-LAYOUT.
START-OF-SELECTION.
SELECT USR21~PERSNUMBER USR21~BNAME USR06~LIC_TYPE ADCP~FUNCTION USR02~GLTGB
USR02~USTYP USR02~CLASS USR02~UFLAG USR02~PWDSTATE "PA0105~USRID PA0105~PERNR
INTO CORRESPONDING FIELDS OF TABLE IT_TAB
FROM ( ( ( USR21
INNER JOIN ADCP
ON ADCP~PERSNUMBER EQ USR21~PERSNUMBER )
INNER JOIN USR02
ON USR02~BNAME EQ USR21~BNAME )
INNER JOIN USR06
ON USR06~BNAME EQ USR21~BNAME )
* INNER JOIN PA0105
* ON PA0105~USRID EQ USR21~BNAME )
WHERE USR21~BNAME IN S_BNAME
AND USR06~LIC_TYPE IN S_LTYPE
AND USR02~GLTGB IN S_TERM.
IF SY-SUBRC = 0.
SORT IT_TAB BY BNAME LIC_TYPE ASCENDING.
CLEAR ITAB.
CLEAR WA_TAB.
LOOP AT IT_TAB INTO WA_TAB.
SELECT SINGLE * FROM PA0105
INTO IT_P0105
WHERE USRID = WA_TAB-BNAME.
IF SY-SUBRC = 0.
WA_TAB-PERNR = IT_P0105-PERNR.
ENDIF.
SELECT SINGLE * FROM PA0002
INTO IT_P2
WHERE PERNR EQ WA_TAB-PERNR
AND ENDDA EQ '99991231'.
IF SY-SUBRC = 0.
WA_TAB-VORNA = IT_P2-VORNA.
WA_TAB-NACHN = IT_P2-NACHN.
ENDIF.
CASE WA_TAB-LIC_TYPE.
WHEN 'AX'.
WA_TAB-LICENSE_AX = WA_TAB-LICENSE_AX + 1.
WHEN 'AY'.
WA_TAB-LICENSE_AY = WA_TAB-LICENSE_AY + 1.
WHEN 'AZ'.
WA_TAB-LICENSE_AZ = WA_TAB-LICENSE_AZ + 1.
WHEN 'BA'.
WA_TAB-LICENSE_BA = WA_TAB-LICENSE_BA + 1.
WHEN 'BK'.
WA_TAB-LICENSE_BK = WA_TAB-LICENSE_BK + 1.
WHEN OTHERS.
WA_TAB-LICENSE_OT = WA_TAB-LICENSE_OT + 1.
ENDCASE.
APPEND WA_TAB TO ITAB.
CLEAR WA_TAB.
ENDLOOP.
TRY.
CL_SALV_TABLE=>FACTORY(
IMPORTING
R_SALV_TABLE = GR_ALV
CHANGING
T_TABLE = ITAB ).
CATCH CX_SALV_NOT_FOUND.
CATCH CX_SALV_MSG.
ENDTRY.
TRY.
GR_FUNCTIONS = GR_ALV->GET_FUNCTIONS( ).
GR_FUNCTIONS->SET_ALL( ABAP_TRUE ).
GR_DISPLAY = GR_ALV->GET_DISPLAY_SETTINGS( ).
GR_DISPLAY->SET_VERTICAL_LINES( ABAP_TRUE ).
GR_DISPLAY->SET_HORIZONTAL_LINES( ABAP_TRUE ).
GR_DISPLAY->SET_STRIPED_PATTERN( CL_SALV_DISPLAY_SETTINGS=>TRUE ).
CATCH CX_SALV_NOT_FOUND.
CATCH CX_SALV_MSG.
ENDTRY.
TRY.
GR_DISPLAY->SET_LIST_HEADER( LIST_TITLE ).
GR_COLUMNS = GR_ALV->GET_COLUMNS( ).
GR_COLUMNS->SET_KEY_FIXATION( ABAP_TRUE ).
CATCH CX_SALV_NOT_FOUND.
CATCH CX_SALV_MSG.
ENDTRY.
TRY.
GR_COLUMN ?= GR_COLUMNS->GET_COLUMN( COLUMNNAME = 'PERSNUMBER' ).
GR_COLUMN->SET_LONG_TEXT( 'Person Number' ).
GR_COLUMN->SET_MEDIUM_TEXT( 'Pers#' ).
GR_COLUMN->SET_SHORT_TEXT( 'Pers#' ).
GR_COLUMN ?= GR_COLUMNS->GET_COLUMN( COLUMNNAME = 'BNAME' ).
GR_COLUMN->SET_LONG_TEXT( 'Login Name' ).
GR_COLUMN->SET_MEDIUM_TEXT( 'Login Name' ).
GR_COLUMN->SET_SHORT_TEXT( 'Login' ).
GR_COLUMN->SET_ALIGNMENT( RIGHT_ALIGNED ).
GR_COLUMN ?= GR_COLUMNS->GET_COLUMN( COLUMNNAME = 'VORNA' ).
GR_COLUMN->SET_LONG_TEXT( 'First Name' ).
GR_COLUMN->SET_MEDIUM_TEXT( 'First Name' ).
GR_COLUMN->SET_SHORT_TEXT( 'F. Name' ).
GR_COLUMN ?= GR_COLUMNS->GET_COLUMN( COLUMNNAME = 'NACHN' ).
GR_COLUMN->SET_LONG_TEXT( 'Last Name' ).
GR_COLUMN->SET_MEDIUM_TEXT( 'Last Name' ).
GR_COLUMN->SET_SHORT_TEXT( 'L. Name' ).
GR_COLUMN ?= GR_COLUMNS->GET_COLUMN( COLUMNNAME = 'LIC_TYPE' ).
GR_COLUMN->SET_LONG_TEXT( 'License Type' ).
GR_COLUMN->SET_MEDIUM_TEXT( 'License Type' ).
GR_COLUMN->SET_SHORT_TEXT( 'License' ).
GR_COLUMN ?= GR_COLUMNS->GET_COLUMN( COLUMNNAME = 'FUNCTION' ).
GR_COLUMN->SET_LONG_TEXT( 'Job Description' ).
GR_COLUMN->SET_MEDIUM_TEXT( 'Job Descr' ).
GR_COLUMN->SET_SHORT_TEXT( 'Job Desc' ).
GR_COLUMN->SET_ALIGNMENT( RIGHT_ALIGNED ).
GR_COLUMN ?= GR_COLUMNS->GET_COLUMN( COLUMNNAME = 'GLTGB' ).
GR_COLUMN->SET_LONG_TEXT( 'Term Date' ).
GR_COLUMN->SET_MEDIUM_TEXT( 'Term Date' ).
GR_COLUMN->SET_SHORT_TEXT( 'Term' ).
GR_COLUMN ?= GR_COLUMNS->GET_COLUMN( COLUMNNAME = 'USTYP' ).
GR_COLUMN->SET_LONG_TEXT( 'License Type' ).
GR_COLUMN->SET_MEDIUM_TEXT( 'License Type' ).
GR_COLUMN->SET_SHORT_TEXT( 'License' ).
GR_COLUMN ?= GR_COLUMNS->GET_COLUMN( COLUMNNAME = 'CLASS' ).
GR_COLUMN->SET_LONG_TEXT( 'Class' ).
GR_COLUMN->SET_MEDIUM_TEXT( 'Class' ).
GR_COLUMN->SET_SHORT_TEXT( 'Class' ).
GR_COLUMN ?= GR_COLUMNS->GET_COLUMN( COLUMNNAME = 'UFLAG' ).
GR_COLUMN->SET_LONG_TEXT( 'Login Staus' ).
GR_COLUMN->SET_MEDIUM_TEXT( 'Login Staus' ).
GR_COLUMN->SET_SHORT_TEXT( 'Login OK' ).
GR_COLUMN ?= GR_COLUMNS->GET_COLUMN( COLUMNNAME = 'PWDSTATE' ).
GR_COLUMN->SET_LONG_TEXT( 'Password Status' ).
GR_COLUMN->SET_MEDIUM_TEXT( 'Pswd Status' ).
GR_COLUMN->SET_SHORT_TEXT( 'Pswd OK' ).
GR_COLUMN ?= GR_COLUMNS->GET_COLUMN( COLUMNNAME = 'USRID' ).
GR_COLUMN->SET_LONG_TEXT( 'Employee Login' ).
GR_COLUMN->SET_MEDIUM_TEXT( 'Empl Login' ).
GR_COLUMN->SET_SHORT_TEXT( 'Empl.' ).
GR_COLUMN ?= GR_COLUMNS->GET_COLUMN( COLUMNNAME = 'PERNR' ).
GR_COLUMN->SET_LONG_TEXT( 'Employee Number' ).
GR_COLUMN->SET_MEDIUM_TEXT( 'Employee#' ).
GR_COLUMN->SET_SHORT_TEXT( 'Empl#' ).
GR_COLUMN ?= GR_COLUMNS->GET_COLUMN( COLUMNNAME = 'LICENSE_AX' ).
GR_COLUMN->SET_LONG_TEXT( 'License AX' ).
GR_COLUMN->SET_MEDIUM_TEXT( 'License AX' ).
GR_COLUMN->SET_SHORT_TEXT( 'AX' ).
GR_COLUMN ?= GR_COLUMNS->GET_COLUMN( COLUMNNAME = 'LICENSE_AY' ).
GR_COLUMN->SET_LONG_TEXT( 'License AY' ).
GR_COLUMN->SET_MEDIUM_TEXT( 'License AY' ).
GR_COLUMN->SET_SHORT_TEXT( 'AY' ).
GR_COLUMN ?= GR_COLUMNS->GET_COLUMN( COLUMNNAME = 'LICENSE_AZ' ).
GR_COLUMN->SET_LONG_TEXT( 'License AZ' ).
GR_COLUMN->SET_MEDIUM_TEXT( 'License AZ' ).
GR_COLUMN->SET_SHORT_TEXT( 'AZ' ).
GR_COLUMN ?= GR_COLUMNS->GET_COLUMN( COLUMNNAME = 'LICENSE_BA' ).
GR_COLUMN->SET_LONG_TEXT( 'License BA' ).
GR_COLUMN->SET_MEDIUM_TEXT( 'License BA' ).
GR_COLUMN->SET_SHORT_TEXT( 'BA' ).
GR_COLUMN ?= GR_COLUMNS->GET_COLUMN( COLUMNNAME = 'LICENSE_BK' ).
GR_COLUMN->SET_LONG_TEXT( 'License BK' ).
GR_COLUMN->SET_MEDIUM_TEXT( 'License BK' ).
GR_COLUMN->SET_SHORT_TEXT( 'BK' ).
GR_COLUMN ?= GR_COLUMNS->GET_COLUMN( COLUMNNAME = 'LICENSE_OT' ).
GR_COLUMN->SET_LONG_TEXT( 'License Other' ).
GR_COLUMN->SET_MEDIUM_TEXT( 'License Other' ).
GR_COLUMN->SET_SHORT_TEXT( 'Other' ).
GR_LAYOUT = GR_ALV->GET_LAYOUT( ).
KEY-REPORT = SY-REPID.
GR_LAYOUT->SET_KEY( KEY ).
GR_LAYOUT->SET_SAVE_RESTRICTION( CL_SALV_LAYOUT=>RESTRICT_NONE ).
IF NOT P_VARI IS INITIAL.
GR_LAYOUT->SET_INITIAL_LAYOUT( VALUE = P_VARI ).
ENDIF.
GR_ALV->DISPLAY( ).
CATCH CX_SALV_NOT_FOUND.
CATCH CX_SALV_MSG.
ENDTRY.
ENDIF. -
How do we control what fields you need in the change log?
Gurus,
Some time ago in an unrelated problem solving activity I came across the configuration screens that controlled what (and if) you could log when changed.
I can not find the place now.
There should be a place in SPRO which allows me to configure that I do not want log of the change in sales orders. It also allows me to choose which fields within the sales orders should be logged. So I could choose (say) to have the logging of quantity changes to be turned off.
Was I dreaming? ... Can someone point me in the right direction?
Thank you all for contributing
Regards
RajuI have a direction now:
1) Check in the SE11 to ensure that the field that I need the change log for is marked "Change Document" in the Data Element of the field.
2) Check the document object VERKBELEG (Sales Document) to ensure that the table is included in the configuration. Transaction SCDO.
I will experiment with this to find out if this can be done.
Regards
Raju -
Customer Master email field - change log not appearing
Hi experts,
We noticed that the changes to the email address are not appearing in the change log for customer master. Is this always the case? Will it be possible to include the email address in the change log? If so, how?
Thanks!Sorry.. not an issue
-
Change log data is NOT captured for PO screen exit fields
Hi,
We created a new tab at item level for PO Screen(ME21N) for the purpose of STOs(Document Type UB) & created 3 New fields in that new tab through Screen Exit( SAPMM06E, SAPLXM06 0111 ).
When we are entering data in those 3 new fields while creating new STOs, those data are captured in EKPO table.
When we are changing the OLD STOs for those 3 new fileds, data is modifying in EKPO table. But changes are NOT inserted in CDHDR and CDPOS table for those 3 new fields.
<b>Please help us to track the changes in those 3 new field data changes for old STOs.</b>
Please let me know if you need any further clarification regarding this.
Thanks & Regards,
Mani.Hai Naimesh Patel,
Thanks for your promptly reply.
Now My issue has been resolved successfully with your help.
I rewarded Points for your reply.
Thanks & Regards,
Mani. -
Sales Orders Change Log question
Hi All,
I am currently working on a project that involves querying SAP Database to get custom reports via web browser, I've made a lot of advances and most of the site is ready but I'm missing just one item that I hope you could help me.
Thing is I am working with the Sales Order change log and the problem comes one a user deletes a row. If I go to the change log inside SAP and see the differences a new record will be shown saying that row X was deleted and
if I go to the database (ADOC and ADO1 tables) I don't have a way to see wich row was deleted.
My way of doing this is to check for the number of rows on the current state of the sales order and check the same on the previous instance of the SO and see if a line was deleted. Then I would have to check row by row between instances what rows are there and what row is missing and store that info. I think this kind of approach will definitively kill the server.
I was wondering if some one can give me a hint about how to approach this problem. Does any body know how SAP works on this area?
I'm working with SAP2005A and SQL Server 2005 Standard Edition.
Any help is greatly appreciated.
Thanks!
Alejandro.-Hola Alejandro,
Thanks for your answer, as I see it I'm doing exactly what you proposed but the problem comes with the following scenarios:
a.- If I post a new SO with two lines I will have on the ADO1 table two records with the values 0 and 1 for each line respectively but if I delete the item on LineNum = 1 and then I add a new item, this last item will be also created with LineNum value = 1. This is not a complicated thing to do but the problem comes when the user is used to work with SOs with several items at detail level and is used to add and erase lines once in a while and as I see it it's very difficult for me to track those specific changes. There's also the fact that on the Log table a new instance is created every time the user hits the update button regardless if a modification was actually made or not. I mean I would know that a line was deleted or added but I would have to start comparing each field on each line of a sales order with it's previous instance to check what was actually added/deleted and I'm afraid that this may affect the server performance. I know that SAP does this without affecting to much the system resources and that is what I'm trying to find.
I forgot the other scenario I was considering he he I will post again as soon as I remember it but I hope I'm explaining this ok (I'm not very good at explaining...) If not let me know and I'll try to explain again.
I'm also working on trying to get another approach to see what comes up...
Thanks for checking this thread, your answers are helpful.
Regards. -
Change logs for Z table.
Hi All,
I am trying to fetch the old value and new value for the z table field.Change log is activated for the Z table. but i dont know how to fetch the change logs.
SCU3 is the standard transaction to see the change logs for all the tables.
Is there any table where the change logs values are maintained?
Does anyone know how to get the change log value?
Thanks in advance.
Regards,
Amruta.Hello,
If for a specific set of tables no change documents are triggered by SAP you can always setup your own Change Document Object with transaction SCDO.
Of course you need to be careful with this transactions (how big is the table data, how many changes, etc...).
Table logging is something else, they are stored in table DBTABLOG and can be analysed via SCU3.
For table logging you need extra system parameters to be set, they are explained in SAP Note:
Note 1916 - Logging table changes in R/3
Pay attention with table logging because a lot of tables are logged in DBTABLOG once you activate the parameter, this can have a major impact on performance.
To have an idea what other tables will be logged, check tcode SE16 on table DD09L and put an 'X' in field PROTOKOLL, result will be thousands of tables.
In your specific scenario I think it is best you go for the change documents with SCDO.
Wim Van den Wyngaert -
PM Order Change logging / OIOE
Hello,
Does anybody know if it is possible to enable change logging for PM orders for the text description field? (KTEXT). I understand that overall, logging is governed by t-code OIOE, however it appears that only certain elements are logged from what I have found. Perhaps I am looking in the wrong place, or perhaps this level of logging is not possible?
Basically, I want to be able to look at a specific order number, and be able to see a log of all changes made to the order including everything from status changes to the data that was changed. Is this possible?
From within the order itself (IW33) looking at the 'Changes' as well as 'Action Log' don't quite tell the entire story.
Anybody have any ideas?
Thanks!Fricis,
Change document is enabled for the KTEXT field on the order header.Not sure why you arent able to see it on the chnage document log.
OIOE transaction does control capturing of changes for certain elements. The field that these elements contain is governed by the change document structures associated to the objects (Transaction :SCDO. ex: ORDER is the Change document object for PM order and Networks). The data element of the fields associated to the structure inturn control whether changes should be captured or not.For order header short text KTEXT, the data element associated to it AUFTEXTwhich does have the change document activated. You could switch on change document(It will result in a modification ) for fields which arent active for logging changes on tables which are already in the change documnet object.
Custom report is probably your only solution to access all the change documents for the order (Order header, operation, header status, operation status, material status etc) in a single screen.You could probably trying copying the action log logic and expanding on the same for everything you need.
Hope it helps.
Regards
Narasimhan -
Specific changes are left undetected when using proxy indirection
Hello!
Recently, the following issue have been identified:
ObjectReferenceMapping together with ProxyIndirectionPolicy and *UnitOfWorkValueHolder fails to identify specific changes - setting a reference to 'null' when the attribute's value was not instantiated previously.
Detailed description:
Consider we have 2 objects: A and B, and A has OneToOneMapping to B and uses ProxyIndirection.
In initial moment we have A1 that references B1 in DB.
Then we register A1 for modification. What we have in memory in UnitOfWork? Something like the following:
A1(Clone) with attribute for B reference uninstantiated;
A1(Backup) with <null> reference for B, as the attribute is expected to be retrieved when we access B from A1(Clone).
Then we set reference in A1(Clone) for B to <null>.
This change then will not be identified during commit phase, because of the result of getAttributeValueFromObject both for B reference in A1(Clone) and A1(Backup) is <null>. This part is clearly visible from the ObjectReferenceMapping.compareForChange method code:
if ( !owner.isNew() ) {
backUpAttribute = getAttributeValueFromObject(backUp);
if ( (backUpAttribute == null) && (cloneAttribute == null) ) {
return null;
Accessing the B field in A1(Clone) fixes the problem, because in this case backUpAttribute value is initialized through *UnitOfWorkValueHolder.
So it seems the part should be reworked to handle such cases, it seems reasonable that fields in backup clones that are using proxy indirection should be initialized even if not accessed to contain all required information to allow correct comparision in such cases.
Can somebody from TopLink team comment this?
Thanks,
SergeyThis does appear to be an issue. I will log this problem internally, you may want to follow it up with support.
A work around is to instantiate the proxy in your set methods.
i.e.
public void setAddress(Address newAddress) {
if (this.address != null) {
this.address.hashCode();
this.address = newAddress;
}
Maybe you are looking for
-
Bug Report: URLs in PDF footnotes cause problems in Preview
Hi, I am using MacBook Air with Mavericks. I found a very annoying bug in Mavericks Preview: when there is a single URL in footnotes and the page has only one footnote, the whole page is "clickable" and links to the URL. Sample document: (Try left pa
-
SM37 Job is not visible in SM50
Hello Gurus, I am seeing a peculiar situation- We ran a job and after a while I am seeing it has dissappeared from SM50 but has "Active" status in SM37. *We have only one application server. Does anybody have any idea how it could be cancelled. C
-
Problem in resizing bing map.
I have given 100% width to the div in which I am loading bing map. But map convert it into pixel and I am unable to shrink the map when get resize.
-
Windows 7 Upgrade Option Program
Alright, I did all this and faxed my proof of purchase to the given fax number, and I haven't received a reply yet. And as part of the e-mail from before, "We will send you an email when we have confirmed your eligibility via your proof of purchase.
-
ERTR status -- production order
Dear all we have found that all the materials were issued yet the production order status still says ERTR. How i can refreshe the ERTR stutus to be be removed from the production order status. If there are any prerequisites what are they? Rgds S Pat