zoukankan      html  css  js  c++  java
  • 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
  • 相关阅读:
    xgqfrms™, xgqfrms® : xgqfrms's offical website of GitHub!
    xgqfrms™, xgqfrms® : xgqfrms's offical website of GitHub!
    并行导致的进程数过大无法连接数据库
    Oracle 等待事件(Wait Event):Sync ASM rebalance 解析
    2套RAC环境修改scanip后客户端连接异常
    数据流通技术工具
    Hack The Box——Scavenger
    MySQL中InnoDB引擎对索引的扩展
    30分钟,教你从0到1搞定一次完整的数据可视化分析!
    【2020-MOOC-浙江大学-陈越、何钦铭-数据结构】树和堆(第五周的笔记和编程作业)
  • 原文地址:https://www.cnblogs.com/hannover/p/2065214.html
Copyright © 2011-2022 走看看