您的位置:首页 > 运维架构

日TOP排名

2016-01-29 11:51 288 查看


CHECK SOURCE_PACKAGE IS NOT INITIAL.

"实收金额为0删除

DELETE SOURCE_PACKAGE WHERE /BIC/ZDTLFTAMT = 0.

DATA: L_DATE TYPE D.

CLEAR L_DATE.

LOOP AT SOURCE_PACKAGE ASSIGNING <SOURCE_FIELDS>.

L_DATE = <SOURCE_FIELDS>-/BIC/ZBUSDE.

EXIT.

ENDLOOP.

IF L_DATE IS NOT INITIAL.

DELETE FROM /BIC/AZCELT06500 WHERE CALDAY = L_DATE.

ENDIF.

PROGRAM trans_routine.

*---------------------------------------------------------------------*

* CLASS routine DEFINITION

*---------------------------------------------------------------------*

*

*---------------------------------------------------------------------*

CLASS lcl_transform DEFINITION.

PUBLIC SECTION.

* Attributs

DATA:

p_check_master_data_exist

TYPE RSODSOCHECKONLY READ-ONLY,

*- Instance for getting request runtime attributs;

* Available information: Refer to methods of

* interface 'if_rsbk_request_admintab_view'

p_r_request

TYPE REF TO if_rsbk_request_admintab_view READ-ONLY.

PRIVATE SECTION.

TYPE-POOLS: rsd, rstr.

* Rule specific types

TYPES:

BEGIN OF _ty_s_TG_1,

* Field: RECORD.

RECORD TYPE RSARECORD,

* InfoObject: ZMATERIAL 物料.

/BIC/ZMATERIAL TYPE /BIC/OIZMATERIAL,

* InfoObject: ZGRID 网格值.

/BIC/ZGRID TYPE /BIC/OIZGRID,

* InfoObject: ZSTORE 店铺主数据.

/BIC/ZSTORE TYPE /BIC/OIZSTORE,

* InfoObject: 0CALDAY 日历日.

CALDAY TYPE /BI0/OICALDAY,

* InfoObject: ZFLAG2 标志2.

/BIC/ZFLAG2 TYPE /BIC/OIZFLAG2,

* InfoObject: ZBZIRK 合并片区.

/BIC/ZBZIRK TYPE /BIC/OIZBZIRK,

* InfoObject: ZSYB 事业部.

/BIC/ZSYB TYPE /BIC/OIZSYB,

* InfoObject: ZCHANNEL 渠道.

/BIC/ZCHANNEL TYPE /BIC/OIZCHANNEL,

* InfoObject: ZXM_DD 督导姓名.

/BIC/ZXM_DD TYPE /BIC/OIZXM_DD,

* InfoObject: ZPQJL 片区经理.

/BIC/ZPQJL TYPE /BIC/OIZPQJL,

* InfoObject: ZZJNAME 总监名称.

/BIC/ZZJNAME TYPE /BIC/OIZZJNAME,

* InfoObject: ZCLASSL 产品大类.

4000
/BIC/ZCLASSL TYPE /BIC/OIZCLASSL,

* InfoObject: ZCLASSM 产品中类.

/BIC/ZCLASSM TYPE /BIC/OIZCLASSM,

* InfoObject: ZCLASSS 产品小类.

/BIC/ZCLASSS TYPE /BIC/OIZCLASSS,

* InfoObject: ZBRAND 品牌.

/BIC/ZBRAND TYPE /BIC/OIZBRAND,

* InfoObject: ZFLAG 标志.

/BIC/ZFLAG TYPE /BIC/OIZFLAG,

* InfoObject: 0RECORDMODE BW 增量处理: 更新模式.

RECORDMODE TYPE RODMUPDMOD,

* InfoObject: 0CALMONTH2 日历月.

CALMONTH2 TYPE /BI0/OICALMONTH2,

* InfoObject: 0CALQUART1 季度.

CALQUART1 TYPE /BI0/OICALQUART1,

* InfoObject: 0CALWEEK 日历年/周.

CALWEEK TYPE /BI0/OICALWEEK,

* InfoObject: 0CALYEAR 日历年.

CALYEAR TYPE /BI0/OICALYEAR,

* InfoObject: 0CALMONTH 日历年/月.

CALMONTH TYPE /BI0/OICALMONTH,

* InfoObject: 0CALQUARTER 日历年/季度.

CALQUARTER TYPE /BI0/OICALQUARTER,

* InfoObject: 0CUSTOMER 客户编号.

CUSTOMER TYPE /BI0/OICUSTOMER,

* InfoObject: 0DISTR_CHAN 分销渠道.

DISTR_CHAN TYPE /BI0/OIDISTR_CHAN,

* InfoObject: ZQDLX 渠道.

/BIC/ZQDLX TYPE /BIC/OIZQDLX,

* InfoObject: ZATWTBCC 尺寸文本.

/BIC/ZATWTBCC TYPE /BIC/OIZATWTBCC,

* InfoObject: ZATWTBYS 颜色文本.

/BIC/ZATWTBYS TYPE /BIC/OIZATWTBYS,

* InfoObject: ZPER_DD 督导ID.

/BIC/ZPER_DD TYPE /BIC/OIZPER_DD,

* InfoObject: ZAREA_MAR 片区经理.

/BIC/ZAREA_MAR TYPE /BIC/OIZAREA_MAR,

* InfoObject: ZZJCODE 总监编号.

/BIC/ZZJCODE TYPE /BIC/OIZZJCODE,

* InfoObject: ZPRTK3 物料K3码.

/BIC/ZPRTK3 TYPE /BIC/OIZPRTK3,

* InfoObject: ZDTLQTY 零售数量.

/BIC/ZDTLQTY TYPE /BIC/OIZDTLQTY,

* InfoObject: 0BASE_UOM 基本计量单位.

BASE_UOM TYPE /BI0/OIBASE_UOM,

* InfoObject: ZDTLFTAMT 实收金额.

/BIC/ZDTLFTAMT TYPE /BIC/OIZDTLFTAMT,

* InfoObject: 0LOC_CURRCY 本币.

LOC_CURRCY TYPE /BI0/OILOC_CURRCY,

* InfoObject: ZZJXJ_AMT 经销总额.

/BIC/ZZJXJ_AMT TYPE /BIC/OIZZJXJ_AMT,

* InfoObject: ZRTRLAMT 终端零售总额(即按终端零售单价计算得的总金额).

/BIC/ZRTRLAMT TYPE /BIC/OIZRTRLAMT,

* InfoObject: ZNTJAMT 南通成本价总额.

/BIC/ZNTJAMT TYPE /BIC/OIZNTJAMT,

* InfoObject: ZSLPX 按数量排序.

/BIC/ZSLPX TYPE /BIC/OIZSLPX,

* InfoObject: ZJEPX 按金额排序.

/BIC/ZJEPX TYPE /BIC/OIZJEPX,

END OF _ty_s_TG_1.

TYPES:

_ty_t_TG_1 TYPE STANDARD TABLE OF _ty_s_TG_1

WITH NON-UNIQUE DEFAULT KEY.

*$*$ begin of global - insert your declaration only below this line *-*

... "insert your code here

"/BIC/AZCSTORE00

TYPES: BEGIN OF TY_S_STORE,

/BIC/ZSTORE TYPE /BIC/OIZSTORE,

/BIC/ZBZIRK TYPE /BIC/OIZBZIRK,

/BIC/ZSYB TYPE /BIC/OIZSYB,

/BIC/ZCHANNEL TYPE /BIC/OIZCHANNEL,

END OF TY_S_STORE,

TY_T_STORE TYPE TABLE OF TY_S_STORE.

DATA: LT_STORE TYPE TY_T_STORE,

LS_STORE TYPE TY_S_STORE.

"/BIC/PZMATERIAL

TYPES: BEGIN OF TY_S_ZMATERIAL,

/BIC/ZMATERIAL TYPE /BIC/OIZMATERIAL,

/BIC/ZBRAND TYPE /BIC/OIZBRAND,

END OF TY_S_ZMATERIAL,

TY_T_ZMATERIAL TYPE TABLE OF TY_S_ZMATERIAL.

DATA: LT_ZMATERIAL TYPE TY_T_ZMATERIAL,

LS_ZMATERIAL TYPE TY_S_ZMATERIAL.

*$*$ end of global - insert your declaration only before this line *-*

METHODS

new_record__end_routine

IMPORTING

source_segid type rstran_segid

source_record type sytabix

EXPORTING

record_new type sytabix.

METHODS

end_routine

IMPORTING

request type rsrequest

datapackid type rsdatapid

segid type rsbk_segid

EXPORTING

monitor type rstr_ty_t_monitors

CHANGING

RESULT_PACKAGE type _ty_t_TG_1

RAISING

cx_rsrout_abort

cx_rsbk_errorcount.

METHODS

inverse_end_routine

IMPORTING

&nb
20000
sp; i_th_fields_outbound TYPE rstran_t_field_inv

I_R_SELSET_OUTBOUND TYPE REF TO CL_RSMDS_SET

i_is_main_selection TYPE rs_bool

i_r_selset_outbound_complete TYPE REF TO cl_rsmds_set

i_r_universe_inbound TYPE REF TO CL_RSMDS_UNIVERSE

CHANGING

c_th_fields_inbound TYPE rstran_t_field_inv

c_r_selset_inbound TYPE REF TO CL_RSMDS_SET

c_exact TYPE rs_bool.

ENDCLASS. "routine DEFINITION

*$*$ begin of 2nd part global - insert your code only below this line *

... "insert your code here

*$*$ end of 2nd part global - insert your code only before this line *

*---------------------------------------------------------------------*

* CLASS routine IMPLEMENTATION

*---------------------------------------------------------------------*

*

*---------------------------------------------------------------------*

CLASS lcl_transform IMPLEMENTATION.

*----------------------------------------------------------------------*

* Method end_routine

*----------------------------------------------------------------------*

* Calculation of result package via end routine.

* Note: Update of target fields depends on rule assignment in

* transformation editor. Only fields that have a rule assigned,

* are updated to the data target.

*----------------------------------------------------------------------*

* <-> result package

*----------------------------------------------------------------------*

METHOD end_routine.

*=== Segments ===

FIELD-SYMBOLS:

<RESULT_FIELDS> TYPE _ty_s_TG_1.

DATA:

MONITOR_REC TYPE rstmonitor.

*$*$ begin of routine - insert your code only below this line *-*

... "insert your code here

*-- fill table "MONITOR" with values of structure "MONITOR_REC"

*- to make monitor entries

... "to cancel the update process

* raise exception type CX_RSROUT_ABORT.

****************************************

"ZFLAG2 标志赋值说明

*A 门店层汇总

*A1 单品销售数量TOP

*A2 单品销售金额TOP

*A3 小类销售数量TOP

*A4 小类销售金额TOP

*A5 中类销售数量TOP

*A6 中类销售金额TOP

*A7 大类类销售数量TOP

*A8 大类销售金额TOP

*B 片区层汇总

*C 渠道层汇总

*D 事业部层汇总

*E 督导层汇总

*F 片区经理层汇总

*G 总监层汇总

*H 品牌层汇总

****************************************

DATA: LT_RESULT_TMP1 TYPE STANDARD TABLE OF /BIC/AZCELT06500 WITH

NON-UNIQUE DEFAULT KEY.

DATA: LT_RESULT_TMP2 LIKE LT_RESULT_TMP1.

DATA: LT_RESULT_TMP LIKE LT_RESULT_TMP1.

DATA: LS_RESULT_TMP TYPE /BIC/AZCELT06500,

LS_RESULT_TMP1 TYPE /BIC/AZCELT06500,

LS_RESULT_TMP2 TYPE /BIC/AZCELT06500.

DATA: LT_RESULT TYPE _ty_t_TG_1,

LT_RESULT_TMP3 TYPE _ty_t_TG_1.

DATA: LS_RESULT TYPE _ty_s_TG_1,

LS_RESULT_TMP3 TYPE _ty_s_TG_1.

DATA: ZZSLPX TYPE /BIC/OIZSLPX, "按数量排序

ZZJEPX TYPE /BIC/OIZJEPX, "按金额排序.

L_RECORD TYPE I,

ZZSTORE TYPE /BIC/OIZSTORE,

ZZBZIRK TYPE /BIC/OIZBZIRK,

ZZCHANNEL TYPE /BIC/OIZCHANNEL,

ZZSYB TYPE /BIC/OIZSYB,

ZZXM_DD TYPE /BIC/OIZXM_DD,

ZZPQJL TYPE /BIC/OIZPQJL,

ZZJNAME TYPE /BIC/OIZZJNAME.

L_RECORD = 0.

REFRESH LT_STORE.

SELECT /BIC/ZSTORE

/BIC/ZBZIRK

/BIC/ZSYB

/BIC/ZCHANNEL

INTO TABLE LT_STORE

FROM /BIC/AZCSTORE00

FOR ALL ENTRIES IN RESULT_PACKAGE

WHERE /BIC/ZSTORE = RESULT_PACKAGE-/BIC/ZSTORE.

SORT LT_STORE BY /BIC/ZSTORE.

DELETE ADJACENT DUPLICATES FROM LT_STORE COMPARING /BIC/ZSTORE.

REFRESH LT_ZMATERIAL.

SELECT /BIC/ZMATERIAL

/BIC/ZBRAND

INTO TABLE LT_ZMATERIAL

FROM /BIC/PZMATERIAL

FOR ALL ENTRIES IN RESULT_PACKAGE

WHERE /BIC/ZMATERIAL = RESULT_PACKAGE-/BIC/ZMATERIAL.

SORT LT_ZMATERIAL BY /BIC/ZMATERIAL.

DELETE ADJACENT DUPLICATES FROM LT_ZMATERIAL COMPARING /BIC/ZMATERIAL

.

****************按物料TOP*******************

"1.1按门店销售数量排序

REFRESH: LT_RESULT_TMP3,LT_RESULT_TMP1,LT_RESULT_TMP2.

LT_RESULT_TMP3[] = RESULT_PACKAGE[].

CLEAR LS_RESULT_TMP3.

LOOP AT LT_RESULT_TMP3 INTO LS_RESULT_TMP3.

CLEAR LS_STORE.

READ TABLE LT_STORE INTO LS_STORE WITH KEY

/BIC/ZSTORE = LS_RESULT_TMP3-/BIC/ZSTORE BINARY SEARCH.

IF SY-SUBRC = 0.

LS_RESULT_TMP3-/BIC/ZBZIRK = LS_STORE-/BIC/ZBZIRK.

LS_RESULT_TMP3-/BIC/ZSYB = LS_STORE-/BIC/ZSYB.

LS_RESULT_TMP3-/BIC/ZCHANNEL = LS_STORE-/BIC/ZCHANNEL.

ENDIF.

IF LS_RESULT_TMP3-/BIC/ZBZIRK IS INITIAL.

LS_RESULT_TMP3-/BIC/ZBZIRK = '缺失'.

ENDIF.

IF LS_RESULT_TMP3-/BIC/ZSYB IS INITIAL.

LS_RESULT_TMP3-/BIC/ZSYB = '缺失'.

ENDIF.

IF LS_RESULT_TMP3-/BIC/ZCHANNEL IS INITIAL.

LS_RESULT_TMP3-/BIC/ZCHANNEL = '缺失'.

ENDIF.

IF LS_RESULT_TMP3-/BIC/ZCLASSL IS INITIAL.

LS_RESULT_TMP3-/BIC/ZCLASSL = '缺失'.

ENDIF.

IF LS_RESULT_TMP3-/BIC/ZCLASSM IS INITIAL.

LS_RESULT_TMP3-/BIC/ZCLASSM = '缺失'.

ENDIF.

IF LS_RESULT_TMP3-/BIC/ZCLASSS IS INITIAL.

LS_RESULT_TMP3-/BIC/ZCLASSS = '缺失'.

ENDIF.

LS_RESULT_TMP1-/BIC/ZFLAG = LS_RESULT_TMP3-/BIC/ZFLAG.

LS_RESULT_TMP1-/BIC/ZMATERIAL = LS_RESULT_TMP3-/BIC/ZMATERIAL.

LS_RESULT_TMP1-/BIC/ZGRID = LS_RESULT_TMP3-/BIC/ZGRID.

LS_RESULT_TMP1-/BIC/ZSTORE = LS_RESULT_TMP3-/BIC/ZSTORE.

LS_RESULT_TMP1-CALDAY = LS_RESULT_TMP3-CALDAY.

LS_RESULT_TMP1-/BIC/ZBZIRK = LS_RESULT_TMP3-/BIC/ZBZIRK.

LS_RESULT_TMP1-/BIC/ZSYB = LS_RESULT_TMP3-/BIC/ZSYB.

LS_RESULT_TMP1-/BIC/ZCHANNEL = LS_RESULT_TMP3-/BIC/ZCHANNEL.

LS_RESULT_TMP1-/BIC/ZXM_DD = LS_RESULT_TMP3-/BIC/ZXM_DD.

LS_RESULT_TMP1-/BIC/ZPQJL = LS_RESULT_TMP3-/BIC/ZPQJL.

LS_RESULT_TMP1-/BIC/ZZJNAME = LS_RESULT_TMP3-/BIC/ZZJNAME.

LS_RESULT_TMP1-/BIC/ZCLASSL = LS_RESULT_TMP3-/BIC/ZCLASSL.

LS_RESULT_TMP1-/BIC/ZCLASSM = LS_RESULT_TMP3-/BIC/ZCLASSM.

LS_RESULT_TMP1-/BIC/ZCLASSS = LS_RESULT_TMP3-/BIC/ZCLASSS.

LS_RESULT_TMP1-/BIC/ZBRAND = LS_RESULT_TMP3-/BIC/ZBRAND.

LS_RESULT_TMP1-CALWEEK = LS_RESULT_TMP3-CALWEEK.

LS_RESULT_TMP1-CALMONTH2 = LS_RESULT_TMP3-CALMONTH2.

LS_RESULT_TMP1-CALQUART1 = LS_RESULT_TMP3-CALQUART1.

LS_RESULT_TMP1-CALYEAR = LS_RESULT_TMP3-CALYEAR.

LS_RESULT_TMP1-CALMONTH = LS_RESULT_TMP3-CALMONTH.

LS_RESULT_TMP1-CALQUARTER = LS_RESULT_TMP3-CALQUARTER.

LS_RESULT_TMP1-/BIC/ZATWTBCC = LS_RESULT_TMP3-/BIC/ZATWTBCC.

LS_RESULT_TMP1-/BIC/ZATWTBYS = LS_RESULT_TMP3-/BIC/ZATWTBYS.

LS_RESULT_TMP1-/BIC/ZPRTK3 = LS_RESULT_TMP3-/BIC/ZPRTK3.

LS_RESULT_TMP1-/BIC/ZDTLQTY = LS_RESULT_TMP3-/BIC/ZDTLQTY.

LS_RESULT_TMP1-/BIC/ZDTLFTAMT = LS_RESULT_TMP3-/BIC/ZDTLFTAMT.

LS_RESULT_TMP1-/BIC/ZZJXJ_AMT = LS_RESULT_TMP3-/BIC/ZZJXJ_AMT.

LS_RESULT_TMP1-/BIC/ZRTRLAMT = LS_RESULT_TMP3-/BIC/ZRTRLAMT.

LS_RESULT_TMP1-/BIC/ZNTJAMT = LS_RESULT_TMP3-/BIC/ZNTJAMT.

COLLECT LS_RESULT_TMP1 INTO LT_RESULT_TMP1.

ENDLOOP.

"删除退货

