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

📄 frmticket1.frm

📁 9个VB写的数据库管理系统源代码
💻 FRM
📖 第 1 页 / 共 2 页
字号:
                    sMeg = "舱位类型"
                Case 3
                    sMeg = ""
                Case 4
                    sMeg = "顾客姓名"
                Case 5
                    sMeg = ""
                Case 6
                    sMeg = ""
            End Select
            sMeg = sMeg & "不能为空!"
            MsgBox sMeg, vbOKOnly + vbExclamation, "警告"
            Combo1(intCount).SetFocus
            Exit Sub
        End If
    Next intCount
    
    If Trim(txtItem(0)) = "" Then
        sMeg = "出发日期不能为空!"
        MsgBox sMeg, vbOKOnly + vbExclamation, "警告"
        txtItem(0).SetFocus
        Exit Sub
    End If
    
    If IsDate(txtItem(0)) Then
        txtItem(0) = Format(txtItem(0), "yyyy-mm-dd")
    Else
        MsgBox "时间应输入日期(yyyy-mm-dd)!", vbOKOnly + vbExclamation, "警告"
        txtItem(0).SetFocus
        Exit Sub
    End If
    
    '判断是否有相同内容的记录
    txtSQL = "select * from ticketInfo where ticketNO<>'" & Trim(txtticket) & "' and customerNO ='" & Trim(txtcustomer) & "' and ticketDate = '" & Trim(txtItem(0)) & "'"
    Set mrc = ExecuteSQL(txtSQL, MsgText)
    If mrc.EOF = False Then
        MsgBox "已经存在相同顾客订票的记录!", vbOKOnly + vbExclamation, "警告"
        txtItem(1).SetFocus
        Exit Sub
    End If
    
    '先删除已有记录
    txtSQL = "delete from ticketInfo where ticketNO='" & Trim(txtticket) & "'"
    Set mrc = ExecuteSQL(txtSQL, MsgText)
   
    '判断航班是否满员
    txtSQL = "select * from ticketInfo where airlineNO = '" & Trim(txtairline) & " ' and ticketDate = '" & Trim(txtItem(0)) & "' and serviceType = '" & Trim(Combo1(2)) & "'"
    Set mrc = ExecuteSQL(txtSQL, MsgText)
    
    If Not mrc.EOF Then
        If Combo1(2) = "经济舱" Then
            If mrc.RecordCount > (ticketCsum - 1) Then
                MsgBox "对不起,该航班经济舱已经满员", vbOKOnly + vbExclamation, "警告"
                Exit Sub
            End If
        ElseIf Combo1(2) = "公务舱" Then
            If mrc.RecordCount > (ticketMsum - 1) Then
                MsgBox "对不起,该航班公务舱已经满员", vbOKOnly + vbExclamation, "警告"
                Exit Sub
            End If
        Else
            If mrc.RecordCount > (ticketFsum - 1) Then
                MsgBox "对不起,该航班头等舱已经满员", vbOKOnly + vbExclamation, "警告"
                Exit Sub
            End If
        End If
    End If
    
    mrc.Close
    'download by http://www.codefans.net
    
    '再加入新记录
    txtSQL = "select * from ticketInfo"
    Set mrc = ExecuteSQL(txtSQL, MsgText)
    mrc.AddNew
    
    mrc.Fields(0) = txtticket
    mrc.Fields(1) = txtcustomer
    
        
    For intCount = 2 To 4
        mrc.Fields(intCount) = Trim(Combo1(intCount + 2))
    Next intCount
    
    mrc.Fields(5) = txtairline
    
    For intCount = 6 To 7
        mrc.Fields(intCount) = Trim(Combo1(intCount - 6))
    Next intCount
    
    mrc.Fields(8) = Trim(txtItem(0))
    
    For intCount = 9 To 10
        mrc.Fields(intCount) = Trim(Combo1(intCount - 7))
    Next intCount
    
    mrc.Fields(11) = Trim(Combo1(3) * Combo1(6) / 100)
    mrc.Fields(12) = txtItem(1)
    
    
    
    mrc.Update
    mrc.Close
    
    If gintKmode = 1 Then
        MsgBox "订票成功!航班为" & Trim(txtItem(0)) & "从" & Trim(Combo1(0)) & "到" & Trim(Combo1(1)) & "的" & Trim(Combo1(2)) & "机票,票价为" & Trim(Combo1(3) * Combo1(6) / 100) & "元!", vbOKOnly + vbExclamation, "订票记录"
        For intCount = 0 To 1
            txtItem(intCount) = ""
        Next intCount
        
        mblChange = False
        Unload frmTicket
        frmTicket.txtSQL = "select * from ticketInfo"
        frmTicket.Show
        
    ElseIf gintKmode = 2 Then
        MsgBox "修改订票信息成功!修改后的航班为" & Trim(txtItem(0)) & "从" & Trim(Combo1(0)) & "到" & Trim(Combo1(1)) & "的" & Trim(Combo1(2)) & "机票,票价为" & Trim(Combo1(3) * Combo1(6) / 100) & "元!", vbOKOnly + vbExclamation, "订票记录"
        Unload Me
        Unload frmTicket
        
        frmTicket.txtSQL = "select * from ticketInfo"
        frmTicket.Show
    End If
    
End Sub




