record - Peoplesoft CreateRowset 相关显示记录

标签 record peoplesoft rowset peoplesoft-app-engine

根据Peoplebook here , CreateRowset 函数有参数{FIELD.fieldname, RECORD.recname} 用来指定相关的显示记录。

我曾尝试像下面这样使用它(仅作为示例):

&rs1 = CreateRowset(Record.User, Field.UserId, Record.UserName);
&rs1.Fill();

For &k = 1 To &rs1.ActiveRowCount
MessageBox(0, "", 999999, 99999, &rs1(&k).UserName.Name.Value);
End-for;

(Record.User只包含UserId(key), Password.
Record.UserName 包含 UserId(key), Name.)

获取不到UserName.Name的值,是不是我理解错了这个参数的用法?

最佳答案

填充是个问题。来自doco :

Note: Fill reads only the primary database record. It does not read any related records, nor any subordinate rowset records.

话虽如此,这是我所知道的从数据库批量填充独立行集的唯一方法,因此我无法轻易地看到行集中字段的用途。

最简单的解决方案就是创建一个 View ,但如果您必须经常这样做,那么它很快就会过时。另一种方法是自己循环遍历行集来加载相关字段。像这样的东西:

For &k = 1 To &rs1.ActiveRowCount
  &rs1(&k).UserName.UserId.value = &rs1(&k).User.UserId.value;
  &rs1(&k).UserName.SelectByKey();
End-for;

关于record - Peoplesoft CreateRowset 相关显示记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35475691/

相关文章:

delphi - 为什么我不能在 TRecord 中使用变量?

mysql - 如何在 MySQL 中以智能方式更改记录位置?

oracle - 如何获取 PeopleCode 中 SQL 对象的列名?

java - 来自 Java 的经过身份验证的 REST Web 服务集成

ssl - 通过 PeopleCode/Soft 的 FTP SSL

java - 在android中录制语音通话

java - 有没有一种方法可以更新 Arraylist 中的记录而不删除现有记录?

java - 我什么时候应该使用连接的 RowSet,什么时候应该使用断开连接?

java - org.springframework.jdbc.core.JdbcOperations.query(PreparedStatementCreator, ResultSetExtractor) 是否有可能返回封闭的 RowSet?