如何在显示前过滤数据,使得Grid只列出符合逻辑要求的数据?

 

Gird在PeopleSoft中的用法是比较普遍的,通常可以用来维护一个列表,PeopleSoft自身的机制是可以对单表进行添加和修改,但在实际运用中会遇到一些特殊的情况,这时可以借助PeopleCode来达到我们的需求。

如何在显示前过滤数据,使得Grid只列出符合逻辑要求的数据?
在默认情况下,Grid会显示数据库表里面所有的数据,但有时我们希望只显示某一部分数据,这时我们可以在Record.Field.RowInit数据加载时过滤数据。假设Page设计为2个Level.
 
 

Local Rowset &HDR_ROWSET, &LINE_ROWSET, &LINE_ROWSET2;
Local Record &LINE_REC, &LINE_REC2, &LINE_REC3, &LINE_REC4;

&HDR_ROWSET = GetLevel0();

&LINE_ROWSET = &HDR_ROWSET(1).GetRowset(1);如果一个component里面有多个page,则根据page所处的位置依次叠加。

&LINE_REC = &LINE_ROWSET(1).DBS_SECAUDT_VW4; 说明:DBS_SECAUDT_VW4是Grid里面要加载的view
&Condition = "where AUTHORIZED_OPRID=:1 or DBS_SEC_AUTHOPR=:2";说明:设置过滤条件,只加载AUTHORIZED_OPRID或者DBS_SEC_AUTHOPR等于某一个人的数据。

ScrollFlush(Record.DBS_SECAUDT_VW4);说明:将Grid里面的数据清空。
ScrollSelect(1, Record.DBS_SECAUDT_VW4, Record.DBS_SECAUDT_VW4, &Condition, %OperatorId, %OperatorId);说明:将符合条件的数据填充到Grid中。
至此,页面加载的时候就只会列出符合条件的数据了

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值