填充行集内的2条记录

时间:2014-09-15 18:04:53

标签: record peoplesoft rowset peoplesoft-app-engine

我试图找出如何在一个行集中填充两个单独的记录以发布到集成代理。我正在分别填充两个行集(RS1表示记录名称的1级,RS表示人员的0级记录)

&RS1 = CreateRowset(Record.NAMES); 
&RS1.Fill("Where emplid=:1 and name_type=:2", &emplid, &nameType); 

&RS = CreateRowset(Record.PERSON, &RS1); 
&RS.Fill("Where emplid=:1", &emplid);

我也尝试在上面的代码之后使用它,并且NAMES记录没有显示在行集中

&RS1.CopyTo(&RS, Record.NAMES, Record.PERSON);

问题在于,当我在运行后查看& RS时,& RS中的名称记录不包含来自& RS1的任何名称信息,但填充了人员记录。有人可以帮助我如何在& RS中使用来自& RS1的数据获取此名称记录吗?

1 个答案:

答案 0 :(得分:1)

您的代码存在的问题是& RS1实际上仅用于确定& RS的结构。实际实例化的行集不是& RS的一部分。在下面的代码中,注意我获取特定行的NAMES行集并将其分配给& RS1,然后填写它。

Local Rowset &RS, &RS1;

&RS1 = CreateRowset(Record.NAMES);
&RS = CreateRowset(Record.PERSON, &RS1);

&RS.Fill("Where emplid=:1", &emplid);
&RS1 = &RS(1).GetRowset(Scroll.NAMES);
&RS1.Fill("Where emplid=:1 and name_type=:2", &emplid, &nameType);