将值添加到多值字段并显示它们

时间:2015-04-23 08:31:03

标签: xpages

我有3个多值字段,我已经在其中插入了值。所有字段都是文本类型,可食用。我想要做的是我想在xpages中添加功能,以便我可以为这些字段添加新值。 这是我到目前为止所得到的:

在保存按钮上触发的代码:

var statuss = document1.getItemValue("statuss");
var stat_vec:java.util.Vector = document1.getItemValue("statuss_update");
stat_vec.add(statuss);
document1.replaceItemValue("statuss_update", stat_vec);

var vards = session.getEffectiveUserName();
var vards_vec:java.util.Vector = document1.getItemValue("name_update");
vards_vec.add(vards);
document1.replaceItemValue("name_update", vards_vec);

var laiks = session.createDateTime("Today");
var laiks_vec:java.util.Vector = document1.getItemValue("time_update");
laiks_vec.add(laiks);
document1.replaceItemValue("time_update", laiks_vec);

document1.save();

我已经考虑过calculateField的代码,其中值显示在3个多值字段中+当我插入新值时它会刷新:

var x = document1.getItemValue("statuss_update");
    var y = document1.getItemValue("name_update");
    var z = document1.getItemValue("time_update");


    var html = "<head><link rel=\"stylesheet\" type = \"text/css\" href=\"test.css\"></head><table id=\"tabula\">";

    for (i = 0 ; i < x.size()-1; i++){
        html= html + "<tr><td>" + x[i] +  "</td><td>" + y[i] + "</td><td>" +z[i] + "</td></tr>";
        }
    html = html + "</table>";

我可以插入值并将它们显示在HTML表格中,但问题在于保存编辑。每当我尝试保存文档时(我有一个保存文档事件的保存按钮),我收到错误:

  

无法保存文件1B06 NotesException:Unknown或   Vector

中不支持的对象类型

据我了解,我试图在字段中保存某些内容,但不支持值类型。任何人都可以给我一个暗示我做错了什么或在哪里寻找问题?很长一段时间以来一直坚持这一点。

1 个答案:

答案 0 :(得分:2)

是这部分吗?

var statuss = document1.getItemValue("statuss");
var stat_vec:java.util.Vector = document1.getItemValue("statuss_update");
stat_vec.add(statuss);

看起来您正在获取statuss项的值(可能是Vector ??)并将其添加到statuss_update的Vector中。如果它只是一个值,getItemValueString()会更好。

我不确定这是否正确,但你提到所有字段都是文本类型,但看起来你正在将DateTime传递给第三个字段。

在进行保存之前,可能值得分析向量的内容,只是为了确保它们包含您期望的内容。