四川省电力公司
企业资源管理(ERP)系统实施项目
技术设计说明书
第一部分:基本信息 (生成新的版本后,以下内容要相应改动) 开发类型 增强 接口 单据 报表 Enhancement User Exit BAdI Dialog Interactive list ABAP OO Function group RFC BAPI function Executive Program BDC Table Contents Modification Server file Local file SAPScript Smartforms Output-only List HR D19(1) /client 110 ZHRR0029 ZHRR0029 员工信息查询 周勤暘 路晓青 路晓青 技术工具 模块 开发机及集团 事务代码 程序ID 程序名称 功能设计者 技术设计者 ABAP程序员 第二部分: 设计书维护记录 更新日期 2009-11-02
更新人员 路晓青 简要说明 初版创建
第 1 页,共 23 页
四川电力ERP实施项目 自定义开发程序技术说明书
第三部分: 技术方案描述 3.1业务需求描述
根据选择画面上用户输入的条件, 查看员工信息清单,调用逻辑数据库PNP,对于满足屏幕条件的员工,读取“报表字段说明”中指定的字段内容,除在“报表字段说明”中有具体说明的字段外,在选取表中记录时应满足记录的“开始时间<ENDDA,记录的结束时间>BEGDA”中的最后一条。输出采用标准ALV表头,可由用户自定义报表的列格式。并可根据计数列,进行总计、小计的统计功能。
3.2技术解决方案
1.根据选择画面的输入,用逻辑数据库PNP从数据库表抽取员工信息,并通过ALV显示清 单,用ALV标志的状态栏,实现小计和总计。 2.取数逻辑: 序号 报表字段 1 序号 2 3 4 5 字段技术名称 字段描述 PA0000-PERNR PA0001- ENAME HRP1000-STEXT (HRP100-OTYPE=O ) 流水号 1 人员编号 特殊需求 计数列 人员编号 姓名 所属单位 员工姓名 取出PA0001-ORGEH= HRP1003- OBJID时判断HRP1003-ABTEL是否等于“X”, 1、如果HRP1003-ABTEL=X,就直接取该员工PA0001-ORGEH = HRP1003-OBJID时的HRP1000-STEXT; 2、如果HRP1003-ABTEL<> X,那么,判断该上级组织单元的HRP1003-ABTEL是否等于“X”: 1)如果上级组织单元的HRP1003-ABTEL=X,那么就输出该组织单位HRP1003-OBJID对应的HRP1000-STEXT; 2)如果上级组织单元的HRP1003-ABTEL<>X,那么,继续向上取组织单元,继续查找父结点,直至找到HRP1003-ABTEL=x的组织单位,输出该组织单位HRP1003-OBJID对应的HRP1000-STEXT
第 2 页,共 23 页
四川电力ERP实施项目 自定义开发程序技术说明书
序号 报表字段 6 所属部门 字段技术名称 字段描述 特殊需求 7 部门类别 所属组织 8 职位 9 职务 10 11 职务职级 岗级 岗位类别 HRP1000-STEXT 取出PA0001-ORGEH= HRP1003-(HRP100-OTYPE=O OBJID时判断HRP1003-ABTEL) 是否等于“X”, 1、如果HRP1003-ABTEL=X,就直接取该员工PA0001-ORGEH = HRP1003-OBJID时的HRP1000-STEXT; 2、如果HRP1003-ABTEL<> X,那么,判断该上级组织单元的HRP1003-ABTEL是否等于“X”: 1)如果上级组织单元的HRP1003-ABTEL=X,那么就直接取该员工PA0001-ORGEH = HRP1003-OBJID时的HRP1000-STEXT; 2)如果上级组织单元的HRP1003-ABTEL<>X,那么,继续向上取组织单元,继续查找父结点,直至找到HRP1003-ABTEL=x的该组织单位;找到之后,取HRP1003-ABTEL=x的组织单位的直接下级组织单位的信息,即该组织单位的关系HRP1001-RSIGN= B,且HRP1001-RELAT=002时的HRP1000-OBJID= HRP1003-OBJID时的HRP1000-STEXT P9103-ZZHR_BMLB 取上述部门的P9103-ZZHR_BMLB 显示文本 HRP1000-STEXT 取出PA0001-ORGEH= HRP1000-(HRP100-OTYPE=O OBJID对应的HRP1000-STEXT ) HRP1000-STEXT HRP1000-OTYPE=S ,HRP1000-OBJID = PA0001-PLAINS,取HRP1000-STEXT显示文本 HRP1000-STEXT HRP1000-OTYPE=C ,HRP1000-OBJID = PA0001-STELL,取HRP1000-STEXT显示文本 P0001-ZZHR_ZWZJ 显示文本 PA0008-TRFGR 如果P0008-TRFAR=03或者04时,并且P0008-TRFGB=01、02或者07时,则岗级处留空 P9201-ZZHR_GWFN HRP9201-OBJID = P0001-PLANS,取HRP9201- ZZHR_GWFN显示文本
第 3 页,共 23 页
四川电力ERP实施项目 自定义开发程序技术说明书
序号 报表字段 12 人事范围 13 14 15 16 17 18 19 20 字段技术名称 字段描述 特殊需求 T500P-NAME1 T001P-BTEXT T501T-PTEXT T503T-PTEXT 人事子范围 员工组 员工子组 工资范围 人员类别 人员状态 岗位状态 用工形式 出生日期 年龄 T500P-PERSA= PA0001-WERKS,取T500P-NAME1显示文本 T001P-BTRTL= PA0001-BTRTL,取T001P-BTEXT 显示文本 T501T- PERSG = PA0001-PERSG, 取T501T-PTEXT 显示文本 21 22 23 24 25 26 性别 民族 籍贯 政治面貌 入党时间 身份证号 27 28 29 30 31 参加工作时间 工龄起算日期 工龄 进入电力行业时间 进入本单位工作时间 参工学历入学时间 参工学历毕业时间 T503T-PERSK=PA0001-PERSK,取T503T-PTEXT 显示文本 PA0001-ABKRS 显示文本 P0001-ZZHR_RYLB 显示文本 P0001-ZZHR_RYZT 显示文本 P0001-ZZHR_GWZT 显示文本 P0001-ANSVH 显示文本 P0002-GBDAT 通过程序计算 目前年份月份-出生的年份月份 1) 如果目前的月份<出生的月份,则岁数=目前年份-出生年份-1 2) 如果目前的月份>出生的月份,则岁数=目前年份-出生年份 Q0002-GESC2 显示文本 P0529-RACKY T505S-LTEXT 显示文本 P0002-ZZHR_JG P0534-PCODE 显示文本 P0534- BEGDA 满足条件P0534- PCODE =“01”时的P0534-BEGDA的值 PA0185-ICNN1 PA0185-ICNN2 PA0185-ICNN3 PA0185-ICNN4 四个字段合并输出为身份证 P0002-ZZHR_CGRQ P0002-ZZHR_GLQS 通过程序计算,当前年-工龄起算日期对应的年份 P0002-ZZHR_DLHY P0002-ZZHR_BDW P0022-BEGDA 取P0022-ZZHR_CGXL=“是”的记录 取P0022-ZZHR_CGXL=“是”的记录 P0022-ENDDA
第 4 页,共 23 页
四川电力ERP实施项目 自定义开发程序技术说明书
序号 报表字段 32 参工学历 字段技术名称 字段描述 特殊需求 P0022-SLABS T519T-STEXT 显示文本 显示文本。当P0022-ZZHR_SXZY为空时,取P0022-ZZHR_SXZYMC 33 参工学历所学专业 参工学历毕业院校 中间学历入学时间 中间学历毕业时间 中间学历 P0022-ZZHR_SXZY或P0022-ZZHR_SXZYMC P0022-INSTI P0022-BEGDA P0022-ENDDA 34 P0022-SLABS T519T-STEXT 显示文本 显示文本。当P0022-ZZHR_SXZY为空时,取P0022-ZZHR_SXZYMC 35 中间学历所学专业 中间学历毕业院校 最高学历入学时间 最高学历毕业时间 最高学历 P0022-ZZHR_SXZY或P0022-ZZHR_SXZYMC P0022-INSTI P0022-BEGDA P0022-ENDDA 36 P0022-SLABS T519T-STEXT 显示文本 显示文本。当P0022-ZZHR_SXZY为空时,取P0022-ZZHR_SXZYMC 37 最高学历所学专业 最高学历毕业院校 最高技能等级工种 最高技能等级 P0022-ZZHR_SXZY或P0022-ZZHR_SXZYMC P0022-INSTI 38 39 40 P9005-ZJDGZ P9005-ZZGDJ WA_JDGZ-TEXT 显示文本 WA_ZGDJ-TEXT 显示文本 WA_JDGZ-TEXT 显示文本 最高技能资格获P9005-ZZGHDSJ 得时间 现技能等级工种 P9005-ZJDGZ 取P0022-ZZHR_CGXL=“是”的记录 取P0022-ZZHR_CGXL=“是”的记录 取P0022-ZZHR_CGXL=“是”的记录 取P0022-ZZHR_ZJXL=“是”的记录 取P0022-ZZHR_ZJXL=“是”的记录 取P0022-ZZHR_ZJXL=“是”的记录 取P0022-ZZHR_ZJXL=“是”的记录 取P0022-ZZHR_ZJXL=“是”的记录 取P0022-ZZHR_ZGXL=“是”的记录 取P0022-ZZHR_ZGXL=“是”的记录 取P0022-ZZHR_ZGXL=“是”的记录 取P0022-ZZHR_ZGXL=“是”的记录 取P0022-ZZHR_ZGXL=“是”的记录 取P9005-ZJNZGDJ =“是”的记录 取P9005-ZJNZGDJ =“是”的记录 取P9005-ZJNZGDJ =“是”的记录 取P9005-ZSFXJN =“是”的记录
第 5 页,共 23 页
四川电力ERP实施项目 自定义开发程序技术说明书
序号 报表字段 41 现技能等级 42 字段技术名称 字段描述 特殊需求 P9005-ZZGDJ P9005-ZZGHDSJ WA_ZGDJ-TEXT 显示文本 现技能资格获得时间 专业技术名称(最高等级) 43 44 45 46 47 专业技术系列(最高等级) 专业技术等级(最高等级) 专业技术资格获取时间(最高等级) 专业技术名称(现职称) 专业技术系列(现职称) 专业技术等级(现职称) 专业技术资格获取时间(现职称) P9007-ZZYJSZWMC 取ZHRT9007ZWMC表中当 ZHRT9007ZWMC- ZZYJSZWMC=PA9007- ZZHR_ZYJSZWMC时的TEXT文本值 P9007-ZZYJSZWXL 显示文本 P9007-ZZYJSZWDJ 显示文本 P9007-BEGDA 取P9005-ZSFXJN =“是”的记录 取P9005-ZSFXJN =“是”的记录 取P9007-ZJFZGDJBS =“是”的记录 取P9007-ZJFZGDJBS =“是”的记录 取P9007-ZJFZGDJBS =“是”的记录 取P9007-ZJFZGDJBS =“是”的记录 取P9007-ZSFXZC =“是”的记录 取P9007-ZSFXZC =“是”的记录 取P9007-ZSFXZC =“是”的记录 取P9007-ZSFXZC =“是”的记录 P9007-ZZYJSZWMC 显示文本 P9007-ZZYJSZWXL 显示文本 P9007-ZZYJSZWDJ 显示文本 P9007-BEGDA
3.3 系统简单架构图
开 始
选择画面输 如果没有满足条件的数据 入查询条件
如果有数据
ALV显示数据清单
结 束
第 6 页,共 23 页
四川电力ERP实施项目 自定义开发程序技术说明书
第四部分:程序逻辑描述—将主要代码功能描述清楚, 1.输入
TCODE: ZHRR0029,出现如下屏幕
2.根据选择画面的输入,ALV显示符合条件的数据清单。
第五部分:源程序----复杂性功能实现可贴主要功能代码部分 *&---------------------------------------------------------------------* *& 程序名称: ZHRR0029 *& 程序描述: 员工信息查询 *& 开发人员: 路晓青
*& 创建日期: 2009/10/21
*& 程序用途: 根据屏幕输入条件,调用逻辑数据库PNP,对于满足屏幕条件的
第 7 页,共 23 页
四川电力ERP实施项目 自定义开发程序技术说明书
*& 员工,将其信息生成ALV预览。
*&---------------------------------------------------------------------* *& *&
*&---------------------------------------------------------------------* REPORT ZHRR0029 MESSAGE-ID ZHR01 NO STANDARD PAGE HEADING LINE-SIZE 192 LINE-COUNT 58. TYPE-POOLS: SLIS.
TABLES: PERNR.
INFOTYPES: 0000, 0001, 0002, 0529, 0534, 0185, 0022, 9005, 9007.
*&---------------------------------------------------------------------* *& 定义内表和工作区
*&---------------------------------------------------------------------* * ALV显示表之结构体
TYPES: BEGIN OF TY_ALV,
SELBOX TYPE C, \"选择列 NUM TYPE I, \"流水号 CTCOM TYPE I, \"计数列 PERNR LIKE P0002-PERNR, \"人员编号 ENAME LIKE P0001-ENAME, \"姓名
SSDW LIKE HRP1000-STEXT, \"所属单位 SSBM LIKE HRP1000-STEXT, \"所属部门 BMLB LIKE ZHR_BMLB-ZTEXT,\"部门类别 SSZZ LIKE HRP1000-STEXT, \"所属组织 ZW LIKE HRP1000-STEXT, \"职位 ZWU LIKE HRP1000-STEXT, \"职务
ZWZJ LIKE ZHR_ZWZJ-ZTEXT,\"职务职级 TRFGR LIKE P0008-TRFGR, \"岗级
GWLB LIKE ZHR_GWFN-ZTEXT,\"岗位类别 RSFW LIKE T500P-NAME1, \"人事范围 RSZFW LIKE T001P-BTEXT, \"人事子范围 YGZ LIKE T501T-PTEXT, \"员工组 YGZZ LIKE T503T-PTEXT, \"员工子组 GGFW LIKE T549T-ATEXT, \"工资范围 RYLB LIKE ZHR_RYLB-ZTEXT,\"人员类别 RYZT LIKE ZHR_RYZT-ZTEXT,\"人员状态 GWZT LIKE ZHR_GWZT-ZTEXT,\"岗位状态 YGXS LIKE T542T-ATX, \"用工形式 GBDAT LIKE P0002-GBDAT, \"出生日期 AGE TYPE I, \"年龄 GESCH(2) TYPE C, \"性别 MZ LIKE T505S-LTEXT, \"民族 ZZHR_JG LIKE P0002-ZZHR_JG, \"籍贯
ZZMM LIKE T7CN5R-PTEXT, \"政治面貌 RDSJ LIKE P0534-BEGDA, \"入党时间 ICNUM LIKE P0185-ICNUM, \"身份证号
CGRQ LIKE P0002-ZZHR_CGRQ,\"参加工作时间 GLQS LIKE P0002-ZZHR_GLQS,\"工龄起算日期 GL TYPE I, \"工龄
DLHY LIKE P0002-ZZHR_DLHY,\"进入电力行业时间 BDW LIKE P0002-ZZHR_BDW, \"进入本单位工作时间 BEGDA1 LIKE P0022-BEGDA, \"参工学历入学时间 ENDDA1 LIKE P0022-ENDDA, \"参工学历毕业时间 CGXL1 LIKE T519T-STEXT, \"参工学历
第 8 页,共 23 页
四川电力ERP实施项目 自定义开发程序技术说明书
SXZY1 LIKE ZHR_SXZY-ZTEXT, \"参工学历所学专业 INSTI1 LIKE P0022-INSTI, \"参工学历毕业院校 BEGDA2 LIKE P0022-BEGDA, \"中间学历入学时间 ENDDA2 LIKE P0022-ENDDA, \"中间学历毕业时间 CGXL2 LIKE T519T-STEXT, \"中间学历
SXZY2 LIKE ZHR_SXZY-ZTEXT, \"中间学历所学专业 INSTI2 LIKE P0022-INSTI, \"中间学历毕业院校 BEGDA3 LIKE P0022-BEGDA, \"最高学历入学时间 ENDDA3 LIKE P0022-ENDDA, \"最高学历毕业时间 CGXL3 LIKE T519T-STEXT, \"最高学历
SXZY3 LIKE ZHR_SXZY-ZTEXT, \"最高学历所学专业 INSTI3 LIKE P0022-INSTI, \"最高学历毕业院校 ZJDGZ LIKE ZHRT9005JDGZ-TEXT, \"最高技能等级工种 ZGDJ LIKE ZHRT9005ZGDJ-TEXT, \"最高技能等级
ZZGHDSJ LIKE P9005-ZZGHDSJ, \"最高技能资格获得时间 XJDGZ LIKE ZHRT9005JDGZ-TEXT, \"现技能等级工种 XGDJ LIKE ZHRT9005ZGDJ-TEXT, \"现技能等级
XZGHDSJ LIKE P9005-ZZGHDSJ, \"现技能资格获得时间
ZZYJSMC LIKE ZHRT9007ZWMC-TEXT, \"专业技术名称(最高等级) ZZYJSXL LIKE ZHRT9007ZWXL-TEXT, \"专业技术系列(最高等级) ZZYJSDJ LIKE ZHRT9007ZWDJ-TEXT, \"专业技术等级(最高等级)
ZZYBEDA LIKE P9007-BEGDA, \"专业技术资格获取时间(最高) XZYJSMC LIKE ZHRT9007ZWMC-TEXT, \"专业技术名称(现职称) XZYJSXL LIKE ZHRT9007ZWXL-TEXT, \"专业技术系列(现职称) XZYJSDJ LIKE ZHRT9007ZWDJ-TEXT, \"专业技术等级(现职称)
XZYBEDA LIKE P9007-BEGDA, \"专业技术资格获取时间(现职称) END OF TY_ALV.
DATA: IT_ALV TYPE STANDARD TABLE OF TY_ALV, WA_ALV TYPE TY_ALV.
*&---------------------------------------------------------------------* *& 定义变量
*&---------------------------------------------------------------------* * ALV所用变量定义
DATA: G_FIELDCAT TYPE LVC_T_FCAT WITH HEADER LINE, \"字段内表 L_LAYOUT TYPE LVC_S_LAYO, \"ALV布局 WA_EXCLUDE TYPE SLIS_EXTAB , IT_EXCLUDE TYPE SLIS_T_EXTAB ,
L_REPID LIKE SY-REPID VALUE SY-REPID, L_GRID_SETTINGS TYPE LVC_S_GLAY, LT_EVENTS TYPE SLIS_T_EVENT.
DATA: LR_GRID TYPE REF TO CL_GUI_ALV_GRID. DATA: W_NUM TYPE I, G_DATE TYPE DATS,
W_TRFAR LIKE PA0008-TRFAR, W_TRFGB LIKE PA0008-TRFGB, W_TRFGR LIKE PA0008-TRFGR, W_ENDDA LIKE PA0008-ENDDA.
*&---------------------------------------------------------------------* *& INITIALIZATION
*&---------------------------------------------------------------------* INITIALIZATION. REFRESH: IT_ALV,
G_FIELDCAT[]. CLEAR: WA_ALV, W_NUM.
*&---------------------------------------------------------------------* *& START-OF-SELECTION
第 9 页,共 23 页
四川电力ERP实施项目 自定义开发程序技术说明书
*&---------------------------------------------------------------------* START-OF-SELECTION. * 使用逻辑数据库 GET PERNR.
IF PN-ENDDA > P0000-ENDDA. G_DATE = P0000-ENDDA. ELSE.
G_DATE = PN-ENDDA. ENDIF.
RP-PROVIDE-FROM-LAST P0000 SPACE PN-BEGDA G_DATE. RP-PROVIDE-FROM-LAST P0001 SPACE PN-BEGDA G_DATE. RP-PROVIDE-FROM-LAST P0002 SPACE PN-BEGDA G_DATE. RP-PROVIDE-FROM-LAST P0022 SPACE PN-BEGDA G_DATE. RP-PROVIDE-FROM-LAST P0529 SPACE PN-BEGDA G_DATE. RP-PROVIDE-FROM-LAST P0534 SPACE PN-BEGDA G_DATE. RP-PROVIDE-FROM-LAST P0185 SPACE PN-BEGDA G_DATE. RP-PROVIDE-FROM-LAST P9005 SPACE PN-BEGDA G_DATE. RP-PROVIDE-FROM-LAST P9007 SPACE PN-BEGDA G_DATE.
* 取人员数据
PERFORM FRM_GETDATA.
*&---------------------------------------------------------------------* *& END-OF-SELECTION
*&---------------------------------------------------------------------* END-OF-SELECTION.
IF IT_ALV IS INITIAL.
MESSAGE S000 WITH '无人员调动数据存在,请重新输入!'. EXIT. ENDIF.
* 显示数据
PERFORM FRM_DISPLAY_DATA.
*&---------------------------------------------------------------------* *& Form FRM_GETDATA
*&---------------------------------------------------------------------* * 取人员数据
*----------------------------------------------------------------------* * --> p1 text * <-- p2 text
*----------------------------------------------------------------------* FORM FRM_GETDATA.
W_NUM = W_NUM + 1. * 流水号
WA_ALV-NUM = W_NUM. * 计数列
WA_ALV-CTCOM = 1. * 人员编号
WA_ALV-PERNR = P0000-PERNR. * 姓名
WA_ALV-ENAME = P0001-ENAME. * 所属单位
PERFORM FRM_GET_SSDW USING P0001-ORGEH G_DATE CHANGING WA_ALV-SSDW. * 所属部门 部门类别
PERFORM FRM_GET_SSBM USING P0001-ORGEH G_DATE CHANGING WA_ALV-SSBM
第 10 页,共 23 页
四川电力ERP实施项目 自定义开发程序技术说明书
WA_ALV-BMLB.
* 所属组织
SELECT SINGLE STEXT FROM HRP1000
INTO WA_ALV-SSZZ WHERE OTYPE = 'O'
AND OBJID = P0001-ORGEH AND BEGDA <= G_DATE AND ENDDA >= G_DATE.
* 职位
SELECT SINGLE STEXT FROM HRP1000 INTO WA_ALV-ZW WHERE OTYPE = 'S'
AND OBJID = P0001-PLANS AND BEGDA <= G_DATE AND ENDDA >= G_DATE.
* 职务
SELECT SINGLE STEXT FROM HRP1000 INTO WA_ALV-ZWU WHERE OTYPE = 'C'
AND OBJID = P0001-STELL AND BEGDA <= G_DATE AND ENDDA >= G_DATE.
* 职务职级
SELECT SINGLE ZTEXT FROM ZHR_ZWZJ INTO WA_ALV-ZWZJ
WHERE ZZHR_ZWZJ = P0001-ZZHR_ZWZJ.
* 取P0008里面放一条在屏幕输入时间内的最新的数据 CLEAR: W_ENDDA, W_TRFAR, W_TRFGB, W_TRFGR.
SELECT ENDDA TRFAR TRFGB TRFGR
INTO (W_ENDDA, W_TRFAR, W_TRFGB, W_TRFGR) UP TO 1 ROWS FROM PA0008
WHERE PERNR = P0001-PERNR AND BEGDA >= PN-BEGDA AND ENDDA <= G_DATE
ORDER BY ENDDA DESCENDING. ENDSELECT.
* 岗级
IF ( W_TRFAR = '03' OR W_TRFAR = '04' ) AND ( W_TRFGB = '01' OR W_TRFGB = '02'
第 11 页,共 23 页
四川电力ERP实施项目 自定义开发程序技术说明书
OR W_TRFGB = '07' ). CLEAR WA_ALV-TRFGR. ELSE.
WA_ALV-TRFGR = W_TRFGR. ENDIF.
* 岗位类别
SELECT SINGLE ZTEXT INTO WA_ALV-GWLB FROM ZHR_GWFN
INNER JOIN HRP9201
ON HRP9201~ZZHR_GWFN = ZHR_GWFN~ZZHR_GWFN WHERE HRP9201~OBJID = P0001-PLANS AND HRP9201~BEGDA <= G_DATE AND HRP9201~ENDDA >= G_DATE.
* 人事范围
SELECT SINGLE NAME1 FROM T500P
INTO WA_ALV-RSFW
WHERE PERSA = P0001-WERKS.
* 人事子范围
SELECT SINGLE BTEXT FROM T001P
INTO WA_ALV-RSZFW
WHERE BTRTL = P0001-BTRTL.
* 员工组
SELECT SINGLE PTEXT FROM T501T
INTO WA_ALV-YGZ WHERE SPRSL = 1
AND PERSG = P0001-PERSG.
* 员工子组
SELECT SINGLE PTEXT FROM T503T
INTO WA_ALV-YGZZ WHERE SPRSL = 1
AND PERSK = P0001-PERSK.
* 工资范围
SELECT SINGLE ATEXT FROM T549T
INTO WA_ALV-GGFW WHERE SPRSL = 1
AND ABKRS = P0001-ABKRS.
* 人员类别
SELECT SINGLE ZTEXT FROM ZHR_RYLB INTO WA_ALV-RYLB
WHERE ZZHR_RYLB = P0001-ZZHR_RYLB.
* 人员状态
SELECT SINGLE ZTEXT FROM ZHR_RYZT INTO WA_ALV-RYZT
WHERE ZZHR_RYZT = P0001-ZZHR_RYZT.
第 12 页,共 23 页
四川电力ERP实施项目 自定义开发程序技术说明书
* 岗位状态
SELECT SINGLE ZTEXT FROM ZHR_GWZT INTO WA_ALV-GWZT
WHERE ZZHR_GWZT = P0001-ZZHR_GWZT.
* 用工形式
SELECT SINGLE ATX FROM T542T
INTO WA_ALV-YGXS WHERE SPRAS = 1 AND MOLGA = '28'
AND ANSVH = P0001-ANSVH.
* 出生日期
WA_ALV-GBDAT = P0002-GBDAT. * 年龄
WA_ALV-AGE = SY-DATUM(4) - WA_ALV-GBDAT(4). IF SY-DATUM+4(2) < WA_ALV-GBDAT+4(2). WA_ALV-AGE = WA_ALV-AGE - 1. ENDIF.
* 性别
IF P0002-GESCH = 1. WA_ALV-GESCH = '男'. ELSEIF P0002-GESCH = 2. WA_ALV-GESCH = '女'. ENDIF.
* 民族
SELECT SINGLE LTEXT INTO WA_ALV-MZ FROM T505S
WHERE SPRSL = '1' AND MOLGA = '28'
AND RACKY = P0529-RACKY.
* 籍贯
WA_ALV-ZZHR_JG = P0002-ZZHR_JG. * 政治面貌
SELECT SINGLE PTEXT INTO WA_ALV-ZZMM FROM T7CN5R WHERE LANGU = 1
AND PCODE = P0534-PCODE.
* 删掉非屏幕选择期间的数据、
DELETE P0534[] WHERE BEGDA > G_DATE. DELETE P0022[] WHERE BEGDA > G_DATE. DELETE P9005[] WHERE BEGDA > G_DATE. DELETE P9007[] WHERE BEGDA > G_DATE.
* 入党时间
READ TABLE P0534 WITH KEY PCODE = '01'. IF SY-SUBRC = 0.
WA_ALV-RDSJ = P0534-BEGDA. ENDIF.
* 身份证号
WA_ALV-ICNUM = P0185-ICNUM.
第 13 页,共 23 页
四川电力ERP实施项目 自定义开发程序技术说明书
* 参加工作时间
WA_ALV-CGRQ = P0002-ZZHR_CGRQ. * 工龄起算日期
WA_ALV-GLQS = P0002-ZZHR_GLQS. * 工龄
WA_ALV-GL = SY-DATUM(4) - WA_ALV-GLQS(4). * 进入电力行业时间
WA_ALV-DLHY = P0002-ZZHR_DLHY. * 进入本单位工作时间
WA_ALV-BDW = P0002-ZZHR_BDW.
* 参工学历
CLEAR P0022.
READ TABLE P0022 WITH KEY ZZHR_CGXL = '是'. * 参工学历入学时间
WA_ALV-BEGDA1 = P0022-BEGDA. * 参工学历毕业时间
WA_ALV-ENDDA1 = P0022-ENDDA. * 参工学历毕业院校
WA_ALV-INSTI1 = P0022-INSTI.
* 参工学历
SELECT SINGLE STEXT INTO WA_ALV-CGXL1 FROM T519T
WHERE SPRSL = 1
AND SLABS = P0022-SLABS.
* 参工学历所学专业
SELECT SINGLE ZTEXT INTO WA_ALV-SXZY1 FROM ZHR_SXZY
WHERE ZZHR_SXZY = P0022-ZZHR_SXZY. IF WA_ALV-SXZY1 IS INITIAL.
WA_ALV-SXZY1 = P0022-ZZHR_SXZYMC. ENDIF.
* 中间学历
CLEAR P0022.
READ TABLE P0022 WITH KEY ZZHR_ZJXL = '是'. * 中间学历入学时间
WA_ALV-BEGDA2 = P0022-BEGDA. * 中间学历毕业时间
WA_ALV-ENDDA2 = P0022-ENDDA. * 中间学历毕业院校
WA_ALV-INSTI2 = P0022-INSTI.
* 中间学历
SELECT SINGLE STEXT INTO WA_ALV-CGXL2 FROM T519T
WHERE SPRSL = 1
AND SLABS = P0022-SLABS.
* 中间学历所学专业
SELECT SINGLE ZTEXT INTO WA_ALV-SXZY2 FROM ZHR_SXZY
WHERE ZZHR_SXZY = P0022-ZZHR_SXZY. IF WA_ALV-SXZY2 IS INITIAL.
第 14 页,共 23 页
四川电力ERP实施项目 自定义开发程序技术说明书
WA_ALV-SXZY2 = P0022-ZZHR_SXZYMC. ENDIF.
* 最高学历
CLEAR P0022.
READ TABLE P0022 WITH KEY ZZHR_ZGXL = '是'. * 最高学历入学时间
WA_ALV-BEGDA3 = P0022-BEGDA. * 最高学历毕业时间
WA_ALV-ENDDA3 = P0022-ENDDA. * 最高学历毕业院校
WA_ALV-INSTI3 = P0022-INSTI. * 最高学历
SELECT SINGLE STEXT INTO WA_ALV-CGXL3 FROM T519T
WHERE SPRSL = 1
AND SLABS = P0022-SLABS.
* 最高学历所学专业
SELECT SINGLE ZTEXT INTO WA_ALV-SXZY3 FROM ZHR_SXZY
WHERE ZZHR_SXZY = P0022-ZZHR_SXZY. IF WA_ALV-SXZY3 IS INITIAL.
WA_ALV-SXZY3 = P0022-ZZHR_SXZYMC. ENDIF.
* 最高技能等级工种 CLEAR P9005.
READ TABLE P9005 WITH KEY ZJNZGDJ = '是'.
SELECT SINGLE TEXT INTO WA_ALV-ZJDGZ FROM ZHRT9005JDGZ
WHERE ZJDGZ = P9005-ZJDGZ.
* 最高技能等级
SELECT SINGLE TEXT INTO WA_ALV-ZGDJ FROM ZHRT9005ZGDJ
WHERE ZZGDJ = P9005-ZZGDJ.
* 最高技能资格获得时间
WA_ALV-ZZGHDSJ = P9005-ZZGHDSJ.
* 现技能等级工种 CLEAR P9005.
READ TABLE P9005 WITH KEY ZSFXJN = '是'.
SELECT SINGLE TEXT INTO WA_ALV-XJDGZ FROM ZHRT9005JDGZ
WHERE ZJDGZ = P9005-ZJDGZ.
* 现技能等级
SELECT SINGLE TEXT INTO WA_ALV-XGDJ FROM ZHRT9005ZGDJ
WHERE ZZGDJ = P9005-ZZGDJ.
第 15 页,共 23 页
四川电力ERP实施项目 自定义开发程序技术说明书
* 现技能资格获得时间
WA_ALV-XZGHDSJ = P9005-ZZGHDSJ.
* 专业技术名称(最高等级) CLEAR P9007.
READ TABLE P9007 WITH KEY ZJFZGDJBS = '是'.
SELECT SINGLE TEXT INTO WA_ALV-ZZYJSMC FROM ZHRT9007ZWMC
WHERE ZZYJSZWMC = P9007-ZZYJSZWMC.
* 专业技术系列(最高等级) SELECT SINGLE TEXT
INTO WA_ALV-ZZYJSXL FROM ZHRT9007ZWXL
WHERE ZZYJSZWXL = P9007-ZZYJSZWXL.
* 专业技术等级(最高等级) SELECT SINGLE TEXT
INTO WA_ALV-ZZYJSDJ FROM ZHRT9007ZWDJ
WHERE ZZYJSZWDJ = P9007-ZZYJSZWDJ.
* 专业技术资格获取时间(最高等级) WA_ALV-ZZYBEDA = P9007-BEGDA.
* 专业技术名称(现职称) CLEAR P9007.
READ TABLE P9007 WITH KEY ZSFXZC = '是'.
SELECT SINGLE TEXT INTO WA_ALV-XZYJSMC FROM ZHRT9007ZWMC
WHERE ZZYJSZWMC = P9007-ZZYJSZWMC.
* 专业技术系列(现职称) SELECT SINGLE TEXT
INTO WA_ALV-XZYJSXL FROM ZHRT9007ZWXL
WHERE ZZYJSZWXL = P9007-ZZYJSZWXL.
* 专业技术等级(现职称) SELECT SINGLE TEXT
INTO WA_ALV-XZYJSDJ FROM ZHRT9007ZWDJ
WHERE ZZYJSZWDJ = P9007-ZZYJSZWDJ.
* 专业技术资格获取时间(最高等级) WA_ALV-XZYBEDA = P9007-BEGDA.
APPEND WA_ALV TO IT_ALV. CLEAR WA_ALV.
ENDFORM. \" FRM_GETDATA
*&---------------------------------------------------------------------* *& Form FRM_GET_ORGEHDESC
*&---------------------------------------------------------------------* * text
*----------------------------------------------------------------------* * --> p1 text
第 16 页,共 23 页
四川电力ERP实施项目 自定义开发程序技术说明书
* <-- p2 text
*----------------------------------------------------------------------* FORM FRM_GET_SSDW USING P_ORGEH TYPE P0001-ORGEH P_DATE TYPE P0001-BEGDA
CHANGING P_ORGEH_DESC TYPE HRP1000-STEXT. DATA: L_SOBID TYPE SOBID.
DATA: L_ABTEL LIKE HRP1003-ABTEL. DATA: L_POBID TYPE SOBID. DATA: LD TYPE DATS. CLEAR L_SOBID.
L_POBID = P_ORGEH. L_SOBID = L_POBID.
SELECT SINGLE ABTEL INTO L_ABTEL
FROM HRP1003 WHERE HRP1003~OBJID = L_POBID AND HRP1003~BEGDA <= P_DATE AND HRP1003~ENDDA >= P_DATE.
WHILE ( L_ABTEL <> 'X' ). L_SOBID = L_POBID.
SELECT SINGLE SOBID INTO L_POBID FROM HRP1001
WHERE HRP1001~OBJID = L_POBID AND HRP1001~RSIGN = 'A' AND HRP1001~RELAT = '002' AND HRP1001~BEGDA <= P_DATE AND HRP1001~ENDDA >= P_DATE.
IF SY-SUBRC <> 0. CLEAR: L_ABTEL. EXIT. ENDIF.
SELECT SINGLE ABTEL INTO L_ABTEL
FROM HRP1003 WHERE HRP1003~OBJID = L_POBID AND BEGDA <= P_DATE AND ENDDA >= P_DATE. ENDWHILE.
SELECT SINGLE STEXT INTO P_ORGEH_DESC
FROM HRP1000 WHERE HRP1000~OBJID = L_POBID AND HRP1000~OTYPE = 'O'
AND HRP1000~BEGDA <= P_DATE AND HRP1000~ENDDA >= P_DATE. ENDFORM. \" FRM_GET_SSDW
*&---------------------------------------------------------------------* *& Form FRM_DISPLAY_DATA
*&---------------------------------------------------------------------* * text
*----------------------------------------------------------------------* * --> p1 text * <-- p2 text
*----------------------------------------------------------------------* FORM FRM_DISPLAY_DATA . * 定义ALV表单的相关格式、属性 PERFORM FRM_BUILD_LAYOUT. * 定义表单中各个列的信息
PERFORM FRM_BUILD_FIELDS. * 显示数据
PERFORM FRM_DISPLAY_ALV.
第 17 页,共 23 页
四川电力ERP实施项目 自定义开发程序技术说明书
ENDFORM. \" FRM_DISPLAY_DATA
*&---------------------------------------------------------------------* *& Form FRM_GET_SSBM
*&---------------------------------------------------------------------* * text
*----------------------------------------------------------------------* * -->P_P0001_ORGEH text * -->P_G_DATE text
* <--P_WA_ALV_SSBM text
*----------------------------------------------------------------------* FORM FRM_GET_SSBM USING P_ORGEH TYPE P0001-ORGEH P_DATE TYPE P0001-BEGDA
CHANGING P_ORGEH_DESC TYPE HRP1000-STEXT P_BMLB TYPE ZHR_BMLB-ZTEXT. DATA: L_SOBID TYPE SOBID.
DATA: L_ABTEL LIKE HRP1003-ABTEL. DATA: L_POBID TYPE SOBID. DATA: LD TYPE DATS. CLEAR: L_SOBID.
L_POBID = P_ORGEH. L_SOBID = L_POBID.
SELECT SINGLE ABTEL INTO L_ABTEL
FROM HRP1003 WHERE HRP1003~OBJID = L_POBID AND HRP1003~BEGDA <= P_DATE AND HRP1003~ENDDA >= P_DATE.
WHILE ( L_ABTEL <> 'X' ). L_SOBID = L_POBID.
SELECT SINGLE SOBID INTO L_POBID FROM HRP1001
WHERE HRP1001~OBJID = L_POBID AND HRP1001~RSIGN = 'A' AND HRP1001~RELAT = '002' AND HRP1001~BEGDA <= P_DATE AND HRP1001~ENDDA >= P_DATE.
IF SY-SUBRC <> 0. CLEAR: L_ABTEL. EXIT. ENDIF.
SELECT SINGLE ABTEL INTO L_ABTEL
FROM HRP1003 WHERE HRP1003~OBJID = L_POBID AND BEGDA <= P_DATE AND ENDDA >= P_DATE. ENDWHILE. * 取所属部门
SELECT SINGLE STEXT INTO P_ORGEH_DESC
FROM HRP1000 WHERE HRP1000~OBJID = L_SOBID AND HRP1000~OTYPE = 'O'
AND HRP1000~BEGDA <= P_DATE AND HRP1000~ENDDA >= P_DATE.
* 取部门类别
CHECK L_SOBID IS NOT INITIAL.
SELECT SINGLE ZTEXT INTO P_BMLB
第 18 页,共 23 页
四川电力ERP实施项目 自定义开发程序技术说明书
FROM ZHR_BMLB
INNER JOIN HRP9103
ON HRP9103~ZZHR_BMLB = ZHR_BMLB~ZZHR_BMNB WHERE HRP9103~OBJID = L_SOBID AND HRP9103~BEGDA <= P_DATE AND HRP9103~ENDDA >= P_DATE.
ENDFORM. \" FRM_GET_SSBM
*&---------------------------------------------------------------------* *& Form FRM_BUILD_LAYOUT
*&---------------------------------------------------------------------* * 定义ALV表单的相关格式、属性
*----------------------------------------------------------------------* * --> p1 text * <-- p2 text
*----------------------------------------------------------------------* FORM FRM_BUILD_LAYOUT .
L_LAYOUT-CWIDTH_OPT = 'X'.
L_LAYOUT-BOX_FNAME = 'SELBOX'. L_LAYOUT-ZEBRA = 'X'.
L_LAYOUT-EXCP_CONDS = 'X'. \"以特殊颜色显示汇总 * L_LAYOUT-NO_ROWMARK = 'X'. * L_LAYOUT-NO_MERGING ='X'. * L_LAYOUT-SGL_CLK_HD = 'X'. L_LAYOUT-SEL_MODE = 'A'.
L_LAYOUT-INFO_FNAME = 'LN_COLOR'.
ENDFORM. \" FRM_BUILD_LAYOUT
*&---------------------------------------------------------------------* *& Form FRM_BUILD_FIELDS
*&---------------------------------------------------------------------* * 定义表单中各个列的信息
*----------------------------------------------------------------------* * --> p1 text * <-- p2 text
*----------------------------------------------------------------------* FORM FRM_BUILD_FIELDS .
PERFORM FRM_G_FIELDCAT USING 'NUM' '流水号' ''. PERFORM FRM_G_FIELDCAT USING 'CTCOM' '计数列' ''. PERFORM FRM_G_FIELDCAT USING 'PERNR' '人员编号' ''. PERFORM FRM_G_FIELDCAT USING 'ENAME' '姓名' ''. PERFORM FRM_G_FIELDCAT USING 'SSDW' '所属单位' ''. PERFORM FRM_G_FIELDCAT USING 'SSBM' '所属部门' ''. PERFORM FRM_G_FIELDCAT USING 'BMLB' '部门类别' ''. PERFORM FRM_G_FIELDCAT USING 'SSZZ' '所属组织' ''. PERFORM FRM_G_FIELDCAT USING 'ZW' '职位' ''. PERFORM FRM_G_FIELDCAT USING 'ZWU' '职务' ''. PERFORM FRM_G_FIELDCAT USING 'ZWZJ' '职务职级' ''. PERFORM FRM_G_FIELDCAT USING 'TRFGR' '岗级' ''. PERFORM FRM_G_FIELDCAT USING 'GWLB' '岗位类别' ''. PERFORM FRM_G_FIELDCAT USING 'RSFW' '人事范围' ''. PERFORM FRM_G_FIELDCAT USING 'RSZFW' '人事子范围' ''. PERFORM FRM_G_FIELDCAT USING 'YGZ' '员工组' ''. PERFORM FRM_G_FIELDCAT USING 'YGZZ' '员工子组' ''. PERFORM FRM_G_FIELDCAT USING 'GGFW' '工资范围' ''. PERFORM FRM_G_FIELDCAT USING 'RYLB' '人员类别' ''. PERFORM FRM_G_FIELDCAT USING 'RYZT' '人员状态' ''. PERFORM FRM_G_FIELDCAT USING 'GWZT' '岗位状态' ''. PERFORM FRM_G_FIELDCAT USING 'YGXS' '用工形式' ''. PERFORM FRM_G_FIELDCAT USING 'GBDAT' '出生日期' ''.
第 19 页,共 23 页
四川电力ERP实施项目 自定义开发程序技术说明书
PERFORM FRM_G_FIELDCAT USING 'AGE' '年龄' ''. PERFORM FRM_G_FIELDCAT USING 'GESCH' '性别' ''. PERFORM FRM_G_FIELDCAT USING 'MZ' '民族' ''. PERFORM FRM_G_FIELDCAT USING 'ZZHR_JG' '籍贯' ''. PERFORM FRM_G_FIELDCAT USING 'ZZMM' '政治面貌' ''. PERFORM FRM_G_FIELDCAT USING 'RDSJ' '入党时间' ''. PERFORM FRM_G_FIELDCAT USING 'ICNUM' '身份证号' ''.
PERFORM FRM_G_FIELDCAT USING 'CGRQ' '参加工作时间' ''. PERFORM FRM_G_FIELDCAT USING 'GLQS' '工龄起算日期' ''. PERFORM FRM_G_FIELDCAT USING 'GL' '工龄' ''.
PERFORM FRM_G_FIELDCAT USING 'DLHY' '进入电力行业时间' ''. PERFORM FRM_G_FIELDCAT USING 'BDW' '进入本单位工作时间' ''. PERFORM FRM_G_FIELDCAT USING 'BEGDA1' '参工学历入学时间' ''. PERFORM FRM_G_FIELDCAT USING 'ENDDA1' '参工学历毕业时间' ''. PERFORM FRM_G_FIELDCAT USING 'CGXL1' '参工学历' ''.
PERFORM FRM_G_FIELDCAT USING 'SXZY1' '参工学历所学专业' ''. PERFORM FRM_G_FIELDCAT USING 'INSTI1' '参工学历毕业院校' ''. PERFORM FRM_G_FIELDCAT USING 'BEGDA2' '中间学历入学时间' ''. PERFORM FRM_G_FIELDCAT USING 'ENDDA2' '中间学历毕业时间' ''. PERFORM FRM_G_FIELDCAT USING 'CGXL2' '中间学历' ''.
PERFORM FRM_G_FIELDCAT USING 'SXZY2' '中间学历所学专业' ''. PERFORM FRM_G_FIELDCAT USING 'INSTI2' '中间学历毕业院校' ''. PERFORM FRM_G_FIELDCAT USING 'BEGDA3' '最高学历入学时间' ''. PERFORM FRM_G_FIELDCAT USING 'ENDDA3' '最高学历毕业时间' ''. PERFORM FRM_G_FIELDCAT USING 'CGXL3' '最高学历' ''.
PERFORM FRM_G_FIELDCAT USING 'SXZY3' '最高学历所学专业' ''. PERFORM FRM_G_FIELDCAT USING 'INSTI3' '最高学历毕业院校' ''. PERFORM FRM_G_FIELDCAT USING 'ZJDGZ' '最高技能等级工种' ''. PERFORM FRM_G_FIELDCAT USING 'ZGDJ' '最高技能等级' ''.
PERFORM FRM_G_FIELDCAT USING 'ZZGHDSJ' '最高技能资格获得时间' ''. PERFORM FRM_G_FIELDCAT USING 'XJDGZ' '现技能等级工种' ''. PERFORM FRM_G_FIELDCAT USING 'XGDJ' '现技能等级' ''.
PERFORM FRM_G_FIELDCAT USING 'XZGHDSJ' '现技能资格获得时间' ''.
PERFORM FRM_G_FIELDCAT USING 'ZZYJSMC' '专业技术名称(最高等级)' ''. PERFORM FRM_G_FIELDCAT USING 'ZZYJSXL' '专业技术系列(最高等级)' ''. PERFORM FRM_G_FIELDCAT USING 'ZZYJSDJ' '专业技术等级(最高等级)' ''. PERFORM FRM_G_FIELDCAT USING 'ZZYBEDA'
'专业技术资格获取时间(最高等级)' ''. PERFORM FRM_G_FIELDCAT USING 'XZYJSMC' '专业技术名称(现职称)' ''. PERFORM FRM_G_FIELDCAT USING 'XZYJSXL' '专业技术系列(现职称)' ''. PERFORM FRM_G_FIELDCAT USING 'XZYJSDJ' '专业技术等级(现职称)' ''. PERFORM FRM_G_FIELDCAT USING 'XZYBEDA'
'专业技术资格获取时间(现职称)' ''. ENDFORM. \" FRM_BUILD_FIELDS
*&---------------------------------------------------------------------* *& Form FRM_G_FIELDCAT
*&---------------------------------------------------------------------* * 打印数据
*----------------------------------------------------------------------* * -->P_FIELDNAME text * -->P_REPTEXT_DDIC text
*----------------------------------------------------------------------* FORM FRM_G_FIELDCAT USING P_FIELDNAME TYPE SLIS_FIELDNAME P_REPTEXT_DDIC LIKE DD03P-REPTEXT P_SUM . CLEAR G_FIELDCAT.
第 20 页,共 23 页
四川电力ERP实施项目 自定义开发程序技术说明书
G_FIELDCAT-FIELDNAME = P_FIELDNAME . G_FIELDCAT-COLTEXT = P_REPTEXT_DDIC . G_FIELDCAT-DO_SUM = P_SUM. IF P_FIELDNAME = 'SELBOX'. G_FIELDCAT-CHECKBOX = 'X'. G_FIELDCAT-EDIT = 'X'. ENDIF.
APPEND G_FIELDCAT .
ENDFORM . \"FRM_G_FIELDCAT
*&---------------------------------------------------------------------* *& Form FRM_DISPLAY_ALV
*&---------------------------------------------------------------------* * text
*----------------------------------------------------------------------* * --> p1 text * <-- p2 text
*----------------------------------------------------------------------* FORM FRM_DISPLAY_ALV .
DELETE IT_ALV WHERE PERNR IS INITIAL.
PERFORM FRM_INIT_SUBWIN.
L_GRID_SETTINGS-EDT_CLL_CB = 'X'. \"回调参数,ALV->内表 CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY_LVC' EXPORTING
I_CALLBACK_PROGRAM = L_REPID
I_CALLBACK_PF_STATUS_SET = 'FRM_SET_STATUS' I_CALLBACK_USER_COMMAND = 'FRM_USER_COMMAND' I_CALLBACK_HTML_TOP_OF_PAGE = 'ALV_TOP_OF_PAGE'
I_GRID_SETTINGS = L_GRID_SETTINGS\"回调参数ALV->内表 IS_LAYOUT_LVC = L_LAYOUT
IT_FIELDCAT_LVC = G_FIELDCAT[] IT_EXCLUDING = IT_EXCLUDE I_SAVE = 'X'
IT_EVENTS = LT_EVENTS I_HTML_HEIGHT_TOP = 10 TABLES
T_OUTTAB = IT_ALV
.
IF SY-SUBRC <> 0. ENDIF.
ENDFORM. \" FRM_DISPLAY_ALV
*&---------------------------------------------------------------------* *& Form FRM_INIT_SUBWIN
*&---------------------------------------------------------------------* * text
*----------------------------------------------------------------------* * --> p1 text * <-- p2 text
*----------------------------------------------------------------------* FORM FRM_INIT_SUBWIN .
DATA: LS_FCAT1 TYPE LVC_S_FCAT, LT_FCAT1 TYPE LVC_T_FCAT, LS_LAYOUT1 TYPE LVC_S_LAYO. CLEAR LS_FCAT1. CLEAR LT_FCAT1[].
LS_FCAT1-FIELDNAME = 'COLUMNTEXT'.
LS_FCAT1-REF_TABLE = 'LVC_S_DETA'. \"Y6DK043061 LS_FCAT1-KEY = 'X'.
LS_FCAT1-SELTEXT = 'Spalte'(102). LS_FCAT1-SCRTEXT_S = 'Spalte'(102). LS_FCAT1-OUTPUTLEN = 30.
第 21 页,共 23 页
四川电力ERP实施项目 自定义开发程序技术说明书
APPEND LS_FCAT1 TO LT_FCAT1. CLEAR LS_FCAT1.
LS_FCAT1-FIELDNAME = 'VALUE'.
LS_FCAT1-REF_TABLE = 'LVC_S_DETA'. \"Y6DK043061 LS_FCAT1-SELTEXT = 'Inhalt'(103). LS_FCAT1-SCRTEXT_S = 'Inhalt'(103). LS_FCAT1-OUTPUTLEN = 20.
APPEND LS_FCAT1 TO LT_FCAT1.
LS_LAYOUT1-NO_TOOLBAR = 'X'.
ENDFORM. \" FRM_INIT_SUBWIN
*&---------------------------------------------------------------------* *& Form FRM_SET_STATUS
*&---------------------------------------------------------------------* * text
*----------------------------------------------------------------------* * -->RT_EXTAB text
*----------------------------------------------------------------------* FORM FRM_SET_STATUS USING RT_EXTAB TYPE SLIS_T_EXTAB. CLEAR: RT_EXTAB. REFRESH: RT_EXTAB.
SET PF-STATUS 'STANDARD' EXCLUDING RT_EXTAB. ENDFORM. \"FRM_SET_STATUS
*&---------------------------------------------------------------------* *& Form alv_top_of_page
*&---------------------------------------------------------------------* * text
*----------------------------------------------------------------------* * -->CL_DD text
*----------------------------------------------------------------------* FORM ALV_TOP_OF_PAGE USING CL_DD TYPE REF TO CL_DD_DOCUMENT. DATA: M_P TYPE I.
DATA: M_BUFF TYPE STRING.
M_BUFF = ''.
CALL METHOD CL_DD->HTML_INSERT EXPORTING
CONTENTS = M_BUFF CHANGING
POSITION = M_P.
M_BUFF = '
CONTENTS = M_BUFF CHANGING
POSITION = M_P.
M_BUFF = ''.
CALL METHOD CL_DD->HTML_INSERT EXPORTING
CONTENTS = M_BUFF CHANGING
POSITION = M_P.
ENDFORM . \"alv_top_of_page
*---------------------------------------------------------------------* * FORM USER_COMMAND * *---------------------------------------------------------------------*
第 22 页,共 23 页
四川电力ERP实施项目 自定义开发程序技术说明书
* 鼠标事件 * *---------------------------------------------------------------------* * --> UCOM * * --> SELFD * *---------------------------------------------------------------------* FORM FRM_USER_COMMAND USING UCOM LIKE SY-UCOMM SELFD TYPE SLIS_SELFIELD. DATA: W_ANSWER TYPE C.
IF LR_GRID IS INITIAL.
CALL FUNCTION 'GET_GLOBALS_FROM_SLVC_FULLSCR' IMPORTING
E_GRID = LR_GRID. ENDIF.
CASE UCOM.
WHEN 'BACK' OR '%EX' OR 'RW'. LEAVE PROGRAM. WHEN OTHERS. ENDCASE.
\"------------同步内表和ALV-------------------------------- CALL METHOD LR_GRID->CHECK_CHANGED_DATA.
SELFD-REFRESH = 'X' . \"内表->ALV刷新 ENDFORM. \"USER_COMMAND
第 23 页,共 23 页
因篇幅问题不能全部显示,请点此查看更多更全内容
Copyright © 2019- obuygou.com 版权所有 赣ICP备2024042798号-5
违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com
本站由北京市万商天勤律师事务所王兴未律师提供法律服务