DELETE LT_RESULT_TMP1 WHERE /BIC/ZDTLFTAMT = 0 AND /BIC/ZDTLQTY = 0 .

"大中小类用

LT_RESULT_TMP2[] = LT_RESULT_TMP1[].

SORT LT_RESULT_TMP1 BY

/BIC/ZSTORE ASCENDING

/BIC/ZDTLQTY DESCENDING

/BIC/ZDTLFTAMT DESCENDING.

CLEAR: ZZSLPX,ZZJEPX,LS_RESULT_TMP1,ZZSTORE.

LOOP AT LT_RESULT_TMP1 INTO LS_RESULT_TMP1.

IF ZZSTORE IS INITIAL.

ZZSTORE = LS_RESULT_TMP1-/BIC/ZSTORE.

CLEAR ZZSLPX.

ENDIF.

IF ZZSTORE = LS_RESULT_TMP1-/BIC/ZSTORE.

IF ZZSLPX < 50.

ZZSLPX = ZZSLPX + 1.

LS_RESULT_TMP1-/BIC/ZJEPX = 0.

LS_RESULT_TMP1-/BIC/ZSLPX = ZZSLPX.

LS_RESULT_TMP1-/BIC/ZFLAG2 = 'A1'.

"添加记录

MOVE-CORRESPONDING LS_RESULT_TMP1 TO LS_RESULT.

L_RECORD = L_RECORD + 1.

LS_RESULT-RECORD = L_RECORD.

APPEND LS_RESULT TO LT_RESULT.

ENDIF.

ELSE.

ZZSTORE = LS_RESULT_TMP1-/BIC/ZSTORE.

CLEAR ZZSLPX.

ZZSLPX = ZZSLPX + 1.

LS_RESULT_TMP1-/BIC/ZJEPX = 0.

LS_RESULT_TMP1-/BIC/ZSLPX = ZZSLPX.

LS_RESULT_TMP1-/BIC/ZFLAG2 = 'A1'.

"添加记录

MOVE-CORRESPONDING LS_RESULT_TMP1 TO LS_RESULT.

L_RECORD = L_RECORD + 1.

LS_RESULT-RECORD = L_RECORD.

APPEND LS_RESULT TO LT_RESULT.

ENDIF.

ENDLOOP.

"1.2按门店销售金额排序

SORT LT_RESULT_TMP1 BY

/BIC/ZSTORE ASCENDING

/BIC/ZDTLFTAMT DESCENDING

/BIC/ZDTLQTY DESCENDING.

CLEAR: ZZSLPX,ZZJEPX,LS_RESULT_TMP1,ZZSTORE.

LOOP AT LT_RESULT_TMP1 INTO LS_RESULT_TMP1.

IF ZZSTORE IS INITIAL.

ZZSTORE = LS_RESULT_TMP1-/BIC/ZSTORE.

CLEAR ZZJEPX.

ENDIF.

IF ZZSTORE = LS_RESULT_TMP1-/BIC/ZSTORE.

IF ZZJEPX < 50.

ZZJEPX = ZZJEPX + 1.

LS_RESULT_TMP1-/BIC/ZJEPX = ZZJEPX.

LS_RESULT_TMP1-/BIC/ZSLPX = 0 .

LS_RESULT_TMP1-/BIC/ZFLAG2 = 'A2'.

"添加记录

MOVE-CORRESPONDING LS_RESULT_TMP1 TO LS_RESULT.

L_RECORD = L_RECORD + 1.

LS_RESULT-RECORD = L_RECORD.

APPEND LS_RESULT TO LT_RESULT.

ENDIF.

ELSE.

ZZSTORE = LS_RESULT_TMP1-/BIC/ZSTORE.

CLEAR ZZJEPX.

ZZJEPX = ZZJEPX + 1.

LS_RESULT_TMP1-/BIC/ZJEPX = ZZJEPX.

LS_RESULT_TMP1-/BIC/ZSLPX = 0 .

LS_RESULT_TMP1-/BIC/ZFLAG2 = 'A2'.

"添加记录

MOVE-CORRESPONDING LS_RESULT_TMP1 TO LS_RESULT.

L_RECORD = L_RECORD + 1.

LS_RESULT-RECORD = L_RECORD.

APPEND LS_RESULT TO LT_RESULT.

ENDIF.

ENDLOOP.

REFRESH: LT_RESULT_TMP,LT_RESULT_TMP1.

LT_RESULT_TMP[] = LT_RESULT_TMP2[].

"2.1按片区销售数量排序

CLEAR LS_RESULT_TMP.

LOOP AT LT_RESULT_TMP INTO LS_RESULT_TMP.

CLEAR LS_RESULT_TMP-DISTR_CHAN.

CLEAR LS_RESULT_TMP-/BIC/ZQDLX.

CLEAR LS_RESULT_TMP-/BIC/ZBRAND.

CLEAR LS_RESULT_TMP-CUSTOMER.

CLEAR LS_RESULT_TMP-/BIC/ZSTORE.

CLEAR LS_RESULT_TMP-/BIC/ZPER_DD.

CLEAR LS_RESULT_TMP-/BIC/ZXM_DD.

CLEAR LS_RESULT_TMP-/BIC/ZAREA_MAR.

CLEAR LS_RESULT_TMP-/BIC/ZPQJL.

CLEAR LS_RESULT_TMP-/BIC/ZZJCODE.

CLEAR LS_RESULT_TMP-/BIC/ZZJNAME.

CLEAR LS_RESULT_TMP-/BIC/ZFLAG2.

CLEAR LS_RESULT_TMP-/BIC/ZSLPX.

CLEAR LS_RESULT_TMP-/BIC/ZJEPX.

COLLECT LS_RESULT_TMP INTO LT_RESULT_TMP1.

ENDLOOP.

SORT LT_RESULT_TMP1 BY

/BIC/ZBZIRK ASCENDING

/BIC/ZDTLQTY DESCENDING

/BIC/ZDTLFTAMT DESCENDING.

CLEAR: ZZSLPX,ZZJEPX,LS_RESULT_TMP1,ZZBZIRK.

LOOP AT LT_RESULT_TMP1 INTO LS_RESULT_TMP1.

IF ZZBZIRK IS INITIAL.

ZZBZIRK = LS_RESULT_TMP1-/BIC/ZBZIRK.

CLEAR ZZSLPX.

ENDIF.

IF ZZBZIRK = LS_RESULT_TMP1-/BIC/ZBZIRK.

IF ZZSLPX < 50.

ZZSLPX = ZZSLPX + 1.

LS_RESULT_TMP1-/BIC/ZJEPX = 0.

LS_RESULT_TMP1-/BIC/ZSLPX = ZZSLPX.

LS_RESULT_TMP1-/BIC/ZFLAG2 = 'B1'.

"添加记录

MOVE-CORRESPONDING LS_RESULT_TMP1 TO LS_RESULT.

L_RECORD = L_RECORD + 1.

LS_RESULT-RECORD = L_RECORD.

APPEND LS_RESULT TO LT_RESULT.

ENDIF.

ELSE.

ZZBZIRK = LS_RESULT_TMP1-/BIC/ZBZIRK.

CLEAR ZZSLPX.

ZZSLPX = ZZSLPX + 1.

LS_RESULT_TMP1-/BIC/ZJEPX = 0.

LS_RESULT_TMP1-/BIC/ZSLPX = ZZSLPX.

LS_RESULT_TMP1-/BIC/ZFLAG2 = 'B1'.

"添加记录

MOVE-CORRESPONDING LS_RESULT_TMP1 TO LS_RESULT.

L_RECORD = L_RECORD + 1.

LS_RESULT-RECORD = L_RECORD.

APPEND LS_RESULT TO LT_RESULT.

ENDIF.

ENDLOOP.

"2.2按片区销售金额排序

SORT LT_RESULT_TMP1 BY

/BIC/ZBZIRK ASCENDING

/BIC/ZDTLFTAMT DESCENDING

/BIC/ZDTLQTY DESCENDING.

CLEAR: ZZSLPX,ZZJEPX,LS_RESULT_TMP1,ZZBZIRK.

LOOP AT LT_RESULT_TMP1 INTO LS_RESULT_TMP1.

IF ZZBZIRK IS INITIAL.

ZZBZIRK = LS_RESULT_TMP1-/BIC/ZBZIRK.

CLEAR ZZJEPX.

ENDIF.

IF ZZBZIRK = LS_RESULT_TMP1-/BIC/ZBZIRK.

IF ZZJEPX < 50.

ZZJEPX = ZZJEPX + 1.

LS_RESULT_TMP1-/BIC/ZJEPX = ZZJEPX.

LS_RESULT_TMP1-/BIC/ZSLPX = 0.

LS_RESULT_TMP1-/BIC/ZFLAG2 = 'B2'.

"添加记录

MOVE-CORRESPONDING LS_RESULT_TMP1 TO LS_RESULT.

L_RECORD = L_RECORD + 1.

LS_RESULT-RECORD = L_RECORD.

APPEND LS_RESULT TO LT_RESULT.

ENDIF.

ELSE.

ZZBZIRK = LS_RESULT_TMP1-/BIC/ZBZIRK.

CLEAR ZZJEPX.

ZZJEPX = ZZJEPX + 1.

LS_RESULT_TMP1-/BIC/ZJEPX = ZZJEPX.

LS_RESULT_TMP1-/BIC/ZSLPX = 0.

LS_RESULT_TMP1-/BIC/ZFLAG2 = 'B2'.

"添加记录

MOVE-CORRESPONDING LS_RESULT_TMP1 TO LS_RESULT.

L_RECORD = L_RECORD + 1.

LS_RESULT-RECORD = L_RECORD.

APPEND LS_RESULT TO LT_RESULT.

ENDIF.

ENDLOOP.

REFRESH: LT_RESULT_TMP,LT_RESULT_TMP1.

LT_RESULT_TMP[] = LT_RESULT_TMP2[].

"3.1按渠道销售数量排序

CLEAR LS_RESULT_TMP.

LOOP AT LT_RESULT_TMP INTO LS_RESULT_TMP.

CLEAR LS_RESULT_TMP-/BIC/ZBZIRK.

CLEAR LS_RESULT_TMP-DISTR_CHAN.

CLEAR LS_RESULT_TMP-/BIC/ZQDLX.

CLEAR LS_RESULT_TMP-/BIC/ZBRAND.

CLEAR LS_RESULT_TMP-CUSTOMER.

CLEAR LS_RESULT_TMP-/BIC/ZSTORE.

CLEAR LS_RESULT_TMP-/BIC/ZPER_DD.

CLEAR LS_RESULT_TMP-/BIC/ZXM_DD.

CLEAR LS_RESULT_TMP-/BIC/ZAREA_MAR.

CLEAR LS_RESULT_TMP-/BIC/ZPQJL.

CLEAR LS_RESULT_TMP-/BIC/ZZJCODE.

CLEAR LS_RESULT_TMP-/BIC/ZZJNAME.

CLEAR LS_RESULT_TMP-/BIC/ZFLAG2.

CLEAR LS_RESULT_TMP-/BIC/ZSLPX.

CLEAR LS_RESULT_TMP-/BIC/ZJEPX.

COLLECT LS_RESULT_TMP INTO LT_RESULT_TMP1.

ENDLOOP.

SORT LT_RESULT_TMP1 BY

/BIC/ZCHANNEL ASCENDING

/BIC/ZDTLQTY DESCENDING

/BIC/ZDTLFTAMT DESCENDING.

CLEAR: ZZSLPX,ZZJEPX,LS_RESULT_TMP1,ZZCHANNEL.

LOOP AT LT_RESULT_TMP1 INTO LS_RESULT_TMP1.

IF ZZCHANNEL IS INITIAL.

ZZCHANNEL = LS_RESULT_TMP1-/BIC/ZCHANNEL.

CLEAR ZZSLPX.

ENDIF.

IF ZZCHANNEL = LS_RESULT_TMP1-/BIC/ZCHANNEL.

IF ZZSLPX < 50 .

ZZSLPX = ZZSLPX + 1.

LS_RESULT_TMP1-/BIC/ZJEPX = 0.

LS_RESULT_TMP1-/BIC/ZSLPX = ZZSLPX.

LS_RESULT_TMP1-/BIC/ZFLAG2 = 'C1'.

"添加记录

MOVE-CORRESPONDING LS_RESULT_TMP1 TO LS_RESULT.

L_RECORD = L_RECORD + 1.

LS_RESULT-RECORD = L_RECORD.

APPEND LS_RESULT TO LT_RESULT.

ENDIF.

ELSE.

ZZCHANNEL = LS_RESULT_TMP1-/BIC/ZCHANNEL.

CLEAR ZZSLPX.

ZZSLPX = ZZSLPX + 1.

LS_RESULT_TMP1-/BIC/ZJEPX = 0.

LS_RESULT_TMP1-/BIC/ZSLPX = ZZSLPX.

LS_RESULT_TMP1-/BIC/ZFLAG2 = 'C1'.

"添加记录

MOVE-CORRESPONDING LS_RESULT_TMP1 TO LS_RESULT.

L_RECORD = L_RECORD + 1.

LS_RESULT-RECORD = L_RECORD.

APPEND LS_RESULT TO LT_RESULT.

ENDIF.

ENDLOOP.

"3.2按渠道销售金额排序

SORT LT_RESULT_TMP1 BY

/BIC/ZCHANNEL ASCENDING

/BIC/ZDTLFTAMT DESCENDING

/BIC/ZDTLQTY DESCENDING.

CLEAR: ZZSLPX,ZZJEPX,LS_RESULT_TMP1,ZZCHANNEL.

LOOP AT LT_RESULT_TMP1 INTO LS_RESULT_TMP1.

IF ZZCHANNEL IS INITIAL.

ZZCHANNEL = LS_RESULT_TMP1-/BIC/ZCHANNEL.

CLEAR ZZJEPX.

ENDIF.

IF ZZCHANNEL = LS_RESULT_TMP1-/BIC/ZCHANNEL.

IF ZZJEPX < 50 .

ZZJEPX = ZZJEPX + 1.

LS_RESULT_TMP1-/BIC/ZJEPX = ZZJEPX.

LS_RESULT_TMP1-/BIC/ZSLPX = 0.

LS_RESULT_TMP1-/BIC/ZFLAG2 = 'C2'.

"添加记录

MOVE-CORRESPONDING LS_RESULT_TMP1 TO LS_RESULT.

L_RECORD = L_RECORD + 1.

LS_RESULT-RECORD = L_RECORD.

APPEND LS_RESULT TO LT_RESULT.

ENDIF.

ELSE.

ZZCHANNEL = LS_RESULT_TMP1-/BIC/ZCHANNEL.

CLEAR ZZJEPX.

ZZJEPX = ZZJEPX + 1.

LS_RESULT_TMP1-/BIC/ZJEPX = ZZJEPX.

LS_RESULT_TMP1-/BIC/ZSLPX = 0.

LS_RESULT_TMP1-/BIC/ZFLAG2 = 'C2'.

"添加记录

MOVE-CORRESPONDING LS_RESULT_TMP1 TO LS_RESULT.

L_RECORD = L_RECORD + 1.

LS_RESULT-RECORD = L_RECORD.

APPEND LS_RESULT TO LT_RESULT.

ENDIF.

ENDLOOP.

REFRESH: LT_RESULT_TMP,LT_RESULT_TMP1.

LT_RESULT_TMP[] = LT_RESULT_TMP2[].

"4.1按事业部销售数量排序

CLEAR LS_RESULT_TMP.

LOOP AT LT_RESULT_TMP INTO LS_RESULT_TMP.

CLEAR LS_RESULT_TMP-/BIC/ZCHANNEL.

CLEAR LS_RESULT_TMP-/BIC/ZBZIRK.

CLEAR LS_RESULT_TMP-DISTR_CHAN.

CLEAR LS_RESULT_TMP-/BIC/ZQDLX.

CLEAR LS_RESULT_TMP-/BIC/ZBRAND.

CLEAR LS_RESULT_TMP-CUSTOMER.

CLEAR LS_RESULT_TMP-/BIC/ZSTORE.

CLEAR LS_RESULT_TMP-/BIC/ZPER_DD.

CLEAR LS_RESULT_TMP-/BIC/ZXM_DD.

CLEAR LS_RESULT_TMP-/BIC/ZAREA_MAR.

CLEAR LS_RESULT_TMP-/BIC/ZPQJL.

CLEAR LS_RESULT_TMP-/BIC/ZZJCODE.

CLEAR LS_RESULT_TMP-/BIC/ZZJNAME.

CLEAR LS_RESULT_TMP-/BIC/ZFLAG2.

CLEAR LS_RESULT_TMP-/BIC/ZSLPX.

CLEAR LS_RESULT_TMP-/BIC/ZJEPX.

COLLECT LS_RESULT_TMP INTO LT_RESULT_TMP1.

ENDLOOP.

SORT LT_RESULT_TMP1 BY

/BIC/ZSYB ASCENDING

/BIC/ZDTLQTY DESCENDING

/BIC/ZDTLFTAMT DESCENDING.

CLEAR: ZZSLPX,ZZJEPX,LS_RESULT_TMP1,ZZSYB.

LOOP AT LT_RESULT_TMP1 INTO LS_RESULT_TMP1.

IF ZZSYB IS INITIAL.

ZZSYB = LS_RESULT_TMP1-/BIC/ZSYB.

CLEAR ZZSLPX.

ENDIF.

IF ZZSYB = LS_RESULT_TMP1-/BIC/ZSYB.

IF ZZSLPX < 50 .

ZZSLPX = ZZSLPX + 1.

LS_RESULT_TMP1-/BIC/ZJEPX = 0.

LS_RESULT_TMP1-/BIC/ZSLPX = ZZSLPX.

LS_RESULT_TMP1-/BIC/ZFLAG2 = 'D1'.

"添加记录

MOVE-CORRESPONDING LS_RESULT_TMP1 TO LS_RESULT.

L_RECORD = L_RECORD + 1.

LS_RESULT-RECORD = L_RECORD.

APPEND LS_RESULT TO LT_RESULT.

ENDIF.

ELSE.

ZZSYB = LS_RESULT_TMP1-/BIC/ZSYB.

CLEAR ZZSLPX.

ZZSLPX = ZZSLPX + 1.

LS_RESULT_TMP1-/BIC/ZJEPX = 0.

LS_RESULT_TMP1-/BIC/ZSLPX = ZZSLPX.

LS_RESULT_TMP1-/BIC/ZFLAG2 = 'D1'.

"添加记录

MOVE-CORRESPONDING LS_RESULT_TMP1 TO LS_RESULT.

L_RECORD = L_RECORD + 1.

LS_RESULT-RECORD = L_RECORD.

APPEND LS_RESULT TO LT_RESULT.

ENDIF.

ENDLOOP.

"4.2按事业部销售金额排序

SORT LT_RESULT_TMP1 BY

/BIC/ZSYB ASCENDING

/BIC/ZDTLFTAMT DESCENDING

/BIC/ZDTLQTY DESCENDING.

CLEAR: ZZSLPX,ZZJEPX,LS_RESULT_TMP1,ZZSYB.

LOOP AT LT_RESULT_TMP1 INTO LS_RESULT_TMP1.

IF ZZSYB IS INITIAL.

ZZSYB = LS_RESULT_TMP1-/BIC/ZSYB.

CLEAR ZZJEPX.

ENDIF.

IF ZZSYB = LS_RESULT_TMP1-/BIC/ZSYB.

IF ZZJEPX < 50 .

ZZJEPX = ZZJEPX + 1.

LS_RESULT_TMP1-/BIC/ZJEPX = ZZJEPX.

