CDHDR CDPOS LOG
Tablo günlük programı
*&---------------------------------------------------------------------*
*& Report ZTR_CDHDR_LOG
*&
*&---------------------------------------------------------------------*
*&
*&
*&---------------------------------------------------------------------*
REPORT ZTR_CDHDR_LOG.
*&---------------------------------------------------------------------*
*& Report ZMM_CDHDR_LOG
*&
*&---------------------------------------------------------------------*
*&
*&
*&---------------------------------------------------------------------*
TYPE-POOLS:SLIS.
DATA: GT_OUT LIKE STANDARD TABLE OF ZTR_S_CDHDR_LOG.
DATA: GS_OUT LIKE ZTR_S_CDHDR_LOG.
TABLES : CDHDR , CDPOS.
*
*DATA:BEGIN OF OCCURS 0,
**-CDHDR
* OBJECTCLAS LIKE CDHDR-OBJECTCLAS,
* OBJECTID LIKE CDHDR-OBJECTID,
* CHANGENR LIKE CDHDR-CHANGENR,
* USERNAME LIKE CDHDR-USERNAME,
* UDATE LIKE CDHDR-UDATE,
* UTIME LIKE CDHDR-UTIME,
* TCODE LIKE CDHDR-TCODE,
* PLANCHNGNR LIKE CDHDR-PLANCHNGNR,
* ACT_CHNGNO LIKE CDHDR-ACT_CHNGNO,
* WAS_PLANND LIKE CDHDR-WAS_PLANND,
* CHANGE_IND LIKE CDHDR-CHANGE_IND,
* LANGU LIKE CDHDR-LANGU,
* VERSION LIKE CDHDR-VERSION,
*
*
**-CDPOS
*
* TABNAME LIKE CDPOS-TABNAME,
* TABKEY LIKE CDPOS-TABKEY,
* FNAME LIKE CDPOS-FNAME,
* CHNGIND LIKE CDPOS-CHNGIND,
* TEXT_CASE LIKE CDPOS-TEXT_CASE,
* UNIT_OLD LIKE CDPOS-UNIT_OLD,
* UNIT_NEW LIKE CDPOS-UNIT_NEW,
* CUKY_OLD LIKE CDPOS-CUKY_OLD,
* CUKY_NEW LIKE CDPOS-CUKY_NEW,
* VALUE_NEW LIKE CDPOS-VALUE_NEW,
* VALUE_OLD LIKE CDPOS-VALUE_OLD,
*
*END OF GT_OUT.
DATA: READ_CODE type SY-UCOMM.
DATA: S_FCAT TYPE SLIS_FIELDCAT_ALV,
ST_FCAT TYPE SLIS_T_FIELDCAT_ALV,
G_PROGRAM LIKE SY-REPID.
SELECT-OPTIONS : S_OCLAS FOR CDHDR-OBJECTCLAS
MEMORY ID ZMM_MEM_OBJECTCLAS
obligatory.
SELECT-OPTIONS : S_OBJID FOR CDHDR-OBJECTID
MEMORY ID ZMM_MEM_OBJECTID.
SELECT-OPTIONS : S_UNAME FOR CDHDR-USERNAME
MEMORY ID ZMM_MEM_USERNAME.
SELECT-OPTIONS : S_UDATE FOR CDHDR-UDATE
MEMORY ID ZMM_MEM_UDATE.
SELECT-OPTIONS : S_UTIME FOR CDHDR-UTIME .
SELECT-OPTIONS : S_TCODE FOR CDHDR-TCODE
MEMORY ID ZMM_MEM_TCODE.
SELECT-OPTIONS : S_CHAND FOR CDHDR-CHANGE_IND .
SELECT-OPTIONS : S_LANGU FOR CDHDR-LANGU .
SELECT-OPTIONS : S_TABNM FOR CDPOS-TABNAME .
SELECT-OPTIONS : S_FNAME FOR CDPOS-FNAME
MEMORY ID ZMM_MEM_FNAME.
SELECT-OPTIONS : S_TABKY FOR CDPOS-TABKEY .
SELECT-OPTIONS : S_CHNID FOR CDPOS-CHNGIND .
SELECT-OPTIONS : S_VLNEW FOR CDPOS-VALUE_NEW .
SELECT-OPTIONS : S_VLOLD FOR CDPOS-VALUE_OLD .
START-OF-SELECTION .
PERFORM GET_DATA .
END-OF-SELECTION .
PERFORM disp_data .
FORM GET_DATA .
DATA : LT_OUT LIKE STANDARD TABLE OF ZTR_S_CDHDR_LOG.
DATA : LT_CDPOS LIKE STANDARD TABLE OF CDPOS.
DATA: LS_CDPOS LIKE CDPOS.
SELECT * INTO CORRESPONDING FIELDS OF TABLE LT_OUT
FROM CDHDR
WHERE OBJECTCLAS IN S_OCLAS
AND OBJECTID IN S_OBJID
AND USERNAME IN S_UNAME
AND UDATE IN S_UDATE
AND UTIME IN S_UTIME
AND CHANGE_IND IN S_CHAND
AND LANGU IN S_LANGU
AND TCODE IN S_TCODE .
.
* INNER JOIN CDPOS ON
* CDPOS-OBJECTCLAS = CDPOS-OBJECTCLAS
* AND CDPOS-OBJECTID = CDPOS-OBJECTID
* AND CDPOS-CHANGENR = CDPOS-CHANGENR
SELECT * FROM CDPOS
INTO CORRESPONDING FIELDS OF TABLE LT_CDPOS
for all entries in LT_OUT
WHERE
OBJECTCLAS EQ LT_OUT-OBJECTCLAS
AND OBJECTID EQ LT_OUT-OBJECTID
AND CHANGENR EQ LT_OUT-CHANGENR
AND FNAME IN S_FNAME
AND TABNAME IN S_TABNM
AND TABKEY IN S_TABKY
AND CHNGIND IN S_CHNID
AND VALUE_NEW IN S_VLNEW
AND VALUE_OLD IN S_VLOLD.
.
LOOP AT LT_OUT INTO GS_OUT.
LOOP AT LT_CDPOS INTO LS_CDPOS
WHERE OBJECTCLAS = GS_OUT-OBJECTCLAS
AND OBJECTID = GS_OUT-OBJECTID
AND CHANGENR = GS_OUT-CHANGENR.
MOVE-CORRESPONDING LS_CDPOS TO GS_OUT.
APPEND GS_OUT TO GT_OUT.
ENDLOOP. "LT_CDPOS
ENDLOOP. "LT_OUT
ENDFORM.
*&---------------------------------------------------------------------*
*& Form DISP_DATA
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
FORM DISP_DATA .
G_PROGRAM = SY-REPID.
PERFORM FIELDCAT_BUILD .
CALL FUNCTION `REUSE_ALV_GRID_DISPLAY`
EXPORTING
* I_CALLBACK_TOP_OF_PAGE = `F_TOP_OF_PAGE`
I_CALLBACK_USER_COMMAND = `USER_COMMAND`
I_CALLBACK_PF_STATUS_SET = `SET_PF_STATUS_FUNC`
I_CALLBACK_PROGRAM = G_PROGRAM
IT_FIELDCAT = ST_FCAT
TABLES
T_OUTTAB = GT_OUT.
ENDFORM. "DISP_DATA
*&---------------------------------------------------------------------*
*& Form SET_PF_STATUS_FUNC
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
* -->LT_EXTAB text
*----------------------------------------------------------------------*
FORM SET_PF_STATUS_FUNC USING LT_EXTAB .
SET PF-STATUS `STANDARD_FULLSCREEN`.
ENDFORM. "SET_PF_STATUS_FUNC
*&---------------------------------------------------------------------*
*& Form FIELDCAT_BUILD
*&---------------------------------------------------------------------*
FORM FIELDCAT_BUILD .
CALL FUNCTION `REUSE_ALV_FIELDCATALOG_MERGE`
EXPORTING
* I_PROGRAM_NAME =
* I_INTERNAL_TABNAME =
I_STRUCTURE_NAME = `ZTR_S_CDHDR_LOG`
* I_CLIENT_NEVER_DISPLAY = `X`
* I_INCLNAME =
* I_BYPASSING_BUFFER =
* I_BUFFER_ACTIVE =
CHANGING
CT_FIELDCAT = ST_FCAT
* EXCEPTIONS
* INCONSISTENT_INTERFACE = 1
* PROGRAM_ERROR = 2
* OTHERS = 3
.
IF SY-SUBRC <> 0.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
* WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
ENDFORM. " FIELDCAT_BUILD
*&---------------------------------------------------------------------*
*& Form USER_COMMAND
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
* -->B_BUTTON text
* -->I_SECILEN text
*----------------------------------------------------------------------*
FORM USER_COMMAND
USING B_BUTTON LIKE SY-UCOMM I_SECILEN TYPE SLIS_SELFIELD.
* SET PF-STATUS `STANDARD`.
READ_CODE = B_BUTTON.
CASE READ_CODE.
WHEN: `&F03` ,`&F05` , `&F12` .
LEAVE TO SCREEN 0.
ENDCASE.
ENDFORM. "USER_COMMAND
Structure ZTR_S_CDHDR_LOG
OBJECTCLAS Types CDOBJECTCL
OBJECTID Types CDOBJECTV
CHANGENR Types CDCHANGENR
TABNAME Types TABNAME
TABKEY Types CDTABKEY
FNAME Types FIELDNAME
CHNGIND Types CDCHNGIND
TEXT_CASE Types CDXFELD
KUNNR Types KUNNR
MATNR Types MATNR
UNIT_OLD Types CDUNIT
UNIT_NEW Types CDUNIT
CUKY_OLD Types CDCUKY
CUKY_NEW Types CDCUKY
VALUE_NEW Types CDFLDVALN
VALUE_OLD Types CDFLDVALO