PeopleSoft 开发 数组

在创建数组时不需要声明大小,Array可以动态调整。数组的大小受可用内存的限制。

声明数组
Local Array of Number &MYARRAY;
Local Array &ARRAYANY;

数据可以声明为1维或多维数组。最多定义15维度。
Local   Array  of   Array  of   Array  of Number &MYARRAY;
Local   Array  of   Array  &MYA2;

实例化数组
可以用CreateArray实例化数组
&MYARRAY =   CreateArray(&TEMP);   /*实例化一个一维数组,包含一个元素值为&TEMP*/
&MYARRAY =   CreateArrayRept(&MYSTRING, 3);  /*实例化一个一维数组,包含3个元素值都为&MYSTRING*/

数组操作
索引从1开始
&MyArray[1] = 123;
&temp = &memory[1][2][3];
&temp = &memory[1, 2, 3]; /* Same as preceding line.  */
MyFunc(&MyArray[7]);
MyFunc(10)[15] = "a string";

数组常用于数据库读取数据

Function get_gp_gl_group(&pinNum As string) Returns array of array of any
   Local string &sql = "Select PAY_ENTITY,BUSINESS_UNIT,GROUPING_CODE From Ps_Gp_Gl_Group_Dtl pgd Where pgd.pin_num=:1";
   Local SQL &grpRec = CreateSQL(&sql, &pinNum);
     Local array of array of any &grpArray = CreateArrayRept(CreateArrayAny(), 0);
   Local array of any &grpAtt = CreateArrayAny();
   Local number &i = 1;
   While &grpRec.Fetch(&grpAtt)
      &grpArray.Push(&i);
      &grpArray [&i].Push(&grpAtt);
      &i = &i + 1;
   End-While;

   &grpRec.Close();
   Return &grpArray;
End-Function;



数组声明
Local  array of any &ARY_ROW;
Local  array of array of any &ARY_SQLRST_SET;
Local  array of array of array of any &ARY3D;
 
数组初始化
&ARY_ROW =  CreateArrayAny();
&ARY_SQLRST_SET =  CreateArray(CreateArrayAny());
&ARY3D =  CreateArray(CreateArray(CreateArrayAny()));
 
从数组头部取出元素
&ARY_SQLRST_SET. Shift()
 
向数组头部添加元素
&MYARRAY. Unshift(300)
 
从数组尾部取出元素
&ARY_SQLRST_SET. Pop() 
 
向数组尾部添加元素
&ARY_SQLRST_SET. Push(CreateArrayAny())
 
在数组中查找元素
&ARR. FIND(&EMPLID)  
 

              

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值