LS_RESULT_TMP1-/BIC/ZSLPX = 0.

LS_RESULT_TMP1-/BIC/ZFLAG2 = 'D2'.

"添加记录

MOVE-CORRESPONDING LS_RESULT_TMP1 TO LS_RESULT.

L_RECORD = L_RECORD + 1.

LS_RESULT-RECORD = L_RECORD.

APPEND LS_RESULT TO LT_RESULT.

ENDIF.

ELSE.

ZZSYB = LS_RESULT_TMP1-/BIC/ZSYB.

CLEAR ZZJEPX.

ZZJEPX = ZZJEPX + 1.

LS_RESULT_TMP1-/BIC/ZJEPX = ZZJEPX.

LS_RESULT_TMP1-/BIC/ZSLPX = 0.

LS_RESULT_TMP1-/BIC/ZFLAG2 = 'D2'.

"添加记录

MOVE-CORRESPONDING LS_RESULT_TMP1 TO LS_RESULT.

L_RECORD = L_RECORD + 1.

LS_RESULT-RECORD = L_RECORD.

APPEND LS_RESULT TO LT_RESULT.

ENDIF.

ENDLOOP.

"5.1按督导销售数量排序

REFRESH: LT_RESULT_TMP,LT_RESULT_TMP1.

LT_RESULT_TMP[] = LT_RESULT_TMP2[].

CLEAR LS_RESULT_TMP.

LOOP AT LT_RESULT_TMP INTO LS_RESULT_TMP .

CLEAR LS_RESULT_TMP-/BIC/ZCHANNEL.

CLEAR LS_RESULT_TMP-/BIC/ZSYB.

CLEAR LS_RESULT_TMP-/BIC/ZBZIRK.

CLEAR LS_RESULT_TMP-DISTR_CHAN.

CLEAR LS_RESULT_TMP-/BIC/ZQDLX.

CLEAR LS_RESULT_TMP-/BIC/ZBRAND.

CLEAR LS_RESULT_TMP-CUSTOMER.

CLEAR LS_RESULT_TMP-/BIC/ZSTORE.

CLEAR LS_RESULT_TMP-/BIC/ZFLAG2.

CLEAR LS_RESULT_TMP-/BIC/ZSLPX.

CLEAR LS_RESULT_TMP-/BIC/ZJEPX.

COLLECT LS_RESULT_TMP INTO LT_RESULT_TMP1.

ENDLOOP.

SORT LT_RESULT_TMP1 BY

/BIC/ZXM_DD ASCENDING

/BIC/ZDTLQTY DESCENDING

/BIC/ZDTLFTAMT DESCENDING.

CLEAR: ZZSLPX,ZZJEPX,LS_RESULT_TMP1,ZZXM_DD.

LOOP AT LT_RESULT_TMP1 INTO LS_RESULT_TMP1.

IF ZZXM_DD IS INITIAL.

ZZXM_DD = LS_RESULT_TMP1-/BIC/ZXM_DD.

CLEAR ZZSLPX.

ENDIF.

IF ZZXM_DD = LS_RESULT_TMP1-/BIC/ZXM_DD.

IF ZZSLPX < 50 .

ZZSLPX = ZZSLPX + 1.

LS_RESULT_TMP1-/BIC/ZJEPX = 0.

LS_RESULT_TMP1-/BIC/ZSLPX = ZZSLPX.

LS_RESULT_TMP1-/BIC/ZFLAG2 = 'E1'.

"添加记录

MOVE-CORRESPONDING LS_RESULT_TMP1 TO LS_RESULT.

L_RECORD = L_RECORD + 1.

LS_RESULT-RECORD = L_RECORD.

APPEND LS_RESULT TO LT_RESULT.

ENDIF.

ELSE.

ZZXM_DD = LS_RESULT_TMP1-/BIC/ZXM_DD.

CLEAR ZZSLPX.

ZZSLPX = ZZSLPX + 1.

LS_RESULT_TMP1-/BIC/ZJEPX = 0.

LS_RESULT_TMP1-/BIC/ZSLPX = ZZSLPX.

LS_RESULT_TMP1-/BIC/ZFLAG2 = 'E1'.

"添加记录

MOVE-CORRESPONDING LS_RESULT_TMP1 TO LS_RESULT.

L_RECORD = L_RECORD + 1.

LS_RESULT-RECORD = L_RECORD.

APPEND LS_RESULT TO LT_RESULT.

ENDIF.

ENDLOOP.

"5.2按督导销售金额排序

SORT LT_RESULT_TMP1 BY

/BIC/ZXM_DD ASCENDING

/BIC/ZDTLFTAMT DESCENDING

/BIC/ZDTLQTY DESCENDING.

CLEAR: ZZSLPX,ZZJEPX,LS_RESULT_TMP1,ZZXM_DD.

LOOP AT LT_RESULT_TMP1 INTO LS_RESULT_TMP1.

IF ZZXM_DD IS INITIAL.

ZZXM_DD = LS_RESULT_TMP1-/BIC/ZXM_DD.

CLEAR ZZJEPX.

ENDIF.

IF ZZXM_DD = LS_RESULT_TMP1-/BIC/ZXM_DD.

IF ZZJEPX < 50 .

ZZJEPX = ZZJEPX + 1.

LS_RESULT_TMP1-/BIC/ZJEPX = ZZJEPX.

LS_RESULT_TMP1-/BIC/ZSLPX = 0.

LS_RESULT_TMP1-/BIC/ZFLAG2 = 'E2'.

"添加记录

MOVE-CORRESPONDING LS_RESULT_TMP1 TO LS_RESULT.

L_RECORD = L_RECORD + 1.

LS_RESULT-RECORD = L_RECORD.

APPEND LS_RESULT TO LT_RESULT.

ENDIF.

ELSE.

ZZXM_DD = LS_RESULT_TMP1-/BIC/ZXM_DD.

CLEAR ZZJEPX.

ZZJEPX = ZZJEPX + 1.

LS_RESULT_TMP1-/BIC/ZJEPX = ZZJEPX.

LS_RESULT_TMP1-/BIC/ZSLPX = 0.

LS_RESULT_TMP1-/BIC/ZFLAG2 = 'E2'.

"添加记录

MOVE-CORRESPONDING LS_RESULT_TMP1 TO LS_RESULT.

L_RECORD = L_RECORD + 1.

LS_RESULT-RECORD = L_RECORD.

APPEND LS_RESULT TO LT_RESULT.

ENDIF.

ENDLOOP.

"6.1按片区经理销售数量排序

REFRESH: LT_RESULT_TMP,LT_RESULT_TMP1.

LT_RESULT_TMP[] = LT_RESULT_TMP2[].

CLEAR LS_RESULT_TMP.

LOOP AT LT_RESULT_TMP INTO LS_RESULT_TMP.

CLEAR LS_RESULT_TMP-/BIC/ZCHANNEL.

CLEAR LS_RESULT_TMP-/BIC/ZSYB.

CLEAR LS_RESULT_TMP-/BIC/ZBZIRK.

CLEAR LS_RESULT_TMP-DISTR_CHAN.

CLEAR LS_RESULT_TMP-/BIC/ZQDLX.

CLEAR LS_RESULT_TMP-/BIC/ZBRAND.

CLEAR LS_RESULT_TMP-CUSTOMER.

CLEAR LS_RESULT_TMP-/BIC/ZSTORE.

CLEAR LS_RESULT_TMP-/BIC/ZXM_DD.

CLEAR LS_RESULT_TMP-/BIC/ZFLAG2.

CLEAR LS_RESULT_TMP-/BIC/ZSLPX.

CLEAR LS_RESULT_TMP-/BIC/ZJEPX.

COLLECT LS_RESULT_TMP INTO LT_RESULT_TMP1.

ENDLOOP.

SORT LT_RESULT_TMP1 BY

/BIC/ZPQJL ASCENDING

/BIC/ZDTLQTY DESCENDING

/BIC/ZDTLFTAMT DESCENDING.

CLEAR: ZZSLPX,ZZJEPX,LS_RESULT_TMP1,ZZPQJL.

LOOP AT LT_RESULT_TMP1 INTO LS_RESULT_TMP1.

IF ZZPQJL IS INITIAL.

ZZPQJL = LS_RESULT_TMP1-/BIC/ZPQJL.

CLEAR ZZSLPX.

ENDIF.

IF ZZPQJL = LS_RESULT_TMP1-/BIC/ZPQJL.

IF ZZSLPX < 50 .

ZZSLPX = ZZSLPX + 1.

LS_RESULT_TMP1-/BIC/ZJEPX = 0.

LS_RESULT_TMP1-/BIC/ZSLPX = ZZSLPX.

LS_RESULT_TMP1-/BIC/ZFLAG2 = 'F1'.

"添加记录

MOVE-CORRESPONDING LS_RESULT_TMP1 TO LS_RESULT.

L_RECORD = L_RECORD + 1.

LS_RESULT-RECORD = L_RECORD.

APPEND LS_RESULT TO LT_RESULT.

ENDIF.

ELSE.

ZZPQJL = LS_RESULT_TMP1-/BIC/ZPQJL.

CLEAR ZZSLPX.

ZZSLPX = ZZSLPX + 1.

LS_RESULT_TMP1-/BIC/ZJEPX = 0.

LS_RESULT_TMP1-/BIC/ZSLPX = ZZSLPX.

LS_RESULT_TMP1-/BIC/ZFLAG2 = 'F1'.

"添加记录

MOVE-CORRESPONDING LS_RESULT_TMP1 TO LS_RESULT.

L_RECORD = L_RECORD + 1.

LS_RESULT-RECORD = L_RECORD.

APPEND LS_RESULT TO LT_RESULT.

ENDIF.

ENDLOOP.

"6.2按片区经理销售金额排序

SORT LT_RESULT_TMP1 BY

/BIC/ZPQJL ASCENDING

/BIC/ZDTLFTAMT DESCENDING

/BIC/ZDTLQTY DESCENDING.

CLEAR: ZZSLPX,ZZJEPX,LS_RESULT_TMP1,ZZPQJL.

LOOP AT LT_RESULT_TMP1 INTO LS_RESULT_TMP1.

IF ZZPQJL IS INITIAL.

ZZPQJL = LS_RESULT_TMP1-/BIC/ZPQJL.

CLEAR ZZJEPX.

ENDIF.

IF ZZPQJL = LS_RESULT_TMP1-/BIC/ZPQJL.

IF ZZJEPX < 50 .

ZZJEPX = ZZJEPX + 1.

LS_RESULT_TMP1-/BIC/ZJEPX = ZZJEPX.

LS_RESULT_TMP1-/BIC/ZSLPX = 0.

LS_RESULT_TMP1-/BIC/ZFLAG2 = 'F2'.

"添加记录

MOVE-CORRESPONDING LS_RESULT_TMP1 TO LS_RESULT.

L_RECORD = L_RECORD + 1.

LS_RESULT-RECORD = L_RECORD.

APPEND LS_RESULT TO LT_RESULT.

ENDIF.

ELSE.

ZZPQJL = LS_RESULT_TMP1-/BIC/ZPQJL.

CLEAR ZZJEPX.

ZZJEPX = ZZJEPX + 1.

LS_RESULT_TMP1-/BIC/ZJEPX = ZZJEPX.

LS_RESULT_TMP1-/BIC/ZSLPX = 0.

LS_RESULT_TMP1-/BIC/ZFLAG2 = 'F2'.

"添加记录

MOVE-CORRESPONDING LS_RESULT_TMP1 TO LS_RESULT.

L_RECORD = L_RECORD + 1.

LS_RESULT-RECORD = L_RECORD.

APPEND LS_RESULT TO LT_RESULT.

ENDIF.

ENDLOOP.

"7.1按总监销售数量排序

REFRESH: LT_RESULT_TMP,LT_RESULT_TMP1.

LT_RESULT_TMP[] = LT_RESULT_TMP2[].

CLEAR LS_RESULT_TMP.

LOOP AT LT_RESULT_TMP INTO LS_RESULT_TMP .

CLEAR LS_RESULT_TMP-/BIC/ZCHANNEL.

CLEAR LS_RESULT_TMP-/BIC/ZSYB.

CLEAR LS_RESULT_TMP-/BIC/ZBZIRK.

CLEAR LS_RESULT_TMP-DISTR_CHAN.

CLEAR LS_RESULT_TMP-/BIC/ZQDLX.

CLEAR LS_RESULT_TMP-/BIC/ZBRAND.

CLEAR LS_RESULT_TMP-CUSTOMER.

CLEAR LS_RESULT_TMP-/BIC/ZSTORE.

CLEAR LS_RESULT_TMP-/BIC/ZXM_DD.

CLEAR LS_RESULT_TMP-/BIC/ZPQJL.

CLEAR LS_RESULT_TMP-/BIC/ZFLAG2.

CLEAR LS_RESULT_TMP-/BIC/ZSLPX.

CLEAR LS_RESULT_TMP-/BIC/ZJEPX.

COLLECT LS_RESULT_TMP INTO LT_RESULT_TMP1.

ENDLOOP.

SORT LT_RESULT_TMP1 BY

/BIC/ZZJNAME ASCENDING

/BIC/ZDTLQTY DESCENDING

/BIC/ZDTLFTAMT DESCENDING.

CLEAR: ZZSLPX,ZZJEPX,LS_RESULT_TMP1,ZZJNAME.

LOOP AT LT_RESULT_TMP1 INTO LS_RESULT_TMP1.

IF ZZJNAME IS INITIAL.

ZZJNAME = LS_RESULT_TMP1-/BIC/ZZJNAME.

CLEAR ZZSLPX.

ENDIF.

IF ZZJNAME = LS_RESULT_TMP1-/BIC/ZZJNAME.

IF ZZSLPX < 50 .

ZZSLPX = ZZSLPX + 1.

LS_RESULT_TMP1-/BIC/ZJEPX = 0.

LS_RESULT_TMP1-/BIC/ZSLPX = ZZSLPX.

LS_RESULT_TMP1-/BIC/ZFLAG2 = 'G1'.

"添加记录

MOVE-CORRESPONDING LS_RESULT_TMP1 TO LS_RESULT.

L_RECORD = L_RECORD + 1.

LS_RESULT-RECORD = L_RECORD.

APPEND LS_RESULT TO LT_RESULT.

ENDIF.

ELSE.

ZZJNAME = LS_RESULT_TMP1-/BIC/ZZJNAME.

CLEAR ZZSLPX.

ZZSLPX = ZZSLPX + 1.

LS_RESULT_TMP1-/BIC/ZJEPX = 0.

LS_RESULT_TMP1-/BIC/ZSLPX = ZZSLPX.

LS_RESULT_TMP1-/BIC/ZFLAG2 = 'G1'.

"添加记录

MOVE-CORRESPONDING LS_RESULT_TMP1 TO LS_RESULT.

L_RECORD = L_RECORD + 1.

LS_RESULT-RECORD = L_RECORD.

APPEND LS_RESULT TO LT_RESULT.

ENDIF.

ENDLOOP.

"7.2按总监销售金额排序

SORT LT_RESULT_TMP1 BY

/BIC/ZZJNAME ASCENDING

/BIC/ZDTLFTAMT DESCENDING

/BIC/ZDTLQTY DESCENDING.

CLEAR: ZZSLPX,ZZJEPX,LS_RESULT_TMP1,ZZJNAME.

LOOP AT LT_RESULT_TMP1 INTO LS_RESULT_TMP1.

IF ZZJNAME IS INITIAL.

ZZJNAME = LS_RESULT_TMP1-/BIC/ZZJNAME.

CLEAR ZZJEPX.

ENDIF.

IF ZZJNAME = LS_RESULT_TMP1-/BIC/ZZJNAME.

IF ZZJEPX < 50 .

ZZJEPX = ZZJEPX + 1.

LS_RESULT_TMP1-/BIC/ZJEPX = ZZJEPX.

LS_RESULT_TMP1-/BIC/ZSLPX = 0.

LS_RESULT_TMP1-/BIC/ZFLAG2 = 'G2'.

"添加记录

MOVE-CORRESPONDING LS_RESULT_TMP1 TO LS_RESULT.

L_RECORD = L_RECORD + 1.

LS_RESULT-RECORD = L_RECORD.

APPEND LS_RESULT TO LT_RESULT.

ENDIF.

ELSE.

ZZJNAME = LS_RESULT_TMP1-/BIC/ZZJNAME.

CLEAR ZZJEPX.

ZZJEPX = ZZJEPX + 1.

LS_RESULT_TMP1-/BIC/ZJEPX = ZZJEPX.

LS_RESULT_TMP1-/BIC/ZSLPX = 0.

LS_RESULT_TMP1-/BIC/ZFLAG2 = 'G2'.

"添加记录

MOVE-CORRESPONDING LS_RESULT_TMP1 TO LS_RESULT.

L_RECORD = L_RECORD + 1.

LS_RESULT-RECORD = L_RECORD.

APPEND LS_RESULT TO LT_RESULT.

ENDIF.

ENDLOOP.

*****************按物料TOP end********************

*****************按大中小类TOP ********************

"8.1按门店大中小类销售数量排序

REFRESH: LT_RESULT_TMP,LT_RESULT_TMP1.

LT_RESULT_TMP[] = LT_RESULT_TMP2[].

CLEAR LS_RESULT_TMP.

LOOP AT LT_RESULT_TMP INTO LS_RESULT_TMP.

CLEAR LS_RESULT_TMP-/BIC/ZMATERIAL.

CLEAR LS_RESULT_TMP-/BIC/ZGRID.

CLEAR LS_RESULT_TMP-/BIC/ZATWTBCC.

CLEAR LS_RESULT_TMP-/BIC/ZATWTBYS.

CLEAR LS_RESULT_TMP-/BIC/ZPRTK3.

CLEAR LS_RESULT_TMP-/BIC/ZFLAG2.

CLEAR LS_RESULT_TMP-/BIC/ZSLPX.

CLEAR LS_RESULT_TMP-/BIC/ZJEPX.

COLLECT LS_RESULT_TMP INTO LT_RESULT_TMP1.

ENDLOOP.

"门店小类销售数量排序

SORT LT_RESULT_TMP1 BY

/BIC/ZSTORE ASCENDING

/BIC/ZDTLQTY DESCENDING

/BIC/ZDTLFTAMT DESCENDING.

CLEAR: ZZSLPX,ZZJEPX,LS_RESULT_TMP1,ZZSTORE.

LOOP AT LT_RESULT_TMP1 INTO LS_RESULT_TMP1.

IF ZZSTORE IS INITIAL.

ZZSTORE = LS_RESULT_TMP1-/BIC/ZSTORE.

CLEAR ZZSLPX.

ENDIF.

IF ZZSTORE = LS_RESULT_TMP1-/BIC/ZSTORE.

IF ZZSLPX < 50 .

ZZSLPX = ZZSLPX + 1.

LS_RESULT_TMP1-/BIC/ZJEPX = 0.

LS_RESULT_TMP1-/BIC/ZSLPX = ZZSLPX.

LS_RESULT_TMP1-/BIC/ZFLAG2 = 'A3'.

"添加记录

MOVE-CORRESPONDING LS_RESULT_TMP1 TO LS_RESULT.

L_RECORD = L_RECORD + 1.

LS_RESULT-RECORD = L_RECORD.

APPEND LS_RESULT TO LT_RESULT.

ENDIF.

ELSE.

ZZSTORE = LS_RESULT_TMP1-/BIC/ZSTORE.

CLEAR ZZSLPX.

ZZSLPX = ZZSLPX + 1.

LS_RESULT_TMP1-/BIC/ZJEPX = 0.

