Lotus notes 如何在lotus notes中确定字段中的不同条目

Lotus notes 如何在lotus notes中确定字段中的不同条目,lotus-notes,lotus-domino,Lotus Notes,Lotus Domino,我在对话框窗体中有一个添加按钮,用于在下面的字段中添加项目、数量、价格、货币和列表。表单中有一个货币字段。这是一个包含多种货币的下拉列表。添加项目时,货币应相同。如果货币发生变化,则应显示消息框。下面是添加按钮事件的代码部分。“cur”是货币字段 Sub Click(Source As Button) 'On Error Goto errhandle Dim work As New notesuiworkspace Dim uidoc As notesuidocume

我在对话框窗体中有一个添加按钮,用于在下面的字段中添加项目、数量、价格、货币和列表。表单中有一个货币字段。这是一个包含多种货币的下拉列表。添加项目时,货币应相同。如果货币发生变化,则应显示消息框。下面是添加按钮事件的代码部分。“cur”是货币字段

Sub Click(Source As Button)
    'On Error Goto errhandle
    Dim work As New notesuiworkspace  
    Dim uidoc As notesuidocument
    Dim doc As notesdocument
    Dim item As String, weight As String
    Dim qty As String, price As String 
    Dim sbtotal As String   
    Dim gtotal As String

    Set uidoc = work.currentdocument 
    Set doc =uidoc.Document

    item = uidoc.FieldGetText("Item")
    qty = uidoc.FieldGetText("Qty")
    price = uidoc.FieldGetText("Price")
    cur = uidoc.FieldGetText("cur")
    sbtotal= uidoc.FieldGetText("SubTotal")

    Call uidoc.Refresh

    'weight = uidoc.FieldGetText("W_Qty")
    'adj = uidoc.fieldGetText("Adj")
    remark = uidoc.FieldGetText("Remarks")
    If item = "" Or qty = "" Or price = "" Then 
        Msgbox "Please complete the data entry ", 16, "Error - Incomplete Data Entry"
        Exit Sub
    End If
        recordNo = uidoc.fieldgettext("ww")

    If recordNo = "" Then
        recordNumber = 0 
    Else 
        pos = Instr(recordNo,";")
        If  pos > 0 Then 
            number = Right(recordNo , pos -1) 
        Else
            number = Left(recordNo , pos +1)
        End If 
        recordNumber = Cint(number)
    End If      


    recordNumber = recordNumber + 1  
    'to append text
    Call uidoc.FieldAppendText("no" ,";" & Cstr(recordNumber))     
    Call uidoc.FieldAppendText("Item1" ,";" & item)
    Call uidoc.FieldAppendText("Q1" , ";" & Cstr(qty))
    Call uidoc.FieldAppendText("amt" , ";" & Cdbl(price))
    Call uidoc.FieldAppendText("C1" , ";" & Cstr(cur))
    Call uidoc.FieldAppendText("TSubTotal" , ";" & Cdbl(sbtotal)) 


     'clear entering data
    uidoc.FieldClear("Remarks")
    uidoc.FieldClear("Item")
    uidoc.FieldClear("Qty")     
    uidoc.FieldClear("Price")
    'uidoc.FieldClear("W_Qty")          
    Call uidoc.FieldSetText("SubTotal","0.00")
    uidoc.refresh




    Dim subtotal As Double
    subtotal = 0
    Forall stotal In doc.TSubTotal
        If stotal <> "" Then
            subtotal = subtotal + Cdbl(stotal)
        End If
    End Forall
    total =  subtotal  '+ Cdbl(curdoc.SubTotal(0))
    Call uidoc.FieldSetText("GrandTotal",Format(total,"#,##0.00"))
    uidoc.refresh
    uidoc.gotofield"Item"
End Sub
子单击(源代码为按钮)
'在出现错误时转到errhandle
将工作设置为新工作区
Dim uidoc作为notesuidocument
标注文档作为注释文档
尺寸项目为字符串,重量为字符串
将数量标注为字符串,将价格标注为字符串
以字符串形式显示
总尺寸为字符串
设置uidoc=work.currentdocument
Set doc=uidoc.Document
item=uidoc.FieldGetText(“item”)
数量=uidoc.FieldGetText(“数量”)
price=uidoc.FieldGetText(“价格”)
cur=uidoc.FieldGetText(“cur”)
sbtotal=uidoc.FieldGetText(“小计”)
调用uidoc.Refresh
'weight=uidoc.FieldGetText(“W_数量”)
'adj=uidoc.fieldGetText(“adj”)
备注=uidoc.FieldGetText(“备注”)
如果项目=”或数量=”或价格=”,则
Msgbox“请完成数据输入”,16,“错误-数据输入不完整”
出口接头
如果结束
recordNo=uidoc.fieldgettext(“ww”)
如果recordNo=“”,则
记录编号=0
其他的
位置=仪表(记录编号“;”)
如果位置>0,则
编号=右侧(记录编号,位置-1)
其他的
编号=左侧(记录编号,位置+1)
如果结束
记录编号=Cint(编号)
如果结束
记录编号=记录编号+1
'以附加文本
调用uidoc.FieldAppendText(“否”,“;”&Cstr(记录编号))
调用uidoc.FieldAppendText(“Item1”、“;”和item)
调用uidoc.FieldAppendText(“Q1”、“;”和Cstr(数量))
调用uidoc.FieldAppendText(“金额”、“价格”)和Cdbl(价格))
调用uidoc.FieldAppendText(“C1”、“;”&Cstr(cur))
调用uidoc.FieldAppendText(“TSubTotal”,“;”和Cdbl(sbtotal))
'清除输入数据
uidoc.FieldClear(“备注”)
uidoc.FieldClear(“项目”)
uidoc.FieldClear(“数量”)
uidoc.FieldClear(“价格”)
'uidoc.FieldClear(“W_数量”)
调用uidoc.FieldSetText(“小计”、“0.00”)
uidoc.refresh
双倍小计
小计=0
Total文件中的所有stotal
如果是stotal,那么
小计=小计+Cdbl(stotal)
如果结束
端孔
总计=小计'+Cdbl(当前单据小计(0))
调用uidoc.FieldSetText(“GrandTotal”,格式(total,#,#0.00”))
uidoc.refresh
uidoc.gotofield“项目”
端接头

请帮帮我。谢谢。

我会在“添加”按钮的代码之外修复货币,并在开始添加之前将其设置为必需的。

创建一个名为selectedCurrency的新隐藏字段。此字段的初始值应为空

在添加按钮代码中,您需要首先选中selectedCurrency,如果为空,则应将其设置为cur

然后,在Add按钮的代码中,您需要比较selectedCurrency和cur,如果它们不相等,则应显示消息框