domino lotus点击视图的新建按钮,出现:运算符或 @Function 的数据类型不正确: 应为时间日期类型

domino lotus点击视图的新建按钮,出现:运算符或 @Function 的数据类型不正确: 应为时间日期类型,第1张

点击新建视图按钮,从“以下视图拷贝样式”(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等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/9845717.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-02
下一篇2023-05-02

发表评论

登录后才能评论

评论列表(0条)

    保存