LS_RESULT_TMP1-/BIC/ZSLPX = ZZSLPX.

LS_RESULT_TMP1-/BIC/ZFLAG2 = 'A3'.

"添加记录

MOVE-CORRESPONDING LS_RESULT_TMP1 TO LS_RESULT.

L_RECORD = L_RECORD + 1.

LS_RESULT-RECORD = L_RECORD.

APPEND LS_RESULT TO LT_RESULT.

ENDIF.

ENDLOOP.

"门店小类销售金额排序

SORT LT_RESULT_TMP1 BY

/BIC/ZSTORE ASCENDING

/BIC/ZDTLFTAMT DESCENDING

/BIC/ZDTLQTY DESCENDING.

CLEAR: ZZSLPX,ZZJEPX,LS_RESULT_TMP1,ZZSTORE.

LOOP AT LT_RESULT_TMP1 INTO LS_RESULT_TMP1.

IF ZZSTORE IS INITIAL.

ZZSTORE = LS_RESULT_TMP1-/BIC/ZSTORE.

CLEAR ZZJEPX.

ENDIF.

IF ZZSTORE = LS_RESULT_TMP1-/BIC/ZSTORE.

IF ZZJEPX < 50.

ZZJEPX = ZZJEPX + 1.

LS_RESULT_TMP1-/BIC/ZJEPX = ZZJEPX.

LS_RESULT_TMP1-/BIC/ZSLPX = 0 .

LS_RESULT_TMP1-/BIC/ZFLAG2 = 'A4'.

"添加记录

MOVE-CORRESPONDING LS_RESULT_TMP1 TO LS_RESULT.

L_RECORD = L_RECORD + 1.

LS_RESULT-RECORD = L_RECORD.

APPEND LS_RESULT TO LT_RESULT.

ENDIF.

ELSE.

ZZSTORE = LS_RESULT_TMP1-/BIC/ZSTORE.

CLEAR ZZJEPX.

ZZJEPX = ZZJEPX + 1.

LS_RESULT_TMP1-/BIC/ZJEPX = ZZJEPX.

LS_RESULT_TMP1-/BIC/ZSLPX = 0 .

LS_RESULT_TMP1-/BIC/ZFLAG2 = 'A4'.

"添加记录

MOVE-CORRESPONDING LS_RESULT_TMP1 TO LS_RESULT.

L_RECORD = L_RECORD + 1.

LS_RESULT-RECORD = L_RECORD.

APPEND LS_RESULT TO LT_RESULT.

ENDIF.

ENDLOOP.

"门店中类

REFRESH: LT_RESULT_TMP,LT_RESULT_TMP1.

LT_RESULT_TMP[] = LT_RESULT_TMP2[].

CLEAR LS_RESULT_TMP.

LOOP AT LT_RESULT_TMP INTO LS_RESULT_TMP.

CLEAR LS_RESULT_TMP-/BIC/ZMATERIAL.

CLEAR LS_RESULT_TMP-/BIC/ZGRID.

CLEAR LS_RESULT_TMP-/BIC/ZATWTBCC.

CLEAR LS_RESULT_TMP-/BIC/ZATWTBYS.

CLEAR LS_RESULT_TMP-/BIC/ZPRTK3.

CLEAR LS_RESULT_TMP-/BIC/ZCLASSS.

CLEAR LS_RESULT_TMP-/BIC/ZFLAG2.

CLEAR LS_RESULT_TMP-/BIC/ZSLPX.

CLEAR LS_RESULT_TMP-/BIC/ZJEPX.

COLLECT LS_RESULT_TMP INTO LT_RESULT_TMP1.

ENDLOOP.

"门店中类销售数量排序

SORT LT_RESULT_TMP1 BY

/BIC/ZSTORE ASCENDING

/BIC/ZDTLQTY DESCENDING

/BIC/ZDTLFTAMT DESCENDING.

CLEAR: ZZSLPX,ZZJEPX,LS_RESULT_TMP1,ZZSTORE.

LOOP AT LT_RESULT_TMP1 INTO LS_RESULT_TMP1.

IF ZZSTORE IS INITIAL.

ZZSTORE = LS_RESULT_TMP1-/BIC/ZSTORE.

CLEAR ZZSLPX.

ENDIF.

IF ZZSTORE = LS_RESULT_TMP1-/BIC/ZSTORE.

IF ZZSLPX < 50 .

ZZSLPX = ZZSLPX + 1.

LS_RESULT_TMP1-/BIC/ZJEPX = 0.

LS_RESULT_TMP1-/BIC/ZSLPX = ZZSLPX.

LS_RESULT_TMP1-/BIC/ZFLAG2 = 'A5'.

"添加记录

MOVE-CORRESPONDING LS_RESULT_TMP1 TO LS_RESULT.

L_RECORD = L_RECORD + 1.

LS_RESULT-RECORD = L_RECORD.

APPEND LS_RESULT TO LT_RESULT.

ENDIF.

ELSE.

ZZSTORE = LS_RESULT_TMP1-/BIC/ZSTORE.

CLEAR ZZSLPX.

ZZSLPX = ZZSLPX + 1.

LS_RESULT_TMP1-/BIC/ZJEPX = 0.

LS_RESULT_TMP1-/BIC/ZSLPX = ZZSLPX.

LS_RESULT_TMP1-/BIC/ZFLAG2 = 'A5'.

"添加记录

MOVE-CORRESPONDING LS_RESULT_TMP1 TO LS_RESULT.

L_RECORD = L_RECORD + 1.

LS_RESULT-RECORD = L_RECORD.

APPEND LS_RESULT TO LT_RESULT.

ENDIF.

ENDLOOP.

"门店中类销售金额排序

SORT LT_RESULT_TMP1 BY

/BIC/ZSTORE ASCENDING

/BIC/ZDTLFTAMT DESCENDING

/BIC/ZDTLQTY DESCENDING.

CLEAR: ZZSLPX,ZZJEPX,LS_RESULT_TMP1,ZZSTORE.

LOOP AT LT_RESULT_TMP1 INTO LS_RESULT_TMP1.

IF ZZSTORE IS INITIAL.

ZZSTORE = LS_RESULT_TMP1-/BIC/ZSTORE.

CLEAR ZZJEPX.

ENDIF.

IF ZZSTORE = LS_RESULT_TMP1-/BIC/ZSTORE.

IF ZZJEPX < 50.

ZZJEPX = ZZJEPX + 1.

LS_RESULT_TMP1-/BIC/ZJEPX = ZZJEPX.

LS_RESULT_TMP1-/BIC/ZSLPX = 0 .

LS_RESULT_TMP1-/BIC/ZFLAG2 = 'A6'.

"添加记录

MOVE-CORRESPONDING LS_RESULT_TMP1 TO LS_RESULT.

L_RECORD = L_RECORD + 1.

LS_RESULT-RECORD = L_RECORD.

APPEND LS_RESULT TO LT_RESULT.

ENDIF.

ELSE.

ZZSTORE = LS_RESULT_TMP1-/BIC/ZSTORE.

CLEAR ZZJEPX.

ZZJEPX = ZZJEPX + 1.

LS_RESULT_TMP1-/BIC/ZJEPX = ZZJEPX.

LS_RESULT_TMP1-/BIC/ZSLPX = 0 .

LS_RESULT_TMP1-/BIC/ZFLAG2 = 'A6'.

"添加记录

MOVE-CORRESPONDING LS_RESULT_TMP1 TO LS_RESULT.

L_RECORD = L_RECORD + 1.

LS_RESULT-RECORD = L_RECORD.

APPEND LS_RESULT TO LT_RESULT.

ENDIF.

ENDLOOP.

"9.1按片区大中小类销售数量排序

REFRESH: LT_RESULT_TMP,LT_RESULT_TMP1.

LT_RESULT_TMP[] = LT_RESULT_TMP2[].

CLEAR LS_RESULT_TMP.

LOOP AT LT_RESULT_TMP INTO LS_RESULT_TMP.

CLEAR LS_RESULT_TMP-/BIC/ZMATERIAL.

CLEAR LS_RESULT_TMP-/BIC/ZGRID.

CLEAR LS_RESULT_TMP-/BIC/ZATWTBCC.

CLEAR LS_RESULT_TMP-/BIC/ZATWTBYS.

CLEAR LS_RESULT_TMP-/BIC/ZPRTK3.

CLEAR LS_RESULT_TMP-DISTR_CHAN.

CLEAR LS_RESULT_TMP-/BIC/ZQDLX.

CLEAR LS_RESULT_TMP-/BIC/ZBRAND.

CLEAR LS_RESULT_TMP-CUSTOMER.

CLEAR LS_RESULT_TMP-/BIC/ZSTORE.

CLEAR LS_RESULT_TMP-/BIC/ZPER_DD.

CLEAR LS_RESULT_TMP-/BIC/ZXM_DD.

CLEAR LS_RESULT_TMP-/BIC/ZAREA_MAR.

CLEAR LS_RESULT_TMP-/BIC/ZPQJL.

CLEAR LS_RESULT_TMP-/BIC/ZZJCODE.

CLEAR LS_RESULT_TMP-/BIC/ZZJNAME.

CLEAR LS_RESULT_TMP-/BIC/ZFLAG2.

CLEAR LS_RESULT_TMP-/BIC/ZSLPX.

CLEAR LS_RESULT_TMP-/BIC/ZJEPX.

COLLECT LS_RESULT_TMP INTO LT_RESULT_TMP1.

ENDLOOP.

"片区小类销售数量排序

SORT LT_RESULT_TMP1 BY

/BIC/ZBZIRK ASCENDING

/BIC/ZDTLQTY DESCENDING

/BIC/ZDTLFTAMT DESCENDING.

CLEAR: ZZSLPX,ZZJEPX,LS_RESULT_TMP1,ZZBZIRK.

LOOP AT LT_RESULT_TMP1 INTO LS_RESULT_TMP1.

IF ZZBZIRK IS INITIAL.

ZZBZIRK = LS_RESULT_TMP1-/BIC/ZBZIRK.

CLEAR ZZSLPX.

ENDIF.

IF ZZBZIRK = LS_RESULT_TMP1-/BIC/ZBZIRK.

IF ZZSLPX < 50 .

ZZSLPX = ZZSLPX + 1.

LS_RESULT_TMP1-/BIC/ZJEPX = 0.

LS_RESULT_TMP1-/BIC/ZSLPX = ZZSLPX.

LS_RESULT_TMP1-/BIC/ZFLAG2 = 'B3'.

"添加记录

MOVE-CORRESPONDING LS_RESULT_TMP1 TO LS_RESULT.

L_RECORD = L_RECORD + 1.

LS_RESULT-RECORD = L_RECORD.

APPEND LS_RESULT TO LT_RESULT.

ENDIF.

ELSE.

ZZBZIRK = LS_RESULT_TMP1-/BIC/ZBZIRK.

CLEAR ZZSLPX.

ZZSLPX = ZZSLPX + 1.

LS_RESULT_TMP1-/BIC/ZJEPX = 0.

LS_RESULT_TMP1-/BIC/ZSLPX = ZZSLPX.

LS_RESULT_TMP1-/BIC/ZFLAG2 = 'B3'.

"添加记录

MOVE-CORRESPONDING LS_RESULT_TMP1 TO LS_RESULT.

L_RECORD = L_RECORD + 1.

LS_RESULT-RECORD = L_RECORD.

APPEND LS_RESULT TO LT_RESULT.

ENDIF.

ENDLOOP.

"片区小类销售金额排序

SORT LT_RESULT_TMP1 BY

/BIC/ZBZIRK ASCENDING

/BIC/ZDTLFTAMT DESCENDING

/BIC/ZDTLQTY DESCENDING.

CLEAR: ZZSLPX,ZZJEPX,LS_RESULT_TMP1,ZZBZIRK.

LOOP AT LT_RESULT_TMP1 INTO LS_RESULT_TMP1.

IF ZZBZIRK IS INITIAL.

ZZBZIRK = LS_RESULT_TMP1-/BIC/ZBZIRK.

CLEAR ZZJEPX.

ENDIF.

IF ZZBZIRK = LS_RESULT_TMP1-/BIC/ZBZIRK.

IF ZZJEPX < 50.

ZZJEPX = ZZJEPX + 1.

LS_RESULT_TMP1-/BIC/ZJEPX = ZZJEPX.

LS_RESULT_TMP1-/BIC/ZSLPX = 0 .

LS_RESULT_TMP1-/BIC/ZFLAG2 = 'B4'.

"添加记录

MOVE-CORRESPONDING LS_RESULT_TMP1 TO LS_RESULT.

L_RECORD = L_RECORD + 1.

LS_RESULT-RECORD = L_RECORD.

APPEND LS_RESULT TO LT_RESULT.

ENDIF.

ELSE.

ZZBZIRK = LS_RESULT_TMP1-/BIC/ZBZIRK.

CLEAR ZZJEPX.

ZZJEPX = ZZJEPX + 1.

LS_RESULT_TMP1-/BIC/ZJEPX = ZZJEPX.

LS_RESULT_TMP1-/BIC/ZSLPX = 0 .

LS_RESULT_TMP1-/BIC/ZFLAG2 = 'B4'.

"添加记录

MOVE-CORRESPONDING LS_RESULT_TMP1 TO LS_RESULT.

L_RECORD = L_RECORD + 1.

LS_RESULT-RECORD = L_RECORD.

APPEND LS_RESULT TO LT_RESULT.

ENDIF.

ENDLOOP.

"片区中类

REFRESH: LT_RESULT_TMP,LT_RESULT_TMP1.

LT_RESULT_TMP[] = LT_RESULT_TMP2[].

CLEAR LS_RESULT_TMP.

LOOP AT LT_RESULT_TMP INTO LS_RESULT_TMP.

CLEAR LS_RESULT_TMP-/BIC/ZMATERIAL.

CLEAR LS_RESULT_TMP-/BIC/ZGRID.

CLEAR LS_RESULT_TMP-/BIC/ZATWTBCC.

CLEAR LS_RESULT_TMP-/BIC/ZATWTBYS.

CLEAR LS_RESULT_TMP-/BIC/ZPRTK3.

CLEAR LS_RESULT_TMP-DISTR_CHAN.

CLEAR LS_RESULT_TMP-/BIC/ZQDLX.

CLEAR LS_RESULT_TMP-/BIC/ZBRAND.

CLEAR LS_RESULT_TMP-CUSTOMER.

CLEAR LS_RESULT_TMP-/BIC/ZSTORE.

CLEAR LS_RESULT_TMP-/BIC/ZPER_DD.

CLEAR LS_RESULT_TMP-/BIC/ZXM_DD.

CLEAR LS_RESULT_TMP-/BIC/ZAREA_MAR.

CLEAR LS_RESULT_TMP-/BIC/ZPQJL.

CLEAR LS_RESULT_TMP-/BIC/ZZJCODE.

CLEAR LS_RESULT_TMP-/BIC/ZZJNAME.

CLEAR LS_RESULT_TMP-/BIC/ZCLASSS.

CLEAR LS_RESULT_TMP-/BIC/ZFLAG2.

CLEAR LS_RESULT_TMP-/BIC/ZSLPX.

CLEAR LS_RESULT_TMP-/BIC/ZJEPX.

COLLECT LS_RESULT_TMP INTO LT_RESULT_TMP1.

ENDLOOP.

"片区中类销售数量排序

SORT LT_RESULT_TMP1 BY

/BIC/ZBZIRK ASCENDING

/BIC/ZDTLQTY DESCENDING

/BIC/ZDTLFTAMT DESCENDING.

CLEAR: ZZSLPX,ZZJEPX,LS_RESULT_TMP1,ZZBZIRK.

LOOP AT LT_RESULT_TMP1 INTO LS_RESULT_TMP1.

IF ZZBZIRK IS INITIAL.

ZZBZIRK = LS_RESULT_TMP1-/BIC/ZBZIRK.

CLEAR ZZSLPX.

ENDIF.

IF ZZBZIRK = LS_RESULT_TMP1-/BIC/ZBZIRK.

IF ZZSLPX < 50 .

ZZSLPX = ZZSLPX + 1.

LS_RESULT_TMP1-/BIC/ZJEPX = 0.

LS_RESULT_TMP1-/BIC/ZSLPX = ZZSLPX.

LS_RESULT_TMP1-/BIC/ZFLAG2 = 'B5'.

"添加记录

MOVE-CORRESPONDING LS_RESULT_TMP1 TO LS_RESULT.

L_RECORD = L_RECORD + 1.

LS_RESULT-RECORD = L_RECORD.

APPEND LS_RESULT TO LT_RESULT.

ENDIF.

ELSE.

ZZBZIRK = LS_RESULT_TMP1-/BIC/ZBZIRK.

CLEAR ZZSLPX.

ZZSLPX = ZZSLPX + 1.

LS_RESULT_TMP1-/BIC/ZJEPX = 0.

LS_RESULT_TMP1-/BIC/ZSLPX = ZZSLPX.

LS_RESULT_TMP1-/BIC/ZFLAG2 = 'B5'.

"添加记录

MOVE-CORRESPONDING LS_RESULT_TMP1 TO LS_RESULT.

L_RECORD = L_RECORD + 1.

LS_RESULT-RECORD = L_RECORD.

APPEND LS_RESULT TO LT_RESULT.

ENDIF.

ENDLOOP.

"片区中类销售金额排序

SORT LT_RESULT_TMP1 BY

/BIC/ZBZIRK ASCENDING

/BIC/ZDTLFTAMT DESCENDING

/BIC/ZDTLQTY DESCENDING.

CLEAR: ZZSLPX,ZZJEPX,LS_RESULT_TMP1,ZZBZIRK.

LOOP AT LT_RESULT_TMP1 INTO LS_RESULT_TMP1.

IF ZZBZIRK IS INITIAL.

ZZBZIRK = LS_RESULT_TMP1-/BIC/ZBZIRK.

CLEAR ZZJEPX.

ENDIF.

IF ZZBZIRK = LS_RESULT_TMP1-/BIC/ZBZIRK.

IF ZZJEPX < 50.

ZZJEPX = ZZJEPX + 1.

LS_RESULT_TMP1-/BIC/ZJEPX = ZZJEPX.

LS_RESULT_TMP1-/BIC/ZSLPX = 0 .

LS_RESULT_TMP1-/BIC/ZFLAG2 = 'B6'.

"添加记录

MOVE-CORRESPONDING LS_RESULT_TMP1 TO LS_RESULT.

L_RECORD = L_RECORD + 1.

LS_RESULT-RECORD = L_RECORD.

APPEND LS_RESULT TO LT_RESULT.

ENDIF.

ELSE.

ZZBZIRK = LS_RESULT_TMP1-/BIC/ZBZIRK.

CLEAR ZZJEPX.

ZZJEPX = ZZJEPX + 1.

LS_RESULT_TMP1-/BIC/ZJEPX = ZZJEPX.

LS_RESULT_TMP1-/BIC/ZSLPX = 0 .

LS_RESULT_TMP1-/BIC/ZFLAG2 = 'B6'.

"添加记录

MOVE-CORRESPONDING LS_RESULT_TMP1 TO LS_RESULT.

L_RECORD = L_RECORD + 1.

LS_RESULT-RECORD = L_RECORD.

APPEND LS_RESULT TO LT_RESULT.

ENDIF.

ENDLOOP.

"10.1按渠道大中小类销售数量排序

REFRESH: LT_RESULT_TMP,LT_RESULT_TMP1.

LT_RESULT_TMP[] = LT_RESULT_TMP2[].

CLEAR LS_RESULT_TMP.

LOOP AT LT_RESULT_TMP INTO LS_RESULT_TMP.

