Professional Documents
Culture Documents
"*************************************************
"** Selection Screen
"*************************************************
TABLES : zfi_hamali.
SELECTION-SCREEN BEGIN OF BLOCK a WITH FRAME TITLE TEXT-001.
SELECT-OPTIONS : s_date FOR zfi_hamali-zzdate NO-EXTENSION OBLIGATORY,
s_werks FOR zfi_hamali-werks NO INTERVALS NO-EXTENSION.
SELECTION-SCREEN BEGIN OF BLOCK b WITH FRAME TITLE TEXT-002.
PARAMETERS : p_r1 RADIOBUTTON GROUP g1 DEFAULT 'X',
p_r2 RADIOBUTTON GROUP g1,
p_r3 RADIOBUTTON GROUP g1,
p_r4 RADIOBUTTON GROUP g1.
SELECTION-SCREEN END OF BLOCK b.
SELECTION-SCREEN END OF BLOCK a.
"*************************************************
"** Declaration
"*************************************************
TYPES : BEGIN OF ty_final,
crop TYPE zfi_hamali-wgbez,
werks TYPE zfi_hamali-werks,
name1 TYPE t001w-name1,
var TYPE zfi_hamali-extwg,
kpdt TYPE zfi_hamali-zzamount,
kpro TYPE zfi_hamali-zzamount,
kmar TYPE zfi_hamali-zzamount,
ktot TYPE zfi_hamali-zzamount,
kupdt TYPE zfi_hamali-zzamount,
kupro TYPE zfi_hamali-zzamount,
kumar TYPE zfi_hamali-zzamount,
kutot TYPE zfi_hamali-zzamount,
lpdt TYPE zfi_hamali-zzamount,
lpro TYPE zfi_hamali-zzamount,
lmar TYPE zfi_hamali-zzamount,
ltot TYPE zfi_hamali-zzamount,
ppdt TYPE zfi_hamali-zzamount,
ppro TYPE zfi_hamali-zzamount,
pmar TYPE zfi_hamali-zzamount,
ptot TYPE zfi_hamali-zzamount,
spdt TYPE zfi_hamali-zzamount,
spro TYPE zfi_hamali-zzamount,
smar TYPE zfi_hamali-zzamount,
stot TYPE zfi_hamali-zzamount,
tpdt TYPE zfi_hamali-zzamount,
tpro TYPE zfi_hamali-zzamount,
tmar TYPE zfi_hamali-zzamount,
ttot TYPE zfi_hamali-zzamount,
updt TYPE zfi_hamali-zzamount,
upro TYPE zfi_hamali-zzamount,
umar TYPE zfi_hamali-zzamount,
utot TYPE zfi_hamali-zzamount,
topdt TYPE zfi_hamali-zzamount,
topro TYPE zfi_hamali-zzamount,
tomar TYPE zfi_hamali-zzamount,
totot TYPE zfi_hamali-zzamount,
tol1 TYPE zfi_hamali-zzamount,
tol2 TYPE zfi_hamali-zzamount,
tol3 TYPE zfi_hamali-zzamount,
tol4 TYPE zfi_hamali-zzamount,
tol5 TYPE zfi_hamali-zzamount,
tol6 TYPE zfi_hamali-zzamount,
END OF ty_final.
"*************************************************
"** Start of Selection
"*************************************************
START-OF-SELECTION.
*&---------------------------------------------------------------------*
*& Form GET_DATA
*&---------------------------------------------------------------------*
*& text
*&---------------------------------------------------------------------*
*& --> p1 text
*& <-- p2 text
*&---------------------------------------------------------------------*
FORM get_data .
SELECT zzslno,
werks,
zzdate,
wgbez,
zzdept,
ewbez AS zzvariety,
zzwtype,
zzamount
FROM zfi_hamali
INTO TABLE @DATA(lit_hamali)
WHERE werks IN @s_werks AND
zzdate IN @s_date.
"** Variety
IF p_r2 IS NOT INITIAL.
gs_final-var = lwa_hamali-zzvariety.
ENDIF.
"** Production
"** Processing
"** Marketing
"** Total
CASE lwa_hamali-zzwtype.
WHEN 1.
CASE lwa_hamali-zzdept.
WHEN 1.
gs_final-kpdt = lwa_hamali-zzamount.
gs_final-topdt = lwa_hamali-zzamount.
WHEN 2.
gs_final-kpro = lwa_hamali-zzamount.
gs_final-topro = lwa_hamali-zzamount.
WHEN 3.
gs_final-kmar = lwa_hamali-zzamount.
gs_final-tomar = lwa_hamali-zzamount.
ENDCASE.
gs_final-ktot = lwa_hamali-zzamount.
WHEN 2.
CASE lwa_hamali-zzdept.
WHEN 1.
gs_final-kupdt = lwa_hamali-zzamount.
gs_final-topdt = lwa_hamali-zzamount.
WHEN 2.
gs_final-kupro = lwa_hamali-zzamount.
gs_final-topro = lwa_hamali-zzamount.
WHEN 3.
gs_final-kumar = lwa_hamali-zzamount.
gs_final-tomar = lwa_hamali-zzamount.
ENDCASE.
gs_final-kutot = lwa_hamali-zzamount.
WHEN 3.
CASE lwa_hamali-zzdept.
WHEN 1.
gs_final-lpdt = lwa_hamali-zzamount.
gs_final-topdt = lwa_hamali-zzamount.
WHEN 2.
gs_final-lpro = lwa_hamali-zzamount.
gs_final-topro = lwa_hamali-zzamount.
WHEN 3.
gs_final-lmar = lwa_hamali-zzamount.
gs_final-tomar = lwa_hamali-zzamount.
ENDCASE.
gs_final-ltot = lwa_hamali-zzamount.
WHEN 4.
CASE lwa_hamali-zzdept.
WHEN 1.
gs_final-ppdt = lwa_hamali-zzamount.
gs_final-topdt = lwa_hamali-zzamount.
WHEN 2.
gs_final-ppro = lwa_hamali-zzamount.
gs_final-topro = lwa_hamali-zzamount.
WHEN 3.
gs_final-pmar = lwa_hamali-zzamount.
gs_final-tomar = lwa_hamali-zzamount.
ENDCASE.
gs_final-ptot = lwa_hamali-zzamount.
WHEN 5.
CASE lwa_hamali-zzdept.
WHEN 1.
gs_final-spdt = lwa_hamali-zzamount.
gs_final-topdt = lwa_hamali-zzamount.
WHEN 2.
gs_final-spro = lwa_hamali-zzamount.
gs_final-topro = lwa_hamali-zzamount.
WHEN 3.
gs_final-smar = lwa_hamali-zzamount.
gs_final-tomar = lwa_hamali-zzamount.
ENDCASE.
gs_final-stot = lwa_hamali-zzamount.
WHEN 6.
CASE lwa_hamali-zzdept.
WHEN 1.
gs_final-tpdt = lwa_hamali-zzamount.
gs_final-topdt = lwa_hamali-zzamount.
WHEN 2.
gs_final-tpro = lwa_hamali-zzamount.
gs_final-topro = lwa_hamali-zzamount.
WHEN 3.
gs_final-tmar = lwa_hamali-zzamount.
gs_final-tomar = lwa_hamali-zzamount.
ENDCASE.
gs_final-ttot = lwa_hamali-zzamount.
WHEN 7.
CASE lwa_hamali-zzdept.
WHEN 1.
gs_final-updt = lwa_hamali-zzamount.
gs_final-topdt = lwa_hamali-zzamount.
WHEN 2.
gs_final-upro = lwa_hamali-zzamount.
gs_final-topro = lwa_hamali-zzamount.
WHEN 3.
gs_final-umar = lwa_hamali-zzamount.
gs_final-tomar = lwa_hamali-zzamount.
ENDCASE.
gs_final-utot = lwa_hamali-zzamount.
ENDCASE.
ENDFORM.
*&---------------------------------------------------------------------*
*& Form DISPLAY
*&---------------------------------------------------------------------*
*& text
*&---------------------------------------------------------------------*
*& --> p1 text
*& <-- p2 text
*&---------------------------------------------------------------------*
FORM display .
DEFINE fieldcat.
gs_fcat-fieldname = &1.
gs_fcat-col_pos = &2.
gs_fcat-seltext_m = &3.
APPEND gs_fcat TO gt_fcat.
CLEAR gs_fcat.
END-OF-DEFINITION.
gs_layout-colwidth_optimize = 'X'.
SELECT zzslno,
werks,
zzdate,
zztolly,
wgbez,
zzdept,
ewbez AS zzvariety,
zzwtype,
zzamount
FROM zfi_hamali
INTO TABLE @DATA(lit_hamali)
WHERE werks IN @s_werks AND
zzdate IN @s_date.
"** Crop
gs_final-crop = lwa_hamali-wgbez.
"** Tolly1
"** Tolly2
"** Tolly3
"** Tolly4
"** Tolly5
"** Tolly6
"** Total
CASE lwa_hamali-zztolly.
WHEN '1'.
gs_final-tol1 = lwa_hamali-zzamount.
gs_final-totot = lwa_hamali-zzamount.
WHEN '2'.
gs_final-tol2 = lwa_hamali-zzamount.
gs_final-totot = lwa_hamali-zzamount.
WHEN '3'.
gs_final-tol3 = lwa_hamali-zzamount.
gs_final-totot = lwa_hamali-zzamount.
WHEN '4'.
gs_final-tol4 = lwa_hamali-zzamount.
gs_final-totot = lwa_hamali-zzamount.
WHEN '5'.
gs_final-tol5 = lwa_hamali-zzamount.
gs_final-totot = lwa_hamali-zzamount.
WHEN '6'.
gs_final-tol6 = lwa_hamali-zzamount.
gs_final-totot = lwa_hamali-zzamount.
ENDCASE.
ENDLOOP.
ENDFORM.
*&---------------------------------------------------------------------*
*& Form DISPLAY_R3
*&---------------------------------------------------------------------*
*& text
*&---------------------------------------------------------------------*
*& --> p1 text
*& <-- p2 text
*&---------------------------------------------------------------------*
FORM display_r3 .
DEFINE fieldcat.
gs_fcat-fieldname = &1.
gs_fcat-col_pos = &2.
gs_fcat-seltext_m = &3.
APPEND gs_fcat TO gt_fcat.
CLEAR gs_fcat.
END-OF-DEFINITION.
gs_layout-colwidth_optimize = 'X'.
ENDFORM.
*&---------------------------------------------------------------------*
*& Form GET_DATA_R4
*&---------------------------------------------------------------------*
*& text
*&---------------------------------------------------------------------*
*& --> p1 text
*& <-- p2 text
*&---------------------------------------------------------------------*
FORM get_data_r4 .
SELECT zzslno,
werks,
zzdate,
zztolly,
wgbez,
zzdept,
ewbez AS zzvariety,
zzwtype,
zzamount
FROM zfi_hamali
INTO TABLE @DATA(lit_hamali)
WHERE werks IN @s_werks AND
zzdate IN @s_date.
IF lit_hamali IS NOT INITIAL.
data(lit_hama) = lit_hamali.
SORT lit_hama BY werks.
DELETE ADJACENT DUPLICATES FROM lit_hama COMPARING werks.
ENDIF.
"** Plant
gs_final-werks = lwa_hamali-werks.
"** Production
"** Processing
"** Marketing
CASE lwa_hamali-zzdept.
WHEN 1.
gs_final-topdt = lwa_hamali-zzamount.
WHEN 2.
gs_final-topro = lwa_hamali-zzamount.
WHEN 3.
gs_final-tomar = lwa_hamali-zzamount.
ENDCASE.
gs_final-totot = lwa_hamali-zzamount.
ENDLOOP.
ENDFORM.
*&---------------------------------------------------------------------*
*& Form DISPLAY_R4
*&---------------------------------------------------------------------*
*& text
*&---------------------------------------------------------------------*
*& --> p1 text
*& <-- p2 text
*&---------------------------------------------------------------------*
FORM display_r4 .
DEFINE fieldcat.
gs_fcat-fieldname = &1.
gs_fcat-col_pos = &2.
gs_fcat-seltext_m = &3.
gs_fcat-do_sum = &4.
APPEND gs_fcat TO gt_fcat.
CLEAR gs_fcat.
END-OF-DEFINITION.
gs_layout-colwidth_optimize = 'X'.
ENDFORM.