Notes中几个处理多值域的通用函数
1.查找出查找内容在多值域中的索引值
getItemIndex(域名,域值,文档)
Public Function getItemIndex(ByVal fieldName As String, ByVal itemVal As Object,
ByVal doctt As NotesDocument) As Integer
Dim i As Integer
Dim j As Integer
Dim item As NotesItem
item = doctt.GetFirstItem(fieldName)
j = Ubound(item.Values)
For i = 0 To j
If itemVal = item.Values(i) Then
getItemIndex = i
Exit Function
End If
Next
getItemIndex = -1
End Function
2.删除多值域中的数据
delItemValues(多值域名,更改的索引值,所在文档对象)
Public Sub delItemValues(ByVal fieldName As String, ByVal index As Integer, ByVal doctt As NotesDocument)
Dim i As Integer
Dim temp() As Object
Dim item As NotesItem
item = doctt.GetFirstItem(fieldName)
Dim j As Integer j = Ubound(item.values)
'-----------
If j = 0 Then
'当J为0时,即仅有一个值,给予空值即可
Call doctt.ReplaceItemValue(fieldName, "")
Exit Sub
End If
'------------
If Trim(item.Values(0)) = "" Then
index = j
End If
If index > j Then
'仍然做为最后一个数据加入
j = j + 1 '索引位仅增加1
index = j '重定义索引位,防止超出范围
End If Redim temp(j-1) As Variant '重定义数组
For i = 0 To index - 1
temp(i) = item.values(i)
Next For i = index To j - 1
temp(i) = item.values(i + 1)
Next Call doctt.ReplaceItemValue(fieldName, temp)
'End If
'End If
End Sub
3.更改多值域中的数据
editItemValues(多值域名,更改的索引值,更改的内容,所在文档对象)
Public Sub editItemValues(ByVal fieldName As String, ByVal index As Integer, ByVal itemVal As Object,
ByVal doctt As NotesDocument)
Dim i As Integer
Dim temp() As Object
Dim item As NotesItem
item = doctt.GetFirstItem(fieldName)
Dim j As Integer j = Ubound(item.values)
If Trim(item.Values(0)) = "" Then
index = j
End If
If index > j Then
'仍然做为最后一个数据加入
j = j + 1 '索引位仅增加1
index = j '重定义索引位,防止超出范围
End If Redim temp(j) As Variant '重定义数组 For i = 0 To j
If i = index Then
temp(i) = itemVal
Else
temp(i) = item.values(i)
End If
Next
Call doctt.ReplaceItemValue(fieldName, temp)
'End If
'End If
End Sub
Notes中几个处理多值域的通用函数的更多相关文章
- Lotus开发之Lotus Notes中域的验证
一:介绍 Lotus中的域主要有以下的类型:文本,日期/时间,对话框列表,复选框,单选按钮,RTF等等.Lotus中域的验证方式有很多种公式,lotusscript,javascript等 ...
- Lotus Notes中编程发送邮件(二)
在编程发送各种类似通知的邮件时,时常会需要发件人显示为某个特定的帐户,比如某个部门的名称或者管理员的名字.另一种需求是,用户收到某封邮件后,回复邮件的地址不同于发件人栏显示的地址.而正常情况下,发送邮 ...
- 46. Lotus Notes中编程发送邮件(一)
邮件是Lotus Notes体系的核心和基本功能,以至于Send()是NotesDocument的一个方法,任何一个文档都可以被发送出去,Notes里的一封邮件也只是一个有一些特殊字段的文档.在程序开 ...
- 在 Ubuntu 15.04 中使用 ubuntu-make、Eclipse 4.4、Java 8 以及 WTP
Ubuntu 今天发布新版本了 其实昨天(2015-04-23)我就看到了 Ubuntu 发布新版本的新闻,下班后回家的第一件事就是访问 Ubuntu 的官网,很可惜,没有提供下载.今天(2015-0 ...
- twitter storm源码走读之4 -- worker进程中线程的分类及用途
欢迎转载,转载请注明出版,徽沪一郎. 本文重点分析storm的worker进程在正常启动之后有哪些类型的线程,针对每种类型的线程,剖析其用途及消息的接收与发送流程. 概述 worker进程启动过程中最 ...
- 52. 模版和设计元素——Lotus Notes的代码重用
不论是理论上还是实用上,代码重用都是编程的一个重要议题.可以从两个角度来讨论代码重用. 一是逻辑上代码以怎样的方式被重用.既可以通过面向对象的思想普及以来耳熟能详的继承的方式.比如先建了一个车的基类, ...
- worker进程中线程的分类及用途
worker进程中线程的分类及用途 欢迎转载,转载请注明出版,徽沪一郎. 本文重点分析storm的worker进程在正常启动之后有哪些类型的线程,针对每种类型的线程,剖析其用途及消息的接收与发送流程. ...
- 聊一聊C# 8.0中的await foreach
AsyncStreamsInCShaper8.0 很开心今天能与大家一起聊聊C# 8.0中的新特性-Async Streams,一般人通常看到这个词表情是这样. 简单说,其实就是C# 8.0中支持aw ...
- MM-实际应用中的难题
SAP系统实际应用中的十大难题——塞依SAP培训 难题1:采购料维修 如果有物料坏了,需要退回给供应商处维修,此时一般不做退货.因为,第一,供应商不一定会乐意:第二,往来单据也无谓地增多:第三,最重要 ...
随机推荐
- .NetCore源码阅读笔记系列之Security (三) Authentication & AddOpenIdConnect
通过第二篇文章我们已经知道了授权的内部实现通过自定义的授权Handler来的,同样的道理 OpenIdConnect 同样是通过 OpenIdConnectHandler来请求授权的 那么它内部又是怎 ...
- gitlab的docker安装,非标准端口,如何处理?
这个问题的定义是: 如果我们不是用的80端口对外提供服务, 但gitlab的docker容器里的nginx却是80端口, 那么,在我们clone代码时,带的Http地址也会是80端口,这显然会出现问题 ...
- 在Centos下用alternative命令切换各个版本的jdk的方法
https://blog.csdn.net/nsrainbow/article/details/43273991 https://blog.csdn.net/yzh_1346983557/articl ...
- JVM启动过程 类加载器
下图来自:http://blog.csdn.net/jiangwei0910410003/article/details/17733153 package com.test.jvm.common; i ...
- Kubernetes核心概念总结
目录贴:Kubernetes学习系列 1.基础架构 1.1 Master Master节点上面主要由四个模块组成:APIServer.scheduler.controller manager.etcd ...
- BZOJ1040 [ZJOI2008]骑士 基环树林(环套树) 树形动态规划
欢迎访问~原文出处——博客园-zhouzhendong 去博客园看该题解 题意概括 有n个人,每一个人有一个最恨的人. 并且,每一个人有一个权值. 一个人不可以和他最恨的人同时被选中. 现在请你求出在 ...
- R从3.4升级到3.5
这里介绍的就是R的一个包:installr. installr {installr} R Documentation Installing software from R Description Gi ...
- [微信小程序] 微信小程序下拉滚动选择器picker绑定数据的两种方式
小程序 picker 多列选择器 数据动态获取 需求是将各校区对应各班级的数据 以两列选择器的方式展示出来,并且可以在选择完成之后记录选结果参数. 校区数据 和 班级数据 分别是两个接口,以 校区 t ...
- Eclipse添加git插件上传项目到github
前提: 在Github已经注册成功自己的账号 新建一个仓库 创建成功后记住url: 首先像安装Pydev一样 点击help的Install New Software 点击Add后添加链接http:// ...
- 【Java并发核心三】CountDownLatch、CyclicBarrier及Phaser
个人感觉,看书学习还是需要“不求甚解”,因为一旦太过于计较小的得失,就容易钻牛角尖,学习进度也慢.我们完全可以先学一个大概,等到真正用到的时候再把那些细节丰富起来,就更有针对性. 所以,针对java并 ...