Private Sub Combo1_Click(Index As Integer)
    Dim mrcc As ADODB.Recordset
    Dim mrcd As ADODB.Recordset
    Dim MsgText As String
    
    
    If Index = 2 Then
        If Not (Trim(Combo1(0)) = "" Or Trim(Combo1(1)) = "") Then
            txtSQL = "select *  from airlineInfo where departCity = '" & Trim(Combo1(0)) & "' and arrivalCity = '" & Trim(Combo1(1)) & "'"
            Set mrcc = ExecuteSQL(txtSQL, MsgText)
                        
            If Not mrcc.EOF Then
                txtairline = mrcc.Fields(0)
                ticketCsum = mrcc!planeNO
                If Trim(Combo1(2)) = "经济舱" Then
                    Combo1(3).Clear
                    Combo1(3).AddItem mrcc.Fields(7)
                    Combo1(3).ListIndex = 0
                ElseIf Trim(Combo1(2)) = "公务舱" Then
                    Combo1(3).Clear
                    Combo1(3).AddItem mrcc.Fields(8)
                    Combo1(3).ListIndex = 0
                Else
                    Combo1(3).Clear
                    Combo1(3).AddItem mrcc.Fields(9)
                    Combo1(3).ListIndex = 0
                End If
            End If
            
            mrcc.Close
            
            txtSQL = "select * from planeInfo where planeNO = '" & Trim(ticketCsum) & "'"
            Set mrcc = ExecuteSQL(txtSQL, MsgText)
            
            If Not mrcc.EOF Then
                ticketCsum = mrcc.Fields(4)
                ticketMsum = mrcc.Fields(5)
                ticketFsum = mrcc.Fields(6)
            End If
            
            mrcc.Close
        End If
    ElseIf Index = 4 Then
        txtSQL = "select customerNO,customerType from customerInfo where customerName = '" & Trim(Combo1(4)) & "'"
        Set mrcc = ExecuteSQL(txtSQL, MsgText)
        
        If Not mrcc.EOF Then
            txtcustomer = mrcc.Fields(0)
            Combo1(5).Clear
            Combo1(5).AddItem mrcc.Fields(1)
            Combo1(5).ListIndex = 0
            
            txtSQL = "select distinct discount from customerType where ctypeName = '" & Trim(Combo1(5)) & "'"
            Set mrcd = ExecuteSQL(txtSQL, MsgText)
            
            If Not mrcd.EOF Then
                Combo1(6).Clear
                Combo1(6).AddItem mrcd.Fields(0)
                Combo1(6).ListIndex = 0
            End If
            
            mrcd.Close
        End If
        
        mrcc.Close
            
    End If
            
                
            
    

End Sub

Private Sub Form_Load()
    Dim intCount As Integer
    Dim MsgText As String
    Dim i As Integer
    Dim mrcc As ADODB.Recordset
  
    If gintKmode = 1 Then
        Me.Caption = Me.Caption & "添加"
        
        txtticket = GetRkno()
        
    ElseIf gintKmode = 2 Then
        Set mrc = ExecuteSQL(txtSQL, MsgText)
        
        If mrc.EOF = False Then
            With mrc
                txtticket = .Fields(0)
                txtItem(0) = .Fields(7)
                txtItem(1) = .Fields(12)
            End With
        End If
        
        Me.Caption = Me.Caption & "修改"
    End If
    
        For i = 0 To 6
            Combo1(i).Clear
        Next i
        
        txtSQL = "select distinct departCity from airlineInfo "
        Set mrcc = ExecuteSQL(txtSQL, MsgText)
        
        If Not mrcc.EOF Then
            Do While Not mrcc.EOF
                Combo1(0).AddItem mrcc.Fields(0)
                mrcc.MoveNext
            Loop
        End If
        
        mrcc.Close
        
        txtSQL = "select distinct arrivalCity from airlineInfo"
        Set mrcc = ExecuteSQL(txtSQL, MsgText)
        
        If Not mrcc.EOF Then
            Do While Not mrcc.EOF
                Combo1(1).AddItem mrcc.Fields(0)
                mrcc.MoveNext
            Loop
        End If
        mrcc.Close
        
        txtSQL = "select distinct serviceName from serviceInfo"
        Set mrcc = ExecuteSQL(txtSQL, MsgText)
        
        If Not mrcc.EOF Then
            Do While Not mrcc.EOF
                Combo1(2).AddItem mrcc.Fields(0)
                mrcc.MoveNext
            Loop
        End If
        mrcc.Close
        
        txtSQL = "select distinct customerName from customerInfo"
        Set mrcc = ExecuteSQL(txtSQL, MsgText)
        
        If Not mrcc.EOF Then
            Do While Not mrcc.EOF
                Combo1(4).AddItem mrcc.Fields(0)
                mrcc.MoveNext
            Loop
        End If
        mrcc.Close
    
    
    mblChange = False
End Sub

Private Sub Form_Unload(Cancel As Integer)
    gintKmode = 0
End Sub



Private Sub txtItem_Change(Index As Integer)
    '有变化设置gblchange
    mblChange = True
End Sub

Private Sub txtItem_GotFocus(Index As Integer)
    txtItem(Index).SelStart = 0
    txtItem(Index).SelLength = Len(txtItem(Index))
End Sub

Private Sub txtItem_KeyDown(Index As Integer, KeyCode As Integer, Shift As Integer)
    EnterToTab KeyCode
End Sub

⌨️ 快捷键说明

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