⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 inoutlist.cls

📁 主要是基本的家庭理财管理操作界面, 包括基本信息管理、理财信息管理、数据统计管理等。
💻 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 = "InOutList"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = True
Attribute VB_PredeclaredId = False
Attribute VB_Exposed = False
'1 Id 自动编号
'2 TypeId  数字 收支类型编号
'3 UseDate  文本 长度 20 收支日期
'4 ANo 文本 长度 50 账号
'5 UseSum  数字 单精度 收支金额
'6 MemId 数字 家庭成员编号
'7 Memos  文本 长度 100 备注
'8 Flag 数字 字节 类型:0-收入;1-支出

Public Id As Long
Public TypeId As Long
Public UseDate As String
Public ANo As String
Public UseSum As Double
Public MemId As Long
Public Memos As String
Public Flag As Integer

Public Sub Init()
  TypeId = 0
  UseDate = ""
  ANo = ""
  UseSum = 0
  MemId = 0
  Memos = ""
  Flag = 0
End Sub

'删除
Public Sub Delete(ByVal TmpId As Long)
  SqlStmt = "DELETE FROM InOutList WHERE Id=" + Trim(TmpId)
  SQLExt (SqlStmt)
End Sub

Public Function GetInfo(ByVal TmpId As Long) As Boolean
  Dim rs As New ADODB.Recordset  '定义结果集对象
  
  '设置SELECT语句,读取编号为TmpId的记录
  SqlStmt = "SELECT * FROM InOutList WHERE Id=" + Trim(TmpId)
  '将结果集读取到rs中
  Set rs = QueryExt(SqlStmt)

  If rs.EOF Then
    '如果结果集为空,则初始化
    Init
    GetInfo = False
  Else
    '将结果集中的数据赋值到成员变量中
    If IsNull(rs.Fields(0)) Then
      Id = 0
    Else
      Id = rs.Fields(0)
    End If
   
    If IsNull(rs.Fields(1)) Then
      TypeId = 0
    Else
      TypeId = rs.Fields(1)
    End If
    If IsNull(rs.Fields(2)) Then
      UseDate = ""
    Else
      UseDate = Trim(rs.Fields(2))
    End If
    If IsNull(rs.Fields(3)) Then
      ANo = ""
    Else
      ANo = Trim(rs.Fields(3))
    End If
    If IsNull(rs.Fields(4)) Then
      UseSum = 0
    Else
      UseSum = rs.Fields(4)
    End If
    If IsNull(rs.Fields(5)) Then
      MemId = 0
    Else
      MemId = rs.Fields(5)
    End If
    If IsNull(rs.Fields(6)) Then
      Memos = ""
    Else
      Memos = Trim(rs.Fields(6))
    End If
    If IsNull(rs.Fields(7)) Then
      Flag = 0
    Else
      Flag = rs.Fields(7)
    End If
   GetInfo = True
  End If
End Function

'插入分类
Public Sub Insert()
  SqlStmt = "INSERT INTO InOutList(TypeId,UseDate,ANo,UseSum," _
       + "MemId,Memos,Flag) VALUES(" + Trim(TypeId) _
       + ",'" + Trim(UseDate) + "','" + Trim(ANo) + "'," _
       + Trim(UseSum) + "," + Trim(MemId) + ",'" _
       + Trim(Memos) + "'," + Trim(Flag) + ")"
  SQLExt (SqlStmt)
End Sub

'更新数据
Public Sub Update(ByVal TmpId As Long)
   SqlStmt = "UPDATE InOutList SET TypeId=" + Trim(TypeId) _
          + ",UseDate='" + Trim(UseDate) + "',ANo='" + Trim(ANo) _
          + "',UseSum=" + Trim(UseSum) + ",MemId=" + Trim(MemId) _
          + ",Memos='" + Trim(Memos) _
          + "',Flag=" + Trim(Flag) + " Where Id = " + Trim(Str(TmpId))
  SQLExt (SqlStmt)
End Sub

'计算收支金额
Public Function CalSum(ByVal TmpFlag As Integer) As Double
  Dim rs As New ADODB.Recordset  '定义结果集对象
  'Flag=0表示收入, Flag=1表示支出
  If TmpFlag = 0 Then  '收入
    SqlStmt = "SELECT Sum(UseSum) FROM InOutList WHERE Flag=0"
  Else
    SqlStmt = "SELECT Sum(UseSum) FROM InOutList WHERE Flag=1"
  End If
  '将结果集读取到rs中
  Set rs = QueryExt(SqlStmt)
  '从结果集中获取数据
  If IsNull(rs.Fields(0)) Then
    CalSum = 0
  Else
    CalSum = rs.Fields(0)
  End If
End Function

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -