2015-06-01 87 views
-1

我在窗体上使用格式“name | UID”从视图加载客户端名称时显示了客户端名称,但在该字段中保存了UID。当我拥有UID时访问文档

我现在想用UID为客户端查找名称,并将其保存在一个领域上使用下面的代码是不可见的XPage:

// ignore when UID is null 
if (getComponent("parentUID").getValue() == null) 
    return false; 

var UID:string = getComponent("parentUID").getValue(); 
var doc:NotesDocument = database.getDocumentByUNID(UID); 

// now set your fields 
document1.setValue("nachname", doc.getItemValueString ("nachname")); 
document1.setValue("vorname", doc.getItemValueString ("vorname")); 

我做一个简单的动作附加到一个按钮。接下来的简单操作是保存。

代码崩溃,错误如下:

错误而执行JavaScript动作表达 脚本解释器误差,线= 8,列= 42:[类型错误]发生异常调用方法NotesDatabase.getDocumentByUNID(java.lang中。字符串)null

我已经将parentUID复制到文档上的字段,并且我正在获取正确的UID并且该文档存在于数据库中?

任何想法?

PS:我加入这个到现有的应用程序和当前文档不是响应文件 - 不能,不幸的是改变:O(

回答

0

它看起来像你缺少你getComponent的get.Value()线

尝试getComponent("parentUID").getValue() == null

我的猜测是,这是导致代码运行时的UID是空的。这意味着该代码运行时,它确实是空的,你的努力以检查ISN” t working。


感谢您的检查。

  • 您可以放入print()语句并确保您在var UID中有一个值。
  • 另一件事,请大写字母“字符串”,因为Java类是大写。
+0

我确实错过了.getValue() - 感谢你的支持 - 它没有帮助解决这个问题,但是...任何其他想法? –

1

好的,我发现我的问题 - XPages返回的UID,但它包括一个领先的空间。当我连接这些值时,我做了以下操作:“name | UID”,即我向管道符号添加了前导空格和尾随空格,以使代码易读 - 这导致了问题。

相关问题