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

📄 frmsearch.frm

📁 财务管理系统的基本功能的实现
💻 FRM
字号:
VERSION 5.00
Object = "{86CF1D34-0C5F-11D2-A9FC-0000F8754DA1}#2.0#0"; "MSCOMCT2.OCX"
Begin VB.Form frmsearch 
   Caption         =   "查询固定资产"
   ClientHeight    =   5430
   ClientLeft      =   60
   ClientTop       =   450
   ClientWidth     =   6780
   LinkTopic       =   "Form1"
   Picture         =   "frmsearch.frx":0000
   ScaleHeight     =   5430
   ScaleWidth      =   6780
   StartUpPosition =   3  '窗口缺省
   Begin VB.CommandButton Command1 
      Caption         =   "查询"
      Default         =   -1  'True
      Height          =   375
      Left            =   1920
      TabIndex        =   20
      Top             =   4680
      Width           =   975
   End
   Begin VB.CommandButton Command2 
      Cancel          =   -1  'True
      Caption         =   "放弃"
      Height          =   375
      Left            =   4080
      TabIndex        =   19
      Top             =   4680
      Width           =   855
   End
   Begin VB.TextBox Text1 
      Appearance      =   0  'Flat
      Height          =   270
      Left            =   240
      TabIndex        =   9
      Top             =   480
      Width           =   1815
   End
   Begin VB.TextBox Text2 
      Appearance      =   0  'Flat
      Height          =   270
      Left            =   2520
      TabIndex        =   8
      Top             =   480
      Width           =   1815
   End
   Begin VB.TextBox Text3 
      Appearance      =   0  'Flat
      Height          =   270
      Left            =   4800
      TabIndex        =   7
      Top             =   480
      Width           =   1815
   End
   Begin VB.TextBox Text4 
      Appearance      =   0  'Flat
      Height          =   270
      Left            =   240
      TabIndex        =   6
      Top             =   1320
      Width           =   1815
   End
   Begin VB.ComboBox PartCombo 
      Height          =   300
      Left            =   240
      TabIndex        =   5
      Top             =   2160
      Width           =   1815
   End
   Begin VB.TextBox Text5 
      Appearance      =   0  'Flat
      Height          =   270
      Left            =   4800
      TabIndex        =   3
      Top             =   1320
      Width           =   1815
   End
   Begin VB.TextBox Text6 
      Appearance      =   0  'Flat
      Height          =   1335
      Left            =   240
      MaxLength       =   100
      TabIndex        =   2
      Top             =   2880
      Width           =   6375
   End
   Begin VB.TextBox Text7 
      Appearance      =   0  'Flat
      Height          =   270
      Left            =   2520
      TabIndex        =   1
      Top             =   1320
      Width           =   1815
   End
   Begin VB.CheckBox Check1 
      Caption         =   "不限定日期"
      Height          =   255
      Left            =   4680
      TabIndex        =   0
      Top             =   2160
      Width           =   1215
   End
   Begin MSComCtl2.DTPicker DTPicker1 
      Height          =   255
      Left            =   2520
      TabIndex        =   4
      Top             =   2160
      Width           =   1815
      _ExtentX        =   3201
      _ExtentY        =   450
      _Version        =   393216
      Format          =   21233665
      CurrentDate     =   39510
   End
   Begin VB.Label Label1 
      BackStyle       =   0  'Transparent
      Caption         =   "资产编号"
      Height          =   255
      Left            =   240
      TabIndex        =   18
      Top             =   240
      Width           =   1575
   End
   Begin VB.Label Label2 
      BackStyle       =   0  'Transparent
      Caption         =   "资产名称"
      Height          =   255
      Left            =   2520
      TabIndex        =   17
      Top             =   240
      Width           =   1575
   End
   Begin VB.Label Label3 
      BackStyle       =   0  'Transparent
      Caption         =   "资产数目"
      Height          =   255
      Left            =   4800
      TabIndex        =   16
      Top             =   240
      Width           =   1335
   End
   Begin VB.Label Label4 
      BackStyle       =   0  'Transparent
      Caption         =   "单价(元)"
      Height          =   255
      Left            =   240
      TabIndex        =   15
      Top             =   1080
      Width           =   1335
   End
   Begin VB.Label Label5 
      BackStyle       =   0  'Transparent
      Caption         =   "购买部门"
      Height          =   255
      Left            =   240
      TabIndex        =   14
      Top             =   1920
      Width           =   1215
   End
   Begin VB.Label Label6 
      BackStyle       =   0  'Transparent
      Caption         =   "购买日期"
      Height          =   255
      Left            =   2520
      TabIndex        =   13
      Top             =   1920
      Width           =   1455
   End
   Begin VB.Label Label7 
      BackStyle       =   0  'Transparent
      Caption         =   "联系电话"
      Height          =   255
      Left            =   4800
      TabIndex        =   12
      Top             =   1080
      Width           =   1455
   End
   Begin VB.Label Label8 
      BackStyle       =   0  'Transparent
      Caption         =   "资产说明"
      Height          =   255
      Left            =   240
      TabIndex        =   11
      Top             =   2640
      Width           =   2055
   End
   Begin VB.Label Label9 
      BackStyle       =   0  'Transparent
      Caption         =   "经手人ID"
      Height          =   255
      Left            =   2520
      TabIndex        =   10
      Top             =   1080
      Width           =   1335
   End
