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项目实施和国内一些ERP软件的实施不太一样的地方,SAP实施顾问是分业务顾问和开发顾问的,他们各司其职,业务顾问只要精通业务不需要对开发非常熟悉,而开发顾问不需要非常熟悉业务,只要能按业务顾问的要求通过代码去实现某个功能就行。
因为业务顾问和开发顾问不是同一个人,那么他们之间应该如何沟通,才能保证顺畅和高效呢?当然不能靠口头去沟通,他们之间进行有效沟通的基本工具就功能开发说明书。
关于SAP的功能开发说明书应该如何编写,每个公司写法也不一样,有些公司要求比较简单,只要把你的功能需求用文字描述清楚就行了,剩下的就交给ABAP 程序员去搞定,但这样开发出来的东西,简单功能可能还好,稍微复杂一点,问题肯定非常多,而且后期也需要不断修改,并且很难澄清是那方面的问题,所以作为SAP业务顾问,写出一份逻辑清晰、表述合理的功能开发说明书,是必备的重要的技能之一。
因为经常有刚入行的业内朋友问我,有没有写功能开发说明书的教程之类的分享下,说实在的我真没见过这方面的官方标准教程,各大论坛也比较少这方面的内容,我本人曾经做过SAP ABAP开发和业务顾问两个角色,也看过不少世界500强、民企、国企的开发说明书,所以我想结合下我个人工作经验,介绍下SAP功能开发说明书一般应该如何写,希望对大家有点帮助,本文先介绍报表类开发说明书,因为报表类开发需求在项目中,应该至少占85%以上。
对于功能开发说明书来,各大公司和负责实施的咨询公司一般都有自己定义好基本格式(模板),在实际项目中,我们只需要按照既定的格式去写就行了,但无论哪个公司的模板,我认为一份合格完整功能开发说明书,一般至少需要包含这几个方面信息:基本信息,设计维护记录(修改日志),业务需求,功能设计、取数逻辑、用户签字这6大部分。
下面我就结合一个简单例子并使用某世界顶尖咨询公司的功能开发说明书的编写模板,全面介绍下功能开发说明书应该如何编写。
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报表开发指南目录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
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开发官方教程
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人力资源管理模块原理
绩效管理和培训开发
绩效管理
管理绩效考核并为员工提供 表现反馈
培训管理
为员工提供培训和教育计划, 提高他们的技能水平和工作 效率
员工晋升管理
在员工表现的基础上,为他 们提供晋升的机会和支持
健康和安全管理
1 健康和安全培训
为员工提供健康和安全的 培训,如紧急情况处理、 工作场所卫生和安全等
2 工作伤害管理
薪资管理
管理员工薪酬和福利计划
职位和工资管理
招聘
吸引最优秀的人才,快速定位合 适的候选人
薪酬计划
确定公平、持续和有利可图的薪 酬计划
薪资结构管理
根据市场薪资结构和地区要求管 理薪资结构
法规合规管理
确保遵守当地和国际劳动法规和 法律要求
基于员工的时间管理
1 考勤管理
管理员工考勤、请假和加 班
2 假期管理
解答和反馈
为员工提供及时解答和反馈
系统上线和维护
1 用户反馈和优化
审核和整理用户反馈,做出优化和改进
3 维护支持
随时为IT团队提供线上和线下支持
2 版本更新和升级
及时更新SAP-HR的版本和功能
人力资源管理系统的ROI评估
人力资源管理系统的ROI评估报告是指根据企业在人力资源管理方面的投资获得的回报率。并从性价比的角度 评估和比较不同人力资源管理系统的效果。
优化流程并减少不必要的人力和技术支
持成本
3
提高效率和准确性
优化流程以帮助提高员工绩效,提高准 确性
全球化人力资源管理的挑战
文化
应对多种文化背景和组织文化 的挑战
法规
应对国家和地区的法规标准, 规划跨国合规流程
语言和交流
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 报表输出样式
此处的签名,表示企业的负责用户确认本文档内容中的报表需求及功能设计。
姓名:……………………………………
职务:……………………………………
日期:……../……../……..
业务顾问签名
姓名:……………………………………
日期:……../……../……..。
SAP中HR逻辑数据库PNP中创建报表
By Venkateswara Rao Appikonda, Intelligroup Inc1. Create a program using the transaction SE38.Provide the logical database name as PNP. Click on SAVE.2. Then again follow this menu path--->GOTO---->ATTRIBUTES3. Click on the button HR report category to use the existing report category.Select the radio button “Master Data (Infotypes)How to create the HR report category1. Click on HR report categoryGive name of the HR report category to be create like ____0001(4 underscores 3 zeros 1) here follow the standards for creating the HR report category.To create new HR report category, click on new entriesGive the report category name : ____0002 (this is an example )Description : this is te st report categoryThen save it under a transport reque st.Click on allowable selection criteria--->choose enter----> new entriesGet the fields from select option field with F4 help and give the values to be appeared in the selection screen of the LDB you want.Save it.How to use the report category in the LDBIf the report category is space, it means there is nothing given in the HR report category.The output screen will be like this...with more field optionsIf the report category is _____000 (5 underscores 3 zeros no gap) No LDB selection screen is displayed. It shows a clear screen.The output screen will be like this..._____001 (5 underscores 2 zeros 1 no gap) only personnel number with out search help_____003 (5 underscores 2 zeros 3 no gap) personnel number, Employment status, Payroll area, Pers.area/subarea/cost centerThis is a simple program for understanding the PNP LDB... with report category _____001.report zpnpldb .INFOTYPES: 0001.tables : pernr .GET PERNR.PROVIDE * FROM P0001 BETWEEN PN-BEGDA AND PN-ENDDA.WRITE: / P0001-PERNR,P0001-STELL,P0001-BEGDA,P0001-ENDDA.ENDPROVIDE.TABLES: PERNR.INFOTYPES: 0001.GET PERNR.RP_PROVIDE_FROM_LAST P0001 SPACE PN-BEGDA PN-ENDDA .IF PNP-SW-FOUND = 1.WRITE: / PERNR-PERNR, P0001-STELL, PN-BEGDA, PN-ENDDA.ELSE.REJECT.ENDIF.This is a simple program for understanding the PNP LDB... with report category space or with no report category.report zpnpldb .tables : pernr .INFOTYPES: 2001 MODE N.initialization .*pnpbegda = sy-datum - 30 .*pnpendda = sy-datum .pnppernr-sign = 'I'.pnppernr-option = 'EQ' .pnppernr-low = '1000'.append pnppernr.pnppernr-low = '1001'.append pnppernr.pnppernr-low = '1002'.append pnppernr.pnppernr-low = '1003'.append pnppernr.start-of-selection .GET PERNR.RP_READ_ALL_TIME_ITY PN-BEGDA PN-ENDDA.LOOP AT P2001.WRITE: / p2001-pernr , p2001-begda, p2001-endda, P2001-ABWTG. ENDLOOP.end-of-selection .。
ABAPHR开发总结
ABAPHR开发总结ABAPHR(Advanced Business Application Programming for Human Resources)是一种SAP HR系统的开发语言,通过使用ABAPHR可以为SAP HR系统开发各种功能和报表。
在本文中,我将对我在ABAPHR开发方面的经验和总结进行详细描述。
首先,对于ABAPHR的开发,了解SAPHR系统的数据结构和相关的表是非常重要的。
在开始开发之前,需要对SAPHR系统中的各种数据对象,比如员工、岗位、薪资等有一个清晰的认识。
通过了解这些数据对象的结构和关系,可以更好地理解开发需求,并能够更加高效地进行开发。
其次,对于ABAPHR的开发,熟悉ABAP语言是必不可少的。
ABAP语言是一种面向对象的编程语言,它在SAP系统中被广泛应用。
了解ABAP 的语法和特性,能够更加灵活和高效地进行开发。
例如,掌握ABAP中的循环语句、条件语句和函数模块等,可以帮助我们更好地处理数据和实现各种功能。
另外,对于ABAPHR的开发,熟悉SAPHR系统的各种功能模块和业务流程也是非常重要的。
ABAPHR的开发往往需要与SAPHR系统的其他模块进行集成,例如人事管理、薪资管理等。
因此,了解这些功能模块的工作原理和功能接口,能够更好地理解开发需求,并能够更好地与其他模块进行协同开发。
此外,在ABAPHR的开发过程中,良好的编码习惯和规范也是非常重要的。
良好的编码习惯可以提高代码的可读性和可维护性,减少错误和调试的时间。
例如,给变量和函数起有意义的名称,注释代码的关键部分,使用合适的数据类型和结构等,都是非常重要的。
最后,在ABAPHR的开发过程中,测试和调试也是不可忽视的环节。
在开发完成后,需要对开发的功能和报表进行充分的测试,确保其符合需求和预期。
在进行测试时,可以使用SAP的测试工具和模拟数据,对各种情况进行测试,以确保开发的功能和报表的稳定性和正确性。
SAPHR工资模块简易操作指南
SAPHR工资模块简易操作指南1.登录SAPHR系统首先,打开SAPHR系统,并使用您的用户名和密码登录。
进入系统后,您会看到系统的主屏幕。
2.系统导航在主屏幕上,您可以看到系统的导航菜单。
导航菜单列出了系统中可用的各种功能模块。
找到并点击“工资”模块,进入工资管理页面。
3.设置工资基础数据在工资管理页面中,您可以设置工资基础数据,包括工资标准、工资级别和工资计算规则等。
点击“设置工资基础数据”选项,进入设置页面。
在设置页面中,您可以添加新的工资标准,设置工资级别和工资计算规则等。
根据您的需求,进行相应的设置,并保存更改。
4.创建工资项目在工资管理页面中,您可以创建工资项目,用于记录员工的工资信息。
点击“创建工资项目”选项,进入创建页面。
在创建页面中,填写员工的基本信息和工资信息,包括工资发放周期、工资发放日期和相关扣款项目等。
填写完成后,保存工资项目。
5.发放工资在工资管理页面中,您可以发放员工的工资。
点击“发放工资”选项,进入发放页面。
在发放页面中,您可以选择待发放工资的员工,并选择发放方式(如现金、银行转账等)。
选择完成后,点击“发放工资”按钮,系统将会自动计算并发放工资。
6.查看工资报表在工资管理页面中,您可以查看员工的工资报表。
点击“查看工资报表”选项,进入报表页面。
在报表页面中,您可以选择特定的时间段和工资项目,系统将会生成相应的工资报表。
您可以查看员工工资的详细信息,包括工资发放金额、扣款金额和实际到账金额等。
以上是SAPHR工资模块的简易操作指南。
通过这些步骤,您可以轻松地管理员工的工资信息,并实现工资的计算和发放。
希望这篇文章能够帮助您更好地使用SAPHR工资模块。
ABAP_HR开发总结
HR开发小结HR信息类型增强信息类型是SAP HR模块数据单元,用于对人员数据的记录和维护,是HR的基础。
信息类型按照其创建方式的不同可以分为:人事信息类型、组织信息类型。
信息类型数据的维护主要在事物码PA30、PA40、po10、P013 中进行。
信息类型的创建信息类型的创建涉及到的两个事务码:PM01,PPCI。
分别对应人事主数据与组织、职位主数据的增强。
人事信息类型在生成时,系统会自动生成2000、1000、3000等屏幕,以及相应的类,和PR模块。
其中2000屏幕是我们在PA30中(对人事信息类型来说)编辑或查看时看到的屏幕,一般做好信息类型增强后需要对2000屏进行修改,像设置下拉框、设置单选按钮组、制作树型结构F4等;3000屏为列表屏幕,是我们点击概览时所看到的屏幕。
PR模块用于信息类型的显示(具体的我也不清楚)。
组织信息或职位信息类型,有时需要创建7000屏,也就是我们常见的PPOSE屏,这个屏幕可以在生成信息类型时直接在PPCI里生成(点击菜单栏中,信息类型—创建子屏幕即可,当然逻辑流要与2000屏的逻辑流保持一致)。
人事信息类型的创建创建信息类型HR本身提供一些常用的信息类型,但当有特殊的需求时需要进行信息类型的创建。
自己创建的信息类型编码是以‘9’开头的四位数字,其他数字开头的信息类型为系统自带的。
像9025、9195、9135等。
创建步骤如下(以9001为例):TCODE PM01PM01——》创建IT——》输入9001——》选择PS结构——》编辑,进入ps9001编辑界面。
维护后点击;信息类型增强时,需要创建一个结构,用于说明该信息类型有哪些字段,结构的名称格式为:”PS+信息类型”。
实例结构如下:保存,激活后返回PM01界面,点击生成对象,同前。
维护信息类型特征:系统会按照你提供的字段生成2000屏、3000屏;其中2000屏为我们在PA30中进行维护(查看)时展现出的屏幕,3000屏即列表屏,当我们选择概览时的所看到屏幕。
ABAPHR开发总结
ABAPHR开发总结
在进行ABAPHR开发过程中,需要遵循一定的开发规范和流程。
以下是我在ABAPHR开发过程中的一些经验总结。
首先,了解业务需求。
在进行ABAPHR开发之前,需要深入了解企业的人力资源管理流程和需求,同时要了解SAP系统中人力资源模块的相关功能和特性。
只有对业务需求有透彻的了解,才能更好地进行开发工作。
其次,进行系统分析和设计。
在进行ABAPHR开发之前,需要进行系统分析和设计,并绘制相应的开发文档和流程图。
通过系统分析和设计,可以明确开发的目标和流程,并为后续的开发工作奠定基础。
然后,进行具体的开发工作。
在进行ABAP HR开发时,需要熟悉ABAP编程语言和相关的开发工具,如SAP ABAP Workbench。
通过这些工具,可以进行ABAP编码和调试,并实现相应的功能需求。
在进行具体的开发工作时,需要注意代码的质量和可维护性。
良好的编码规范和注释是保证代码质量的关键。
此外,还需要进行相关的单元测试和集成测试,以确保开发结果的准确性和稳定性。
最后,进行文档和知识总结。
在完成ABAPHR开发之后,需要编写相应的文档,对开发过程和结果进行总结和记录。
这些文档可以作为以后维护和升级的参考,并为其他开发人员提供指导和支持。
总的来说,ABAPHR开发需要对业务需求有深入的了解,进行系统分析和设计,实施具体的开发工作,并进行文档和知识总结。
通过不断的学习和实践,我相信在ABAPHR开发领域会有更进一步的发展。
SAP HR开发总结(1)
一、系统中提供了标准的报表某些报表无法通过菜单路径或常规报告选择来访问。
而是必须通过选择菜单:系统→服务→报告来进行访问。
在初始屏幕中,您可以输入 RP* 并使用后续报告来显示所有报表的概览。
可通过使用以下命名约定来输入更多特定的通用搜索标准:RPL* 清单RPS* 统计RPC* 工资核算报表RPU* 实用程序报表RPT* 时间管理报表RPAPL* 申请人数据报表RPI* 用于创建批输入会话的报表RH* 人事计划报表EXAMPLE_PNP_GET_PAYROLL , 如果没有写过Payroll resport的人,参考这个Report。
PAY99_RESULT: Structure for payroll result,其中的EVP在设计工资单的Rule时可能就用到。
二、PHF、SI、TAX相关的报表,可以在 pc28 中找到PC28 – SAP menu – Subsequent Activities – Per payroll period –Reporting通过中国的TAX 报表,看看如何处理payroll result.(1)LDB(2)Report catalog ,使用后可以自动带出选择屏幕的一部分(3)Unicode checks active ,要激活(4)使用了get pernr,这样的event.,get pernr 是一个循环操作,界面上选择的所有员工,都会依次循环。
每一次的循环,都会找到当前员工的infotype数据,找哪些infotype 中的数据,是在infotypes中的声明中决定的。
(5)取得payroll result的 function :CU_READ_RGDIR,将payroll result 从cluster表中取出来。
(6)对于Cluster 表,可以如下使用TABLES: PERNR, PCL1, PCL2, PC260.(7)三、标准报表举例(1)HTWLINF0可以看到员工的所有维护过的信息类型,包括几条记录,分别的起止时间,最后修改的时间、修改人等,如果有子类型,还会按照子类型来区分;更方便的是,双击每条记录,都可以跳到PA20中查看详细的信息。
SAP_HR_004_工资报表管理_V1.0_20141125
SAP一期项目页码: 1 / 36 文件名: 薪酬工具V1.0创建日期: 2014-11-10 更新日期:XX汽车SAP 用户操作手册名称:薪酬工具和报表管理文档号:HR_004写稿日期:2014-11-17版本号:V1.0SAP一期项目页码: 1 / 36文件名: 薪酬工具V1.0创建日期: 2014-11-10 更新日期:版本历史版本号更新日期修订作者修订摘要审批人审批日期V1.0 2014-11-17SAP一期项目页码: 1 / 36文件名: 薪酬工具V1.0创建日期: 2014-11-10 更新日期:目录1.目的: (4)2.适用范围: (4)3.相关流程 (4)4.相关流程图 (4)5.在SAP 系统中操作薪酬管理工具 (4)5.1 显示工资核算结果 (4)5.2 维护控制记录 (5)5.3 设置工资核算范围 (5)5.4 报表管理平台 (5)5.5 报表导出& 导入工具 (5)5.6 报表管理平台引擎 (5)6.在SAP 系统中操作薪酬管理报表 (5)6.1 工资单报酬声明-中国 (5)6.2 工资预算执行情况表 (5)6.3 社会保险报表 (5)6.4 住房公积金 (5)6.5 每月税收报表 (5)6.6 年末个人所得税申报(新) (5)6.7 年终IITax 声明 (5)6.8 年终奖金的盲区检测 (5)6.9 平均薪资 (5)1.目的:主要是在SAP系统中,通过薪酬管理工具和薪酬管理报表,满足薪酬相关的管理需求。
系统设计要点:通过薪酬管理工具,处理工资控制和报表平台管理;通过管理报表,统计、查询员工薪酬信息;SAP一期项目页码: 1 / 36文件名: 薪酬工具V1.0创建日期: 2014-11-10 更新日期:2.适用范围:本流程适用于XX汽车所有员工日常薪酬数据的统计管理。
3.相关流程略4.相关流程图略5.在SAP 系统中操作薪酬管理工具5.1显示工资核算结果菜单路径SAP菜单 ->薪酬管理->工具和报表->PC_PAYRESULT - 显示工资核算结果事务代码PC_PAYRESULT - 显示工资核算结果菜单选择路径如下:SAP一期项目页码: 1 / 36 文件名: 薪酬工具V1.0创建日期: 2014-11-10 更新日期:双击执行“显示工资核算结果”,进入“显示工资核算结果”页面:详细说明:数据项输入类型特征内容/用途人员编号系统必输项录入要查询工资结果的员工编号输入要查询工资结果的人员编号后,回车,出现该员工的工资核算结果的概览:回车后,在工资核算结果的区域双击一笔工资结果,出现员工的工资明细,见下图双击执行“显示工资核算结果”SAP一期项目页码: 1 / 36 文件名: 薪酬工具V1.0创建日期: 2014-11-10 更新日期:在“工资核算结果”的区域双击该员工“工资核算结果”表,出现员工的工资明细,见下图:点击“RT 结果表”进入下一页面:SAP一期项目页码: 1 / 36 文件名: 薪酬工具V1.0创建日期: 2014-11-10 更新日期:需要说明的是,此处查看的是工资核算结果的原始结构,由于技术性强较,阅读起来不是很直观。
SAP HR综合应用平台报表填报流程
05
报表数据分析与应用拓展
数据挖掘技术在报表分析中应用
数据预处理
关联规则挖掘
对原始报表数据进行清洗、转换和集成, 消除噪声和不一致性,为数据挖掘提供高 质量数据。
利用关联规则算法,发现报表数据中的隐 藏关联和趋势,为企业决策提供有力支持 。
聚类分析
预测模型构建
通过聚类算法对报表数据进行分组,识别 不同数据群体间的相似性和差异性,帮助 企业发现潜在的市场细分和客户群体。
结构维度分析
对报表数据的内部结构进行深入剖析,包括数据的分布、 构成、关联等方面,揭示数据的内在规律和特征。
属性维度分析
针对报表数据的属性特征进行分析,如数据的类型、取值 范围、异常值等,为数据清洗和预处理提供依据。
基于报表数据的业务优化建议提
业务流程优化
通过对报表数据的分析,发 现业务流程中的瓶颈和问题 ,提出针对性的优化建议, 提高业务运行效率和质量。
02 确定填报的优先级和顺序,确保关键报表得到优 先处理
03 预留足够的时间用于数据核对和报表调整,确保 报表的准确性和完整性
03
报表填报操作步骤
登录SAP HR综合应用平台
打开SAP HR综合应用平台网址,进入登录页面 。
输入正确的用户名和密码,进行身份验证。
选择相应的操作语言和工作环境,进入系统主 页面。
选择相应报表进行填报
01
在系统主页面中,找到“报表管理”或类似名称的模
块,点击进入。
02
在报表管理页面中,根据实际需要选择相应的报表进
行填报,如员工花名册、薪资报表等。
03
点击所选报表的名称或链接,进入报表填报页面。
输入数据并核对信息准确性
01
SAP报表开发
SAP报表开发概述报表开发是指无屏幕的纯报表开发。
一、报表事件对于纯报表程序,SAP 预定义了一系列的报表事件,包括:INITIALZATION 初始化事件。
常用来填充选择屏幕的默认值。
AT SELECTION-SCREEN OUTPUT 选择屏幕的PBO 事件。
显示选择屏幕之前触发。
AT SELECTION-SCREEN 选择屏幕的PAI 事件。
用户在选择屏幕中执行某些功能后触发。
通常用来接收用户输入,并给用户出错提示。
START-OF-SELECTION 选择开始事件。
选择屏幕处理结束后触发(即点击“Execute”按钮之后)。
END-OF-SELECTION 选择结束时间。
通常在该事件中输出报表。
AT-LINE-SELECTION 交互式报表中,用户选择某行时触发。
AT-USER-COMMAND 交互式报表中,用户选择某个功能时触发。
TOP-OF-PAGE 页眉控制,每个新页面开始时触发。
通常输出页眉、报表标题行。
END-OF-PAGE 页脚控制,在当前页结束前触发。
二、事件处理顺序下面是事件处理次序:一个事件的ABAP 代码,开始于事件关键字,结束于下一个事件关键字。
三、报表的通常格式通常,一个报表程序包含如下几部分:1、程序说明。
包括:程序名称、作者、日期等信息。
2、关键字Report。
3、数据定义。
内表、参数都在这里定义。
4、 Include 部分。
指定包含文件。
5、定义选择屏幕。
利用SELECT-OPTIONS 和PARAMETERS 声明多个选择参数,系统会自动产生一个屏幕号为1000 的选择屏幕。
6、 INITIALIZATION 事件。
完成对选择屏幕参数的默认值填充。
7、 AT SELECTION-SCREEN 事件。
对用户的输入参数作校验。
8、 START-OF-SELECTION 事件。
在这里完成数据处理。
9、 END-OF-SELECTION 事件。
在这里定义报表的输出。
ABAP_HR开发总结
ABAP_HR开发总结在ABAP_HR开发的过程中,我积累了一定的经验和总结,以下是我对ABAP_HR开发的一些思考和心得体会。
首先,ABAP_HR开发是基于SAP系统的人力资源管理模块的开发,涵盖了人事组织管理、薪酬管理、培训发展等多个方面。
在开发过程中,我们需要熟悉SAP的基本概念和原则,了解人力资源管理的基本流程和业务需求。
其次,ABAP_HR开发需要掌握ABAP语言和HR领域相关的技术知识。
ABAP语言是SAP系统的编程语言,我们需要熟悉ABAP的基本语法和常用函数,掌握ABAP的调试和测试技巧。
此外,我们还需要了解HR领域的相关技术,如人事组织管理的岗位、职位、部门等基本概念,薪酬管理的工资类型、工资级别等概念,培训管理的培训类型、培训计划等概念。
在实际开发中,我们常常需要编写报表、表单和批处理程序等。
编写报表时,我们需要清楚地定义报表的需求和输出格式,合理选择数据源和字段,采用合适的布局和格式设计报表。
编写表单时,我们需要根据业务需求设计表格、模板和公式,实现自定义的表单格式和逻辑。
编写批处理程序时,我们需要了解相关的人事组织和薪酬管理的数据表以及其各自的数据结构和字段,编写相应的数据处理和逻辑。
在开发过程中,我们需要注重代码的可维护性和可扩展性。
为了提高代码的可读性和可理解性,我们需要合理命名变量、表和函数,给予适当的注释和解释。
为了提高代码的可重用性和扩展性,我们需要尽量把通用的功能和逻辑抽象成函数和模块,提供可供调用的接口和参数。
总之,ABAP_HR开发是一项具有挑战和意义的工作。
只有不断学习、实践和总结,我们才能在ABAP_HR开发中不断进步,为用户和客户提供高质量的人力资源管理解决方案。
希望我的经验和总结对广大ABAP_HR开发者有所帮助。
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 语句相同。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 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,我们都可以通过函数找到我们需要的结点。