CLEAR LS_RESULT_TMP-/BIC/ZMATERIAL.

CLEAR LS_RESULT_TMP-/BIC/ZGRID.

CLEAR LS_RESULT_TMP-/BIC/ZATWTBCC.

CLEAR LS_RESULT_TMP-/BIC/ZATWTBYS.

CLEAR LS_RESULT_TMP-/BIC/ZPRTK3.

CLEAR LS_RESULT_TMP-DISTR_CHAN.

CLEAR LS_RESULT_TMP-/BIC/ZQDLX.

CLEAR LS_RESULT_TMP-/BIC/ZBRAND.

CLEAR LS_RESULT_TMP-CUSTOMER.

CLEAR LS_RESULT_TMP-/BIC/ZSTORE.

CLEAR LS_RESULT_TMP-/BIC/ZPER_DD.

CLEAR LS_RESULT_TMP-/BIC/ZXM_DD.

CLEAR LS_RESULT_TMP-/BIC/ZAREA_MAR.

CLEAR LS_RESULT_TMP-/BIC/ZPQJL.

CLEAR LS_RESULT_TMP-/BIC/ZZJCODE.

CLEAR LS_RESULT_TMP-/BIC/ZZJNAME.

CLEAR LS_RESULT_TMP-/BIC/ZBZIRK.

CLEAR LS_RESULT_TMP-/BIC/ZFLAG2.

CLEAR LS_RESULT_TMP-/BIC/ZSLPX.

CLEAR LS_RESULT_TMP-/BIC/ZJEPX.

COLLECT LS_RESULT_TMP INTO LT_RESULT_TMP1.

ENDLOOP.

"渠道小类销售数量排序

SORT LT_RESULT_TMP1 BY

/BIC/ZCHANNEL ASCENDING

/BIC/ZDTLQTY DESCENDING

/BIC/ZDTLFTAMT DESCENDING.

CLEAR: ZZSLPX,ZZJEPX,LS_RESULT_TMP1,ZZCHANNEL.

LOOP AT LT_RESULT_TMP1 INTO LS_RESULT_TMP1.

IF ZZCHANNEL IS INITIAL.

ZZCHANNEL = LS_RESULT_TMP1-/BIC/ZCHANNEL.

CLEAR ZZSLPX.

ENDIF.

IF ZZCHANNEL = LS_RESULT_TMP1-/BIC/ZCHANNEL.

IF ZZSLPX < 50 .

ZZSLPX = ZZSLPX + 1.

LS_RESULT_TMP1-/BIC/ZJEPX = 0.

LS_RESULT_TMP1-/BIC/ZSLPX = ZZSLPX.

LS_RESULT_TMP1-/BIC/ZFLAG2 = 'C3'.

"添加记录

MOVE-CORRESPONDING LS_RESULT_TMP1 TO LS_RESULT.

L_RECORD = L_RECORD + 1.

LS_RESULT-RECORD = L_RECORD.

APPEND LS_RESULT TO LT_RESULT.

ENDIF.

ELSE.

ZZCHANNEL = LS_RESULT_TMP1-/BIC/ZCHANNEL.

CLEAR ZZSLPX.

ZZSLPX = ZZSLPX + 1.

LS_RESULT_TMP1-/BIC/ZJEPX = 0.

LS_RESULT_TMP1-/BIC/ZSLPX = ZZSLPX.

LS_RESULT_TMP1-/BIC/ZFLAG2 = 'C3'.

"添加记录

MOVE-CORRESPONDING LS_RESULT_TMP1 TO LS_RESULT.

L_RECORD = L_RECORD + 1.

LS_RESULT-RECORD = L_RECORD.

APPEND LS_RESULT TO LT_RESULT.

ENDIF.

ENDLOOP.

"渠道小类销售金额排序

SORT LT_RESULT_TMP1 BY

/BIC/ZCHANNEL ASCENDING

/BIC/ZDTLFTAMT DESCENDING

/BIC/ZDTLQTY DESCENDING.

CLEAR: ZZSLPX,ZZJEPX,LS_RESULT_TMP1,ZZCHANNEL.

LOOP AT LT_RESULT_TMP1 INTO LS_RESULT_TMP1.

IF ZZCHANNEL IS INITIAL.

ZZCHANNEL = LS_RESULT_TMP1-/BIC/ZCHANNEL.

CLEAR ZZJEPX.

ENDIF.

IF ZZCHANNEL = LS_RESULT_TMP1-/BIC/ZCHANNEL.

IF ZZJEPX < 50.

ZZJEPX = ZZJEPX + 1.

LS_RESULT_TMP1-/BIC/ZJEPX = ZZJEPX.

LS_RESULT_TMP1-/BIC/ZSLPX = 0 .

LS_RESULT_TMP1-/BIC/ZFLAG2 = 'C4'.

"添加记录

MOVE-CORRESPONDING LS_RESULT_TMP1 TO LS_RESULT.

L_RECORD = L_RECORD + 1.

LS_RESULT-RECORD = L_RECORD.

APPEND LS_RESULT TO LT_RESULT.

ENDIF.

ELSE.

ZZCHANNEL = LS_RESULT_TMP1-/BIC/ZCHANNEL.

CLEAR ZZJEPX.

ZZJEPX = ZZJEPX + 1.

LS_RESULT_TMP1-/BIC/ZJEPX = ZZJEPX.

LS_RESULT_TMP1-/BIC/ZSLPX = 0 .

LS_RESULT_TMP1-/BIC/ZFLAG2 = 'C4'.

"添加记录

MOVE-CORRESPONDING LS_RESULT_TMP1 TO LS_RESULT.

L_RECORD = L_RECORD + 1.

LS_RESULT-RECORD = L_RECORD.

APPEND LS_RESULT TO LT_RESULT.

ENDIF.

ENDLOOP.

"渠道中类

REFRESH: LT_RESULT_TMP,LT_RESULT_TMP1.

LT_RESULT_TMP[] = LT_RESULT_TMP2[].

CLEAR LS_RESULT_TMP.

LOOP AT LT_RESULT_TMP INTO LS_RESULT_TMP.

CLEAR LS_RESULT_TMP-/BIC/ZMATERIAL.

CLEAR LS_RESULT_TMP-/BIC/ZGRID.

CLEAR LS_RESULT_TMP-/BIC/ZATWTBCC.

CLEAR LS_RESULT_TMP-/BIC/ZATWTBYS.

CLEAR LS_RESULT_TMP-/BIC/ZPRTK3.

CLEAR LS_RESULT_TMP-DISTR_CHAN.

CLEAR LS_RESULT_TMP-/BIC/ZQDLX.

CLEAR LS_RESULT_TMP-/BIC/ZBRAND.

CLEAR LS_RESULT_TMP-CUSTOMER.

CLEAR LS_RESULT_TMP-/BIC/ZSTORE.

CLEAR LS_RESULT_TMP-/BIC/ZPER_DD.

CLEAR LS_RESULT_TMP-/BIC/ZXM_DD.

CLEAR LS_RESULT_TMP-/BIC/ZAREA_MAR.

CLEAR LS_RESULT_TMP-/BIC/ZPQJL.

CLEAR LS_RESULT_TMP-/BIC/ZZJCODE.

CLEAR LS_RESULT_TMP-/BIC/ZZJNAME.

CLEAR LS_RESULT_TMP-/BIC/ZBZIRK.

CLEAR LS_RESULT_TMP-/BIC/ZCLASSS.

CLEAR LS_RESULT_TMP-/BIC/ZFLAG2.

CLEAR LS_RESULT_TMP-/BIC/ZSLPX.

CLEAR LS_RESULT_TMP-/BIC/ZJEPX.

COLLECT LS_RESULT_TMP INTO LT_RESULT_TMP1.

ENDLOOP.

"渠道中类销售数量排序

SORT LT_RESULT_TMP1 BY

/BIC/ZCHANNEL ASCENDING

/BIC/ZDTLQTY DESCENDING

/BIC/ZDTLFTAMT DESCENDING.

CLEAR: ZZSLPX,ZZJEPX,LS_RESULT_TMP1,ZZCHANNEL.

LOOP AT LT_RESULT_TMP1 INTO LS_RESULT_TMP1.

IF ZZCHANNEL IS INITIAL.

ZZCHANNEL = LS_RESULT_TMP1-/BIC/ZCHANNEL.

CLEAR ZZSLPX.

ENDIF.

IF ZZCHANNEL = LS_RESULT_TMP1-/BIC/ZCHANNEL.

IF ZZSLPX < 50 .

ZZSLPX = ZZSLPX + 1.

LS_RESULT_TMP1-/BIC/ZJEPX = 0.

LS_RESULT_TMP1-/BIC/ZSLPX = ZZSLPX.

LS_RESULT_TMP1-/BIC/ZFLAG2 = 'C5'.

"添加记录

MOVE-CORRESPONDING LS_RESULT_TMP1 TO LS_RESULT.

L_RECORD = L_RECORD + 1.

LS_RESULT-RECORD = L_RECORD.

APPEND LS_RESULT TO LT_RESULT.

ENDIF.

ELSE.

ZZCHANNEL = LS_RESULT_TMP1-/BIC/ZCHANNEL.

CLEAR ZZSLPX.

ZZSLPX = ZZSLPX + 1.

LS_RESULT_TMP1-/BIC/ZJEPX = 0.

LS_RESULT_TMP1-/BIC/ZSLPX = ZZSLPX.

LS_RESULT_TMP1-/BIC/ZFLAG2 = 'C5'.

"添加记录

MOVE-CORRESPONDING LS_RESULT_TMP1 TO LS_RESULT.

L_RECORD = L_RECORD + 1.

LS_RESULT-RECORD = L_RECORD.

APPEND LS_RESULT TO LT_RESULT.

ENDIF.

ENDLOOP.

"渠道中类销售金额排序

SORT LT_RESULT_TMP1 BY

/BIC/ZCHANNEL ASCENDING

/BIC/ZDTLFTAMT DESCENDING

/BIC/ZDTLQTY DESCENDING.

CLEAR: ZZSLPX,ZZJEPX,LS_RESULT_TMP1,ZZCHANNEL.

LOOP AT LT_RESULT_TMP1 INTO LS_RESULT_TMP1.

IF ZZCHANNEL IS INITIAL.

ZZCHANNEL = LS_RESULT_TMP1-/BIC/ZCHANNEL.

CLEAR ZZJEPX.

ENDIF.

IF ZZCHANNEL = LS_RESULT_TMP1-/BIC/ZCHANNEL.

IF ZZJEPX < 50.

ZZJEPX = ZZJEPX + 1.

LS_RESULT_TMP1-/BIC/ZJEPX = ZZJEPX.

LS_RESULT_TMP1-/BIC/ZSLPX = 0 .

LS_RESULT_TMP1-/BIC/ZFLAG2 = 'C6'.

"添加记录

MOVE-CORRESPONDING LS_RESULT_TMP1 TO LS_RESULT.

L_RECORD = L_RECORD + 1.

LS_RESULT-RECORD = L_RECORD.

APPEND LS_RESULT TO LT_RESULT.

ENDIF.

ELSE.

ZZCHANNEL = LS_RESULT_TMP1-/BIC/ZCHANNEL.

CLEAR ZZJEPX.

ZZJEPX = ZZJEPX + 1.

LS_RESULT_TMP1-/BIC/ZJEPX = ZZJEPX.

LS_RESULT_TMP1-/BIC/ZSLPX = 0 .

LS_RESULT_TMP1-/BIC/ZFLAG2 = 'C6'.

"添加记录

MOVE-CORRESPONDING LS_RESULT_TMP1 TO LS_RESULT.

L_RECORD = L_RECORD + 1.

LS_RESULT-RECORD = L_RECORD.

APPEND LS_RESULT TO LT_RESULT.

ENDIF.

ENDLOOP.

"11.1按事业部大中小类销售数量排序

REFRESH: LT_RESULT_TMP,LT_RESULT_TMP1.

LT_RESULT_TMP[] = LT_RESULT_TMP2[].

CLEAR LS_RESULT_TMP.

LOOP AT LT_RESULT_TMP INTO LS_RESULT_TMP .

CLEAR LS_RESULT_TMP-/BIC/ZMATERIAL.

CLEAR LS_RESULT_TMP-/BIC/ZGRID.

CLEAR LS_RESULT_TMP-/BIC/ZATWTBCC.

CLEAR LS_RESULT_TMP-/BIC/ZATWTBYS.

CLEAR LS_RESULT_TMP-/BIC/ZPRTK3.

CLEAR LS_RESULT_TMP-DISTR_CHAN.

CLEAR LS_RESULT_TMP-/BIC/ZQDLX.

CLEAR LS_RESULT_TMP-/BIC/ZBRAND.

CLEAR LS_RESULT_TMP-CUSTOMER.

CLEAR LS_RESULT_TMP-/BIC/ZSTORE.

CLEAR LS_RESULT_TMP-/BIC/ZPER_DD.

CLEAR LS_RESULT_TMP-/BIC/ZXM_DD.

CLEAR LS_RESULT_TMP-/BIC/ZAREA_MAR.

CLEAR LS_RESULT_TMP-/BIC/ZPQJL.

CLEAR LS_RESULT_TMP-/BIC/ZZJCODE.

CLEAR LS_RESULT_TMP-/BIC/ZZJNAME.

CLEAR LS_RESULT_TMP-/BIC/ZBZIRK.

CLEAR LS_RESULT_TMP-/BIC/ZCHANNEL.

CLEAR LS_RESULT_TMP-/BIC/ZFLAG2.

CLEAR LS_RESULT_TMP-/BIC/ZSLPX.

CLEAR LS_RESULT_TMP-/BIC/ZJEPX.

COLLECT LS_RESULT_TMP INTO LT_RESULT_TMP1.

ENDLOOP.

"事业部小类销售数量排序

SORT LT_RESULT_TMP1 BY

/BIC/ZSYB ASCENDING

/BIC/ZDTLQTY DESCENDING

/BIC/ZDTLFTAMT DESCENDING.

CLEAR: ZZSLPX,ZZJEPX,LS_RESULT_TMP1,ZZSYB.

LOOP AT LT_RESULT_TMP1 INTO LS_RESULT_TMP1.

IF ZZSYB IS INITIAL.

ZZSYB = LS_RESULT_TMP1-/BIC/ZSYB.

CLEAR ZZSLPX.

ENDIF.

IF ZZSYB = LS_RESULT_TMP1-/BIC/ZSYB.

IF ZZSLPX < 50 .

ZZSLPX = ZZSLPX + 1.

LS_RESULT_TMP1-/BIC/ZJEPX = 0.

LS_RESULT_TMP1-/BIC/ZSLPX = ZZSLPX.

LS_RESULT_TMP1-/BIC/ZFLAG2 = 'D3'.

"添加记录

MOVE-CORRESPONDING LS_RESULT_TMP1 TO LS_RESULT.

L_RECORD = L_RECORD + 1.

LS_RESULT-RECORD = L_RECORD.

APPEND LS_RESULT TO LT_RESULT.

ENDIF.

ELSE.

ZZSYB = LS_RESULT_TMP1-/BIC/ZSYB.

CLEAR ZZSLPX.

ZZSLPX = ZZSLPX + 1.

LS_RESULT_TMP1-/BIC/ZJEPX = 0.

LS_RESULT_TMP1-/BIC/ZSLPX = ZZSLPX.

LS_RESULT_TMP1-/BIC/ZFLAG2 = 'D3'.

"添加记录

MOVE-CORRESPONDING LS_RESULT_TMP1 TO LS_RESULT.

L_RECORD = L_RECORD + 1.

LS_RESULT-RECORD = L_RECORD.

APPEND LS_RESULT TO LT_RESULT.

ENDIF.

ENDLOOP.

"事业部小类销售金额排序

SORT LT_RESULT_TMP1 BY

/BIC/ZSYB ASCENDING

/BIC/ZDTLFTAMT DESCENDING

/BIC/ZDTLQTY DESCENDING.

CLEAR: ZZSLPX,ZZJEPX,LS_RESULT_TMP1,ZZSYB.

LOOP AT LT_RESULT_TMP1 INTO LS_RESULT_TMP1.

IF ZZSYB IS INITIAL.

ZZSYB = LS_RESULT_TMP1-/BIC/ZSYB.

CLEAR ZZJEPX.

ENDIF.

IF ZZSYB = LS_RESULT_TMP1-/BIC/ZSYB.

IF ZZJEPX < 50.

ZZJEPX = ZZJEPX + 1.

LS_RESULT_TMP1-/BIC/ZJEPX = ZZJEPX.

LS_RESULT_TMP1-/BIC/ZSLPX = 0 .

LS_RESULT_TMP1-/BIC/ZFLAG2 = 'D4'.

"添加记录

MOVE-CORRESPONDING LS_RESULT_TMP1 TO LS_RESULT.

L_RECORD = L_RECORD + 1.

LS_RESULT-RECORD = L_RECORD.

APPEND LS_RESULT TO LT_RESULT.

ENDIF.

ELSE.

ZZSYB = LS_RESULT_TMP1-/BIC/ZSYB.

CLEAR ZZJEPX.

ZZJEPX = ZZJEPX + 1.

LS_RESULT_TMP1-/BIC/ZJEPX = ZZJEPX.

LS_RESULT_TMP1-/BIC/ZSLPX = 0 .

LS_RESULT_TMP1-/BIC/ZFLAG2 = 'D4'.

"添加记录

MOVE-CORRESPONDING LS_RESULT_TMP1 TO LS_RESULT.

L_RECORD = L_RECORD + 1.

LS_RESULT-RECORD = L_RECORD.

APPEND LS_RESULT TO LT_RESULT.

ENDIF.

ENDLOOP.

"事业部中类

REFRESH: LT_RESULT_TMP,LT_RESULT_TMP1.

LT_RESULT_TMP[] = LT_RESULT_TMP2[].

CLEAR LS_RESULT_TMP.

LOOP AT LT_RESULT_TMP INTO LS_RESULT_TMP.

CLEAR LS_RESULT_TMP-/BIC/ZMATERIAL.

CLEAR LS_RESULT_TMP-/BIC/ZGRID.

CLEAR LS_RESULT_TMP-/BIC/ZATWTBCC.

CLEAR LS_RESULT_TMP-/BIC/ZATWTBYS.

CLEAR LS_RESULT_TMP-/BIC/ZPRTK3.

CLEAR LS_RESULT_TMP-DISTR_CHAN.

CLEAR LS_RESULT_TMP-/BIC/ZQDLX.

CLEAR LS_RESULT_TMP-/BIC/ZBRAND.

CLEAR LS_RESULT_TMP-CUSTOMER.

CLEAR LS_RESULT_TMP-/BIC/ZSTORE.

CLEAR LS_RESULT_TMP-/BIC/ZPER_DD.

CLEAR LS_RESULT_TMP-/BIC/ZXM_DD.

CLEAR LS_RESULT_TMP-/BIC/ZAREA_MAR.

CLEAR LS_RESULT_TMP-/BIC/ZPQJL.

CLEAR LS_RESULT_TMP-/BIC/ZZJCODE.

CLEAR LS_RESULT_TMP-/BIC/ZZJNAME.

CLEAR LS_RESULT_TMP-/BIC/ZBZIRK.

CLEAR LS_RESULT_TMP-/BIC/ZCHANNEL.

CLEAR LS_RESULT_TMP-/BIC/ZCLASSS.

CLEAR LS_RESULT_TMP-/BIC/ZFLAG2.

CLEAR LS_RESULT_TMP-/BIC/ZSLPX.

CLEAR LS_RESULT_TMP-/BIC/ZJEPX.