End
Attribute VB_Name = "frmsearch"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
Option Explicit

Private Sub Check1_Click()
    If Check1.Value Then        '设置是否把日期作为搜索条件
        DTPicker1.Enabled = False
    Else
        DTPicker1.Enabled = True
    End If
End Sub

Private Sub Command1_Click()
    Dim sql As String
    Dim rs As New ADODB.Recordset
    Dim FilterEmpty As Boolean
    Dim rsFilter As String
    Dim i As Integer
    Dim resultcount As Long
    
    If (Not IsNumeric(Text3.Text)) And (Text3.Text <> "") Then     '判断用户输入数据完整性和有效性
        MsgBox "资产数目必须是数字!", vbCritical
        Text3.SetFocus
        Exit Sub
    End If
    If (Not IsNumeric(Text4.Text)) And (Text4.Text <> "") Then
        MsgBox "资产单价必须是数字!", vbCritical
        Text4.SetFocus
        Exit Sub
    End If
    
    If DbHandle.DbConnection Then
        FilterEmpty = True      '设置查询条件为"空"
        If Text1.Text <> "" Then        '判断每个输入控件,如果用户改动就构造搜索条件字符串
            If FilterEmpty Then
                rsFilter = "FIXED_ID='" & Text1.Text & "'"
            Else
                rsFilter = rsFilter & " AND FIXED_ID='" & Text1.Text & "'"
            End If
            FilterEmpty = False
        End If
        If Text2.Text <> "" Then
            If FilterEmpty Then
                rsFilter = "FIXED_NAME='" & Text2.Text & "'"
            Else
                rsFilter = rsFilter & " AND FIXED_NAME='" & Text2.Text & "'"
            End If
            FilterEmpty = False
        End If
        If Text3.Text <> "" Then
            If FilterEmpty Then
                rsFilter = "FIXED_NUM=" & Val(Text3.Text)
            Else
                rsFilter = rsFilter & " AND FIXED_NUM=" & Val(Text3.Text)
            End If
            FilterEmpty = False
        End If
        If Text4.Text <> "" Then
            If FilterEmpty Then
                rsFilter = "FIXED_MONEY=" & Val(Text4.Text)
            Else
                rsFilter = rsFilter & " AND FIXED_MONEY=" & Val(Text4.Text)
            End If
            FilterEmpty = False
        End If
        If Text5.Text <> "" Then
            If FilterEmpty Then
                rsFilter = "FIXED_PHONE='" & Text5.Text & "'"
            Else
                rsFilter = rsFilter & " AND FIXED_PHONE='" & Text5.Text & "'"
            End If
            FilterEmpty = False
        End If
        If Text6.Text <> "" Then
            If FilterEmpty Then
                rsFilter = "FIXED_REMARK='" & Text6.Text & "'"
            Else
                rsFilter = rsFilter & " AND FIXED_REMARK='" & Text6.Text & "'"
            End If
            FilterEmpty = False
        End If
        If Text7.Text <> "" Then
            If FilterEmpty Then
                rsFilter = "FIXED_USER='" & Text7.Text & "'"
            Else
                rsFilter = rsFilter & " AND FIXED_USER='" & Text7.Text & "'"
            End If
            FilterEmpty = False
        End If
        If DTPicker1.Enabled Then
            If FilterEmpty Then
                rsFilter = "FIXED_DATE='" & DTPicker1.Value & "'"
            Else
                rsFilter = rsFilter & " AND FIXED_DATE='" & DTPicker1.Value & "'"
            End If
            FilterEmpty = False
        End If
        If PartCombo.ListIndex <> -1 Then
            If FilterEmpty Then
                rsFilter = "FIXED_PART=" & PartCombo.ListIndex
            Else
                rsFilter = rsFilter & " AND FIXED_PART=" & PartCombo.ListIndex
            End If
            FilterEmpty = False
        End If
        sql = "SELECT FIXED_ID,FIXED_NAME,FIXED_NUM,FIXED_MONEY,FIXED_USER,FIXED_DATE,FIXED_PHONE,FIXED_REMARK,PART_NAME FROM TBL_FIXED,TBL_PART WHERE "
        If FilterEmpty Then     '构造完整的SQL语句(静态语句+动态条件)
            sql = sql & "FIXED_PART=PART_ID"
        Else
            sql = sql & rsFilter & " AND FIXED_PART=PART_ID"
        End If
        rs.CursorType = adOpenDynamic
        rs.LockType = adLockOptimistic
        rs.Open sql, DbFinance
        resultcount = DbHandle.resultcount(rs)
        result.Cls       '设置电子表格的列头
        result.MSFlexGrid1.Cols = 9
        result.MSFlexGrid1.Rows = resultcount + 1
        result.MSFlexGrid1.Row = 0
        result.MSFlexGrid1.Col = 0
        result.MSFlexGrid1.Text = "资产编号"
        result.MSFlexGrid1.Col = 1
        result.MSFlexGrid1.Text = "资产名称"
        result.MSFlexGrid1.Col = 2
        result.MSFlexGrid1.Text = "资产数目"
        result.MSFlexGrid1.Col = 3
        result.MSFlexGrid1.Text = "资产单价"
        result.MSFlexGrid1.Col = 4
        result.MSFlexGrid1.Text = "经手人ID"
        result.MSFlexGrid1.Col = 5
        result.MSFlexGrid1.Text = "联系电话"
        result.MSFlexGrid1.Col = 6
        result.MSFlexGrid1.Text = "购买部门"
        result.MSFlexGrid1.Col = 7
        result.MSFlexGrid1.Text = "购买日期"
        result.MSFlexGrid1.Col = 8
        result.MSFlexGrid1.Text = "资产说明"
        For i = 0 To 8     '平均分配每个列的宽
            result.MSFlexGrid1.ColWidth(i) = result.MSFlexGrid1.Width / 9 - 50
        Next i
        For i = 1 To resultcount    '循环将报销记录信息放入电子表格
            result.MSFlexGrid1.Row = i
            result.MSFlexGrid1.Col = 0
            result.MSFlexGrid1.Text = rs("FIXED_ID")
            result.MSFlexGrid1.Col = 1
            result.MSFlexGrid1.Text = rs("FIXED_NAME")
            result.MSFlexGrid1.Col = 2
            result.MSFlexGrid1.Text = Trim(Str(rs("FIXED_NUM")))
            result.MSFlexGrid1.Col = 3
            result.MSFlexGrid1.Text = Trim(Str(rs("FIXED_MONEY")))
            result.MSFlexGrid1.Col = 4
            result.MSFlexGrid1.Text = rs("FIXED_USER")
            result.MSFlexGrid1.Col = 5
            result.MSFlexGrid1.Text = rs("FIXED_PHONE")
            result.MSFlexGrid1.Col = 6
            result.MSFlexGrid1.Text = rs("PART_NAME")
            result.MSFlexGrid1.Col = 7
            result.MSFlexGrid1.Text = rs("FIXED_DATE")
            result.MSFlexGrid1.Col = 8
            result.MSFlexGrid1.Text = rs("FIXED_REMARK")
            rs.MoveNext
        Next i
        result.Show 1        '显示查询结构窗体
        rs.Close        '查询结束,释放资源
        DbHandle.DbClose
    Else        '数据库连接失败,退出
        MsgBox "数据库错误!", vbExclamation
        DbHandle.DbClose
        End
    End If
