‎2007 Oct 29 7:01 PM
Hi,
Can you please me correct the code below. It is correct from syntax point of view but it doesnt pull any records. TABLE1 is some delivered SAP table. And a select condition same as the IF condition below works if used directly on TABLE1.
DATA: I_T_TABLE1 TYPE TABLE OF TABLE1 WITH HEADER LINE.
SELECT * FROM TABLE1 INTO I_T_TABLE1.
ENDSELECT.
IF SOME CONDITION IN THE PROGRAM.
LOOP AT I_T_TABLE1.
IF I_T_TABLE1-TYPE = 'INDEX' AND
I_T_TABLE1-OBJVERS = 'A'.
RESULT = I_T_TABLE1-LOW.
ENDIF.
ENDLOOP.
ENDIF.
Thank you,
sam
‎2007 Oct 29 7:04 PM
Hi,
Please try this.
SELECT * FROM TABLE1 INTO TABLE I_T_TABLE1.
...
Regards,
Ferry Lianto
‎2007 Oct 29 7:04 PM
Hi,
Please try this.
SELECT * FROM TABLE1 INTO TABLE I_T_TABLE1.
...
Regards,
Ferry Lianto
‎2007 Oct 29 7:07 PM
You don't need the ENDSELECT..
simply use SELECT from <dbtab> into table <itab>.
Arya
‎2007 Oct 29 10:26 PM
Hi Experts
I want to join vbak table with cdhdr and select
vbak.vkbur (plant) and want to show that vkbur in the internal table of it_cdhdr
so as to select only those plant belong to vkbur so how can I join base on the below coding................
REPORT ZCHGDOC
NO STANDARD PAGE HEADING LINE-SIZE 120.
WRITE: sy-title, 40 'Page', sy-pagno.
ULINE.
TABLES: CDHDR,
CDPOS,
t001w,
"VKBUR,
"VBELN,
VBAK,
VBAP.
SELECTION-SCREEN BEGIN OF BLOCK DOCUMENT WITH FRAME TITLE TEXT-701.
SELECTION-SCREEN END OF BLOCK DOCUMENT.
SELECT-OPTIONS:
V1 FOR VBAK-VKBUR,
S_WERKS for T001W-werks,
objectid for cdhdr-objectid,
udate for cdhdr-udate.
PARAMETER: USERNAME LIKE CDHDR-USERNAME.
DATA: BEGIN OF IT_VBAP OCCURS 0,
OBJECTCLAS LIKE CDHDR-OBJECTCLAS,
OBJECTID LIKE CDHDR-OBJECTID,
VBELN LIKE VBAP-VBELN,
END OF IT_VBAP.
DATA: BEGIN OF IT_CDHDR OCCURS 0,
OBJECTCLAS LIKE CDHDR-OBJECTCLAS,
OBJECTID LIKE CDHDR-OBJECTID,
CHANGENR LIKE CDHDR-CHANGENR,
USERNAME LIKE CDHDR-USERNAME,
UDATE LIKE CDHDR-UDATE,
UTIME LIKE CDHDR-UTIME,
FNAME LIKE CDPOS-FNAME,
TABNAME LIKE CDPOS-TABNAME,
TABKEY LIKE CDPOS-TABKEY,
VALUE_NEW LIKE CDPOS-VALUE_NEW,
VALUE_OLD LIKE CDPOS-VALUE_OLD,
END OF IT_CDHDR.
DATA: WA LIKE LINE OF IT_CDHDR.
DATA: WA LIKE LINE OF IT_CDPOS.
DATA: BEGIN OF IT_CDPOS OCCURS 0,
OBJECTCLAS LIKE CDHDR-OBJECTCLAS,
OBJECTID LIKE CDHDR-OBJECTID,
CHANGENR LIKE CDHDR-CHANGENR,
TABNAME LIKE CDPOS-TABNAME,
TABKEY LIKE CDPOS-TABKEY,
FNAME LIKE CDPOS-FNAME,
VALUE_NEW LIKE CDPOS-VALUE_NEW,
VALUE_OLD LIKE CDPOS-VALUE_OLD,
END OF IT_CDPOS.
Move-corresponding it_cdhdr to wa.
Move-corresponding it_cdpos to wa.
SELECT OBJECTCLAS
OBJECTID
CHANGENR
USERNAME
UDATE
UTIME FROM CDHDR
INTO CORRESPONDING FIELDS OF TABLE IT_CDHDR
WHERE OBJECTCLAS = 'VERKBELEG' or
objectclas = 'BETRIEB'
ORDER BY UDATE.
WHERE OBJECTCLAS = 'VERKBELEG'
OR OBJECTCLAS = 'BETRIEB' ORDER BY UDATE.
Filter data based upon Plant selection criteria.
IF NOT S_WERKS[] IS INITIAL.
DELETE IT_CDHDR WHERE NOT OBJECTID IN S_WERKS.
ENDIF.
IF IT_CDHDR[] IS NOT INITIAL.
SELECT OBJECTCLAS
OBJECTID
CHANGENR
VALUE_NEW
VALUE_OLD
FNAME
TABNAME
TABKEY
FROM CDPOS
INTO CORRESPONDING FIELDS OF TABLE IT_CDPOS
FOR ALL ENTRIES IN IT_CDHDR
WHERE
OBJECTCLAS = IT_CDHDR-OBJECTCLAS
AND OBJECTID = IT_CDHDR-OBJECTID
AND CHANGENR = IT_CDHDR-CHANGENR.
"or tabname = 'VBAP'.
SORT IT_CDPOS BY OBJECTCLAS OBJECTID CHANGENR.
ENDIF.
Add tables CDPOS DATA TO CDHDR.
DATA: INDEX TYPE i.
LOOP AT IT_CDHDR.
INDEX = SY-TABIX.
READ TABLE IT_CDPOS WITH KEY OBJECTCLAS = IT_CDHDR-OBJECTCLAS
OBJECTID = IT_CDHDR-OBJECTID
CHANGENR = IT_CDHDR-CHANGENR BINARY SEARCH.
IF SY-SUBRC = 0.
IT_CDHDR-VALUE_NEW = IT_CDPOS-VALUE_NEW.
IT_CDHDR-VALUE_OLD = IT_CDPOS-VALUE_OLD.
MODIFY IT_CDHDR INDEX index TRANSPORTING value_new value_old.
ENDIF.
WRITE:/ SY-DATUM,SY-UZEIT,
50 'DOCUMENT CHANGE REPORT',
80 'Page', SY-PAGNO,
" WRITE: / SY-REPID
50 'DETAIL REPORT BY PLANT '.
SKIP.
ULINE.
.
&----
*& T O P - O F - P A G E *
&----
WRITE:/ 'UDATE:' ,SY-DATUM.
FORMAT COLOR 4 INTENSIFIED on.
Write: /35 ' DOCUMENT CHANGES REPORT '.
WRITE: /5 'DOCUMENT-NO'.
20 'TABNAME', 30 'TEXT_CASE', 50 'FNAME'.
WRITE: /5 'DATE', 20 'FNAME', 45 'CHANGE-NO',65 'OLD-VALUE',80 'NEW-VALUE',95 'USER-NAME'.
ULINE.
LOOP AT IT_CDHDR INTO WA.
on change of wa-objectid.
Write: / wa-objectid UNDER'DOCUMENT-NO' ."color col_key.
ENDON.
ULINE.
" CDPOS-tabname UNDER'TABNAME', CDPOS-TEXT_CASE UNDER'TEXT_CASE',CDPOS-fname UNDER'FNAME'. "color col_key ,
write: / wa-udate dd/mm/yyyy under'DATE' NO-GAP,wa-fname under'FNAME' NO-GAP,wa-changenr under 'CHANGE-NO',
wa-value_old under'OLD-VALUE' LEFT-JUSTIFIED NO-GAP,
wa-value_new under'NEW-VALUE' LEFT-JUSTIFIED NO-GAP ,wa-username under'USER-NAME' NO-GAP.
ENDON.
Move-corresponding it_cdhdr to wa.
*Write: / wa-objectid UNDER'DOCUMENT-NO' "color col_key.
*" CDPOS-tabname UNDER'TABNAME', CDPOS-TEXT_CASE UNDER'TEXT_CASE',CDPOS-fname UNDER'FNAME'. "color col_key ,
*write: / wa-udate dd/mm/yyyy under'DATE' NO-GAP,wa-utime under'TIME' NO-GAP,wa-changenr under 'CHANGE-NO',
ltrim(wa-value_old) under'OLD-VALUE' NO-GAP,
*wa-value_new under'NEW-VALUE' NO-GAP ,wa-username under'USER-NAME' NO-GAP.
ENDLOOP.
ENDLOOP.
‎2007 Oct 29 7:10 PM
If you want to continue with ur code ..then modify like this...
SELECT * FROM TABLE1 INTO I_T_TABLE1.
APPEND I_T_TABLE1.
ENDSELECT.
or
you can modify like this...
SELECT * FROM TABLE1 INTO TABLE I_T_TABLE1.
*need not use ENDSELECT..