PeopleSoft-函数、方法的声明引用

引用表-字段上的函数方法

定义方法

1
2
3
4
5
6
7
8
9
10
11
/******************************************************
Function : Format_NID
Purpose : Convert National_ID from National_ID_Format into National_ID
without special characters and viceversa
Version : 3.3.99
Parameters : COUNTRY,NID_TYPE,INPUT,DIRECTION
Returns : STRING
******************************************************/
Function Format_NID(&COUNTRY, &NID_TYPE, &INPUT, &DIRECTION) Returns string;
/*方法体*/
End-Function;

引用函数方法

1
2
3
4
5
6
7
8
9
10
11
Declare Function Format_NID PeopleCode FUNCLIB_HR.NID_SPECIAL_CHAR FieldFormula;
Declare Function valid_NID PeopleCode FUNCLIB_HR.NID_SPECIAL_CHAR FieldFormula;

C_PREHIRE0_TBL.NID_SPECIAL_CHAR.Value = Format_NID(&VAR_COUNTRY, &VAR_NID_TYPE, &VAR_NID, "OUTDB");
If C_PREHIRE0_TBL.COUNTRY.Value = "CHN" And
C_PREHIRE0_TBL.NATIONAL_ID_TYPE.Value = "NID" Then
Local boolean &bool = valid_NID(&VAR_NID);
If &bool = False Then
Error ("无效的身份证号,请重新输入!");
End-If;
End-If;

引用package函数包中的函数方法

定义package函数方法,新建application package –C_DATA_IMP_PKG:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
class C_INSERT_PS_DATA
/*构造函数*/
method C_INSERT_PS_DATA();
/* 导入数据;*/
method C_IMP_DATA(&arr2Data As array of array of string) Returns string;
end-class;

/*构造函数*/
method C_INSERT_PS_DATA
end-method;

/*导入函数*/
method C_IMP_DATA
/+ &arr2Data as Array2 of String +/
/+ Returns String +/
/*方法体*/
Return &strReturn;
end-method;

引用package函数方法

1
2
3
4
5
6
7
8
9
import C_DATA_IMP_PKG:*;
Local C_DATA_IMP_PKG:C_INSERT_PS_DATA &ImpPsData = create C_DATA_IMP_PKG:C_INSERT_PS_DATA();
Local string &strPsDataRet = &ImpPsData.C_IMP_DATA_A(&arrPsData);

import C_APP_CLS:OBJECT:*;
Local C_APP_CLS:OBJECT:JOB &Job = create C_APP_CLS:OBJECT:JOB();
Local array of any &arr = CreateArrayAny();
&arr.Push(C_TEST_ZL_WRK.EMPLID.Value);
Local string &LocationName = &Job.GetLocationName(&arr);

引入服务器中的Java包

将Java包上传至服务器(一般来说是两个地方,也可以传三个地方)

需要上传两个路径:路径1

需要上传两个路径:路径2

对两个文件操作:

1、chmod -R 777 Ios2Utf2Gbk.jar 修改文件编辑权限

2、chown -R psadm2:oinstall Ios2Utf2Gbk.jar 将文件授权给用户

或对两个文件的文件夹操作:

chown -R psadm2:oinstall /app/psapp/pt/ps_home8.57.11

chmod -R 777 /app/psapp/pt/ps_home8.57.11/class

注意:如果之前在hcm_app_home/appserv/classes中放置过jar包,更新时,该路径下的jar也许更新,否则会因为冲突导致方法无法重载等异常。

引用Java包中的方法

1
2
3
4
5
rem 字符集处理IOS转UTF编码,还有一个方法iso2gbk,可以转为GBK编码;
Local JavaObject &Ios2Utf = CreateJavaObject("com.sie.ios2utf2gbk.ISO2UTF");
&responseBody = &Ios2Utf.iso2utf(&responseBody);
//或者,类直接调用静态方法:
GetJavaClass("java.lang.Thread").sleep(5000);