【问题标题】:Issue in setting unique ID in Domino designer在 Domino 设计器中设置唯一 ID 的问题
【发布时间】:2015-03-20 02:12:07
【问题描述】:

我是 Domino 设计器和 Lotus 脚本的新手,

关注我的second question

我在设置唯一 ID 时遇到了一些问题(对于表单中的 id 字段)。

我的 Id 字段值公式:

T_List:=@DbColumn("" : "NoCache"; "Local"; "DBintro";"testview"; 1); @If(@IsNewDoc & @Elements(T_List)=0;1;@IsNewDoc & !@IsError(T_List);@Subset(T_List;1) + 1;id)

我在本地有数据库(没有共享)。

推荐this link AndrewB 的回答

服务器:本地

数据库名称:DBintro

视图名称:testview id - 表单中的字段(需要保存在数据库中时设置)

我得到的错误

字段编号!不存在

请帮我摆脱这个.. 谢谢

编辑:1 更新代码

T_List:=@DbColumn("" : "NoCache"; "Local"; "DBintro";"testview"; 1);
T_List:=@Sort(T_List; [DESCENDING]);
@if(@Iserror(T_List);
  1;
  @Subset(T_List;1)+1
);

【问题讨论】:

  • 嗨 - 这个错误发生在哪里?什么时候 - 是在创建新文档还是打开现有文档时?
  • 当我启动 IBM notes(preview) @user2808054 我什至无法打开预览
  • 错误的公式。服务器名和文件名之间应该是冒号,而不是分号。当然,没有名为“Local”的服务器。您只需将“”用于本地。 @DbColumn("" : "NoCache"; "":"DBintro";"testview"; 1);

标签: unique lotus-notes lotus-domino lotus lotus-formula


【解决方案1】:

将“testid”字段的类型设置为“数字”
将公式更改为

_List:=@DbColumn("" : "NoCache"; ""; "testview"; 1);
@If(    @IsError(_List);
            1;
        _List = "";
            1;
            @Subset(_List; 1) + 1
)

将列排序设置为“降序”

【讨论】:

    【解决方案2】:

    也许重新安排逻辑可能会有所帮助 - 在 Id 字段的公式中尝试此操作。使字段“组合时计算”(在属性框中的字段类型器旁边 - 这意味着它仅在首次创建文档时评估,并且在之后保持不变 - 保存检测 @IsNewDoc :-D ):

    T_List:=@DbColumn("" : "NoCache"; "Local"; "DBintro";"testview"; 1);
    @if(@Iserror(T_List);
      1;
      @Subset(T_List;1)
    );
    

    如果文档不是新的,您不必担心 id 字段会自行返回,因为在第一次保存后,computed when combined 字段停止计算。

    【讨论】:

    • 我想在表单本身中显示 id,当我保存表单时,我希望它与其他字段一起被推送到数据库中
    • 视图“DBIntro”是否按第一列降序排列?你得到了列表中的 forst 元素,所以它假设了这一点。替代方法是将视图保持未排序(最近查看的文档在视图末尾)并执行 @Subset(T_List;-1) 获取最后一个元素
    • 我不知道它是否已排序,所以我去吧:P
    【解决方案3】:

    您的 dbColumn 公式错误。服务器名和文件名之间应该有一个冒号,而不是分号。当然,没有名为“Local”的服务器。您只需将“”用于本地。此外,文件名是完整的文件名 - “DBintro.nsf”,而不是“DBintro”。

    T_List:=@DbColumn("Notes":"NoCache"; "":"DBintro.nsf";"testview"; 1);
    T_List:=@Sort(T_List; [DESCENDING]);
    @if(@Iserror(T_List);
      1;
      @Subset(T_List;1)+1
    );
    

    【讨论】:

      【解决方案4】:

      您是否将唯一 ID 设置为文本字段,因为我发现公式必须转换为文本值,而不仅仅是唯一文档 ID。

      【讨论】:

      • 不,我认为这就是原因,我总是得到 1 。你能帮我解决吗?
      猜你喜欢
      • 2015-01-30
      • 1970-01-01
      • 2010-12-10
      • 1970-01-01
      • 2017-03-17
      • 2012-10-22
      • 2015-05-10
      • 1970-01-01
      • 2021-05-10
      相关资源
      最近更新 更多