PeopleCode常用语法

更新时间:2024-05-26 06:25:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

1、Import:程序中在使用某个类之前,必须首先导入其所属包。 Syntax:

Import PackageName:[PackageName. . .:]{Classname | *}; For Example:

import HR_HIRE:UI:JobComponentController; 2、Declare Function:函数声明。

PeopleCode Function Syntax:

Declare Function function_name PeopleCode record_name.field_name event_type For Example:

Declare Function SetCurrPersFld2 PeopleCode FUNCLIB_HR_JOB.FIND_CURRENT

FieldFormula;

External Function Syntax:

Declare Function function_name Library lib_name [ALIAS module_name ] [paramlist]

[RETURNS ext_return_type [As pc_type]] For Example:

declare function pctest library \

integer as number;

3、Global:全局变量定义,在整个Session都有效。

Syntax:

Global data_type &var_name;

For Example:

Global number &HireRequestId;

4、Local:局部变量定义,在定义的PeopleCode程序中有效。

Syntax:

Local data_type &var_name [= expression]; For Example:

Local Number &Constant = 42;

5、Compenent:组件定义,在组件的各个页面均有效。

Syntax:

Component data_type &var_name;

For Example:

Component number &tempHireRequestId;

6、If语句: Syntax:

If condition Then [statement_list_1]

[Else

[statement_list_2]]

End-if;

For Example:

If (&HireRequestId > 0) Then

&tempHireRequestId = &HireRequestId;

&componentController = create HR_HIRE:UI:JobComponentController(); &componentController.setRequestId(&tempHireRequestId); &HireRequestId = 0;

&componentController.getData(); &componentController.fillData();

End-If;

7、ScrollFlush:用此函数来删除所有行内的目标滚动区和释放及其相关的缓冲区。

Syntax:

ScrollFlush(scrollpath);

For Example:

ScrollFlush(Scroll.PER_ORG_INST);

8、ScrollSelect:用此函数来从数据库表中读取数据并录入到缓冲区。 Syntax:

ScrollSelect(levelnum, [RECORD.level1_recname, [RECORD.level2_recname,]] RECORD.target_recname,

RECORD.sel_recname [, sqlstr [, bindvars]] [, turbo]) For Example:

ScrollSelect(1, Record.PER_ORG_INST, Record.PER_ORG_INST, \= :1

and ORG_INSTANCE_ERN=:2\ 1为level1,第一个record为目标,第二个为来源,后面为过滤条件。

9、用户自定义变量:&打头,系统变量:%打头。

10、SQLExec:SQL命令绕过组件处理器和互动关系数据库服务器直接连接,如果您想删除,

插入或更新一条记录,使用记录的相应PeopleCode对象的方法,使用SQLExec函数执行SQL命令。

Syntax:

SQLExec({sqlcmd | SQL.sqlname}, bindexprs, outputvars);

For Example:

SQLExec(\

where deptid between :1 and :2\;

11、FetchValue:用此函数来返回一个缓冲区域中具体滚动水平行。

Syntax:

FetchValue(scrollpath, target_row, [recordname.]fieldname);

For Example:

FetchValue(Scroll.ADDRESS_TYPE_VW, &TypeLoc, ADDRESSES.EFFDT, 1);

12、ActiveRowCount:用此函数来返回一些活动行指定滚动区的活动页。

Syntax:

ActiveRowCount(Scrollpath)

Where scrollpath is:

[RECORD.level1_recname, level1_row, [RECORD.level2_recname, level2_row, ]] RECORD.target_recname

For Example:

ActiveRowCount(Scroll.ADDRESS_TYPE_VW, &TypeLoc, ADDRESSES.EFFDT);

13、Split:用此函数将字符串转换成字符串数组,从而查找特定字符串。

Syntax:

Split(string, separator);

For Example:

Split(\HKG,IND,BRA\

14、GetLevel0:使用GetLevel0函数创建一个行集对象,对应于0级的组件缓冲区。如果使用

从PeopleCode的不相关网页,它从目前的情况下返回基本行集。GetLevel0没有参数,但其有个缺省的方法GetRow(),指定GetLevel0()(1)相当于指定GetLevel0().GetRow(1). Syntax:

GetLevel0(); For Example:

&rsPosition = GetLevel0()(1).GetRowset(Scroll.POSITION_DATA);

2012/2/21: 用AE生成薪资表: 建组件页面,

本文来源:https://www.bwwdw.com/article/h387.html

Top