作用
针对一些逻辑性需要替换的字符,通过关键字的整理,引用中在需要的地方调用function来自动转换程序。
比如:LotusNotes用户前端如果本地打开数据库,那么针对用户的提示应该为"Local"或者"本地"。数据库实际打开的时候LS部分server信息为""
程序部分如下:
Function Data_convert (sour As String) As String
'=======================================================================================================================
' This function is link to a keyword - "Redirect" . The lookup view is : (lookup_keyword) | lookup_keyword
' In keyword, it define 3 kind of data convertion.
' A->B : sour = A, then Data_convert = B. sour = B, then Data_convert = B
' A<-B : sour = A, then Data_convert = A. sour = B, then Data_convert = A
' A<->B : sour = A, then Data_convert = B. sour = B, then Data_convert = A
' programmer: Jacky Shu
' Date: 2008-05-14
'
'
'=======================================================================================================================
On Error Goto sl
Dim para1, para2 As String
Dim tempValue As Variant
Dim symbol(2) As String
Dim s As Integer
Dim leftval As String
Dim rightval As String
Dim midsymbol As String
Dim values As String
para1 = "lookup_keyword"
para2 = "Redirect"
symbol(0) = "->"
symbol(1) = "<-"
symbol(2) ="<->"
tempValue = Evaluate(|@Dblookup("":"NoCache";"";"|+para1+|";"|+para2+|";"ad_sdm_value")|) ' get value
Data_convert = sour ' Default value
Forall r In tempValue
If Instr(1,r,sour,0) Then
values = r
For x = 0 To 2
If Instr(1,values,symbol(x),0) > 0 Then
midsymbol = symbol(x) ' Get midsymbol
Else
returnMsg("Error_Script_Data_convert")
Exit Function
End If
Next
leftval = Strleft(values,midsymbol) ' Get A
rightval = Strright(values,midsymbol) ' Get B
If midsymbol = symbol(0) Then
If sour = leftval Then
Data_convert = rightval
End If
End If
If midsymbol = symbol(1) Then
If sour = rightval Then
Data_convert = leftval
End If
End If
If midsymbol = symbol(2) Then
If sour = leftval Then
Data_convert = rightval
Elseif sour = rightval Then
Data_convert = leftval
End If
End If
End If
End Forall
Exit Function
sl:
Msgbox "Error Message is: " & Error & Chr(13) & "Error at line: " & Erl
End Function
针对一些逻辑性需要替换的字符,通过关键字的整理,引用中在需要的地方调用function来自动转换程序。
比如:LotusNotes用户前端如果本地打开数据库,那么针对用户的提示应该为"Local"或者"本地"。数据库实际打开的时候LS部分server信息为""
程序部分如下:
Function Data_convert (sour As String) As String
'=======================================================================================================================
' This function is link to a keyword - "Redirect" . The lookup view is : (lookup_keyword) | lookup_keyword
' In keyword, it define 3 kind of data convertion.
' A->B : sour = A, then Data_convert = B. sour = B, then Data_convert = B
' A<-B : sour = A, then Data_convert = A. sour = B, then Data_convert = A
' A<->B : sour = A, then Data_convert = B. sour = B, then Data_convert = A
' programmer: Jacky Shu
' Date: 2008-05-14
'
'
'=======================================================================================================================
On Error Goto sl
Dim para1, para2 As String
Dim tempValue As Variant
Dim symbol(2) As String
Dim s As Integer
Dim leftval As String
Dim rightval As String
Dim midsymbol As String
Dim values As String
para1 = "lookup_keyword"
para2 = "Redirect"
symbol(0) = "->"
symbol(1) = "<-"
symbol(2) ="<->"
tempValue = Evaluate(|@Dblookup("":"NoCache";"";"|+para1+|";"|+para2+|";"ad_sdm_value")|) ' get value
Data_convert = sour ' Default value
Forall r In tempValue
If Instr(1,r,sour,0) Then
values = r
For x = 0 To 2
If Instr(1,values,symbol(x),0) > 0 Then
midsymbol = symbol(x) ' Get midsymbol
Else
returnMsg("Error_Script_Data_convert")
Exit Function
End If
Next
leftval = Strleft(values,midsymbol) ' Get A
rightval = Strright(values,midsymbol) ' Get B
If midsymbol = symbol(0) Then
If sour = leftval Then
Data_convert = rightval
End If
End If
If midsymbol = symbol(1) Then
If sour = rightval Then
Data_convert = leftval
End If
End If
If midsymbol = symbol(2) Then
If sour = leftval Then
Data_convert = rightval
Elseif sour = rightval Then
Data_convert = leftval
End If
End If
End If
End Forall
Exit Function
sl:
Msgbox "Error Message is: " & Error & Chr(13) & "Error at line: " & Erl
End Function