在PeopleSoft系统中实现打印页面的功能
我们知道,在PeopleSoft HCM里,一般上了薪酬模块的话,都会客户化工资单页面,去匹配公司之前的工资单的报表的格式。有的时候,这个工资单页面又需要打印出来,以供员工的使用。
PeopleSoft 中页面的打印,一般是用JavaScript来实现的。这里我详细叙述一下实现的步骤:
1.首先要创建一个Derived
Record ,Record Name 为Print_Record ,里面包含两个字段:
一个 long 类型的 HTMLAREA ,一个Char 类型的
Z_JS_PRINT.
2.创建一个页面,并且在level0 上放置 HTMLAREA字段,并另外放一个Button
Button 的属性设置为
Destination 为External Link 而且External Link的属性为Dynamic
然后到Button的 General 标签 把page field Name 设为PRINT_BTN
3.在Button字段的field FieldDefault写下如下的PeopleCode
PRINT_RECORD.JS_PRINT.Value = "javascript:window.print()";
在Button被点击时 这段代码会触发浏览器的打印命令
4 .在Component下面的 PRINT_RECORD 的Rowinit下面写如下的PeopleCode
PRINT_RECORD.HTMLAREA.Value = "<style type=""text/css""> @media print { body { zoom:80%;} #PAGEBAR,.PSHEADERTOOLBARFRAME, #PRINT_BTN { display: none }} </style>";
上面的zoom命令是用来缩放页面大小的,#PAGEBAR,.PSHEADERTOOLBARFRAME, #PRINT_BTN { display: none }}
这段隐藏了页面的上button 和component下面的标准Button
这样就实现了页面的打印。