Lotus notes 从lotus notes字段提取值列表

Lotus notes 从lotus notes字段提取值列表,lotus-notes,Lotus Notes,我正在使用lnjavaapi将lotusnotes数据库迁移到sqlserver。在遍历文档中的每个LN字段时,我发现所有表格信息都有字段名,如fld、fld_1、fld_2等,其中fld表示一个列的名称,编号方案负责处理每一行。是否有一种简单的方法可以使用LN java API将这些信息提取为数组?没有简单的方法,或者更具体地说,Lotus Notes无法帮助您完成此任务。Lotus Notes是一个“平面文件”数据库,每个文档中都允许有任意数量的项(列) 尽管Lotus Notes表单可能使

我正在使用lnjavaapi将lotusnotes数据库迁移到sqlserver。在遍历文档中的每个LN字段时,我发现所有表格信息都有字段名,如fld、fld_1、fld_2等,其中fld表示一个列的名称,编号方案负责处理每一行。是否有一种简单的方法可以使用LN java API将这些信息提取为数组?

没有简单的方法,或者更具体地说,Lotus Notes无法帮助您完成此任务。Lotus Notes是一个“平面文件”数据库,每个文档中都允许有任意数量的项(列)

尽管Lotus Notes表单可能使用表或布局区域以表格格式显示数据,但保存该数据的文档(记录)就像SQL表的一行,并且没有方法对该文档的项进行逻辑分组,例如,将所有fld_uu项关联在一起

我的建议是使用您认为方便的任何数据结构,将数据从项中获取到SQL中。这可能是一个数组或自定义对象,然后可以保存到数据库中

嗯,“简单”可能是一个模棱两可的词

如果你还没有解决这个问题。您可以编写一个循环并获取每个字段的方法,如下所示:

import lotus.domino.*;
....
public static void main(String[] arg) {

    for(int i=1 ;i<MAX_FIELD;i++) {
        Item itm = doc.getFirstItem("field_"+String.valueOf(i));
        if (itm != null) {
            // if it's a multi-value field.
            Vector v = item.getValues();
            // do other stuff here with the values.
         };
    }
}
导入lotus.domino.*; .... 公共静态void main(字符串[]arg){ 对于(int i=1;i