COLLECT LS_RESULT_TMP INTO LT_RESULT_TMP1.

ENDLOOP.

"事业部中类销售数量排序

SORT LT_RESULT_TMP1 BY

/BIC/ZSYB ASCENDING

/BIC/ZDTLQTY DESCENDING

/BIC/ZDTLFTAMT DESCENDING.

CLEAR: ZZSLPX,ZZJEPX,LS_RESULT_TMP1,ZZSYB.

LOOP AT LT_RESULT_TMP1 INTO LS_RESULT_TMP1.

IF ZZSYB IS INITIAL.

ZZSYB = LS_RESULT_TMP1-/BIC/ZSYB.

CLEAR ZZSLPX.

ENDIF.

IF ZZSYB = LS_RESULT_TMP1-/BIC/ZSYB.

IF ZZSLPX < 50 .

ZZSLPX = ZZSLPX + 1.

LS_RESULT_TMP1-/BIC/ZJEPX = 0.

LS_RESULT_TMP1-/BIC/ZSLPX = ZZSLPX.

LS_RESULT_TMP1-/BIC/ZFLAG2 = 'D5'.

"添加记录

MOVE-CORRESPONDING LS_RESULT_TMP1 TO LS_RESULT.

L_RECORD = L_RECORD + 1.

LS_RESULT-RECORD = L_RECORD.

APPEND LS_RESULT TO LT_RESULT.

ENDIF.

ELSE.

ZZSYB = LS_RESULT_TMP1-/BIC/ZSYB.

CLEAR ZZSLPX.

ZZSLPX = ZZSLPX + 1.

LS_RESULT_TMP1-/BIC/ZJEPX = 0.

LS_RESULT_TMP1-/BIC/ZSLPX = ZZSLPX.

LS_RESULT_TMP1-/BIC/ZFLAG2 = 'D5'.

"添加记录

MOVE-CORRESPONDING LS_RESULT_TMP1 TO LS_RESULT.

L_RECORD = L_RECORD + 1.

LS_RESULT-RECORD = L_RECORD.

APPEND LS_RESULT TO LT_RESULT.

ENDIF.

ENDLOOP.

"事业部中类销售金额排序

SORT LT_RESULT_TMP1 BY

/BIC/ZSYB ASCENDING

/BIC/ZDTLFTAMT DESCENDING

/BIC/ZDTLQTY DESCENDING.

CLEAR: ZZSLPX,ZZJEPX,LS_RESULT_TMP1,ZZSYB.

LOOP AT LT_RESULT_TMP1 INTO LS_RESULT_TMP1.

IF ZZSYB IS INITIAL.

ZZSYB = LS_RESULT_TMP1-/BIC/ZSYB.

CLEAR ZZJEPX.

ENDIF.

IF ZZSYB = LS_RESULT_TMP1-/BIC/ZSYB.

IF ZZJEPX < 50.

ZZJEPX = ZZJEPX + 1.

LS_RESULT_TMP1-/BIC/ZJEPX = ZZJEPX.

LS_RESULT_TMP1-/BIC/ZSLPX = 0 .

LS_RESULT_TMP1-/BIC/ZFLAG2 = 'D6'.

"添加记录

MOVE-CORRESPONDING LS_RESULT_TMP1 TO LS_RESULT.

L_RECORD = L_RECORD + 1.

LS_RESULT-RECORD = L_RECORD.

APPEND LS_RESULT TO LT_RESULT.

ENDIF.

ELSE.

ZZSYB = LS_RESULT_TMP1-/BIC/ZSYB.

CLEAR ZZJEPX.

ZZJEPX = ZZJEPX + 1.

LS_RESULT_TMP1-/BIC/ZJEPX = ZZJEPX.

LS_RESULT_TMP1-/BIC/ZSLPX = 0 .

LS_RESULT_TMP1-/BIC/ZFLAG2 = 'D6'.

"添加记录

MOVE-CORRESPONDING LS_RESULT_TMP1 TO LS_RESULT.

L_RECORD = L_RECORD + 1.

LS_RESULT-RECORD = L_RECORD.

APPEND LS_RESULT TO LT_RESULT.

ENDIF.

ENDLOOP.

"12.1按督导大中小类销售数量排序

REFRESH: LT_RESULT_TMP,LT_RESULT_TMP1.

LT_RESULT_TMP[] = LT_RESULT_TMP2[].

CLEAR LS_RESULT_TMP.

LOOP AT LT_RESULT_TMP INTO LS_RESULT_TMP.

CLEAR LS_RESULT_TMP-/BIC/ZMATERIAL.

CLEAR LS_RESULT_TMP-/BIC/ZGRID.

CLEAR LS_RESULT_TMP-/BIC/ZATWTBCC.

CLEAR LS_RESULT_TMP-/BIC/ZATWTBYS.

CLEAR LS_RESULT_TMP-/BIC/ZPRTK3.

CLEAR LS_RESULT_TMP-/BIC/ZCHANNEL.

CLEAR LS_RESULT_TMP-/BIC/ZSYB.

CLEAR LS_RESULT_TMP-/BIC/ZBZIRK.

CLEAR LS_RESULT_TMP-DISTR_CHAN.

CLEAR LS_RESULT_TMP-/BIC/ZQDLX.

CLEAR LS_RESULT_TMP-/BIC/ZBRAND.

CLEAR LS_RESULT_TMP-CUSTOMER.

CLEAR LS_RESULT_TMP-/BIC/ZSTORE.

CLEAR LS_RESULT_TMP-/BIC/ZFLAG2.

CLEAR LS_RESULT_TMP-/BIC/ZSLPX.

CLEAR LS_RESULT_TMP-/BIC/ZJEPX.

COLLECT LS_RESULT_TMP INTO LT_RESULT_TMP1.

ENDLOOP.

"督导小类销售数量排序

SORT LT_RESULT_TMP1 BY

/BIC/ZXM_DD ASCENDING

/BIC/ZDTLQTY DESCENDING

/BIC/ZDTLFTAMT DESCENDING.

CLEAR: ZZSLPX,ZZJEPX,LS_RESULT_TMP1,ZZXM_DD.

LOOP AT LT_RESULT_TMP1 INTO LS_RESULT_TMP1.

IF ZZXM_DD IS INITIAL.

ZZXM_DD = LS_RESULT_TMP1-/BIC/ZXM_DD.

CLEAR ZZSLPX.

ENDIF.

IF ZZXM_DD = LS_RESULT_TMP1-/BIC/ZXM_DD.

IF ZZSLPX < 50 .

ZZSLPX = ZZSLPX + 1.

LS_RESULT_TMP1-/BIC/ZJEPX = 0.

LS_RESULT_TMP1-/BIC/ZSLPX = ZZSLPX.

LS_RESULT_TMP1-/BIC/ZFLAG2 = 'E3'.

"添加记录

MOVE-CORRESPONDING LS_RESULT_TMP1 TO LS_RESULT.

L_RECORD = L_RECORD + 1.

LS_RESULT-RECORD = L_RECORD.

APPEND LS_RESULT TO LT_RESULT.

ENDIF.

ELSE.

ZZXM_DD = LS_RESULT_TMP1-/BIC/ZXM_DD.

CLEAR ZZSLPX.

ZZSLPX = ZZSLPX + 1.

LS_RESULT_TMP1-/BIC/ZJEPX = 0.

LS_RESULT_TMP1-/BIC/ZSLPX = ZZSLPX.

LS_RESULT_TMP1-/BIC/ZFLAG2 = 'E3'.

"添加记录

MOVE-CORRESPONDING LS_RESULT_TMP1 TO LS_RESULT.

L_RECORD = L_RECORD + 1.

LS_RESULT-RECORD = L_RECORD.

APPEND LS_RESULT TO LT_RESULT.

ENDIF.

ENDLOOP.

"督导小类销售金额排序

SORT LT_RESULT_TMP1 BY

/BIC/ZXM_DD ASCENDING

/BIC/ZDTLFTAMT DESCENDING

/BIC/ZDTLQTY DESCENDING.

CLEAR: ZZSLPX,ZZJEPX,LS_RESULT_TMP1,ZZXM_DD.

LOOP AT LT_RESULT_TMP1 INTO LS_RESULT_TMP1.

IF ZZXM_DD IS INITIAL.

ZZXM_DD = LS_RESULT_TMP1-/BIC/ZXM_DD.

CLEAR ZZJEPX.

ENDIF.

IF ZZXM_DD = LS_RESULT_TMP1-/BIC/ZXM_DD.

IF ZZJEPX < 50.

ZZJEPX = ZZJEPX + 1.

LS_RESULT_TMP1-/BIC/ZJEPX = ZZJEPX.

LS_RESULT_TMP1-/BIC/ZSLPX = 0 .

LS_RESULT_TMP1-/BIC/ZFLAG2 = 'E4'.

"添加记录

MOVE-CORRESPONDING LS_RESULT_TMP1 TO LS_RESULT.

L_RECORD = L_RECORD + 1.

LS_RESULT-RECORD = L_RECORD.

APPEND LS_RESULT TO LT_RESULT.

ENDIF.

ELSE.

ZZXM_DD = LS_RESULT_TMP1-/BIC/ZXM_DD.

CLEAR ZZJEPX.

ZZJEPX = ZZJEPX + 1.

LS_RESULT_TMP1-/BIC/ZJEPX = ZZJEPX.

LS_RESULT_TMP1-/BIC/ZSLPX = 0 .

LS_RESULT_TMP1-/BIC/ZFLAG2 = 'E4'.

"添加记录

MOVE-CORRESPONDING LS_RESULT_TMP1 TO LS_RESULT.

L_RECORD = L_RECORD + 1.

LS_RESULT-RECORD = L_RECORD.

APPEND LS_RESULT TO LT_RESULT.

ENDIF.

ENDLOOP.

"督导中类

REFRESH: LT_RESULT_TMP,LT_RESULT_TMP1.

LT_RESULT_TMP[] = LT_RESULT_TMP2[].

CLEAR LS_RESULT_TMP.

LOOP AT LT_RESULT_TMP INTO LS_RESULT_TMP.

CLEAR LS_RESULT_TMP-/BIC/ZMATERIAL.

CLEAR LS_RESULT_TMP-/BIC/ZGRID.

CLEAR LS_RESULT_TMP-/BIC/ZATWTBCC.

CLEAR LS_RESULT_TMP-/BIC/ZATWTBYS.

CLEAR LS_RESULT_TMP-/BIC/ZPRTK3.

CLEAR LS_RESULT_TMP-/BIC/ZCHANNEL.

CLEAR LS_RESULT_TMP-/BIC/ZSYB.

CLEAR LS_RESULT_TMP-/BIC/ZBZIRK.

CLEAR LS_RESULT_TMP-DISTR_CHAN.

CLEAR LS_RESULT_TMP-/BIC/ZQDLX.

CLEAR LS_RESULT_TMP-/BIC/ZBRAND.

CLEAR LS_RESULT_TMP-CUSTOMER.

CLEAR LS_RESULT_TMP-/BIC/ZSTORE.

CLEAR LS_RESULT_TMP-/BIC/ZCLASSS.

CLEAR LS_RESULT_TMP-/BIC/ZFLAG2.

CLEAR LS_RESULT_TMP-/BIC/ZSLPX.

CLEAR LS_RESULT_TMP-/BIC/ZJEPX.

COLLECT LS_RESULT_TMP INTO LT_RESULT_TMP1.

ENDLOOP.

"督导中类销售数量排序

SORT LT_RESULT_TMP1 BY

/BIC/ZXM_DD ASCENDING

/BIC/ZDTLQTY DESCENDING

/BIC/ZDTLFTAMT DESCENDING.

CLEAR: ZZSLPX,ZZJEPX,LS_RESULT_TMP1,ZZXM_DD.

LOOP AT LT_RESULT_TMP1 INTO LS_RESULT_TMP1.

IF ZZXM_DD IS INITIAL.

ZZXM_DD = LS_RESULT_TMP1-/BIC/ZXM_DD.

CLEAR ZZSLPX.

ENDIF.

IF ZZXM_DD = LS_RESULT_TMP1-/BIC/ZXM_DD.

IF ZZSLPX < 50 .

ZZSLPX = ZZSLPX + 1.

LS_RESULT_TMP1-/BIC/ZJEPX = 0.

LS_RESULT_TMP1-/BIC/ZSLPX = ZZSLPX.

LS_RESULT_TMP1-/BIC/ZFLAG2 = 'E5'.

"添加记录

MOVE-CORRESPONDING LS_RESULT_TMP1 TO LS_RESULT.

L_RECORD = L_RECORD + 1.

LS_RESULT-RECORD = L_RECORD.

APPEND LS_RESULT TO LT_RESULT.

ENDIF.

ELSE.

ZZXM_DD = LS_RESULT_TMP1-/BIC/ZXM_DD.

CLEAR ZZSLPX.

ZZSLPX = ZZSLPX + 1.

LS_RESULT_TMP1-/BIC/ZJEPX = 0.

LS_RESULT_TMP1-/BIC/ZSLPX = ZZSLPX.

LS_RESULT_TMP1-/BIC/ZFLAG2 = 'E5'.

"添加记录

MOVE-CORRESPONDING LS_RESULT_TMP1 TO LS_RESULT.

L_RECORD = L_RECORD + 1.

LS_RESULT-RECORD = L_RECORD.

APPEND LS_RESULT TO LT_RESULT.

ENDIF.

ENDLOOP.

"督导中类销售金额排序

SORT LT_RESULT_TMP1 BY

/BIC/ZXM_DD ASCENDING

/BIC/ZDTLFTAMT DESCENDING

/BIC/ZDTLQTY DESCENDING.

CLEAR: ZZSLPX,ZZJEPX,LS_RESULT_TMP1,ZZXM_DD.

LOOP AT LT_RESULT_TMP1 INTO LS_RESULT_TMP1.

IF ZZXM_DD IS INITIAL.

ZZXM_DD = LS_RESULT_TMP1-/BIC/ZXM_DD.

CLEAR ZZJEPX.

ENDIF.

IF ZZXM_DD = LS_RESULT_TMP1-/BIC/ZXM_DD.

IF ZZJEPX < 50.

ZZJEPX = ZZJEPX + 1.

LS_RESULT_TMP1-/BIC/ZJEPX = ZZJEPX.

LS_RESULT_TMP1-/BIC/ZSLPX = 0 .

LS_RESULT_TMP1-/BIC/ZFLAG2 = 'E6'.

"添加记录

MOVE-CORRESPONDING LS_RESULT_TMP1 TO LS_RESULT.

&nbs
4000
p; L_RECORD = L_RECORD + 1.

LS_RESULT-RECORD = L_RECORD.

APPEND LS_RESULT TO LT_RESULT.

ENDIF.

ELSE.

ZZXM_DD = LS_RESULT_TMP1-/BIC/ZXM_DD.

CLEAR ZZJEPX.

ZZJEPX = ZZJEPX + 1.

LS_RESULT_TMP1-/BIC/ZJEPX = ZZJEPX.

LS_RESULT_TMP1-/BIC/ZSLPX = 0 .

LS_RESULT_TMP1-/BIC/ZFLAG2 = 'E6'.

"添加记录

MOVE-CORRESPONDING LS_RESULT_TMP1 TO LS_RESULT.

L_RECORD = L_RECORD + 1.

LS_RESULT-RECORD = L_RECORD.

APPEND LS_RESULT TO LT_RESULT.

ENDIF.

ENDLOOP.

"13.1按片区经理大中小类销售数量排序

REFRESH: LT_RESULT_TMP,LT_RESULT_TMP1.

LT_RESULT_TMP[] = LT_RESULT_TMP2[].

CLEAR LS_RESULT_TMP.

LOOP AT LT_RESULT_TMP INTO LS_RESULT_TMP.

CLEAR LS_RESULT_TMP-/BIC/ZMATERIAL.

CLEAR LS_RESULT_TMP-/BIC/ZGRID.

CLEAR LS_RESULT_TMP-/BIC/ZATWTBCC.

CLEAR LS_RESULT_TMP-/BIC/ZATWTBYS.

CLEAR LS_RESULT_TMP-/BIC/ZPRTK3.

CLEAR LS_RESULT_TMP-/BIC/ZCHANNEL.

CLEAR LS_RESULT_TMP-/BIC/ZSYB.

CLEAR LS_RESULT_TMP-/BIC/ZBZIRK.

CLEAR LS_RESULT_TMP-DISTR_CHAN.

CLEAR LS_RESULT_TMP-/BIC/ZQDLX.

CLEAR LS_RESULT_TMP-/BIC/ZBRAND.

CLEAR LS_RESULT_TMP-CUSTOMER.

CLEAR LS_RESULT_TMP-/BIC/ZSTORE.

CLEAR LS_RESULT_TMP-/BIC/ZXM_DD.

CLEAR LS_RESULT_TMP-/BIC/ZFLAG2.

CLEAR LS_RESULT_TMP-/BIC/ZSLPX.

CLEAR LS_RESULT_TMP-/BIC/ZJEPX.

COLLECT LS_RESULT_TMP INTO LT_RESULT_TMP1.

ENDLOOP.

"片区经理小类销售数量排序

SORT LT_RESULT_TMP1 BY

/BIC/ZPQJL ASCENDING

/BIC/ZDTLQTY DESCENDING

/BIC/ZDTLFTAMT DESCENDING.

CLEAR: ZZSLPX,ZZJEPX,LS_RESULT_TMP1,ZZPQJL.

LOOP AT LT_RESULT_TMP1 INTO LS_RESULT_TMP1.

IF ZZPQJL IS INITIAL.

ZZPQJL = LS_RESULT_TMP1-/BIC/ZPQJL.

CLEAR ZZSLPX.

ENDIF.

IF ZZPQJL = LS_RESULT_TMP1-/BIC/ZPQJL.

IF ZZSLPX < 50 .

ZZSLPX = ZZSLPX + 1.

LS_RESULT_TMP1-/BIC/ZJEPX = 0.

LS_RESULT_TMP1-/BIC/ZSLPX = ZZSLPX.

LS_RESULT_TMP1-/BIC/ZFLAG2 = 'F3'.

"添加记录

MOVE-CORRESPONDING LS_RESULT_TMP1 TO LS_RESULT.

L_RECORD = L_RECORD + 1.

LS_RESULT-RECORD = L_RECORD.

APPEND LS_RESULT TO LT_RESULT.

ENDIF.

ELSE.

ZZPQJL = LS_RESULT_TMP1-/BIC/ZPQJL.

CLEAR ZZSLPX.

ZZSLPX = ZZSLPX + 1.

LS_RESULT_TMP1-/BIC/ZJEPX = 0.

LS_RESULT_TMP1-/BIC/ZSLPX = ZZSLPX.

LS_RESULT_TMP1-/BIC/ZFLAG2 = 'F3'.

"添加记录

MOVE-CORRESPONDING LS_RESULT_TMP1 TO LS_RESULT.

L_RECORD = L_RECORD + 1.

LS_RESULT-RECORD = L_RECORD.

APPEND LS_RESULT TO LT_RESULT.

ENDIF.

ENDLOOP.

"片区经理小类销售金额排序

SORT LT_RESULT_TMP1 BY

/BIC/ZPQJL ASCENDING

/BIC/ZDTLFTAMT DESCENDING

/BIC/ZDTLQTY DESCENDING.

CLEAR: ZZSLPX,ZZJEPX,LS_RESULT_TMP1,ZZPQJL.

LOOP AT LT_RESULT_TMP1 INTO LS_RESULT_TMP1.

IF ZZPQJL IS INITIAL.

