SAP HR模块报表开发

合集下载

SAP+HR模块常用的表(供参考)

SAP+HR模块常用的表(供参考)

SAP HR模块用的表所有职员的管理table是以PA打头并有相应的infotype加在其后的.所有职员的development/OM table是以HRP打头并有相应的infotype加在其后的.所有招聘的人员的表是以PB打头,并以相应的infotype号结尾的.同样,有HRA,HPD,HRT等等打头的表也是HR里的, 有一种获取的方便方法, 事务'SE81'中,(在右边的树结构里,选择所有HR有关的modes, 点击工具栏上的'Information System'按纽, 在Abap Dictionary中选Basic Objs,双击'database tables', 输入'maximun no of hits'后执行.Use transaction se11...type in PA* do dropdown and enter, do the same for HRP* and you will have most of the HR transaparent Tables. To access them look for RP_read_* and RP_provide* in Table TRMAC to read a infotype or use the 'select' statement to access the Transparent table.Transaction SE16 (data browser) is also useful. As mentioned above, the PA infotype tables all begin with PA and are followed by the infotype number e.g. PA0001 for the Org Man infotype.用事务se11,输入PA*后按F4, 同样输入HRP*,你会看见大多HR用的transaparent Tables, 在表TRMAC中访问RP_read_*和RP_provide*打头的去读取一个infotype.或是用select语句访问这些表.PA* - PA infotype tablesPCL* - HR clustersPB* - recruitment tablesPCERT - payroll posting runsAnother useful table is CATSDB for CATS, and PTEX2000 for the CATS transfer table for infotype 2001/2002.The rest of the HR Tables are as follows:DD01L DomainsDD02L SAP tablesDD03L Table FieldsDD03T DD: Texts for fields (language dependent)DD04L Data elementsDD04T R/3 DD: Data element textsDD05S Foreign key fieldsDD06L Pool/cluster structuresDD20L Matchcode IdsDD24S Fields of a matchcode IDT000 ClientsT001 Company CodesT001E Company code-dependent address dataT001P Personnel Areas/SubareasT012 House banksT012K House bank accountsT012T House bank account namesT500L Personnel Country GroupingT500P Personnel AreasT500T Personnel Country GroupingsT501 Employee GroupT501T Employee Group NamesT502T Marital Status DesignatorsT503 Employee Groups / SubgroupsT503K Employee subgroupT503T Employee Subgroup NamesT504A Benefits - Default Values (NA)T504B Benefit Option Texts (North America)T504C Benefit Type (NA)T504D Benefit Credit Group AmountT504E Benefit AmountT504F Benefit CostsT508A Work Schedule RulesT508T Texts for Employee Subgroup Groupings for Work Schedules T510 Pay Scale GroupsT510A Pay Scale TypesT510F Assign Pay Scale > Time Unit, CurrencyT510G Pay Scale AreasT510H Payroll Constants with Regard to Time UnitT510I Standard Working HoursT510J Constant ValuationsT510L LevelsT510M Valuation of pay scale groups acc. to hiring dateT510N Pay Scales for Annual Salaries (NA)T510S Time Wage Type Selection RuleT510U Pay Scale GroupsT510Y Special Rules for Wage Type GenerationT511 Wage TypesT512R Cumulation Wage Types in FormsT512S Texts for Cumulation Wage Types in FormsT512T Wage Type TextsT512W Wage Type ValuationT512Z Permissibility of Wage Types per InfotypeT513 JobsT514S Table Name TextsT514T Field Name TextsT51D2 Wage Type ClassesT51D3 Reduction RulesT51D4 Cumulation RulesT527X Organizational UnitsT528B Positions - Work CentersT528C Wage Type CatalogT528T Position TextsT529A Personnel EventT529F Fast Data Entry for EventsT529T Personnel Event TextsT52BT Texts For HR ObjectsT52C0 Payroll SchemasT52C1 Payroll SchemasT52C2 Texts for Personnel Calculation SchemasT52C3 Texts for Personnel Calculation SchemasT52C5 Personnel Calculation RulesT52CC Schema DirectoryT52CD Schema DirectoryT52CE Directory of Personnel Calculation RulesT52CT Text ElementsT52CX Cross References via Generated SchemasT52D1 Valid Processing ClassesT52D2 Valid Values for Processing ClassesT52D3 Valid Evaluation ClassesT52D4 Permitted Values for Evaluation ClassesT52D5 Wage Type GroupsT52D6 Wage Type Group TextsT52D7 Assign Wage Types to Wage Type GroupsT52D8 Valid Processing Classes - TextsT52D9 Valid Values for Processing Classes - Texts T530 Reasons for EventsT530E Reasons for ChangesT530F Reasons for ChangesT530L Wage Types for Special PaymentsT530T Event Reason TextsT531 Deadline TypesT531S Deadline Type TextsT533 Leave TypesT533T Leave Type TextsT539A Default Wage Types for Basic PayT539J Base Wage Type ValuationT539R Events for Standard Wage MaintenanceT539S Wage Types for Standard Wage MaintenanceT548 Date TypesT548S Date ConversionT548T Date TypesT548Y Date TypesT549A Payroll AreasT549B Company FeaturesT549C Decision Trees for Features (Customers) T549D Feature DirectoryT549L Date modifiersT549M Monthly Assignment: Payroll PeriodT549N Period ModifiersT549O Text for date modifierT549P Valid Time Units for Payroll Accounting T549Q Payroll PeriodsT549R Period ParametersT549S Payroll date typesT549T Payroll AreasT549M Monthly Assignment: Payroll PeriodT549N Period ModifiersT549O Text for date modifierT549P Valid Time Units for Payroll Accounting T549Q Payroll PeriodsT549R Period ParametersT549S Payroll date typesT549T Payroll AreasT554S Absence and Attendance TypesT554T Absence and Attendance TextsT554V Defaults for Absence TypesT554Y Time Constraints in HR TIMET555A Time TypesT555B Time Type DesignationsT559A Working WeeksT559B Name of Working WeekT572F Event TextsT572G Allowed Values for EventsT572H Event Value TextsT582A InfotypesT582B Infotypes Which Are Created Automatically T582S Infotype TextsT582V Assignment of Infotypes to ViewsT582W Assigns Infotype View to Primary Infotype T582Z Control Table for PA Time ManagementT584A Checking Procedures - Infotype Assignment T588A Transaction CodesT588B Infotype MenusT588C Infotype Menus/Info GroupsT588D Infogroups for EventsT588J Screen Header DefinitionT588M Infotype Screen ControlT588N Screen Modification for Account Assignment BlockT588O Screen Modification for Assignment DataT588Q Screen types for fast entryT588R Selection Reports for Fast Data EntryT588S Screen Types for Fast EntryT588T Menu and Infogroup DesignationsT588V Business object typeT588W Event types for infotype operationsT588X Cust. composite definition of event types for IT operations T588Z Dynamic EventsT591A Subtype CharacteristicsT591B Time Constraints for Wage TypesT591S Subtype TextsT596F HR SubroutinesT596G Cumulation wage typesT596H _Cumulation wage type textsT596I Calculation rule for cumulation wage typesT596U Conversion TableT599B Report ClassesT599C Report ClassesT599D Report CategoriesT599F Report Classes - Select OptionsT777A Building AddressesT777T InfotypesT777Z Infotype Time ConstraintsT778T InfotypesT778U Subtypes。

SAP软件功能开发说明书如何编写-报表类

SAP软件功能开发说明书如何编写-报表类

SAP软件功能开发说明书如何编写(报表类功能开发说明)我们知道SAP项目实施和国内一些ERP软件的实施不太一样的地方,SAP实施顾问是分业务顾问和开发顾问的,他们各司其职,业务顾问只要精通业务不需要对开发非常熟悉,而开发顾问不需要非常熟悉业务,只要能按业务顾问的要求通过代码去实现某个功能就行。

因为业务顾问和开发顾问不是同一个人,那么他们之间应该如何沟通,才能保证顺畅和高效呢?当然不能靠口头去沟通,他们之间进行有效沟通的基本工具就功能开发说明书。

关于SAP的功能开发说明书应该如何编写,每个公司写法也不一样,有些公司要求比较简单,只要把你的功能需求用文字描述清楚就行了,剩下的就交给ABAP 程序员去搞定,但这样开发出来的东西,简单功能可能还好,稍微复杂一点,问题肯定非常多,而且后期也需要不断修改,并且很难澄清是那方面的问题,所以作为SAP业务顾问,写出一份逻辑清晰、表述合理的功能开发说明书,是必备的重要的技能之一。

因为经常有刚入行的业内朋友问我,有没有写功能开发说明书的教程之类的分享下,说实在的我真没见过这方面的官方标准教程,各大论坛也比较少这方面的内容,我本人曾经做过SAP ABAP开发和业务顾问两个角色,也看过不少世界500强、民企、国企的开发说明书,所以我想结合下我个人工作经验,介绍下SAP功能开发说明书一般应该如何写,希望对大家有点帮助,本文先介绍报表类开发说明书,因为报表类开发需求在项目中,应该至少占85%以上。

对于功能开发说明书来,各大公司和负责实施的咨询公司一般都有自己定义好基本格式(模板),在实际项目中,我们只需要按照既定的格式去写就行了,但无论哪个公司的模板,我认为一份合格完整功能开发说明书,一般至少需要包含这几个方面信息:基本信息,设计维护记录(修改日志),业务需求,功能设计、取数逻辑、用户签字这6大部分。

下面我就结合一个简单例子并使用某世界顶尖咨询公司的功能开发说明书的编写模板,全面介绍下功能开发说明书应该如何编写。

SAPHR模块报表开发

SAPHR模块报表开发

SAPHR模块报表开发SAP HR模块报表开发目录1. 概述 (3)2. HR开发介绍 (3)2.1 逻辑数据库介绍 (3)2.2 HR相关逻辑数据库 (4)2.2.1 PNP (4)2.2.2 PCH (5)2.3 逻辑数据库的选择屏幕 (6)2.3.1 PNP的选择屏幕 (6)2.3.2 PCH的选择屏幕 (10)3. HR报表开发 (12)3.1 HR相关数据库表 (12)3.2 常用函数和宏 (12)3.2.1 宏RP_PROVIDE_FROM_FRST和RP_PROVIDE_FROM_LAST (13)3.2.2 函数 RH_STRUC_GET (13)3.2.3 函数HR_READ_FOREIGN_OBJECT_TEXT (14)3.2.4 函数PYXX_READ_PAYROLL_RESULT (15)4. 其他 (17)4.1 PNP和PCH里的变量 (17)4.2 时间交叉 (17)4.3 权限检查 (18)1. 概述本文介绍了SAP HR模块报表开发的相关经验,结合本人参与项目所做的开发工作,汇总整理了一些在HR开发中需要注意的地方,并介绍了有用的小技巧。

相信本文对初级从事HR开发工作的相关人员有一定帮助。

因为笔者相关经验也在积累过程中,也许本文中会出现一些错误,还望见谅指正。

2. HR开发介绍HR 报表开发主要涉及到逻辑数据库的应用,相关的开发工作也主要围绕着逻辑数据库进行。

2.1 逻辑数据库介绍逻辑数据库则提供另一种选择数据的方式,可以代替SQL语句在数据库中提取数据,供程序操作。

因而,可以认为逻辑数据库是一种报表设计程序中的辅助工具,而不能将其误解为一种可进行数据存储的数据库。

SAP中提供多种类型的逻辑数据库,开发人员也可自行定义数据源。

Transaction Code: SE36或SLDB2.2 HR相关逻辑数据库HR报表开发主要是对逻辑数据库 PNP( PNPCE)和PCH的应用。

SAP报表开发指南

SAP报表开发指南

SAP报表开发指南目录1选择屏幕 (3)1.1屏幕输入命令 (3)1.2创建元素块 (12)1.3事件及其事件关键字 (15)1.4分页 (19)1.5通过窗口滚动窗口 (19)1.6按页滚动 (20)1.7列表中的颜色 (20)1.8交互式报表 (24)1.9次列表的页眉 (26)1.10列表中的消息 (26)1.11从程序中触发事件 (28)1.12从列表中读取行 (29)1.13在光标位置处读列表 (30)1.14传递列表属性 (30)1.15将光标设置到显示列表行的特定字段 (31)1.16将光标设置到输出窗口中列表的特定行 (31)2报表取数 (31)3数据整理 (32)4WRITE输出 (32)5报表编制的实例 (32)6扩展 (32)6.1屏幕控制 (32)6.2设置下拉框 (33)6.3自制Search Help (34)1 选择屏幕屏幕输入命令在ABAP/4中要自屏幕输入变量数据的内容,使用的命令是 PARAMETERS 及SELECTION-OPTIONSPARAMETER:输入一个变量或字段内容SELECTION-OPTIONS:使用条件筛选画面来输入数据1.1.1 PARAMETERS 语句基本格式可以按照用DATA语句声明字段的方式用PARAMETERS语句声明字段。

用PARAMETERS 语句声明的字段称为参数。

通常,输入字段的所有参数都将出现在选择屏幕上。

系统处理输入屏幕时,报表用户在这些输入字段中键入的值将被分配给相应的参数。

它为基本的输入命令,类似如BASIC的INPUT命令,但无法使用F格式(浮点数)。

1、要声明参数及其数据类型语法:PARAMETERS <p>[(<length>)] <type> [<decimals>].该语句创建参数<p>。

附加项<length>、<type>和 <decimals> 与 DATA 语句相同。

hr开发1

hr开发1

SAP学习笔记(HR Develepment学习笔记1)默认分类2010-05-15 10:36:43 阅读117 评论0 字号:大中小订阅SAP HR一般会有很多开发。

而这个模块数据的特点也让它的开发和其它模块有些不同。

HR的所有数据都是以信息类型来保存的,每个信息类型的数据都和时间段紧密相连。

HR开发一般使用sap提供的Logic database pnp.用起来也非常简单。

只需要在新建程序时,加上pnp。

然后在程序里加上Tables: PERNR.需要用到哪些信息类型加上就可以了。

比如我需要用到个人数据(2)这个信息类型的数据。

那么程序就这样写:view plaincopy to clipboardprint?1. TABLES: PERNR.2. INFOTYPES: 0002.3.4. GET PERNR.5. PROVIDE * FROM P00016. BETWEEN PN-BEGDA AND PN-ENDDA.7. WRITE...8. ENDPROVIDE.TABLES: TYPES: 0002.GET PERNR. PROVIDE * FROM P0001 BETWEEN PN-BEGDA ANDPN-ENDDA. WRITE... ENDPROVIDE.Join上面这是一个最简单的HR报表了。

它的语法确实很简单。

但是刚开始必须要把HR数据的结构弄明白,否则复杂一些就晕了。

HR的数据有一个共同点,所有的记录都有一个起始日期和结束日期。

可以用Join的语法来把多个信息类型放在一起来取数。

但是必须注意数据的时间段的用法,如下图1:第一种,该信息类型的数据不允许日期存在间隔或重叠。

第二种,信息类型的数据允许存在间隔,但是不允许重叠。

第三种,信息类型的数据即允许有间隔也允许有重叠。

对于取数的时候,某个特定的时间段如果有重复的数据实际是没有意义的,所以用join的时候只允许针对前两种情况来。

SAP-HR开发官方教程

SAP-HR开发官方教程
SAP ABAP HR
Programming in HR
HR-ABAP
SAP ABAP HR
Prerequisites
Knowledge of
ABAP Programming Logical Database Module pool programming SAP Scripts
SAP ABAP HR
SAP ABAP HR
Infotype-specific Includes
The system also inserts INCLUDE statements in the main program for the following includes:
Name of include Use
FP50PPSB
Training will cover
Brief description of modules in SAP-HR Concept of Infotypes Infotype Structures Creation of infotype Enhancement of infotype HR Macros Use of Provide statement Cluster reading for Payroll results Example of PA letters infotype (Customer defined)
1 No overlapping and no gaps.
2 No overlapping but time gaps are permitted. 3 Overlapping and and time gaps are permitted.
SAP ABAP HR
Other Possible Time Constraint

SAP-HR人力资源管理模块原理

SAP-HR人力资源管理模块原理

绩效管理和培训开发
绩效管理
管理绩效考核并为员工提供 表现反馈
培训管理
为员工提供培训和教育计划, 提高他们的技能水平和工作 效率
员工晋升管理
在员工表现的基础上,为他 们提供晋升的机会和支持
健康和安全管理
1 健康和安全培训
为员工提供健康和安全的 培训,如紧急情况处理、 工作场所卫生和安全等
2 工作伤害管理
薪资管理
管理员工薪酬和福利计划
职位和工资管理
招聘
吸引最优秀的人才,快速定位合 适的候选人
薪酬计划
确定公平、持续和有利可图的薪 酬计划
薪资结构管理
根据市场薪资结构和地区要求管 理薪资结构
法规合规管理
确保遵守当地和国际劳动法规和 法律要求
基于员工的时间管理
1 考勤管理
管理员工考勤、请假和加 班
2 假期管理
解答和反馈
为员工提供及时解答和反馈
系统上线和维护
1 用户反馈和优化
审核和整理用户反馈,做出优化和改进
3 维护支持
随时为IT团队提供线上和线下支持
2 版本更新和升级
及时更新SAP-HR的版本和功能
人力资源管理系统的ROI评估
人力资源管理系统的ROI评估报告是指根据企业在人力资源管理方面的投资获得的回报率。并从性价比的角度 评估和比较不同人力资源管理系统的效果。
优化流程并减少不必要的人力和技术支
持成本
3
提高效率和准确性
优化流程以帮助提高员工绩效,提高准 确性
全球化人力资源管理的挑战
文化
应对多种文化背景和组织文化 的挑战
法规
应对国家和地区的法规标准, 规划跨国合规流程
语言和交流

SAP功能设计说明书报表开发模板全文

SAP功能设计说明书报表开发模板全文

可编辑修改精选全文完整版
XXXX公司
企业级信息系统实施项目
功能设计说明书
(生成新的版本后,在第一部分的“创建日期”里记下新版本的生成日期,第二部分的维护记录要清空,为新版本内的更新内
3.1使用频度
随时每日每月每季度每半年每年
3.2 执行模式
前台后台
3.3 输出方式
清单在画面上显示下载至Excel输出表单预览
3.4 输出样张
(可在此插入Excel或Word样板文件)
3.5 表单输出纸张的尺寸
3.6 表单打印方向
纵向横向
3.7 前台业务操作说明或测试方法
(可用前台画面截图或流程图辅助文字说明,以便开发员理解需求和测试程序。


4.1 权限要求
(说明权限对象和权限字段)按公司代码进行控制
4.2 选项画面
4.4 自建表文本定义

4.5 报表输出样式
此处的签名,表示企业的负责用户确认本文档内容中的报表需求及功能设计。

姓名:……………………………………
职务:……………………………………
日期:……../……../……..
业务顾问签名
姓名:……………………………………
日期:……../……../……..。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

SAP HR模块报表开发目录1. 概述 (3)2. HR开发介绍 (3)2.1 逻辑数据库介绍 (3)2.2 HR相关逻辑数据库 (4)2.2.1 PNP (4)2.2.2 PCH (5)2.3 逻辑数据库的选择屏幕 (6)2.3.1 PNP的选择屏幕 (6)2.3.2 PCH的选择屏幕 (10)3. HR报表开发 (12)3.1 HR相关数据库表 (12)3.2 常用函数和宏 (12)3.2.1 宏RP_PROVIDE_FROM_FRST和RP_PROVIDE_FROM_LAST (13)3.2.2 函数RH_STRUC_GET (13)3.2.3 函数HR_READ_FOREIGN_OBJECT_TEXT (14)3.2.4 函数PYXX_READ_PAYROLL_RESULT (15)4. 其他 (16)4.1 PNP和PCH里的变量 (16)4.2 时间交叉 (17)4.3 权限检查 (18)1. 概述本文介绍了SAP HR模块报表开发的相关经验,结合本人参与项目所做的开发工作,汇总整理了一些在HR开发中需要注意的地方,并介绍了有用的小技巧。

相信本文对初级从事HR开发工作的相关人员有一定帮助。

因为笔者相关经验也在积累过程中,也许本文中会出现一些错误,还望见谅指正。

2. HR开发介绍HR 报表开发主要涉及到逻辑数据库的应用,相关的开发工作也主要围绕着逻辑数据库进行。

2.1 逻辑数据库介绍逻辑数据库则提供另一种选择数据的方式,可以代替SQL语句在数据库中提取数据,供程序操作。

因而,可以认为逻辑数据库是一种报表设计程序中的辅助工具,而不能将其误解为一种可进行数据存储的数据库。

SAP中提供多种类型的逻辑数据库,开发人员也可自行定义数据源。

Transaction Code:SE36或SLDB2.2 HR相关逻辑数据库HR报表开发主要是对逻辑数据库PNP( PNPCE)和PCH的应用。

其中PNPCE是PNP的加强。

但是本文所举例子,皆是PNP的应用,如果将来有机会应用到PNPCE逻辑数据库,会再进行补充。

程序中使用逻辑数据库非常方便,只要在程序属性里选择关联到就可以实现,直接在程序里就可以使用。

2.2.1 PNPPNP逻辑数据库主要针对人事信息的查询。

PNP查询到的信息是以人为单位的,每次查询到一个人相关信息。

如果报表的信息是关于个人人事信息的内容,首先考虑PNP逻辑数据库。

逻辑数据使用,首先要在程序里定义TABLES: PERNR。

PERNR 是一个结构,每次程序返回一个PERNR的结点,代表员工号为pernr-pernr的这个人,并附带这个人的相关数据。

如果想让每次返回的人员附带信息类型数据,需要在程序里定义INFOTYPES: nnnn,nnnn代表信息类型编号(包括自定义增强的信息类型)。

如果声明了信息类型,则在返回个人信息的时候,也顺带返回这个人的一个Pnnnn的结构,对应相应个信息类型。

Pnnnn的内容根据屏幕选择字段内容确定(PNPCE逻辑数据库返回的内容与PNP有所不同)。

程序里想使用逻辑数据,在主程序里调用GET PERNR。

GET pernr类似于一个循环,每次返回一个pernr结点,就是一个人,我们可以对这个人的信息进行处理。

当把所有的人都处理完了,那我们所得到的就是需要的数据了。

所以使用PNP逻辑数据库,最少得有三行:TABLES: PERNRINFOTYPES: nnnnGET PERNR.IDES系统里有例程:ZPSOL0102.2.2 PCHPCH逻辑数据库主要是对应于组织管理(OM)。

相对于PNP逻辑数据库,PCH每次返回的结点是OBJEC类型,代表一个对象。

这些对象包括在PP01可以维护的对象(例如:O,S,……等等),随其一同返回的也是OM的信息类型(例如1000,1001……等)。

PCH查找结点,除了标准的选择条件之外,还可以应用评估路径,这样大大增强了PCH的可用性。

同PNP逻辑数据库一样,PCH也许要在程序里声明TABLES: OJBEC才可以使用,返回的也是objec结构。

使用方法基本同PNP 逻辑数据库类似。

所以也必须要添加三行:TABLES: OJBECINFOTYPES: nnnnGET OBJEC.IDES系统里有例程:ZHSOL0102.3 逻辑数据库的选择屏幕2.3.1 PNP的选择屏幕默认的PNP选择屏幕如下:屏幕主要分为两个部分,期间选择和条件选择,最上面一排按钮还可以进行进一步选择。

同时,我们还可以自定义我们的选择屏幕。

标准选择屏虽然功能完备,但界面繁琐,很多时候客户并不接受,所以我们大多都使用自定义的选择屏幕。

注意:在下面选择窗口中的组织结构选择,只能找寻这个组织部门下面的人员,如果还有子部门,逻辑数据库并不能返回子部门的人员。

如果想要返回子部门的人员,可以在上排按钮中选择组织结构,这里边选择的部门,会搜寻到下级子部门。

使用自定义选择屏幕,可在程序属性里选择。

当我们关联到PNP 逻辑数据库,再进属性界面,会多出个按钮HR报告类,这就是我们可以自定义选择界面的地方。

在HR报告类中,可以创建、选择系统提供的和我们自定义的选择屏幕。

选择屏幕也可以在IMG里定义。

我们可以再报表类别中创建我们自定义的报表选择条件,这样基本上能满足客户的需要。

例如:注意:报表类是必须选择现有的字段,如果标准里没有需要的选择条件,我们可以在程序里自定义屏幕选择,但自定义的选择条件并不会影响PNP逻辑数据库的选择,需要我们自己处理。

标准的屏幕选择定义在程序: DBPNPSEL。

如果我们需要在程序的初始屏幕赋值或做一下定制化的内容,可参考程序DBPNPSEL里的定义。

其中最常见的客户要求可能就是时间期间选择。

客户通常希望能按自己的要求来自动选择期间,我们可以用程序变式的方式来实现,但有时候,客户的要求我们也可以再程序初始化的实现,尤其是一些按钮的选择,让他们出现在默认状态也是客户经常提出的。

例如,客户想把期间选择默认为当前月,其实很简单,在初始化的时候加入代码:PNPTIMED = 'M'. "当前月这些变量的声明都可以再DBPNPSEL里找到,我们只要仔细研究这些声明,很多事情我们都可以再初始化的时候做。

2.3.2 PCH的选择屏幕PCH选择屏幕没有报告类可以配置,因为他的默认选择屏幕相对比较简单。

这个界面只有期间选择和对象选择,所以没有报告类可供我们自由配置。

这些在大多时候很难满足我们的业务需要,但我们最长用到的评估路径选择也是可以很容易加入进去。

在代码中除了声明TABLE ojbec之外,我们只要在声明TABLE gdstr,就可以出现评估路径的选择界面这样的界面基本上就能满足我们大部分的需要了,如果还有不够的,那我们可以还可以再程序里自己定义屏幕选择条件。

同样,我们自己定义的屏幕选择条件是不影响逻辑数据库的返回值,所以要我们根据选择条件自己再进行后续处理。

大部分时候,对象类型,评估路径等内容我们都会根据程序确定好,做成默认输入,或者干脆隐藏起来,但如果要影响PCH逻辑数据库的返回值,objec和gdstr是必须要声明的。

程序DBPCHSEL声明了PCH选择屏幕的选择字段,我们可以仿照PNP的处理方法对初始屏幕进行定义。

3. HR报表开发3.1 HR相关数据库表HR报表开发很肯定会涉及到数据库表,因为SAP的数据都存放在表里。

PNP逻辑数据最常用的就是PAnnnn的表,人事数据的信息类型数据都存放在这些表中,PNP其实就是从这些表中抓取的数据,所以如果我们需要一些数据,可以直接手动从这些表中抓取。

逻辑数据库返回的结构Pnnnn其实就是表PAnnnn的子结构,所以想详细了解Pnnnn的结构,只需要仔细研究PAnnnn的定义即可。

PCH逻辑数据库对应的是表HRPnnnn,一般我们常碰到就是HPR1000、HRP1001,这两个表分别是对象定义和对象关系。

一个对象的自身描述都是定义在HRP1000里包括起始时间、名称等,而两个对象的关系则定义在HRP1001,如果想关联两个对象,那HRP1001表就是最好的查找对象。

当然还有很多我们常碰到的表,通过F1帮助,我们大多都能找到他们。

3.2 常用函数和宏HR常用逻辑数据库,尤其是PNP逻辑数据库提供很多常用的宏和函数供我们使用。

3.2.1 宏RP_PROVIDE_FROM_FRST和RP_PROVIDE_FROM_LAST宏RP_PROVIDE_FROM_FRST和RP_PROVIDE_FROM_LAST 是一对相对应的宏,也是我们PNP逻辑数据库里最常用的一组宏。

这对宏的作用就是在返回个人信息的结构Pnnnn里提取时间最早和时间最晚的记录。

具体用法:RP_PROVIDE_FROM_FRST Pnnnn subtype BEGDA ENDDARP_PROVIDE_FROM_LAST Pnnnn subtype BEGDA ENDDA 其中Pnnnn就是要处理的信息类型,subtype处填写子信息类型,如果没有字信息类型,此处传入SPACE,后面两个是参数时间,即开始时间和结束时间。

这个宏处理过后,会将开始时间和结束时间之间的,时间最早(晚)的一条数据,放入Pnnnn表头(工作区)。

PNP还有许多有用的宏,可以帮助我们快速处理数据,具体宏的定义,可参见程序DBPNPMAC。

3.2.2 函数RH_STRUC_GET个人感觉,这个函数是最好用最常用的一个函数之一,无论是PNP 和PCH,这个函数在程序里都是最好补充。

这个函数是根据评估路径返回一个objec结构的内表,这就相当于在程序里又调用了一次PCH逻辑数据库的感觉。

因为我们每次只能选择一个逻辑数据库,所以在PNP里或是在PCH里,想再次通过评估路径来查找一些信息,这个函数都提供了很方便的功能。

只要给一个入口,然后再loop返回的内表,相当于在成立内嵌了一个小的PCH逻辑应用,十分好用。

例如:CALL FUNCTION'RH_STRUC_GET'EXPORTINGact_otype = 'O'act_objid = t_itab-objidact_wegid = 'PERS-O'act_plvar = '01'act_begda = pchoend " 期末act_endda = pchoendTABLESresult_objec = tab_org1EXCEPTIONSno_plvar_found = 1no_entry_found = 2OTHERS = 3.有了评估路径,无论是从O,S,P,我们都可以通过函数找到我们需要的结点。

相关文档
最新文档