本人生性懒惰。
开发项目的每个环节,都想琢磨点通用的玩意。
潜水数日,摸着几条小鱼,慢慢红烧,烧熟一条,分享一条。
今天端上来的是:多数据源下日期括号、逻辑值的通用函数。
全局代码:
Public _cmd As New SQLCommand
Public _dt As DataTable 'SQLCommand临时DataTable
Public _rq As String '日期括号
Public _true As Object '逻辑真
Public _false As Object '逻辑假
内部函数:
响应ddon的号召,改造一下:
If DataTables.Contains(Args(0)) Then
_dt = DataTables(Args(0))
If _dt.SourceType = 1 Then
_rq = "#"
_true = True
_false = False
Else
_rq = "'"
_true = 1
_false = 0
End If
Else
_cmd.Connection Name = Args(0)
If _cmd.Connection Name = "" Then
_rq = "#"
_true = True
_false = False
Else
If Connections.Contains(_cmd.Connection Name) Then
If Connections(_cmd.Connection Name).SourceType = 1 Then
_rq = "#"
_true = True
_false = False
Else
_rq = "'"
_true = 1
_false = 0
End If
End If
End If
End If
If IsDate(Args(1)) Then
Return _rq & Args(1) & _rq
Else
Return _rq & "1900-01-01" & _rq
End If
调用:
''调用*******************************
Dim d As String = ""
_cmd.CommandText = "Select * From {药品库存} Where 效期 > " & Functions.Execute("数据源通用代码","门诊管理系统(SQL)",d)
Output.Show(_cmd.ExecuteReader.DataRows(1)("效期"))
d = "2015-03-29"
_cmd.CommandText = "Select * From {药品库存} Where 效期 > " & Functions.Execute("数据源通用代码","门诊管理系统(SQL)",d)
Output.Show(_cmd.ExecuteReader.DataRows(1)("效期"))
Functions.Execute("数据源通用代码","药品库存",d)
DataTables("药品库存").LoadFilter = "灭菌效期 = " & _true
DataTables("药品库存").Load
DataTables("药品库存").LoadFilter = "效期 > " & Functions.Execute("数据源通用代码","门诊管理系统(SQL)",d)
DataTables("药品库存").Load
''调用*******************************
且听下回分解
[此贴子已经被作者于2014-5-26 20:06:47编辑过]