ZZPQJL = LS_RESULT_TMP1-/BIC/ZPQJL.

CLEAR ZZJEPX.

ENDIF.

IF ZZPQJL = LS_RESULT_TMP1-/BIC/ZPQJL.

IF ZZJEPX < 50.

ZZJEPX = ZZJEPX + 1.

LS_RESULT_TMP1-/BIC/ZJEPX = ZZJEPX.

LS_RESULT_TMP1-/BIC/ZSLPX = 0 .

LS_RESULT_TMP1-/BIC/ZFLAG2 = 'F4'.

"添加记录

MOVE-CORRESPONDING LS_RESULT_TMP1 TO LS_RESULT.

L_RECORD = L_RECORD + 1.

LS_RESULT-RECORD = L_RECORD.

APPEND LS_RESULT TO LT_RESULT.

ENDIF.

ELSE.

ZZPQJL = LS_RESULT_TMP1-/BIC/ZPQJL.

CLEAR ZZJEPX.

ZZJEPX = ZZJEPX + 1.

LS_RESULT_TMP1-/BIC/ZJEPX = ZZJEPX.

LS_RESULT_TMP1-/BIC/ZSLPX = 0 .

LS_RESULT_TMP1-/BIC/ZFLAG2 = 'F4'.

"添加记录

MOVE-CORRESPONDING LS_RESULT_TMP1 TO LS_RESULT.

L_RECORD = L_RECORD + 1.

LS_RESULT-RECORD = L_RECORD.

APPEND LS_RESULT TO LT_RESULT.

ENDIF.

ENDLOOP.

"片区经理中类

REFRESH: LT_RESULT_TMP,LT_RESULT_TMP1.

LT_RESULT_TMP[] = LT_RESULT_TMP2[].

CLEAR LS_RESULT_TMP.

LOOP AT LT_RESULT_TMP INTO LS_RESULT_TMP.

CLEAR LS_RESULT_TMP-/BIC/ZMATERIAL.

CLEAR LS_RESULT_TMP-/BIC/ZGRID.

CLEAR LS_RESULT_TMP-/BIC/ZATWTBCC.

CLEAR LS_RESULT_TMP-/BIC/ZATWTBYS.

CLEAR LS_RESULT_TMP-/BIC/ZPRTK3.

CLEAR LS_RESULT_TMP-/BIC/ZCHANNEL.

CLEAR LS_RESULT_TMP-/BIC/ZSYB.

CLEAR LS_RESULT_TMP-/BIC/ZBZIRK.

CLEAR LS_RESULT_TMP-DISTR_CHAN.

CLEAR LS_RESULT_TMP-/BIC/ZQDLX.

CLEAR LS_RESULT_TMP-/BIC/ZBRAND.

CLEAR LS_RESULT_TMP-CUSTOMER.

CLEAR LS_RESULT_TMP-/BIC/ZSTORE.

CLEAR LS_RESULT_TMP-/BIC/ZXM_DD.

CLEAR LS_RESULT_TMP-/BIC/ZCLASSS.

CLEAR LS_RESULT_TMP-/BIC/ZFLAG2.

CLEAR LS_RESULT_TMP-/BIC/ZSLPX.

CLEAR LS_RESULT_TMP-/BIC/ZJEPX.

COLLECT LS_RESULT_TMP INTO LT_RESULT_TMP1.

ENDLOOP.

"片区经理中类销售数量排序

SORT LT_RESULT_TMP1 BY

/BIC/ZPQJL ASCENDING

/BIC/ZDTLQTY DESCENDING

/BIC/ZDTLFTAMT DESCENDING.

CLEAR: ZZSLPX,ZZJEPX,LS_RESULT_TMP1,ZZPQJL.

LOOP AT LT_RESULT_TMP1 INTO LS_RESULT_TMP1.

IF ZZPQJL IS INITIAL.

ZZPQJL = LS_RESULT_TMP1-/BIC/ZPQJL.

CLEAR ZZSLPX.

ENDIF.

IF ZZPQJL = LS_RESULT_TMP1-/BIC/ZPQJL.

IF ZZSLPX < 50 .

ZZSLPX = ZZSLPX + 1.

LS_RESULT_TMP1-/BIC/ZJEPX = 0.

LS_RESULT_TMP1-/BIC/ZSLPX = ZZSLPX.

LS_RESULT_TMP1-/BIC/ZFLAG2 = 'F5'.

"添加记录

MOVE-CORRESPONDING LS_RESULT_TMP1 TO LS_RESULT.

L_RECORD = L_RECORD + 1.

LS_RESULT-RECORD = L_RECORD.

APPEND LS_RESULT TO LT_RESULT.

ENDIF.

ELSE.

ZZPQJL = LS_RESULT_TMP1-/BIC/ZPQJL.

CLEAR ZZSLPX.

ZZSLPX = ZZSLPX + 1.

LS_RESULT_TMP1-/BIC/ZJEPX = 0.

LS_RESULT_TMP1-/BIC/ZSLPX = ZZSLPX.

LS_RESULT_TMP1-/BIC/ZFLAG2 = 'F5'.

"添加记录

MOVE-CORRESPONDING LS_RESULT_TMP1 TO LS_RESULT.

L_RECORD = L_RECORD + 1.

LS_RESULT-RECORD = L_RECORD.

APPEND LS_RESULT TO LT_RESULT.

ENDIF.

ENDLOOP.

"片区经理中类销售金额排序

SORT LT_RESULT_TMP1 BY

/BIC/ZPQJL ASCENDING

/BIC/ZDTLFTAMT DESCENDING

/BIC/ZDTLQTY DESCENDING.

CLEAR: ZZSLPX,ZZJEPX,LS_RESULT_TMP1,ZZPQJL.

LOOP AT LT_RESULT_TMP1 INTO LS_RESULT_TMP1.

IF ZZPQJL IS INITIAL.

ZZPQJL = LS_RESULT_TMP1-/BIC/ZPQJL.

CLEAR ZZJEPX.

ENDIF.

IF ZZPQJL = LS_RESULT_TMP1-/BIC/ZPQJL.

IF ZZJEPX < 50.

ZZJEPX = ZZJEPX + 1.

LS_RESULT_TMP1-/BIC/ZJEPX = ZZJEPX.

LS_RESULT_TMP1-/BIC/ZSLPX = 0 .

LS_RESULT_TMP1-/BIC/ZFLAG2 = 'F6'.

"添加记录

MOVE-CORRESPONDING LS_RESULT_TMP1 TO LS_RESULT.

L_RECORD = L_RECORD + 1.

LS_RESULT-RECORD = L_RECORD.

APPEND LS_RESULT TO LT_RESULT.

ENDIF.

ELSE.

ZZPQJL = LS_RESULT_TMP1-/BIC/ZPQJL.

CLEAR ZZJEPX.

ZZJEPX = ZZJEPX + 1.

LS_RESULT_TMP1-/BIC/ZJEPX = ZZJEPX.

LS_RESULT_TMP1-/BIC/ZSLPX = 0 .

LS_RESULT_TMP1-/BIC/ZFLAG2 = 'F6'.

"添加记录

MOVE-CORRESPONDING LS_RESULT_TMP1 TO LS_RESULT.

L_RECORD = L_RECORD + 1.

LS_RESULT-RECORD = L_RECORD.

APPEND LS_RESULT TO LT_RESULT.

ENDIF.

ENDLOOP.

"14.1按总监大中小类销售数量排序

REFRESH: LT_RESULT_TMP,LT_RESULT_TMP1.

LT_RESULT_TMP[] = LT_RESULT_TMP2[].

CLEAR LS_RESULT_TMP.

LOOP AT LT_RESULT_TMP INTO LS_RESULT_TMP.

CLEAR LS_RESULT_TMP-/BIC/ZMATERIAL.

CLEAR LS_RESULT_TMP-/BIC/ZGRID.

CLEAR LS_RESULT_TMP-/BIC/ZATWTBCC.

CLEAR LS_RESULT_TMP-/BIC/ZATWTBYS.

CLEAR LS_RESULT_TMP-/BIC/ZPRTK3.

CLEAR LS_RESULT_TMP-/BIC/ZCHANNEL.

CLEAR LS_RESULT_TMP-/BIC/ZSYB.

CLEAR LS_RESULT_TMP-/BIC/ZBZIRK.

CLEAR LS_RESULT_TMP-DISTR_CHAN.

CLEAR LS_RESULT_TMP-/BIC/ZQDLX.

CLEAR LS_RESULT_TMP-/BIC/ZBRAND.

CLEAR LS_RESULT_TMP-CUSTOMER.

CLEAR LS_RESULT_TMP-/BIC/ZSTORE.

CLEAR LS_RESULT_TMP-/BIC/ZXM_DD.

CLEAR LS_RESULT_TMP-/BIC/ZPQJL.

CLEAR LS_RESULT_TMP-/BIC/ZFLAG2.

CLEAR LS_RESULT_TMP-/BIC/ZSLPX.

CLEAR LS_RESULT_TMP-/BIC/ZJEPX.

COLLECT LS_RESULT_TMP INTO LT_RESULT_TMP1.

ENDLOOP.

"总监小类销售数量排序

SORT LT_RESULT_TMP1 BY

/BIC/ZZJNAME ASCENDING

/BIC/ZDTLQTY DESCENDING

/BIC/ZDTLFTAMT DESCENDING.

CLEAR: ZZSLPX,ZZJEPX,LS_RESULT_TMP1,ZZJNAME.

LOOP AT LT_RESULT_TMP1 INTO LS_RESULT_TMP1.

IF ZZJNAME IS INITIAL.

ZZJNAME = LS_RESULT_TMP1-/BIC/ZZJNAME.

CLEAR ZZSLPX.

ENDIF.

IF ZZJNAME = LS_RESULT_TMP1-/BIC/ZZJNAME.

IF ZZSLPX < 50 .

ZZSLPX = ZZSLPX + 1.

LS_RESULT_TMP1-/BIC/ZJEPX = 0.

LS_RESULT_TMP1-/BIC/ZSLPX = ZZSLPX.

LS_RESULT_TMP1-/BIC/ZFLAG2 = 'G3'.

"添加记录

MOVE-CORRESPONDING LS_RESULT_TMP1 TO LS_RESULT.

L_RECORD = L_RECORD + 1.

LS_RESULT-RECORD = L_RECORD.

APPEND LS_RESULT TO LT_RESULT.

ENDIF.

ELSE.

ZZJNAME = LS_RESULT_TMP1-/BIC/ZZJNAME.

CLEAR ZZSLPX.

ZZSLPX = ZZSLPX + 1.

LS_RESULT_TMP1-/BIC/ZJEPX = 0.

LS_RESULT_TMP1-/BIC/ZSLPX = ZZSLPX.

LS_RESULT_TMP1-/BIC/ZFLAG2 = 'G3'.

"添加记录

MOVE-CORRESPONDING LS_RESULT_TMP1 TO LS_RESULT.

L_RECORD = L_RECORD + 1.

LS_RESULT-RECORD = L_RECORD.

APPEND LS_RESULT TO LT_RESULT.

ENDIF.

ENDLOOP.

"总监小类销售金额排序

SORT LT_RESULT_TMP1 BY

/BIC/ZZJNAME ASCENDING

/BIC/ZDTLFTAMT DESCENDING

/BIC/ZDTLQTY DESCENDING.

CLEAR: ZZSLPX,ZZJEPX,LS_RESULT_TMP1,ZZJNAME.

LOOP AT LT_RESULT_TMP1 INTO LS_RESULT_TMP1.

IF ZZJNAME IS INITIAL.

ZZJNAME = LS_RESULT_TMP1-/BIC/ZZJNAME.

CLEAR ZZJEPX.

ENDIF.

IF ZZJNAME = LS_RESULT_TMP1-/BIC/ZZJNAME.

IF ZZJEPX < 50.

ZZJEPX = ZZJEPX + 1.

LS_RESULT_TMP1-/BIC/ZJEPX = ZZJEPX.

LS_RESULT_TMP1-/BIC/ZSLPX = 0 .

LS_RESULT_TMP1-/BIC/ZFLAG2 = 'G4'.

"添加记录

MOVE-CORRESPONDING LS_RESULT_TMP1 TO LS_RESULT.

L_RECORD = L_RECORD + 1.

LS_RESULT-RECORD = L_RECORD.

APPEND LS_RESULT TO LT_RESULT.

ENDIF.

ELSE.

ZZJNAME = LS_RESULT_TMP1-/BIC/ZZJNAME.

CLEAR ZZJEPX.

ZZJEPX = ZZJEPX + 1.

LS_RESULT_TMP1-/BIC/ZJEPX = ZZJEPX.

LS_RESULT_TMP1-/BIC/ZSLPX = 0 .

LS_RESULT_TMP1-/BIC/ZFLAG2 = 'G4'.

"添加记录

MOVE-CORRESPONDING LS_RESULT_TMP1 TO LS_RESULT.

L_RECORD = L_RECORD + 1.

LS_RESULT-RECORD = L_RECORD.

APPEND LS_RESULT TO LT_RESULT.

ENDIF.

ENDLOOP.

"总监中类

REFRESH: LT_RESULT_TMP,LT_RESULT_TMP1.

LT_RESULT_TMP[] = LT_RESULT_TMP2[].

CLEAR LS_RESULT_TMP.

LOOP AT LT_RESULT_TMP INTO LS_RESULT_TMP.

CLEAR LS_RESULT_TMP-/BIC/ZMATERIAL.

CLEAR LS_RESULT_TMP-/BIC/ZGRID.

CLEAR LS_RESULT_TMP-/BIC/ZATWTBCC.

CLEAR LS_RESULT_TMP-/BIC/ZATWTBYS.

CLEAR LS_RESULT_TMP-/BIC/ZPRTK3.

CLEAR LS_RESULT_TMP-/BIC/ZCHANNEL.

CLEAR LS_RESULT_TMP-/BIC/ZSYB.

CLEAR LS_RESULT_TMP-/BIC/ZBZIRK.

CLEAR LS_RESULT_TMP-DISTR_CHAN.

CLEAR LS_RESULT_TMP-/BIC/ZQDLX.

CLEAR LS_RESULT_TMP-/BIC/ZBRAND.

CLEAR LS_RESULT_TMP-CUSTOMER.

CLEAR LS_RESULT_TMP-/BIC/ZSTORE.

CLEAR LS_RESULT_TMP-/BIC/ZXM_DD.

CLEAR LS_RESULT_TMP-/BIC/ZPQJL.

CLEAR LS_RESULT_TMP-/BIC/ZCLASSS.

CLEAR LS_RESULT_TMP-/BIC/ZFLAG2.

CLEAR LS_RESULT_TMP-/BIC/ZSLPX.

CLEAR LS_RESULT_TMP-/BIC/ZJEPX.

COLLECT LS_RESULT_TMP INTO LT_RESULT_TMP1.

ENDLOOP.

"总监中类销售数量排序

SORT LT_RESULT_TMP1 BY

/BIC/ZZJNAME ASCENDING

/BIC/ZDTLQTY DESCENDING

/BIC/ZDTLFTAMT DESCENDING.

CLEAR: ZZSLPX,ZZJEPX,LS_RESULT_TMP1,ZZJNAME.

LOOP AT LT_RESULT_TMP1 INTO LS_RESULT_TMP1.

IF ZZJNAME IS INITIAL.

ZZJNAME = LS_RESULT_TMP1-/BIC/ZZJNAME.

CLEAR ZZSLPX.

ENDIF.

IF ZZJNAME = LS_RESULT_TMP1-/BIC/ZZJNAME.

IF ZZSLPX < 50 .

ZZSLPX = ZZSLPX + 1.

LS_RESULT_TMP1-/BIC/ZJEPX = 0.

LS_RESULT_TMP1-/BIC/ZSLPX = ZZSLPX.

LS_RESULT_TMP1-/BIC/ZFLAG2 = 'G5'.

"添加记录

MOVE-CORRESPONDING LS_RESULT_TMP1 TO LS_RESULT.

L_RECORD = L_RECORD + 1.

LS_RESULT-RECORD = L_RECORD.

APPEND LS_RESULT TO LT_RESULT.

ENDIF.

ELSE.

ZZJNAME = LS_RESULT_TMP1-/BIC/ZZJNAME.

CLEAR ZZSLPX.

ZZSLPX = ZZSLPX + 1.

LS_RESULT_TMP1-/BIC/ZJEPX = 0.

LS_RESULT_TMP1-/BIC/ZSLPX = ZZSLPX.

LS_RESULT_TMP1-/BIC/ZFLAG2 = 'G5'.

"添加记录

MOVE-CORRESPONDING LS_RESULT_TMP1 TO LS_RESULT.

L_RECORD = L_RECORD + 1.

LS_RESULT-RECORD = L_RECORD.

APPEND LS_RESULT TO LT_RESULT.

ENDIF.

ENDLOOP.

"总监中类销售金额排序

SORT LT_RESULT_TMP1 BY

/BIC/ZZJNAME ASCENDING

/BIC/ZDTLFTAMT DESCENDING

/BIC/ZDTLQTY DESCENDING.

CLEAR: ZZSLPX,ZZJEPX,LS_RESULT_TMP1,ZZJNAME.

LOOP AT LT_RESULT_TMP1 INTO LS_RESULT_TMP1.

IF ZZJNAME IS INITIAL.

ZZJNAME = LS_RESULT_TMP1-/BIC/ZZJNAME.

CLEAR ZZJEPX.

ENDIF.

IF ZZJNAME = LS_RESULT_TMP1-/BIC/ZZJNAME.

IF ZZJEPX < 50.

ZZJEPX = ZZJEPX + 1.

LS_RESULT_TMP1-/BIC/ZJEPX = ZZJEPX.

LS_RESULT_TMP1-/BIC/ZSLPX = 0 .

LS_RESULT_TMP1-/BIC/ZFLAG2 = 'G6'.

"添加记录

MOVE-CORRESPONDING LS_RESULT_TMP1 TO LS_RESULT.

L_RECORD = L_RECORD + 1.

LS_RESULT-RECORD = L_RECORD.

APPEND LS_RESULT TO LT_RESULT.

ENDIF.

ELSE.

ZZJNAME = LS_RESULT_TMP1-/BIC/ZZJNAME.

CLEAR ZZJEPX.

ZZJEPX = ZZJEPX + 1.

LS_RESULT_TMP1-/BIC/ZJEPX = ZZJEPX.

LS_RESULT_TMP1-/BIC/ZSLPX = 0 .

LS_RESULT_TMP1-/BIC/ZFLAG2 = 'G6'.

"添加记录

MOVE-CORRESPONDING LS_RESULT_TMP1 TO LS_RESULT.

L_RECORD = L_RECORD + 1.

LS_RESULT-RECORD = L_RECORD.

APPEND LS_RESULT TO LT_RESULT.

ENDIF.

ENDLOOP.

"15.1按品牌大中小类物料销售数量排序

"物料

REFRESH: LT_RESULT_TMP,LT_RESULT_TMP1.

LT_RESULT_TMP[] = LT_RESULT_TMP2[].

DATA: ZZBRAND TYPE /BIC/OIZBRAND.

CLEAR LS_RESULT_TMP.

LOOP AT LT_RESULT_TMP INTO LS_RESULT_TMP.

CLEAR LS_ZMATERIAL.

READ TABLE LT_ZMATERIAL INTO LS_ZMATERIAL WITH KEY

/BIC/ZMATERIAL = LS_RESULT_TMP-/BIC/ZMATERIAL BINARY SEARCH.

IF SY-SUBRC = 0.

LS_RESULT_TMP-/BIC/ZBRAND = LS_ZMATERIAL-/BIC/ZBRAND.

