‎2008 Jan 23 9:02 AM
&----
*& Report ZGILPORD_ORI_TEST *
*& *
&----
*& *
*&
*
&----
REPORT ZGILPORD_ORI_TEST
&----
*& Report ZGILPORD_ORI *
*& *
&----
*& *
*& *
&----
*REPORT ZGILPORD_ORI
&----
*& Report ZGILPORD *
*& *
&----
*& Program Prepaired by : Rakesh Shah *
*& Program Given by : Pankaj Gangal *
*& Date : 08.10.2007 & 28.11.2007 *
*& Program made for web project *
&----
*REPORT ZGILPORD .
NO STANDARD PAGE HEADING LINE-COUNT 55(3)
LINE-SIZE 250 MESSAGE-ID Z1.
Tables : vbuk, vbak, vbep, vbap,vbrp, vepvg, kna1, lips, konp,t005u.
type-pools: slis.
DATA : A TYPE SLIS_T_FIELDCAT_ALV,
B LIKE LINE OF A,
ddate type d.
data :gt_events type slis_t_event,
gt_layout type slis_layout_alv,
gt_sort type slis_t_sortinfo_alv,
gt_list_top_of_page type slis_t_listheader,
gt_fieldcat type slis_t_fieldcat_alv,
gt_repid like sy-repid, " Report Id
gt_top_of_page type slis_formname value 'TOP_OF_PAGE'.
data : x_layout type disvariant,
x_save,
g_exit type c,
spec_layout type disvariant,
gs_variant type disvariant.
data: pos type i value 1.
data: gt_t005u like table of t005u with header line.
data: mdate like sy-datum." value sy-datum.
DATA : GCODE(6) TYPE C,
UNIT(3) TYPE C.
Data : begin of itab occurs 0,
kunnr like vbak-kunnr,
name1 like kna1-name1,
regio like kna1-regio,
regio_desc like t005u-bezei,
ort01 like kna1-ort01,
vkorg like vbak-vkorg,
vbeln like vbuk-vbeln,
kwmeng like vbap-kwmeng,
netpr like vbap-netpr,
kzwi6 like vbap-kzwi6,
gbstk like vbuk-gbstk,
vbtyp like vbuk-vbtyp,
erdat like vbak-erdat,
audat like vbak-audat,
bmeng like vbep-bmeng,
edatu like vbep-edatu,
matnr like vbap-matnr,
werks like vbap-werks,
brgew like vbap-brgew,
tfimg like lips-lfimg, " Todate Despatch
pfimg like lips-lfimg, " Pending Quantity
kbetr like konp-kbetr, " Order Rate
kmein like konp-kmein, " Bag or MT
wrbtr like bsid-wrbtr, " Outstanding
yfimg like lips-lfimg, " Yesterday Despatch
cfimg like vbrp-fkimg, " Today Despatch "LIPS-lfimg,
gcode like gcode,
unit like unit,
ddate like vbak-audat,
end of itab.
data: begin of ktab occurs 0,
vbeln like vbrp-vbeln,
prsdt like vbak-audat,
fkimg like vbrp-fkimg,
end of ktab.
**********change
data: begin of mtab occurs 0,
vbeln like lips-vbeln,
posnr like lips-posnr,
lfimg like lips-lfimg,
erdat like lips-erdat, " Today Despatch
end of mtab.
***************
DATA : NUM(4) TYPE N.
select-options werks for vbap-werks obligatory.
select-options vkbur for vbak-vkbur.
select-options vbeln for vbuk-vbeln.
select-options audat for vbak-audat. "obligatory.
select-options matnr for vbap-matnr.
select-options kunnr for vbak-kunnr.
select-options kvgr5 for vbak-kvgr5.
select-options edatu for vbep-edatu obligatory no intervals
no-extension default sy-datum.
select-options s_brgew for vepvg-brgew no intervals no-extension.
Initialization.
Start-of-selection.
select vbak~kunnr
kna1~name1
kna1~regio
kna1~ort01
vbak~vkorg
vbuk~vbeln
vbap~kwmeng
vbap~netpr
vbap~kzwi6
vbuk~gbstk
vbuk~vbtyp
vbak~erdat
vbak~audat
vbep~bmeng
vbep~edatu
vbap~matnr
vbap~werks
vepvg~brgew
vbrp~fkimg
lips~lfimg
into corresponding fields of table itab
from vbuk inner join
vbak on
vbuk~vbeln = vbak~vbeln
inner join vbap on
vbak~vbeln = vbap~vbeln
inner join vbep on
vbep~vbeln = vbap~vbeln
inner join kna1 on
kna1~kunnr = vbak~kunnr
inner join vepvg on
vepvg~vbeln = vbak~vbeln
inner join vbrp on
vbrp-vbeln = vbuk-vbeln
inner join lips on
lipsvbeln = vbakvbeln
where vbuk~vbeln in vbeln and
vbuk~gbstk in ('A','B') and
vbuk~vbtyp = 'C' and
vbak~audat in audat and
vbak~vbtyp = 'C' and
vbak~vkbur in vkbur and
vbak~kunnr in kunnr and
vbak~kvgr5 in kvgr5 and
vbap~matnr in matnr and
vbap~werks in werks and
vbap~abgru eq ' ' and
vbep~edatu le edatu-low.
select * from t005u into table gt_t005u where spras = 'EN'.
***********
LOOP AT ITAB.
**************
*if itab-audat = sy-datum.
*itab-cfimg = itab-bmeng.
*modify itab.
*endif.
*
*
*mdate = sy-datum - 1.
*
*if itab-audat = mdate.
*itab-yfimg = itab-bmeng.
*modify itab.
*endif.
*loop at mtab where vbeln = itab-vbeln .
*if sy-subrc = 0.
*move mtab-lfimg to itab-tfimg.
*modify itab.
*endif.
*
*endloop.
*endloop.
******************
if sy-subrc = 0.
itab-pfimg = itab-brgew.
itab-tfimg = itab-bmeng - itab-brgew.
if itab-tfimg < 0.
itab-pfimg = itab-brgew + itab-tfimg.
itab-tfimg = 0.
endif.
modify itab.
endif.
select single kbetr into itab-kbetr from konp where knumh = itab-vbeln.
modify itab.
select single kmein into itab-kmein from konp where knumh = itab-vbeln.
modify itab.
if sy-subrc = 0.
if itab-kmein = 'BAG'.
itab-kbetr = itab-kbetr * 20 .
modify itab.
else.
itab-kbetr = itab-kbetr.
modify itab.
endif.
endif.
modify itab.
select single wrbtr into itab-wrbtr from bsid where kunnr = itab-kunnr and budat le itab-audat.
modify itab.
itab-gcode = itab-name1(6).
itab-UNIT = 'GIL'.
modify itab.
ENDLOOP.
**********added pppppppppppp
sort itab by vbeln.
loop at itab.
select vbeln prsdt fkimg from vbrp into ktab where
vbeln = itab-vbeln and
prsdt = sy-datum.
endselect.
if sy-subrc = 0.
itab-cfimg = vbrp-fkimg.
modify itab .
append ktab.
clear ktab.
endif.
endselect.
endloop.
*collect ktab.
*endselect.
**loop at ktab.
**loop at itab where vbeln = ktab-vbeln.
**move ktab-fkimg to itab-cfimg.
**modify itab.
**endloop.
**endloop.
**
*
loop at itab where vbeln = '9911243608'. "and kunnr = '110439C005'.
*
write:/ itab-kunnr, itab-name1,
itab-regio, itab-bmeng,
itab-tfimg,
itab-pfimg,
itab-kbetr,
itab-kmein,
itab-wrbtr,
itab-yfimg,
itab-cfimg.
endloop.
*loop at ktab.
*write:/ ktab-vbeln ,
*ktab-prsdt,
*ktab-fkimg .
*endloop.
*
*
*
**LOOP AT ITAB.
SELECT FKIMG FROM VBRP INTO (ITAB-CFIMG) WHERE VBELN = ITAB-VBELN AND PRSDT = SY-DATUM.
IF SY-SUBRC = 0.
MODIFY ITAB.
ENDIF.
ENDSELECT.
ENDLOOP.
**
*
loop at itab where kunnr = '110439C005' and kunnr = '110439C005'.
**
write:/ itab-kunnr, itab-name1,
itab-regio, itab-bmeng,
itab-tfimg,
itab-pfimg,
itab-kbetr,
itab-kmein,
itab-wrbtr,
itab-yfimg,
itab-cfimg.
endloop.
**
**
CALL FUNCTION 'GUI_DOWNLOAD'
EXPORTING
BIN_FILESIZE =
FILENAME = 'C:/pendord.XLS'
FILETYPE = 'DAT'
APPEND = ' '
WRITE_FIELD_SEPARATOR = ' '
HEADER = '00'
TRUNC_TRAILING_BLANKS = ' '
WRITE_LF = 'X'
COL_SELECT = ' '
COL_SELECT_MASK = ' '
DAT_MODE = ' '
CONFIRM_OVERWRITE = ' '
NO_AUTH_CHECK = ' '
CODEPAGE = ' '
IGNORE_CERR = ABAP_TRUE
REPLACEMENT = '#'
WRITE_BOM = ' '
TRUNC_TRAILING_BLANKS_EOL = 'X'
WK1_N_FORMAT = ' '
WK1_N_SIZE = ' '
WK1_T_FORMAT = ' '
WK1_T_SIZE = ' '
IMPORTING
FILELENGTH =
TABLES
DATA_TAB = ITAB.
FIELDNAMES =
EXCEPTIONS
FILE_WRITE_ERROR = 1
NO_BATCH = 2
GUI_REFUSE_FILETRANSFER = 3
INVALID_TYPE = 4
NO_AUTHORITY = 5
UNKNOWN_ERROR = 6
HEADER_NOT_ALLOWED = 7
SEPARATOR_NOT_ALLOWED = 8
FILESIZE_NOT_ALLOWED = 9
HEADER_TOO_LONG = 10
DP_ERROR_CREATE = 11
DP_ERROR_SEND = 12
DP_ERROR_WRITE = 13
UNKNOWN_DP_ERROR = 14
ACCESS_DENIED = 15
DP_OUT_OF_MEMORY = 16
DISK_FULL = 17
DP_TIMEOUT = 18
FILE_NOT_FOUND = 19
DATAPROVIDER_EXCEPTION = 20
CONTROL_FLUSH_ERROR = 21
OTHERS = 22
Events related to ALV
Start-of-selection.
perform eventtab_build using gt_events[].
perform fieldcat_init using gt_fieldcat[].
END-OF-SELECTION.
perform comment_build using gt_list_top_of_page[].
perform layout_init using gt_layout.
if spec_layout is initial.
call function 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
i_background_id = 'BUTTON_OFF_BACK'
i_callback_program = gt_repid
i_callback_user_command = 'USER_COMMAND'
IT_FIELDCAT = gt_fieldcat[]
it_events = gt_events[]
it_sort = gt_sort[]
is_layout = gt_layout
i_save = 'S'
i_default = ' '
TABLES
t_outtab = itab.
else.
call function 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
i_background_id = 'BUTTON_OFF_BACK'
i_callback_program = gt_repid
i_callback_user_command = 'USER_COMMAND'
IT_FIELDCAT = gt_fieldcat[]
it_events = gt_events[]
it_sort = gt_sort[]
is_layout = gt_layout
i_save = x_save
is_variant = spec_layout
TABLES
t_outtab = itab.
endif.
*&----
*
*& Form FIELDCAT_INIT
*&----
*
text
*----
*
-->P_GT_FIELDCAT[] text
*----
*
form fieldcat_init
using rt_fieldcat type slis_t_fieldcat_alv.
data: ls_fieldcat type slis_fieldcat_alv.
data: pos type i value 1.
clear ls_fieldcat.
ls_fieldcat-col_pos = pos.
ls_fieldcat-fieldname = 'KUNNR'.
ls_fieldcat-seltext_m = 'Customer No'.
ls_fieldcat-no_out = 'X'.
append ls_fieldcat to rt_fieldcat.
clear ls_fieldcat.
pos = pos + 1.
clear ls_fieldcat.
ls_fieldcat-col_pos = pos.
ls_fieldcat-fieldname = 'NAME1'.
ls_fieldcat-seltext_m = 'Name of Customer'.
append ls_fieldcat to rt_fieldcat.
clear ls_fieldcat.
pos = pos + 1.
clear ls_fieldcat.
ls_fieldcat-col_pos = pos.
ls_fieldcat-fieldname = 'ORT01'.
ls_fieldcat-seltext_m = 'Site Name'.
append ls_fieldcat to rt_fieldcat.
clear ls_fieldcat.
pos = pos + 1.
clear ls_fieldcat.
ls_fieldcat-col_pos = pos.
ls_fieldcat-fieldname = 'REGIO'.
ls_fieldcat-seltext_m = 'State'.
append ls_fieldcat to rt_fieldcat.
clear ls_fieldcat.
pos = pos + 1.
clear ls_fieldcat.
ls_fieldcat-col_pos = pos.
ls_fieldcat-fieldname = 'REGIO_DESC'.
ls_fieldcat-seltext_m = 'State Description'.
append ls_fieldcat to rt_fieldcat.
clear ls_fieldcat.
pos = pos + 1.
clear ls_fieldcat.
ls_fieldcat-col_pos = pos.
ls_fieldcat-fieldname = 'VKORG'.
ls_fieldcat-seltext_m = 'Zone'.
append ls_fieldcat to rt_fieldcat.
clear ls_fieldcat.
pos = pos + 1.
clear ls_fieldcat.
ls_fieldcat-col_pos = pos.
ls_fieldcat-fieldname = 'VBELN'.
ls_fieldcat-seltext_m = 'SOrder No'.
append ls_fieldcat to rt_fieldcat.
clear ls_fieldcat.
pos = pos + 1.
clear ls_fieldcat.
ls_fieldcat-col_pos = pos.
ls_fieldcat-fieldname = 'KWMENG'.
ls_fieldcat-seltext_m = 'Order Qty'.
ls_fieldcat-do_sum = 'X'.
append ls_fieldcat to rt_fieldcat.
clear ls_fieldcat.
pos = pos + 1.
clear ls_fieldcat.
ls_fieldcat-col_pos = pos.
ls_fieldcat-fieldname = 'YFIMG'.
ls_fieldcat-seltext_m = 'Des Yesterday'.
ls_fieldcat-do_sum = 'X'.
append ls_fieldcat to rt_fieldcat.
clear ls_fieldcat.
pos = pos + 1.
clear ls_fieldcat.
ls_fieldcat-col_pos = pos.
ls_fieldcat-fieldname = 'CFIMG'.
ls_fieldcat-seltext_m = 'Des Today'.
ls_fieldcat-do_sum = 'X'.
append ls_fieldcat to rt_fieldcat.
clear ls_fieldcat.
pos = pos + 1.
clear ls_fieldcat.
ls_fieldcat-col_pos = pos.
ls_fieldcat-fieldname = 'TFIMG'.
ls_fieldcat-seltext_m = 'Des Todate'.
ls_fieldcat-do_sum = 'X'.
append ls_fieldcat to rt_fieldcat.
clear ls_fieldcat.
pos = pos + 1.
clear ls_fieldcat.
ls_fieldcat-col_pos = pos.
ls_fieldcat-fieldname = 'PFIMG'.
ls_fieldcat-seltext_m = 'Pending Qty'.
ls_fieldcat-do_sum = 'X'.
append ls_fieldcat to rt_fieldcat.
clear ls_fieldcat.
pos = pos + 1.
clear ls_fieldcat.
ls_fieldcat-col_pos = pos.
ls_fieldcat-fieldname = 'KBETR'.
ls_fieldcat-seltext_m = 'Price'.
ls_fieldcat-do_sum = 'X'.
append ls_fieldcat to rt_fieldcat.
clear ls_fieldcat.
pos = pos + 1.
clear ls_fieldcat.
ls_fieldcat-col_pos = pos.
ls_fieldcat-fieldname = 'NETPR'.
ls_fieldcat-seltext_m = 'NCR'.
ls_fieldcat-do_sum = 'X'.
append ls_fieldcat to rt_fieldcat.
clear ls_fieldcat.
pos = pos + 1.
clear ls_fieldcat.
ls_fieldcat-col_pos = pos.
ls_fieldcat-fieldname = 'WRBTR'.
ls_fieldcat-seltext_m = 'Outstanding'.
ls_fieldcat-do_sum = 'X'.
append ls_fieldcat to rt_fieldcat.
clear ls_fieldcat.
pos = pos + 1.
clear ls_fieldcat.
ls_fieldcat-col_pos = pos.
ls_fieldcat-fieldname = 'GCODE'.
ls_fieldcat-seltext_m = 'Group Code'.
ls_fieldcat-do_sum = 'X'.
append ls_fieldcat to rt_fieldcat.
clear ls_fieldcat.
pos = pos + 1.
clear ls_fieldcat.
ls_fieldcat-col_pos = pos.
ls_fieldcat-fieldname = 'UNIT'.
ls_fieldcat-seltext_m = 'Unit'.
ls_fieldcat-do_sum = 'X'.
append ls_fieldcat to rt_fieldcat.
clear ls_fieldcat.
pos = pos + 1.
endform. " FIELDCAT_INIT
*&----
*
*& Form LAYOUT_INIT
*&----
*
ALV Layout Initialization
*----
*
form layout_init using rs_layout type slis_layout_alv.
rs_layout-zebra = 'X'.
rs_layout-detail_popup = 'X'.
rs_layout-colwidth_optimize = 'X'.
endform. " LAYOUT_INIT
*&----
*
*& Form EVENTTAB_BUILD
*&----
*
Build the Events for ALV Display
*----
*
form eventtab_build using rt_events type slis_t_event.
data: ls_event type slis_alv_event.
call function 'REUSE_ALV_EVENTS_GET'
exporting
i_list_type = 0
importing
et_events = rt_events.
read table rt_events with key name = slis_ev_top_of_page
into ls_event.
if sy-subrc = 0.
move gt_top_of_page to ls_event-form.
append ls_event to rt_events.
endif.
endform. " EVENTTAB_BUILD
----
FORM TOP_OF_PAGE *
----
Get the Top-of-Page for the ALV Report *
----
form top_of_page.
call function 'REUSE_ALV_COMMENTARY_WRITE'
exporting
it_list_commentary = gt_list_top_of_page.
endform. "top_of_page
*&----
*
*& Form COMMENT_BUILD
*&----
*
Get the Text for Top-of-Page of ALV Report
*----
*
form comment_build using lt_top_of_page type
slis_t_listheader.
data: ls_line type slis_listheader.
clear ls_line.
ls_line-typ = 'H'.
ls_line-info = text-100.
append ls_line to lt_top_of_page.
clear ls_line.
ls_line-typ = 'A'.
ls_line-info = text-101.
append ls_line to lt_top_of_page.
ls_line-info = text-102.
append ls_line to lt_top_of_page.
clear ls_line.
append ls_line to lt_top_of_page.
endform. " COMMENT_BUILD
*
*
*ktab-vbeln = itab-vbeln.
*ktab-audat = sy-datum.
*collect ktab.
*clear ktab.
*endif.
*endselect.
*endloop.
*select kunnr
select Sum( lfimg ) from lips into itab-yfimg where vbeln = itab-vbeln Group By vbeln.
*
*yfimg = itab-yfimg + yfimg.
*
modify itab.
*
endselect.
read table gt_t005u with key bland = itab-regio.
if sy-subrc = 0.
*
itab-regio_desc = gt_t005u-bezei.
modify itab.
*
endif.
‎2008 Jan 23 9:53 AM
Hello upt this code below the first selection statment.
insert after the below line.
select * from t005u into table gt_t005u where spras = 'EN'.
******************************************************************
Sort itab by vbeln.
loop at itab.
Select fkimg prsdt vbeln from vbrp into ktab where vbeln = itab-vbeln and prsdt = sy-datum.
collect ktab. clear ktab.
endselect.
endloop.
sort ktab by vbeln.
loop at ktab.
loop at itab where vbeln = ktab-vbeln.
if sy-subrc = 0.
itab-cfimg = ktab-fkimg.
modify itab.
endif.
endloop.
endloop.
*****************************************************************
and remove from other placess. now check it.