End Sub

Private Sub Command2_Click()
    Unload Me       '返回主窗体
End Sub

Private Sub Form_Load()
    Dim sql As String
    Dim rs As New ADODB.Recordset
    
    Me.Left = (Screen.Width - Me.ScaleWidth) / 2       '窗体居中显示
    Me.Top = (Screen.Height - Me.ScaleHeight) / 2
    If DbHandle.DbConnection Then
        sql = "TBL_PART"     '把部门信息表中所有静态记录提取出来
        rs.CursorType = adOpenDynamic
        rs.LockType = adLockOptimistic
        rs.Filter = ""
        rs.Open sql, DbFinance
        
        Do While rs.EOF = False     '循环加入下拉列表中去
            PartCombo.AddItem (rs("PART_NAME"))
            PartCombo.ItemData(PartCombo.NewIndex) = rs("PART_ID")
            rs.MoveNext
        Loop
        rs.Close        '释放资源
        Set rs = Nothing
        DbHandle.DbClose
    Else        '数据库连接失败,退出
        MsgBox "数据库错误!", vbExclamation
        DbHandle.DbClose
        End
    End If
    Text1.Text = ""    '初始化窗体元素属性
    Text2.Text = ""
    Text3.Text = ""
    Text4.Text = ""
    Text5.Text = ""
    Text6.Text = ""
    Text7.Text = ""
    Text7.MaxLength = 100
    PartCombo.Text = ""
End Sub


⌨️ 快捷键说明

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