2

使用 Domino Designer 8.5。如果我有一个带有单选按钮字段的表单,是否可以在 LotusScript 中禁用该字段,甚至可能在表单的 Postopen 中禁用?

到目前为止,实现这一目标的唯一方法是使用字段本身的 Input Enabled 公式,但我很难理解何时触发......如果我尝试输入 @StatusBar 或 @Prompt 公式在那里打电话,然后永远不会触发任何输入启用通知。

如果 Input Enabled 是实现此目的的方法,而不是 LotusScript,那么我有没有办法a)设置 Input Enabled 条件的公式加上 b)获得一些视觉输出的方法,无论是状态栏还是消息框,要么只是表明公式已被触发,要么 - 甚至更好 - 让我知道我想检查的某个变量的值?

4

2 回答 2

4

每次刷新文档(F9、保存、NotesUIDocument.Refresh 等)时都会触发输入启用公式,它不能包含任何与用户“交互”的代码。

但你可以这样做:

  1. 创建字段“InputEnabled”
    拥有“控制”字段的最佳方法是使其“计算显示”。这样它就不会存储在文档中。作为一个公式,您只需输入@ThisValue,它本身不会更改其值,并且可以使用 LotusScript 进行设置。如果你想有一个“初始”值,那么公式将是:@If( @ThisValue = "" ; "YES" ; @ThisValue )
  2. 在其他字段的“启用输入”公式中,编写代码:

    InputEnabled = "是"

  3. 使用 LotusScript (NotesDocument.ReplaceItemValue("InputInabled", "YES") 或直接在字段中使用公式填充“InputEnabled”- 字段。

像这样,您可以轻松“查看”条件是什么(在 InputEnabled 字段中)并使用公式或脚本进行更改。

于 2015-06-01T10:08:35.593 回答
0

禁用单选按钮字段的老式方法:

如果公式为真,您将不得不使用 **Hide 段落”。定义一个字段:MyButEnabled,根据您启用(显示)或禁用(隐藏)该字段。为了 UI 方便,显示一条仅显示值的补充行您的单选按钮(您也可以使用计算出的单选按钮,但它不是很漂亮)。

在打开后设置字段MyButEnabled的适当值。不要忘记调用 uidoc.RefreshHideFormulas 方法。

注释输入启用方式:(另见:http ://www-01.ibm.com/support/docview.wss?uid=swg21173862 )注释输入启用公式为(例如)

@if(MyButEnabled="Y" ; 1 ; 0)

当您打开表单时,计算公式,如果结果为 0,则该字段不可编辑,1 将允许编辑该字段。

如果您更改了 MyButEnabled 的值,那么您需要创建一个 UIdocument.refresh 以便更改以反映在 UI 中。

于 2015-06-01T10:12:45.433 回答