📄 takeout.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 = "TakeOut"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = True
Attribute VB_PredeclaredId = False
Attribute VB_Exposed = False
'1 TakeoutId Int 出库编号
'2 TakeoutType Varchar 20 出库操作类型,包括销售出库、退货出库、用料出库等
'3 ProId Int 出库产品编号
'4 ProPrice Decimal 15,2 出库产品单价
'5 ProNum Int 出库产品数量
'6 ClientId Int 客户编号。如果出库操作类型为销售入库,则客户为购货商;如果出库操作类型为退货入库,则客户为供应商;用料出库没有客户
'7 StoreId Int 仓库编号
'8 EmpName Varchar 50 经办人
'9 OptDate Char 20 出库日期
Public TakeOutId As Long
Public TakeOutType As String
Public ProId As String
Public ProPrice As Single
Public ProNum As Integer
Public ClientId As Long
Public StoreId As Long
Public EmpName As String
Public OptDate As String
Public Sub Init()
TakeOutId = 0
TakeOutType = ""
ProId = 0
ProPrice = 0
ProNum = 0
ClientId = 0
StoreId = 0
EmpName = ""
OptDate = ""
End Sub
Public Function HaveClt(ByVal TmpCltId As Long) As Boolean
DB_Connect
SqlStmt = "SELECT TakeoutId FROM TakeOut WHERE ClientId=" + Trim(TmpCltId)
OdbcExt (SqlStmt)
If SQLFetch(Hstmt) <> SQL_NO_DATA_FOUND Then
HaveClt = True
Else
HaveClt = False
End If
Rc = SQLFreeStmt(Hstmt, SQL_DROP)
DB_Disconnect
End Function
Public Function HavePro(ByVal TmpProId As Long) As Boolean
DB_Connect
SqlStmt = "SELECT TakeoutId FROM Takeout WHERE ProId=" + Trim(TmpProId)
OdbcExt (SqlStmt)
If SQLFetch(Hstmt) <> SQL_NO_DATA_FOUND Then
HavePro = True
Else
HavePro = False
End If
Rc = SQLFreeStmt(Hstmt, SQL_DROP)
DB_Disconnect
End Function
Public Function HaveStore(ByVal TmpStoreId As Long) As Boolean
DB_Connect
SqlStmt = "SELECT TakeoutId FROM Takeout WHERE StoreId=" + Trim(TmpStoreId)
OdbcExt (SqlStmt)
If SQLFetch(Hstmt) <> SQL_NO_DATA_FOUND Then
HaveStore = True
Else
HaveStore = False
End If
Rc = SQLFreeStmt(Hstmt, SQL_DROP)
DB_Disconnect
End Function
Public Function GetNewId() As Long
Dim TmpId As Long
'连接数据库
DB_Connect
'设置要执行的SQL语句
SqlStmt = "SELECT TakeoutId FROM Takeout ORDER BY TakeoutId"
'执行SQL语句
OdbcExt (SqlStmt)
'读取SELECT语句返回的查询结果
i = 1
Do While SQLFetch(Hstmt) <> SQL_NO_DATA_FOUND
ColVal = String(40, 0)
Rc = SQLGetData(Hstmt, 1, 1, ColVal, Len(ColVal), pcblen)
TmpId = Val(ColVal)
' 把读取的院系编号与自然数序列比较
If TmpId = i Then
i = i + 1
Else
'如果院系编号是不连续的,则用新编号来填充
GetNewId = i
Rc = SQLFreeStmt(Hstmt, SQL_DROP)
DB_Disconnect
Exit Function
End If
Loop
Rc = SQLFreeStmt(Hstmt, SQL_DROP)
'断开与数据库的连接
DB_Disconnect
'将得到的新编号作为函数的返回值
GetNewId = i
End Function
Public Sub Insert()
TakeOutId = GetNewId
DB_Connect
SqlStmt = "INSERT INTO TakeOut Values(" _
+ Trim(TakeOutId) + ",'" + Trim(TakeOutType) + "'," _
+ Trim(ProId) + "," + Trim(Str(ProPrice)) + "," + Trim(ProNum) + "," _
+ Trim(Str(ClientId)) + "," + Trim(Str(StoreId)) + ",'" _
+ Trim(EmpName) + "','" + Trim(OptDate) + "')"
OdbcExt (SqlStmt)
Rc = SQLFreeStmt(Hstmt, SQL_DROP)
DB_Disconnect
End Sub
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -