已阅读5页,还剩11页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
*-* Program Name : ZCFMR173 * Purpose : 材料提成比率查询报表 * Project Name : CRM * Created by : huoqi * Create on : 2010.07.14 * Functional Consultant : 王莹* Description : 材料提成比率查询报表*-* Modification Log *Date Programmer Corr. # Description *2010.08.04 huoqi v1.1 先判断材料ID的商品性质为免费材料* 还是收费材料,免费材料则材料提成比* 率为0,收费材料则再继续执行原查找* ZT0116ZT0117ZT0118的逻辑。*-*REPORT zcfmr173.TABLES: zt0116.TYPE-POOLS: slis.DATA: fieldcat TYPE slis_t_fieldcat_alv WITH HEADER LINE, g_repid TYPE sy-repid, gs_layout TYPE slis_layout_alv.DATA: lt_process_type TYPE ztb_tran_check ,ls_process_type TYPE ztr_tran_check .RANGES: r_process_type FOR crmd_orderadm_h-process_type.RANGES: is_seorg FOR crmt_report_orgman-service_org.*根据服务组织找相应的OTJIDDATA: BEGIN OF i_hrp1000 OCCURS 0, otjid LIKE hrp1000-otjid, stext LIKE hrp1000-stext, service_org TYPE crmt_service_org, END OF i_hrp1000.*DATA: BEGIN OF it_zzclsp OCCURS 0, product_id LIKE comm_product-product_id, product_guid LIKE comm_product-product_guid, category_id LIKE comm_prprdcatr-category_id, category_guid LIKE comm_prprdcatr-category_guid, END OF it_zzclsp.*DATA: BEGIN OF it_comm_prshtext OCCURS 0, product_guid LIKE comm_prshtext-product_guid, short_text LIKE comm_prshtext-short_text, END OF it_comm_prshtext.*DATA: BEGIN OF it_comm_categoryt OCCURS 0, category_guid LIKE comm_categoryt-category_guid, category_text LIKE comm_categoryt-category_text, END OF it_comm_categoryt.DATA: BEGIN OF it_category_guid OCCURS 0, category_id LIKE comm_category-category_id, category_guid LIKE comm_category-category_guid, END OF it_category_guid.DATA: BEGIN OF it_process_type OCCURS 0, process_type LIKE ztr_tran_check-process_type, p_description_20 LIKE ztr_tran_check-p_description_20, END OF it_process_type.DATA: BEGIN OF it_out OCCURS 0, service_org LIKE zt0134-zsales_org, service_org_desc LIKE hrp1000-stext, zzclsp LIKE zt0134-zzclspid, zzclsp_desc LIKE comm_prshtext-short_text, zzclspz LIKE zt0116-zzclspz, zzclspz_desc LIKE comm_categoryt-category_text, zzfwddlx LIKE zt0116-zzfwddlx, zzfwddlx_desc LIKE crmc_proc_type_t-p_description_20, zzdqspz LIKE zt0116-zzdqspz, zzdqspz_desc LIKE comm_categoryt-category_text, zzspxz(10), zztcbl LIKE zt0116-zztcbl, END OF it_out.DATA: BEGIN OF it_zt0134 OCCURS 0, zsales_org LIKE zt0134-zsales_org, zzclspid LIKE zt0134-zzclspid, END OF it_zt0134.DATA: BEGIN OF it_zt0135 OCCURS 0, zsales_org LIKE zt0135-zsales_org, zzclspz LIKE zt0135-zzclspz, END OF it_zt0135.DATA: it_out1 LIKE it_out OCCURS 0 WITH HEADER LINE.SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME TITLE text-001.SELECT-OPTIONS: s_seorg FOR zt0116-service_org OBLIGATORY, 服务组织 s_zzclsp FOR zt0116-zzclsp OBLIGATORY, 材料商品ID s_type FOR zt0116-zzfwddlx, 服务订单类型 s_dqspz FOR zt0116-zzdqspz MODIF ID md1. 电器商品组SELECTION-SCREEN END OF BLOCK b1.SELECTION-SCREEN BEGIN OF BLOCK b2 WITH FRAME TITLE text-002.PARAMETERS: r1 RADIOBUTTON GROUP ran1 DEFAULT X USER-COMMAND rb1, r2 RADIOBUTTON GROUP ran1, r3 RADIOBUTTON GROUP ran1.SELECTION-SCREEN END OF BLOCK b2.SELECTION-SCREEN COMMENT /2(83) com1 VISIBLE LENGTH 120.AT SELECTION-SCREEN ON VALUE-REQUEST FOR s_type-low. PERFORM sub_pro_type_select USING s_type-low.AT SELECTION-SCREEN ON VALUE-REQUEST FOR s_type-high. PERFORM sub_pro_type_select USING s_type-low.AT SELECTION-SCREEN OUTPUT. PERFORM frm_pbo.AT SELECTION-SCREEN. PERFORM frm_authority_check. PERFORM frm_input_check. CHECK is_seorg IS NOT INITIAL.START-OF-SELECTION. PERFORM frm_data_process. PERFORM frm_data_output.END-OF-SELECTION.*&-*& Form SUB_PRO_TYPE_SELECT*&-* text*-* -P_S_TYPE_LOW text*-*FORM sub_pro_type_select USING p_s_type_low. DATA : f4help LIKE TABLE OF ddshretval WITH HEADER LINE. DATA: BEGIN OF list OCCURS 0, process_type LIKE ztr_tran_check-process_type, p_description_20 LIKE ztr_tran_check-p_description_20, END OF list.*带搜索帮助,服务订单类型的值:ZS01-ZS12、ZGS1-ZGS3 r_process_type-sign = I. r_process_type-option = BT. r_process_type-low = ZS01. r_process_type-high = ZS12. APPEND r_process_type. CLEAR r_process_type. r_process_type-sign = I. r_process_type-option = BT. r_process_type-low = ZGS1. r_process_type-high = ZGS3. APPEND r_process_type. CLEAR r_process_type. SELECT process_type p_description_20 INTO CORRESPONDING FIELDS OF TABLE lt_process_type FROM crmc_proc_type_t WHERE langu = sy-langu AND process_type IN r_process_type. LOOP AT lt_process_type INTO ls_process_type. MOVE-CORRESPONDING ls_process_type TO list. APPEND list. ENDLOOP. CALL FUNCTION F4IF_INT_TABLE_VALUE_REQUEST EXPORTING retfield = PROCESS_TYPE dynpprog = sy-repid dynpnr = sy-dynnr stepl = 1 window_title = 订单类型查询 value_org = S TABLES value_tab = list return_tab = f4help. p_s_type_low = f4help-fieldval.ENDFORM. SUB_PRO_TYPE_SELECT*&-*& Form FRM_PBO*&-* text*-* - p1 text* p1 text* - p2 text*-*FORM frm_authority_check .*权限控制到服务组织*ZSN_ORG001 REFRESH is_seorg. SELECT * INTO CORRESPONDING FIELDS OF TABLE i_hrp1000 FROM hrp1000 WHERE hrp1000otjid IN s_seorg AND hrp1000plvar = 01 AND hrp1000otype = O AND hrp1000begda sy-datum. IF i_hrp1000 IS INITIAL. MESSAGE e398(00) WITH 没有找到合适的组织数据!. ELSE. LOOP AT i_hrp1000. is_seorg-sign = I. is_seorg-option = EQ. is_seorg-low = i_hrp1000-otjid. APPEND is_seorg. CLEAR is_seorg. ENDLOOP. LOOP AT is_seorg.* 需控制到服务组织。只可查看本服务组织的下的单据。权限对象:ZSN_ORG001 AUTHORITY-CHECK OBJECT ZSN_ORG001 ID SALES_ORG FIELD is_seorg-low. IF sy-subrc 0. DELETE is_seorg. MESSAGE i398(00) WITH 您没有操作组织 is_seorg-low 的权限!. EXIT. ENDIF. ENDLOOP. ENDIF.ENDFORM. FRM_AUTHORITY_CHECK*&-*& Form FRM_INPUT_CHECK*&-* text*-* - p1 text* p1 text* - p2 text*-*FORM frm_data_process .*1、若勾选提成比率1,点执行,则根据查询条件中录入的:服务组织、材料商品ID、*服务订单类型、电器商品组筛选条件,查询ZT0116表,并显示字段(见下)。*若查询条件中服务订单类型、电器商品组字段不输入,则显示ZT0116表中所有的服务订单类型和电器商品组。*2、若勾选提成比率2,点执行,则根据查询条件录入的服务组织、材料商品ID、*服务订单类型、电器商品组筛选条件,查询ZT0117表,并显示字段(见下)。其中,*通过查询条件中录入的材料商品ID先查找该ID对应的材料商品组,*再根据该材料商品组查找ZT0117表。若查询条件中服务订单类型、电器商品组字段不输入,*则显示ZT0117表中所有的服务订单类型和电器商品组。*3.若勾选提成比率3,点执行,则根据查询条件录入的服务组织、材料商品ID、*服务订单类型筛选条件,查询ZT0118表,其中,通过查询条件中录入的材料商品ID*先查找该ID对应的材料商品组,再根据该材料商品组查找ZT0118表。*其中查询条件中的电器商品组不作为查询筛选字段。*根据输入的材料商品ID来找其对应的材料商品组 SELECT aproduct_id aproduct_guid bcategory_id bcategory_guid INTO CORRESPONDING FIELDS OF TABLE it_zzclsp FROM comm_product AS a INNER JOIN comm_prprdcatr AS b ON aproduct_guid = bproduct_guid INNER JOIN comm_hierarchy AS c ON bhierarchy_guid = chierarchy_guid WHERE aproduct_id IN s_zzclsp AND chierarchy_id = R3MATCLASS.* CHECK it_zzclsp IS NOT INITIAL. IF r1 = X. CLEAR: it_out.REFRESH: it_out. SELECT service_org zzclsp zzclspz zzfwddlx zzdqspz zztcbl FROM zt0116 INTO CORRESPONDING FIELDS OF TABLE it_out WHERE service_org IN is_seorg AND zzfwddlx IN s_type AND zzfwddlx IN r_process_type AND zzdqspz IN s_dqspz AND zzclsp IN s_zzclsp. ELSEIF r2 = X. SELECT service_org zzclspz zzfwddlx zzdqspz zztcbl FROM zt0117 INTO CORRESPONDING FIELDS OF TABLE it_out FOR ALL ENTRIES IN it_zzclsp WHERE service_org IN is_seorg AND zzfwddlx IN s_type AND zzfwddlx IN r_process_type AND zzdqspz IN s_dqspz AND zzclspz = it_zzclsp-category_id. ELSEIF r3 = X. SELECT service_org zzclspz zzfwddlx zztcbl FROM zt0118 INTO CORRESPONDING FIELDS OF TABLE it_out FOR ALL ENTRIES IN it_zzclsp WHERE service_org IN is_seorg AND zzfwddlx IN s_type AND zzfwddlx IN r_process_type AND zzclspz = it_zzclsp-category_id. ENDIF.* CHECK it_out IS NOT INITIAL. IF it_out IS NOT INITIAL. SELECT process_type p_description_20 INTO CORRESPONDING FIELDS OF TABLE it_process_type FROM crmc_proc_type_t WHERE langu = sy-langu AND process_type IN r_process_type. SELECT product_guid short_text FROM comm_prshtext INTO TABLE it_comm_prshtext FOR ALL ENTRIES IN it_zzclsp WHERE product_guid = it_zzclsp-product_guid. SELECT category_guid category_text FROM comm_categoryt INTO TABLE it_comm_categoryt FOR ALL ENTRIES IN it_zzclsp WHERE category_guid = it_zzclsp-category_guid. IF r3 X. SELECT category_id category_guid FROM comm_category INTO TABLE it_category_guid FOR ALL ENTRIES IN it_out WHERE category_id = it_out-zzdqspz. IF it_category_guid IS NOT INITIAL. SELECT category_guid category_text FROM comm_categoryt APPENDING TABLE it_comm_categoryt FOR ALL ENTRIES IN it_category_guid WHERE category_guid = it_category_guid-category_guid. ENDIF. ENDIF. ENDIF. SORT i_hrp1000 BY otjid. SORT it_zzclsp BY product_id. SORT it_comm_prshtext BY product_guid. SORT it_zzclsp BY category_id. SORT it_comm_categoryt BY category_guid. SORT it_category_guid BY category_id. SORT it_process_type BY process_type. LOOP AT it_out. READ TABLE i_hrp1000 WITH KEY otjid = it_out-service_org BINARY SEARCH. IF sy-subrc = 0. it_out-service_org_desc = i_hrp1000-stext. ENDIF. IF r1 = X. READ TABLE it_zzclsp WITH KEY product_id = it_out-zzclsp BINARY SEARCH. IF sy-subrc = 0. READ TABLE it_comm_prshtext WITH KEY product_guid = it_zzclsp-product_guid BINARY SEARCH. IF sy-subrc = 0. it_out-zzclsp_desc = it_comm_prshtext-short_text. ENDIF. ENDIF. ENDIF. READ TABLE it_zzclsp WITH KEY category_id = it_out-zzclspz BINARY SEARCH. IF sy-subrc = 0. READ TABLE it_comm_categoryt WITH KEY category_guid = it_zzclsp-category_guid BINARY SEARCH. IF sy-subrc = 0. it_out-zzclspz_desc = it_comm_categoryt-category_text. ENDIF. ENDIF. IF r3 X. READ TABLE it_category_guid WITH KEY category_id = it_out-zzdqspz BINARY SEARCH. IF sy-subrc = 0. READ TABLE it_comm_categoryt WITH KEY category_guid = it_category_guid-category_guid BINARY SEARCH. IF sy-subrc = 0. it_out-zzdqspz_desc = it_comm_categoryt-category_text. ENDIF. ENDIF. ENDIF. READ TABLE it_process_type WITH KEY process_type = it_out-zzfwddlx BINARY SEARCH. IF sy-subrc = 0. it_out-zzfwddlx_desc = it_process_type-p_description_20. ENDIF. MODIFY it_out. ENDLOOP. LOOP AT it_out. IF r1 = X. MOVE-CORRESPONDING it_out TO it_out1. APPEND it_out1. CLEAR it_out1. ELSE. LOOP AT it_zzclsp WHERE category_id = it_out-zzclspz. MOVE-CORRESPONDING it_out TO it_out1. it_out1-zzclsp = it_zzclsp-product_id. READ TABLE it_comm_prshtext WITH KEY product_guid = it_zzclsp-product_guid. IF sy-subrc = 0. it_out1-zzclsp_desc = it_comm_prshtext-short_text. ENDIF. APPEND it_out1. CLEAR it_out1. ENDLOOP. ENDIF. ENDLOOP.* 根据服务组织、材料商品ID判断商品性质(逻辑见下述表格),* 若商品性质为“免费材料”,则材料提成比例为0,* 根据服务组织、材料商品ID查询ZT0134表,若有维护,* 则该字段值固定为“免费材料”;若无,再根据服务组织、* 材料商品ID对应的材料商品组搜索ZT0135表,若有维护,* 则该字段值固定为“免费材料”, IF it_out1 IS NOT INITIAL. SELECT zsales_org zzclspid FROM zt0134 INTO CORRESPONDING FIELDS OF TABLE it_zt0134 FOR ALL ENTRIES IN it_out1 WHERE zsales_org = it_out1-service_org AND zzclspid = it_out1-zzclsp AND date_from = sy-datum. SELECT zsales_org zzclspz FROM zt0135 INTO CORRESPONDING FIELDS OF TABLE it_zt0135 FOR ALL ENTRIES IN it_out1 WHERE zsales_org = it_out1-service_org AND zzclspz = it_out1-zzclspz AND date_from = sy-datum. ENDIF. SORT it_zt0134 BY zsales_org zzclspid. SORT it_zt0135 BY zsales_org zzclspz. LOOP AT it_out1. READ TABLE it_zt0134 WITH KEY zsales_org = it_out1-service_org zzclspid = it_out1-zzclsp. IF sy-subrc = 0. CLEAR: it_out1-zzfwddlx,it_out1-zzfwddlx_desc,it_out1-zzdqspz,it_out1-zzdqspz_desc. it_out1-zzspxz = 免费材料. it_out1-zztcbl = 0. ELSE. READ TABLE it_zt0135 WITH KEY zsales_org = it_out1-service_org zzclspz = it_out1-zzclspz. IF sy-subrc = 0. CLEAR: it_out1-zzfwddlx,it_out1-zzfwddlx_desc,it_out1-zzdqspz,it_out1-zzdqspz_desc. it_out1-zzspxz = 免费材料. it_out1-zztcbl = 0. ELSE. it_out1-zzspxz = 收费材料. ENDIF. ENDIF. MODIFY it_out1. ENDLOOP. CLEAR: i_hrp1000, it_zzclsp,it_comm_prshtext,it_zzclsp,it_comm_categoryt,it_category_guid,it_process_type. REFRESH: i_hrp1000, it_zzclsp,it_comm_prshtext,it_zzclsp,it_comm_categoryt,it_category_guid,it_process_type. FREE: i_hrp1000, it_zzclsp,it_comm_prshtext,it_zzclsp,it_comm_categoryt,it_category_guid,it_process_type. IF it_out1 IS I
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年黔西南州辅警协警招聘考试真题附答案详解(b卷)
- 2025年海口辅警协警招聘考试真题含答案详解(轻巧夺冠)
- 2025年黔西南州辅警招聘考试真题及答案详解(网校专用)
- 2025年辽源辅警协警招聘考试备考题库含答案详解(a卷)
- 2025年随州辅警协警招聘考试真题及答案详解(名校卷)
- 2025年濮阳辅警协警招聘考试备考题库附答案详解(基础题)
- 2025年铜仁辅警协警招聘考试真题含答案详解(新)
- 2025年锡林郭勒盟辅警协警招聘考试备考题库附答案详解(满分必刷)
- 2025年葫芦岛辅警招聘考试题库及答案详解(易错题)
- 2025年玉溪辅警协警招聘考试备考题库附答案详解(培优a卷)
- 江苏省2024年中职职教高考文化统考机电一体化专业综合理论真题试卷
- 2024年全国网络安全行业职业技能大赛(数据安全管理员)考试题库-上(单选题) (一)
- 车间三级安全教育
- 2024年潜江市事业单位统一招聘笔试真题
- 风管机专业知识培训课件
- 《新能源电池研究》课件
- GB/T 45065-2024皮革和毛皮化学试验挥发性甲基环硅氧烷残留量的测定
- 全过程跟踪审计风险重点和难点分析
- 2024年度高铁站防水防潮防分包合同2篇
- 第四课-火灾逃生我能行-课件(共28张课件)
- 浙江省温州环大罗山联盟2024-2025学年高一上学期期中考试化学试题
评论
0/150
提交评论