
点击新建视图按钮,从“以下视图拷贝样式”(R8版本的)这参数处是否有默认视图?
如果有,然后点确定后出现该错误提示,那说明是那个视图有问题。
你可以选择-空白-创建一个全空白的视图。 然后再重新设计。
运行这段代码的时候,必须保证Excel的数据格式与文档的数据格式一致,一个单元格对应一个域。
本代码从第二行开始读取,认为第一行是标题,而不是有用的数据。
本代码判断Excel数据已经读取完毕的条件是:准备读取的第一个单元格的内容为空。
导入后,刷新视图就可以显示数据了。
Sub Click(Source As Button)
Dim ws As New NotesUIWorkspace 'workspace
Dim ss As New NotesSession 'session
Dim db As NotesDatabase 'database
Dim files As Variant 'file name
Dim schar As String 'cell content
Dim doc As NotesDocument 'notes document
Dim excelapplication
Dim i,sheet
Set db = sscurrentdatabase
files = wsopenfiledialog(False,"请选择要导入的Excel文件","Excel file/xls")
sheeet = 1
If Not(Isempty(files)) Then '如果用户选择了文件,或者输入了文件名,那么就开始准备打开excel文件。
Set excelapplication = createobject("excelapplication")
Set excelworkbook = excelapplicationworkbooksopen(files)
If excelworkbook Is Nothing Then '如果未找到文件,则退出
excelapplicationquit
Exit Sub
End If
Set excelsheet = excelworkbookworksheets(1)
i = 2 '从第二行开始读取
'一个sheet里面所有记录循环
Do Until Cstr(excelsheetcells(i,1)value) =""
Set doc = New NotesDocument(db)
docForm = "物资计划"
docxmmc = excelsheetcells(i,1)value '项目名称
docjhbh = excelsheetcells(i,2)value '计划编号
docjhfypc = excelsheetcells(i,3)value '计划发运批次
docclmc = excelsheetcells(i,4)value '材料名称
docggxh = excelsheetcells(i,5)value '规格型号
docbz = excelsheetcells(i,6)value '备注
doccz = excelsheetcells(i,7)value '材质
docdw = excelsheetcells(i,8)value '单位
docjhsl = excelsheetcells(i,9)value '计划数量
docdhsjyq = excelsheetcells(i,10)value '到货时间要求
docshyj = excelsheetcells(i,11)value '审核意见
doccgr = excelsheetcells(i,12)value '采购人
docht_loadmark="Excel 导入 at " + Cstr(Now())
Call docsave(False,False) '保存
i=i+1
Loop
excelworkbookclose(False)
excelapplicationquit
Set excelapplication = Nothing
End If
End Sub
------------------------------------------------------------------------
应当注意的是:如果当前视图一个文档也没有显式的选中(即用鼠标点取),那么lotus会自动默认选中第一条文档。
Sub Click(Source As Button)
Dim ws As New NotesUIWorkspace
Dim uidoc As NotesUIDocument
Dim curdoc As NotesDocument
Set uidoc = wsCurrentDocument
Dim db As NotesDatabase
Dim view As NotesView
Dim doc As NotesDocument
Dim session As New NotesSession
Dim excelApplication As Variant
Dim excelWorkbook As Variant
Dim excelSheet As Variant
Dim collection As notesdocumentcollection
Dim i,index1,index2 As Integer
Set db = sessionCurrentDatabase
Set collection = dbUnprocessedDocuments 'UnprocessedDocuments是选中的文档集合
Set doc = collectionGetFirstDocument()
If (doc Is Nothing) Then
Messagebox("请选择你要导出的记录!")
Exit Sub
End If
filenames = wsSaveFileDialog(False,"导出到Excel","Excel文件|xls", "C:", "物资计划按项目xls")
If Isempty(filenames) Then '如果没有得到文件名,则提示后退出
Messagebox("未提供目标文件名称")
Exit Sub
End If
Set excelApplication = CreateObject("ExcelApplication") '创建Excel对象
excelApplicationVisible = True '显示Excel
Set excelWorkbook = excelApplicationWorkbooksAdd '添加表
Set excelSheet = excelWorkbookWorksheets("Sheet1") '选中表
'第1行写标题
excelSheetCells(1,1)Value = "项目名称"
excelSheetCells(1,2)Value = "计划编号"
excelSheetCells(1,3)Value = "计划发运批次"
excelSheetCells(1,4)Value = "材料名称"
excelSheetCells(1,5)Value = "规格型号"
excelSheetCells(1,6)Value = "材质"
excelSheetCells(1,7)Value = "单位"
excelSheetCells(1,8)Value = "计划数量"
excelSheetCells(1,9)Value = "到货时间要求"
excelSheetCells(1,10)Value = "审核意见"
'从第2行开始写数据
i = 2
While Not(doc Is Nothing)
excelSheetCells(i,1)Value = docxmmc(0)
excelSheetCells(i,2)Value = docjhbh(0)
excelSheetCells(i,3)Value = docjhfypc(0)
excelSheetCells(i,4)Value = docclmc(0)
excelSheetCells(i,5)Value = docggxh(0)
excelSheetCells(i,6)Value = doccz(0)
excelSheetCells(i,7)Value = docdw(0)
excelSheetCells(i,8)Value = docjhsl(0)
excelSheetCells(i,9)Value = docdhsjyq(0)
excelSheetCells(i,10)Value =docshyj(0)
i = i+1
Set doc = collectionGetNextDocument(doc)
Wend
excelWorkbookSaveAs(filenames(0))
excelApplicationQuit
Set excelApplication = Nothing
Messagebox("文件已保存到" +filenames(0))
End Sub
使用 Domino Designer 851 创建 Java 代理
在 Domino Designer 851 中打开 Notes 数据库文件 TestNSFnsf, 展开 Code 节点,在 Agents 节点上点击右键,在菜单中选择”New Agent”,在d出的对话框中选择”Java”,命名为”DataExtractionAgent”。如图 1 所示:
系统会自动在默认包中创建 JavaAgentjava 文件,该类扩展了 lotusdominoAgentBase 类,并重载了 NotesMain() 方法。
清单 1 Java 代理程序代码示例
public void NotesMain () {
try {
Session session = getSession();
AgentContext agentContext = sessiongetAgentContext();
// (Your code goes here)
} catch(Exception e) {
eprintStackTrace();
}
}
使用 session 对象可以获取当前的代理程序所处的 Notes 数据库或者其他数据库对象,并调用 Notes Java API 实施数据库文档的增删改查,以及元数据的读取等 *** 作。
agentContext 对象是 Java 代理的运行环境对象,可用来获取被用户选择的 Notes 数据库文档列表等对象。当 Java 代理被触发时,AgentBase 类的 NotesMain() 方法将被调用。
接下来,我们可以在 Java 代理中继续建立其它的 Java 包和类;如果我们需要在 Java 代理程序中调用第三方的 Java API,我们可以将依赖的 Java 类库拷贝到 Notes 或 Domino 内置的 Jvm 的 lib/ext 目录下。
在 Domino Designer 中,切换到 Java 视图,发现 DataExtractionAgent 作为一个独立的 Java 项目存在,Domino Java Library 下可以看到新增加的 Java 类库,agentjar 包含了从 Excel 文件中读取数据保存在 DB2 数据库中业务逻辑,而 db2 开头的两个 jar 包提供了 *** 作 DB2 数据库的 API。
图 2 Java 代理程序在 Java 包视图中的显示
更详细可以参考:
>
以上就是关于domino lotus点击视图的新建按钮,出现:运算符或 @Function 的数据类型不正确: 应为时间/日期类型全部的内容,包括:domino lotus点击视图的新建按钮,出现:运算符或 @Function 的数据类型不正确: 应为时间/日期类型、domino中excel的导入导出如何实现、domino里面怎么使用java等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)