‎2008 Nov 27 3:10 PM
Dear All.
plz help me in this regards, i am not getting output if i am debagging then in loop data is not comming.
thanks in advance.
REPORT Y_STOCK_HOL_REP_01 NO STANDARD PAGE HEADING
LINE-SIZE 128
LINE-COUNT 64.
TYPE-POOLS : SLIS.
*******************************************
TABLES :MARA,MCHB,MAKT,MARD,MDSM,VBBE,resb.
**********************************************
*SELECTION SCREEN *
************************************************
SELECTION-SCREEN BEGIN OF BLOCK BLK2 WITH FRAME.
select-options:MATNO FOR MCHB-MATNR.
SELECT-OPTIONS:PLANT FOR MCHB-WERKS.
select-options:SLOC FOR MCHB-LGORT.
select-options:BATCH FOR MCHB-CHARG.
SELECTION-SCREEN END OF BLOCK BLK2.
********************************************
*FIELDCAT DECLARATION
*******************************************
*******************************************************
TYPES : BEGIN OF TY_FINAL,
MATNO TYPE MCHB-MATNR,
MGROUP TYPE MARA-MATKL,
MATDES TYPE MAKT-MAKTX,
BOU TYPE MARA-MEINS,
ONORDER TYPE MarD-labst,
ONHAND TYPE mard-labst,
ALOC TYPE vbbe-omeng,
ABLE TYPE MARD-LABST,
END OF TY_FINAL.
DATA : IT_FINAL TYPE STANDARD TABLE OF TY_FINAL,
WA_FINAL TYPE TY_FINAL.
DATA : T_FCAT TYPE SLIS_T_FIELDCAT_ALV,
W_FCAT TYPE SLIS_FIELDCAT_ALV.
DATA : IT_SORT TYPE SLIS_T_SORTINFO_ALV,
WA_SORT TYPE SLIS_SORTINFO_ALV.
DATA : T_HEAD TYPE SLIS_T_LISTHEADER,
W_HEAD TYPE SLIS_LISTHEADER.
*
W_HEAD-TYP = 'H'.
W_HEAD-INFO = 'MY STOCK HOLDING REPORT'.
APPEND W_HEAD TO T_HEAD.
DATA : T_EVENTS TYPE SLIS_T_EVENT," WITH HEADER LINE.
W_EVENTS TYPE SLIS_ALV_EVENT.
W_EVENTS-NAME = 'TOP_OF_PAGE'.
W_EVENTS-FORM = 'TOP'.
APPEND W_EVENTS TO T_EVENTS.
*********************************************************
W_FCAT-COL_POS = 1.
W_FCAT-FIELDNAME = 'MATNO'.
W_FCAT-SELTEXT_M = 'MATERIALNO'.
*W_FCAT-DO_SUM = 'X'.
W_FCAT-OUTPUTLEN = 20.
*W_FCAT-EMPHASIZE = 'X'.
APPEND W_FCAT TO T_FCAT.
CLEAR W_FCAT.
W_FCAT-COL_POS = 2.
W_FCAT-FIELDNAME = 'MGROUP'.
W_FCAT-SELTEXT_M = 'MATGROUP'.
W_FCAT-OUTPUTLEN = 10.
W_FCAT-DO_SUM = 'X'.
APPEND W_FCAT TO T_FCAT.
CLEAR W_FCAT.
*W_FCAT-COL_POS = 3.
*W_FCAT-FIELDNAME = 'MPLANT'.
*W_FCAT-SELTEXT_M = 'MATPLANT'.
*W_FCAT-OUTPUTLEN = 40.
*APPEND W_FCAT TO T_FCAT.
*CLEAR W_FCAT.
W_FCAT-COL_POS = 3.
W_FCAT-FIELDNAME = 'MATDES'.
W_FCAT-SELTEXT_M = 'DESCRIPTION'.
W_FCAT-OUTPUTLEN = 40.
APPEND W_FCAT TO T_FCAT.
CLEAR W_FCAT.
W_FCAT-COL_POS = 4.
W_FCAT-FIELDNAME = 'BOU'.
W_FCAT-SELTEXT_M = 'BASEUNIT'.
APPEND W_FCAT TO T_FCAT.
CLEAR W_FCAT.
W_FCAT-COL_POS = 5.
W_FCAT-FIELDNAME = 'ONORDER'.
W_FCAT-SELTEXT_M = 'ONORDER'.
*W_FCAT-DO_SUM = ''.
APPEND W_FCAT TO T_FCAT.
CLEAR W_FCAT.
W_FCAT-COL_POS = 6.
W_FCAT-FIELDNAME = 'ONHAND'.
W_FCAT-SELTEXT_M = 'ONHAND'.
W_FCAT-INTTYPE = 'I'.
W_FCAT-DO_SUM = 'X'.
APPEND W_FCAT TO T_FCAT.
CLEAR W_FCAT.
W_FCAT-COL_POS = 7.
W_FCAT-FIELDNAME = 'ALOC'.
W_FCAT-SELTEXT_M = 'ALOCATED'.
W_FCAT-INTTYPE = 'I'.
W_FCAT-DO_SUM = 'X'.
APPEND W_FCAT TO T_FCAT.
CLEAR W_FCAT.
W_FCAT-COL_POS = 8.
W_FCAT-FIELDNAME = 'ABLE'.
W_FCAT-SELTEXT_M = 'AVALILABLE'.
W_FCAT-INTTYPE = 'I'.
W_FCAT-DO_SUM = 'X'.
APPEND W_FCAT TO T_FCAT.
CLEAR W_FCAT.
******************************************************************
WA_SORT-SPOS = 2.
WA_SORT-FIELDNAME = 'MGROUP'.
WA_SORT-UP = 'X'.
WA_SORT-GROUP = 'MATKL'.
WA_SORT-SUBTOT = 'X'.
WA_SORT-TABNAME = 'IT_FINAL'.
APPEND WA_SORT TO IT_SORT.
CLEAR WA_SORT.
******************************************
select m~matnr
mr~matkl
mr~meins
k~maktx
b~labst
v~omeng
INTO TABLE it_final
from
mchb as m
inner join mara as mr on mmatnr = mrmatnr
inner join makt as k on mmatnr = kmatnr
inner join mard as b on mmatnr = bmatnr
inner join vbbe as v on mmatnr = vmatnr
where m~matnr in matno
and m~werks in plant
and m~lgort in sloc
and m~charg in batch.
and spras = 'en'.
*************************************************************
LOOP AT IT_final INTO WA_final.
WA_FINAL-MATNO = MCHB-MATNR.
WA_FINAL-MGROUP = MARA-MATKL.
WA_FINAL-MATDES = MAKT-MAKTX.
WA_FINAL-BOU = MARA-MEINS.
WA_FINAL-ONORDER = MARD-LABST.
WA_FINAL-ONHAND = MARD-LABST.
wa_final-aloc = VBBE-OMENG.
WA_final-ABLE = WA_FINAL-ONHAND - WA_final-ALOC.
DELETE ADJACENT DUPLICATES FROM IT_FINAL.
APPEND WA_FINAL TO IT_FINAL.
ENDLOOP.
CLEAR WA_FINAL.
DATA : MYPRG TYPE SY-REPID.
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
I_INTERFACE_CHECK = ' '
I_BYPASSING_BUFFER = ' '
I_BUFFER_ACTIVE = ' '
I_CALLBACK_PROGRAM = 'MYPRG'
I_CALLBACK_PF_STATUS_SET = ' '
I_CALLBACK_USER_COMMAND = ' '
I_CALLBACK_TOP_OF_PAGE = 'TOP'
I_CALLBACK_HTML_TOP_OF_PAGE = ' '
I_CALLBACK_HTML_END_OF_LIST = ' '
I_STRUCTURE_NAME =
I_BACKGROUND_ID = 'Z_LOGO'
I_GRID_TITLE =
I_GRID_SETTINGS =
IS_LAYOUT = layout
IT_FIELDCAT = T_FCAT
IT_EXCLUDING =
IT_SPECIAL_GROUPS =
IT_SORT =
IT_FILTER =
IS_SEL_HIDE =
I_DEFAULT = 'X'
I_SAVE = ' '
IS_VARIANT =
IT_EVENTS = T_EVENTS
IT_EVENT_EXIT =
IS_PRINT =
IS_REPREP_ID =
I_SCREEN_START_COLUMN = 0
I_SCREEN_START_LINE = 0
I_SCREEN_END_COLUMN = 0
I_SCREEN_END_LINE = 0
IT_ALV_GRAPHICS =
IT_HYPERLINK =
IT_ADD_FIELDCAT =
IT_EXCEPT_QINFO =
I_HTML_HEIGHT_TOP =
I_HTML_HEIGHT_END =
IMPORTING
E_EXIT_CAUSED_BY_CALLER =
ES_EXIT_CAUSED_BY_USER =
TABLES
T_OUTTAB = IT_FINAL
EXCEPTIONS
PROGRAM_ERROR = 1
OTHERS = 2
.
IF SY-SUBRC <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
*
*ENDLOOP.
FORM TOP.
CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'
EXPORTING
IT_LIST_COMMENTARY = T_HEAD
I_LOGO = 'Z_LOGO'
.
ENDFORM.
‎2008 Nov 27 3:16 PM
Hi,
Are you sure that your Internal Table IT_FINAL has got some data?
Please check SY-SUBRC after the SELECT statement and this may solve your problem.
‎2008 Nov 27 3:16 PM
Hi,
Are you sure that your Internal Table IT_FINAL has got some data?
Please check SY-SUBRC after the SELECT statement and this may solve your problem.
‎2008 Nov 27 3:39 PM
Dear .
my internal table is not getting the data.
plz help in this report.
Thanks.
‎2008 Nov 27 3:46 PM
Tell me where you are situated in this small planet and I will make my way over to you and debug it for you.
Oh hang on, I can see the data on your tables from here, stand by.
‎2008 Nov 27 4:04 PM
Dear ,
if u now the answer then plz make me correct,but plz dont do jokes.
Thanks.
‎2008 Nov 27 4:07 PM
Oh I thought your orignal question was a joke.
How do you expect someone to be able to tell you why your SQL is not returning any data.
How do you think you should be checking to see why it is not returning anything. I will give you a clue.
Try transaction SE16.
That is the end of my input with this n00bish request.