ELSE.

LS_RESULT_TMP-/BIC/ZBRAND ='缺失'.

ENDIF.

CLEAR LS_RESULT_TMP-/BIC/ZCHANNEL.

CLEAR LS_RESULT_TMP-/BIC/ZSYB.

CLEAR LS_RESULT_TMP-/BIC/ZBZIRK.

CLEAR LS_RESULT_TMP-DISTR_CHAN.

CLEAR LS_RESULT_TMP-/BIC/ZQDLX.

CLEAR LS_RESULT_TMP-CUSTOMER.

CLEAR LS_RESULT_TMP-/BIC/ZSTORE.

CLEAR LS_RESULT_TMP-/BIC/ZXM_DD.

CLEAR LS_RESULT_TMP-/BIC/ZPQJL.

CLEAR LS_RESULT_TMP-/BIC/ZZJNAME.

CLEAR LS_RESULT_TMP-/BIC/ZFLAG2.

CLEAR LS_RESULT_TMP-/BIC/ZSLPX.

CLEAR LS_RESULT_TMP-/BIC/ZJEPX.

COLLECT LS_RESULT_TMP INTO LT_RESULT_TMP1.

ENDLOOP.

"品牌物料销售数量排序

SORT LT_RESULT_TMP1 BY

/BIC/ZBRAND ASCENDING

/BIC/ZDTLQTY DESCENDING

/BIC/ZDTLFTAMT DESCENDING.

CLEAR: ZZSLPX,ZZJEPX,LS_RESULT_TMP1,ZZBRAND.

LOOP AT LT_RESULT_TMP1 INTO LS_RESULT_TMP1.

IF ZZBRAND IS INITIAL.

ZZBRAND = LS_RESULT_TMP1-/BIC/ZBRAND.

CLEAR ZZSLPX.

ENDIF.

IF ZZBRAND = LS_RESULT_TMP1-/BIC/ZBRAND.

IF ZZSLPX < 50 .

ZZSLPX = ZZSLPX + 1.

LS_RESULT_TMP1-/BIC/ZJEPX = 0.

LS_RESULT_TMP1-/BIC/ZSLPX = ZZSLPX.

LS_RESULT_TMP1-/BIC/ZFLAG2 = 'H1'.

"添加记录

MOVE-CORRESPONDING LS_RESULT_TMP1 TO LS_RESULT.

L_RECORD = L_RECORD + 1.

LS_RESULT-RECORD = L_RECORD.

APPEND LS_RESULT TO LT_RESULT.

ENDIF.

ELSE.

ZZBRAND = LS_RESULT_TMP1-/BIC/ZBRAND.

CLEAR ZZSLPX.

ZZSLPX = ZZSLPX + 1.

LS_RESULT_TMP1-/BIC/ZJEPX = 0.

LS_RESULT_TMP1-/BIC/ZSLPX = ZZSLPX.

LS_RESULT_TMP1-/BIC/ZFLAG2 = 'H1'.

"添加记录

MOVE-CORRESPONDING LS_RESULT_TMP1 TO LS_RESULT.

L_RECORD = L_RECORD + 1.

LS_RESULT-RECORD = L_RECORD.

APPEND LS_RESULT TO LT_RESULT.

ENDIF.

ENDLOOP.

"品牌物料销售金额排序

SORT LT_RESULT_TMP1 BY

/BIC/ZBRAND ASCENDING

/BIC/ZDTLFTAMT DESCENDING

/BIC/ZDTLQTY DESCENDING.

CLEAR: ZZSLPX,ZZJEPX,LS_RESULT_TMP1,ZZBRAND.

LOOP AT LT_RESULT_TMP1 INTO LS_RESULT_TMP1.

IF ZZBRAND IS INITIAL.

ZZBRAND = LS_RESULT_TMP1-/BIC/ZBRAND.

CLEAR ZZJEPX.

ENDIF.

IF ZZBRAND = LS_RESULT_TMP1-/BIC/ZBRAND.

IF ZZJEPX < 50.

ZZJEPX = ZZJEPX + 1.

LS_RESULT_TMP1-/BIC/ZJEPX = ZZJEPX.

LS_RESULT_TMP1-/BIC/ZSLPX = 0 .

LS_RESULT_TMP1-/BIC/ZFLAG2 = 'H2'.

"添加记录

MOVE-CORRESPONDING LS_RESULT_TMP1 TO LS_RESULT.

L_RECORD = L_RECORD + 1.

LS_RESULT-RECORD = L_RECORD.

APPEND LS_RESULT TO LT_RESULT.

ENDIF.

ELSE.

ZZBRAND = LS_RESULT_TMP1-/BIC/ZBRAND.

CLEAR ZZJEPX.

ZZJEPX = ZZJEPX + 1.

LS_RESULT_TMP1-/BIC/ZJEPX = ZZJEPX.

LS_RESULT_TMP1-/BIC/ZSLPX = 0 .

LS_RESULT_TMP1-/BIC/ZFLAG2 = 'H2'.

"添加记录

MOVE-CORRESPONDING LS_RESULT_TMP1 TO LS_RESULT.

L_RECORD = L_RECORD + 1.

LS_RESULT-RECORD = L_RECORD.

APPEND LS_RESULT TO LT_RESULT.

ENDIF.

ENDLOOP.

"品牌小类

REFRESH: LT_RESULT_TMP1."LT_RESULT_TMP,

"LT_RESULT_TMP[] = LT_RESULT_TMP2[].

CLEAR LS_RESULT_TMP.

LOOP AT LT_RESULT_TMP INTO LS_RESULT_TMP.

CLEAR LS_ZMATERIAL.

READ TABLE LT_ZMATERIAL INTO LS_ZMATERIAL WITH KEY

/BIC/ZMATERIAL = LS_RESULT_TMP-/BIC/ZMATERIAL BINARY SEARCH.

IF SY-SUBRC = 0.

LS_RESULT_TMP-/BIC/ZBRAND = LS_ZMATERIAL-/BIC/ZBRAND.

ELSE.

LS_RESULT_TMP-/BIC/ZBRAND ='缺失'.

ENDIF.

CLEAR LS_RESULT_TMP-/BIC/ZMATERIAL.

CLEAR LS_RESULT_TMP-/BIC/ZGRID.

CLEAR LS_RESULT_TMP-/BIC/ZATWTBCC.

CLEAR LS_RESULT_TMP-/BIC/ZATWTBYS.

CLEAR LS_RESULT_TMP-/BIC/ZPRTK3.

CLEAR LS_RESULT_TMP-/BIC/ZCHANNEL.

CLEAR LS_RESULT_TMP-/BIC/ZSYB.

CLEAR LS_RESULT_TMP-/BIC/ZBZIRK.

CLEAR LS_RESULT_TMP-DISTR_CHAN.

CLEAR LS_RESULT_TMP-/BIC/ZQDLX.

CLEAR LS_RESULT_TMP-CUSTOMER.

CLEAR LS_RESULT_TMP-/BIC/ZSTORE.

CLEAR LS_RESULT_TMP-/BIC/ZXM_DD.

CLEAR LS_RESULT_TMP-/BIC/ZPQJL.

CLEAR LS_RESULT_TMP-/BIC/ZZJNAME.

"CLEAR LS_RESULT_TMP-/BIC/ZCLASSS.

CLEAR LS_RESULT_TMP-/BIC/ZFLAG2.

CLEAR LS_RESULT_TMP-/BIC/ZSLPX.

CLEAR LS_RESULT_TMP-/BIC/ZJEPX.

COLLECT LS_RESULT_TMP INTO LT_RESULT_TMP1.

ENDLOOP.

"品牌小类销售数量排序

SORT LT_RESULT_TMP1 BY

/BIC/ZBRAND ASCENDING

/BIC/ZDTLQTY DESCENDING

/BIC/ZDTLFTAMT DESCENDING.

CLEAR: ZZSLPX,ZZJEPX,LS_RESULT_TMP1,ZZBRAND.

LOOP AT LT_RESULT_TMP1 INTO LS_RESULT_TMP1.

IF ZZBRAND IS INITIAL.

ZZBRAND = LS_RESULT_TMP1-/BIC/ZBRAND.

CLEAR ZZSLPX.

ENDIF.

IF ZZBRAND = LS_RESULT_TMP1-/BIC/ZBRAND.

IF ZZSLPX < 50 .

ZZSLPX = ZZSLPX + 1.

LS_RESULT_TMP1-/BIC/ZJEPX = 0.

LS_RESULT_TMP1-/BIC/ZSLPX = ZZSLPX.

LS_RESULT_TMP1-/BIC/ZFLAG2 = 'H3'.

"添加记录

MOVE-CORRESPONDING LS_RESULT_TMP1 TO LS_RESULT.

L_RECORD = L_RECORD + 1.

LS_RESULT-RECORD = L_RECORD.

APPEND LS_RESULT TO LT_RESULT.

ENDIF.

ELSE.

ZZBRAND = LS_RESULT_TMP1-/BIC/ZBRAND.

CLEAR ZZSLPX.

ZZSLPX = ZZSLPX + 1.

LS_RESULT_TMP1-/BIC/ZJEPX = 0.

LS_RESULT_TMP1-/BIC/ZSLPX = ZZSLPX.

LS_RESULT_TMP1-/BIC/ZFLAG2 = 'H3'.

"添加记录

MOVE-CORRESPONDING LS_RESULT_TMP1 TO LS_RESULT.

L_RECORD = L_RECORD + 1.

LS_RESULT-RECORD = L_RECORD.

APPEND LS_RESULT TO LT_RESULT.

ENDIF.

ENDLOOP.

"品牌小类销售金额排序

SORT LT_RESULT_TMP1 BY

/BIC/ZBRAND ASCENDING

/BIC/ZDTLFTAMT DESCENDING

/BIC/ZDTLQTY DESCENDING.

CLEAR: ZZSLPX,ZZJEPX,LS_RESULT_TMP1,ZZBRAND.

LOOP AT LT_RESULT_TMP1 INTO LS_RESULT_TMP1.

IF ZZBRAND IS INITIAL.

ZZBRAND = LS_RESULT_TMP1-/BIC/ZBRAND.

CLEAR ZZJEPX.

ENDIF.

IF ZZBRAND = LS_RESULT_TMP1-/BIC/ZBRAND.

IF ZZJEPX < 50.

ZZJEPX = ZZJEPX + 1.

LS_RESULT_TMP1-/BIC/ZJEPX = ZZJEPX.

LS_RESULT_TMP1-/BIC/ZSLPX = 0 .

LS_RESULT_TMP1-/BIC/ZFLAG2 = 'H4'.

"添加记录

MOVE-CORRESPONDING LS_RESULT_TMP1 TO LS_RESULT.

L_RECORD = L_RECORD + 1.

LS_RESULT-RECORD = L_RECORD.

APPEND LS_RESULT TO LT_RESULT.

ENDIF.

ELSE.

ZZBRAND = LS_RESULT_TMP1-/BIC/ZBRAND.

CLEAR ZZJEPX.

ZZJEPX = ZZJEPX + 1.

LS_RESULT_TMP1-/BIC/ZJEPX = ZZJEPX.

LS_RESULT_TMP1-/BIC/ZSLPX = 0 .

LS_RESULT_TMP1-/BIC/ZFLAG2 = 'H4'.

"添加记录

MOVE-CORRESPONDING LS_RESULT_TMP1 TO LS_RESULT.

L_RECORD = L_RECORD + 1.

LS_RESULT-RECORD = L_RECORD.

APPEND LS_RESULT TO LT_RESULT.

ENDIF.

ENDLOOP.

"品牌中类

REFRESH: LT_RESULT_TMP1."LT_RESULT_TMP,

"LT_RESULT_TMP[] = LT_RESULT_TMP2[].

CLEAR LS_RESULT_TMP.

LOOP AT LT_RESULT_TMP INTO LS_RESULT_TMP.

CLEAR LS_ZMATERIAL.

READ TABLE LT_ZMATERIAL INTO LS_ZMATERIAL WITH KEY

/BIC/ZMATERIAL = LS_RESULT_TMP-/BIC/ZMATERIAL BINARY SEARCH.

IF SY-SUBRC = 0.

LS_RESULT_TMP-/BIC/ZBRAND = LS_ZMATERIAL-/BIC/ZBRAND.

ELSE.

LS_RESULT_TMP-/BIC/ZBRAND ='缺失'.

ENDIF.

CLEAR LS_RESULT_TMP-/BIC/ZMATERIAL.

CLEAR LS_RESULT_TMP-/BIC/ZGRID.

CLEAR LS_RESULT_TMP-/BIC/ZATWTBCC.

CLEAR LS_RESULT_TMP-/BIC/ZATWTBYS.

CLEAR LS_RESULT_TMP-/BIC/ZPRTK3.

CLEAR LS_RESULT_TMP-/BIC/ZCHANNEL.

CLEAR LS_RESULT_TMP-/BIC/ZSYB.

CLEAR LS_RESULT_TMP-/BIC/ZBZIRK.

CLEAR LS_RESULT_TMP-DISTR_CHAN.

CLEAR LS_RESULT_TMP-/BIC/ZQDLX.

CLEAR LS_RESULT_TMP-CUSTOMER.

CLEAR LS_RESULT_TMP-/BIC/ZSTORE.

CLEAR LS_RESULT_TMP-/BIC/ZXM_DD.

CLEAR LS_RESULT_TMP-/BIC/ZPQJL.

CLEAR LS_RESULT_TMP-/BIC/ZZJNAME.

CLEAR LS_RESULT_TMP-/BIC/ZCLASSS.

CLEAR LS_RESULT_TMP-/BIC/ZFLAG2.

CLEAR LS_RESULT_TMP-/BIC/ZSLPX.

CLEAR LS_RESULT_TMP-/BIC/ZJEPX.

COLLECT LS_RESULT_TMP INTO LT_RESULT_TMP1.

ENDLOOP.

"品牌中类销售数量排序

SORT LT_RESULT_TMP1 BY

/BIC/ZBRAND ASCENDING

/BIC/ZDTLQTY DESCENDING

/BIC/ZDTLFTAMT DESCENDING.

CLEAR: ZZSLPX,ZZJEPX,LS_RESULT_TMP1,ZZBRAND.

LOOP AT LT_RESULT_TMP1 INTO LS_RESULT_TMP1.

IF ZZBRAND IS INITIAL.

ZZBRAND = LS_RESULT_TMP1-/BIC/ZBRAND.

CLEAR ZZSLPX.

ENDIF.

IF ZZBRAND = LS_RESULT_TMP1-/BIC/ZBRAND.

IF ZZSLPX < 50 .

ZZSLPX = ZZSLPX + 1.

LS_RESULT_TMP1-/BIC/ZJEPX = 0.

LS_RESULT_TMP1-/BIC/ZSLPX = ZZSLPX.

LS_RESULT_TMP1-/BIC/ZFLAG2 = 'H5'.

"添加记录

MOVE-CORRESPONDING LS_RESULT_TMP1 TO LS_RESULT.

L_RECORD = L_RECORD + 1.

LS_RESULT-RECORD = L_RECORD.

APPEND LS_RESULT TO LT_RESULT.

ENDIF.

ELSE.

ZZBRAND = LS_RESULT_TMP1-/BIC/ZBRAND.

CLEAR ZZSLPX.

ZZSLPX = ZZSLPX + 1.

LS_RESULT_TMP1-/BIC/ZJEPX = 0.

LS_RESULT_TMP1-/BIC/ZSLPX = ZZSLPX.

LS_RESULT_TMP1-/BIC/ZFLAG2 = 'H5'.

"添加记录

MOVE-CORRESPONDING LS_RESULT_TMP1 TO LS_RESULT.

L_RECORD = L_RECORD + 1.

LS_RESULT-RECORD = L_RECORD.

APPEND LS_RESULT TO LT_RESULT.

ENDIF.

ENDLOOP.

"总监中类销售金额排序

SORT LT_RESULT_TMP1 BY

/BIC/ZBRAND ASCENDING

/BIC/ZDTLFTAMT DESCENDING

/BIC/ZDTLQTY DESCENDING.

CLEAR: ZZSLPX,ZZJEPX,LS_RESULT_TMP1,ZZBRAND.

LOOP AT LT_RESULT_TMP1 INTO LS_RESULT_TMP1.

IF ZZBRAND IS INITIAL.

ZZBRAND = LS_RESULT_TMP1-/BIC/ZBRAND.

CLEAR ZZJEPX.

ENDIF.

IF ZZBRAND = LS_RESULT_TMP1-/BIC/ZBRAND.

IF ZZJEPX < 50.

ZZJEPX = ZZJEPX + 1.

LS_RESULT_TMP1-/BIC/ZJEPX = ZZJEPX.

LS_RESULT_TMP1-/BIC/ZSLPX = 0 .

LS_RESULT_TMP1-/BIC/ZFLAG2 = 'H6'.

"添加记录

MOVE-CORRESPONDING LS_RESULT_TMP1 TO LS_RESULT.

L_RECORD = L_RECORD + 1.

LS_RESULT-RECORD = L_RECORD.

APPEND LS_RESULT TO LT_RESULT.

ENDIF.

ELSE.

ZZBRAND = LS_RESULT_TMP1-/BIC/ZBRAND.

CLEAR ZZJEPX.

ZZJEPX = ZZJEPX + 1.

LS_RESULT_TMP1-/BIC/ZJEPX = ZZJEPX.

LS_RESULT_TMP1-/BIC/ZSLPX = 0 .

LS_RESULT_TMP1-/BIC/ZFLAG2 = 'H6'.

"添加记录

MOVE-CORRESPONDING LS_RESULT_TMP1 TO LS_RESULT.

L_RECORD = L_RECORD + 1.

LS_RESULT-RECORD = L_RECORD.

APPEND LS_RESULT TO LT_RESULT.

ENDIF.

ENDLOOP.

*****************按大中小类TOP end********************

"DELETE RESULT_PACKAGE WHERE /BIC/ZJEPX = 0 AND /BIC/ZSLPX = 0.

REFRESH RESULT_PACKAGE.

RESULT_PACKAGE[] = LT_RESULT[].

REFRESH LT_RESULT.

*$*$ end of routine - insert your code only before this line *-*

ENDMETHOD. "end_routine

*----------------------------------------------------------------------*

* Inverse method inverse_end_routine

*----------------------------------------------------------------------*

* This subroutine needs to be implemented only for direct access

* (for better performance) and for the Report/Report Interface

* (drill through).

* The inverse routine should transform a projection and

* a selection for the target to a projection and a selection

* for the source, respectively.

* If the implementation remains empty all fields are filled and

* all values are selected.

*----------------------------------------------------------------------*

* Customer comment:

*----------------------------------------------------------------------*

METHOD inverse_end_routine.

* IMPORTING

* i_r_selset_outbound TYPE REF TO cl_rsmds_set

* i_th_fields_outbound TYPE HASHED TABLE

* i_r_selset_outbound_complete TYPE REF TO cl_rsmds_set

* i_r_universe_inbound TYPE REF TO cl_rsmds_universe

* CHANGING

* c_r_selset_inbound TYPE REF TO cl_rsmds_set

* c_th_fields_inbound TYPE HASHED TABLE

* c_exact TYPE rs_bool

*$*$ begin of inverse routine - insert your code only below this line*-*

... "insert your code here

*$*$ end of inverse routine - insert your code only before this line *-*

ENDMETHOD. "inverse_end_routine

METHOD new_record__end_routine.

***** IMPLEMENTATION is only visible in generated program *****

ENDMETHOD.

ENDCLASS. "routine IMPLEMENTATION
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: