📄 cost.cls
字号:
VERSION 1.0 CLASS
BEGIN
MultiUse = -1 'True
Persistable = 0 'NotPersistable
DataBindingBehavior = 0 'vbNone
DataSourceBehavior = 0 'vbNone
MTSTransactionMode = 0 'NotAnMTSObject
END
Attribute VB_Name = "Cost"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = True
Attribute VB_PredeclaredId = False
Attribute VB_Exposed = False
Public CostId As String
Public ContractId As String
Public CostType As String
Public Detail As String
Public Amount As Single
Public Receiver As String
Public Cashier As String
Public CostDate As String
Public Memo As String
Public Sub Init()
CostId = ""
ContractId = ""
CostType = ""
Detail = ""
Amount = 0
Receiver = ""
Cashier = ""
CostDate = ""
Memo = ""
End Sub
Public Sub GetInfo(ByVal TmpCostId As String)
CostId = TmpCostId
If TmpCostId = "" Then
Init
Exit Sub
End If
Dim rs As New ADODB.Recordset
SqlStmt = "SELECT * FROM Cost WHERE CostId='" + Trim(TmpCostId) + "'"
Set rs = QueryExt(SqlStmt)
If Not rs.EOF Then
'合同编号
If IsNull(rs.Fields(1)) Then
ContractId = ""
Else
ContractId = Trim(rs.Fields(1))
End If
' 费用类型
If IsNull(rs.Fields(2)) Then
CostType = ""
Else
CostType = Trim(rs.Fields(2))
End If
' 费用描述
If IsNull(rs.Fields(3)) Then
Detail = ""
Else
Detail = Trim(rs.Fields(3))
End If
' 费用金额
If IsNull(rs.Fields(4)) Then
Amount = 0
Else
Amount = rs.Fields(4)
End If
' 收款人姓名
If IsNull(rs.Fields(5)) Then
Receiver = ""
Else
Receiver = Trim(rs.Fields(5))
End If
' 经办人
If IsNull(rs.Fields(6)) Then
Cashier = ""
Else
Cashier = Trim(rs.Fields(6))
End If
' 发生日期
If IsNull(rs.Fields(7)) Then
CostDate = ""
Else
CostDate = Trim(rs.Fields(7))
End If
' 备注
If IsNull(rs.Fields(8)) Then
Memo = ""
Else
Memo = Trim(rs.Fields(8))
End If
Else
Init
End If
rs.Close
End Sub
Public Function In_DB(ByVal TmpCostId As String) As Boolean
Dim rs As New ADODB.Recordset
SqlStmt = "SELECT CostId FROM Cost WHERE CostId='" + Trim(TmpCostId) + "'"
Set rs = QueryExt(SqlStmt)
If Not rs.EOF Then
In_DB = True
Else
In_DB = False
End If
rs.Close
End Function
Public Sub Insert()
SqlStmt = "INSERT INTO Cost VALUES('" + Trim(CostId) + "','" _
+ Trim(ContractId) + "','" + Trim(CostType) + "','" _
+ Trim(Detail) + "'," + Trim(Str(Amount)) + ",'" _
+ Trim(Receiver) + "','" + Trim(Cashier) + "','" _
+ Trim(CostDate) + "','" + Trim(Memo) + "')"
SQLExt (SqlStmt)
End Sub
Public Function SumCost(ByVal TmpContractId As String) As Single
Dim rs As New ADODB.Recordset
If TmpContractId = "" Then
SumCost = 0
Exit Function
End If
' 使用SUM()函数对指定合同编号的合同费用进行统计
SqlStmt = "SELECT ISNULL(Sum(Amount),0) FROM Cost WHERE ContractId='" + Trim(TmpContractId) + "'"
Set rs = QueryExt(SqlStmt)
If Not rs.EOF Then
SumCost = rs.Fields(0)
Else
SumCost = 0
End If
rs.Close
End Function
'更新数据
Public Sub Update(ByVal TmpCostId As String)
SqlStmt = "UPDATE Cost SET CostId='" + Trim(CostId) _
+ "',CostType='" + Trim(CostType) _
+ "',Detail='" + Trim(Detail) + "',Amount=" _
+ Trim(Str(Amount)) + ",Receiver='" + Trim(Receiver) _
+ "',Cashier='" + Trim(Cashier) + "',CostDate='" _
+ Trim(CostDate) + "',Memo='" + Trim(Memo) _
+ "' WHERE CostId='" + Trim(TmpCostId) + "'"
SQLExt (SqlStmt)
End Sub
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -