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

📄 form5.frm

📁 利用VB编写的一个完整的酒店管理程序,支持双数据库!
💻 FRM
📖 第 1 页 / 共 3 页
字号:
  db.Close
  
MsgBox "退房结帐成功!"
End Sub

Private Sub Command2_Click()

'Caozuo = "修改时间按钮 '" & Label26.caption & " '房间 "
'lu_time = Now
'RiZhil

If Val(txtfield(7).Text) = 0 Then
If MsgBox("是否免收客房消费【" & txtfield(17).Text & " 元】(Y/N)? ", vbInformation + vbYesNo) = vbYes Then
txtfield(10).Text = 0
txtfield(17).Text = 0
txtfield(16).Text = "免收一切费用"
Label21.caption = txtfield(11).Text
txtfield(18).Text = 0
Combo3.Text = "招待"
Else
txtfield(10).Text = txtfield(17).Text
txtfield(16).Text = "免收宿费"
Label21.caption = Val(txtfield(11).Text) - Val(txtfield(17).Text)
txtfield(18).Text = Val(txtfield(11).Text) - Val(txtfield(17).Text)
Combo3.Text = "招待"
End If
End If

      txtfield(8).Text = Val(txtfield(7).Text) * Val(txtfield(6).Text)
      txtfield(18).Text = Val(txtfield(7).Text) * Val(txtfield(6).Text) + Val(txtfield(17).Text)
      txtfield(10).Text = Val(txtfield(7).Text) * Val(txtfield(6).Text)
      Label21.caption = Val(txtfield(11).Text) - (Val(txtfield(7).Text) * Val(txtfield(6).Text) + Val(txtfield(17).Text))
Command2.Enabled = False

End Sub

Private Sub Command3_Click()

'Caozuo = "退宿退出按钮 '" & Label26.caption & " '房间 "
'lu_time = Now
'RiZhil



For i = 0 To 17
txtfield(i).Text = ""
Next i
Unload Me
End Sub

Private Sub Command4_Click()

'Caozuo = "退宿打印按钮 '" & Label26.caption & " '房间 "
'lu_time = Now
'RiZhil


'FIXIT: 升级向导未将 Printer 对象和 Printers 集合升级到 Visual Basic .NET。                               FixIT90210ae-R5481-H1984
'FIXIT: 升级向导未将 Printer 对象和 Printers 集合升级到 Visual Basic .NET。                               FixIT90210ae-R5481-H1984
'FIXIT: 升级向导未将 Printer 对象和 Printers 集合升级到 Visual Basic .NET。                               FixIT90210ae-R5481-H1984
'FIXIT: 升级向导未将 Printer 对象和 Printers 集合升级到 Visual Basic .NET。                               FixIT90210ae-R5481-H1984
 Printer.Height = 7000: Printer.Width = 7000
'FIXIT: 升级向导未将 Printer 对象和 Printers 集合升级到 Visual Basic .NET。                               FixIT90210ae-R5481-H1984
'FIXIT: 升级向导未将 Printer 对象和 Printers 集合升级到 Visual Basic .NET。                               FixIT90210ae-R5481-H1984
'FIXIT: 升级向导未将 Printer 对象和 Printers 集合升级到 Visual Basic .NET。                               FixIT90210ae-R5481-H1984
'FIXIT: 升级向导未将 Printer 对象和 Printers 集合升级到 Visual Basic .NET。                               FixIT90210ae-R5481-H1984
 Printer.CurrentX = 1500: Printer.CurrentY = 300
'FIXIT: 升级向导未将 Printer 对象和 Printers 集合升级到 Visual Basic .NET。                               FixIT90210ae-R5481-H1984
 Printer.FontSize = 16
'FIXIT: 升级向导未将 Printer 对象和 Printers 集合升级到 Visual Basic .NET。                               FixIT90210ae-R5481-H1984
 Printer.Print "  退 宿 结 账 单 "
'FIXIT: 用早期绑定的数据类型声明 "a' and 'b' and 'C"                                                   FixIT90210ae-R1672-R1B8ZE
 Dim a, b, C, D As Integer
 a = 60: b = 650: C = 3800: D = 350
'FIXIT: 升级向导未将 Printer 对象和 Printers 集合升级到 Visual Basic .NET。                               FixIT90210ae-R5481-H1984
 Printer.FontSize = 10
'FIXIT: 升级向导未将 Printer 对象和 Printers 集合升级到 Visual Basic .NET。                               FixIT90210ae-R5481-H1984
 Printer.CurrentX = 100 + a
'FIXIT: 升级向导未将 Printer 对象和 Printers 集合升级到 Visual Basic .NET。                               FixIT90210ae-R5481-H1984
 Printer.CurrentY = b + 200
'FIXIT: 升级向导未将 Printer 对象和 Printers 集合升级到 Visual Basic .NET。                               FixIT90210ae-R5481-H1984
 Printer.Print Date & " " & Time & "  NO." & Text1.Text
 b = b + D
'FIXIT: 升级向导未将 Printer 对象和 Printers 集合升级到 Visual Basic .NET。                               FixIT90210ae-R5481-H1984
 Printer.Line (60 + a, b + 100)-(6000 + a, b + 100)
'FIXIT: 升级向导未将 Printer 对象和 Printers 集合升级到 Visual Basic .NET。                               FixIT90210ae-R5481-H1984
 Printer.CurrentX = 100 + a
'FIXIT: 升级向导未将 Printer 对象和 Printers 集合升级到 Visual Basic .NET。                               FixIT90210ae-R5481-H1984
 Printer.CurrentY = b + 200
'FIXIT: 升级向导未将 Printer 对象和 Printers 集合升级到 Visual Basic .NET。                               FixIT90210ae-R5481-H1984
 Printer.Print "姓名:" & txtfield(0).Text
 b = b + D
'FIXIT: 升级向导未将 Printer 对象和 Printers 集合升级到 Visual Basic .NET。                               FixIT90210ae-R5481-H1984
 Printer.CurrentX = 100 + a
'FIXIT: 升级向导未将 Printer 对象和 Printers 集合升级到 Visual Basic .NET。                               FixIT90210ae-R5481-H1984
 Printer.CurrentY = b + 200
'FIXIT: 升级向导未将 Printer 对象和 Printers 集合升级到 Visual Basic .NET。                               FixIT90210ae-R5481-H1984
 Printer.Print "房间号:" & Label26.caption
 b = b + D
'FIXIT: 升级向导未将 Printer 对象和 Printers 集合升级到 Visual Basic .NET。                               FixIT90210ae-R5481-H1984
 Printer.CurrentX = 100 + a
'FIXIT: 升级向导未将 Printer 对象和 Printers 集合升级到 Visual Basic .NET。                               FixIT90210ae-R5481-H1984
 Printer.CurrentY = b + 200
'FIXIT: 升级向导未将 Printer 对象和 Printers 集合升级到 Visual Basic .NET。                               FixIT90210ae-R5481-H1984
 Printer.Print "房价:" & Format(txtfield(6).Text, "0.00") & "元" & "    " & "入住天数: " & txtfield(7).Text & "天     "

  b = b + D
'FIXIT: 升级向导未将 Printer 对象和 Printers 集合升级到 Visual Basic .NET。                               FixIT90210ae-R5481-H1984
  Printer.CurrentX = 100 + a
'FIXIT: 升级向导未将 Printer 对象和 Printers 集合升级到 Visual Basic .NET。                               FixIT90210ae-R5481-H1984
   Printer.CurrentY = b + 200
'FIXIT: 升级向导未将 Printer 对象和 Printers 集合升级到 Visual Basic .NET。                               FixIT90210ae-R5481-H1984
  Printer.Print "宿费 " & Format(txtfield(8).Text, "0.00") & "元    " & Combo3.Text & ":" & txtfield(9).Text & "%"

 '
   b = b + D
'FIXIT: 升级向导未将 Printer 对象和 Printers 集合升级到 Visual Basic .NET。                               FixIT90210ae-R5481-H1984
   Printer.CurrentX = 100 + a
'FIXIT: 升级向导未将 Printer 对象和 Printers 集合升级到 Visual Basic .NET。                               FixIT90210ae-R5481-H1984
   Printer.CurrentY = b + 200
'FIXIT: 升级向导未将 Printer 对象和 Printers 集合升级到 Visual Basic .NET。                               FixIT90210ae-R5481-H1984
   Printer.Print "其他费用:" & Format(txtfield(17).Text, "0.00") & "元" & "实收金额:" & Format(txtfield(18).Text, "0.00") & "元 "
'

 
  b = b + D
'FIXIT: 升级向导未将 Printer 对象和 Printers 集合升级到 Visual Basic .NET。                               FixIT90210ae-R5481-H1984
   Printer.CurrentX = 100 + a
'FIXIT: 升级向导未将 Printer 对象和 Printers 集合升级到 Visual Basic .NET。                               FixIT90210ae-R5481-H1984
   Printer.CurrentY = b + 200
'FIXIT: 升级向导未将 Printer 对象和 Printers 集合升级到 Visual Basic .NET。                               FixIT90210ae-R5481-H1984
   Printer.Print "押金: " & Format(txtfield(11).Text, "0.00") & "元 " & "退还金额: " & Format(Label21.caption, "0.00") & "元"
  
  If Check2.Value = vbChecked Then '选择是否打印消费清单
  b = b + D
'FIXIT: 升级向导未将 Printer 对象和 Printers 集合升级到 Visual Basic .NET。                               FixIT90210ae-R5481-H1984
   Printer.CurrentX = 100 + a
'FIXIT: 升级向导未将 Printer 对象和 Printers 集合升级到 Visual Basic .NET。                               FixIT90210ae-R5481-H1984
   Printer.CurrentY = b + 200
'FIXIT: 升级向导未将 Printer 对象和 Printers 集合升级到 Visual Basic .NET。                               FixIT90210ae-R5481-H1984
  Printer.Print Text2.Text
 End If
 
 b = b + D
'FIXIT: 升级向导未将 Printer 对象和 Printers 集合升级到 Visual Basic .NET。                               FixIT90210ae-R5481-H1984
 Printer.CurrentX = 100 + a
'FIXIT: 升级向导未将 Printer 对象和 Printers 集合升级到 Visual Basic .NET。                               FixIT90210ae-R5481-H1984
 Printer.CurrentY = b + 200
'FIXIT: 升级向导未将 Printer 对象和 Printers 集合升级到 Visual Basic .NET。                               FixIT90210ae-R5481-H1984
 Printer.Print "备注:" & txtfield(16).Text
 b = b + D
'FIXIT: 升级向导未将 Printer 对象和 Printers 集合升级到 Visual Basic .NET。                               FixIT90210ae-R5481-H1984
 Printer.Line (60 + a, b + 100)-(6000 + a, b + 100)
'FIXIT: 升级向导未将 Printer 对象和 Printers 集合升级到 Visual Basic .NET。                               FixIT90210ae-R5481-H1984
 Printer.CurrentX = 400
'FIXIT: 升级向导未将 Printer 对象和 Printers 集合升级到 Visual Basic .NET。                               FixIT90210ae-R5481-H1984
 Printer.CurrentY = b + 200

'FIXIT: 升级向导未将 Printer 对象和 Printers 集合升级到 Visual Basic .NET。                               FixIT90210ae-R5481-H1984
 Printer.Print "操作员: " & MDIForm1.StatusBar1.Panels(4).Text & "   " & "顾客签名:"
 'Printer.CurrentX = 5000 + a
 'Printer.CurrentY = b + 200
 'Printer.Print "顾客签名:"
'FIXIT: 升级向导未将 Printer 对象和 Printers 集合升级到 Visual Basic .NET。                               FixIT90210ae-R5481-H1984
 Printer.EndDoc
 
 Command4.Enabled = False
 
 
End Sub

Private Sub Command5_Click()
'Caozuo = "退宿登记按钮"
'lu_time = Now
'RiZhil
SearchIt
ShIt
Command1.Enabled = True
Command4.Enabled = True
Command5.Enabled = False
Command2.Enabled = True
End Sub

Private Sub Form_Load()
'retValue = SetWindowPos(Me.hwnd, HWND_TOPMOST, Me.CurrentX, Me.CurrentY, 11880, 8280, SWP_SHOWWINDOW)
End Sub
Private Sub SearchIt()

 '检索出售房屋信息
  Dim db As Database
  Dim EF As Recordset
  Set db = OpenDatabase(ConData, False, True, Constr)
  Set EF = db.OpenRecordset("select * from djb where 标志='1' order by 房间号", dbOpenDynaset)

     '列出记录
      If Not (EF.BOF And EF.EOF) Then
         Do While Not EF.EOF
            Combo1.AddItem EF("房间号")
                Combo5.AddItem EF("房间号")
            EF.MoveNext
         Loop
      End If
      
'添加合计
   EF.Close
  db.Close

End Sub

Private Sub SeIt()

 '检索出售房屋信息
  Dim db As Database
  Dim EF As Recordset
  Set db = OpenDatabase(ConData, False, True, Constr)
  Set EF = db.OpenRecordset("select * from djb where 房间号='" & Combo1.Text & "' and 标志='1'", dbOpenDynaset)

     '列出记录
      If Combo1.Text <> "" Then
     ' Text1.Text = "T" + EF("凭证号码")
      txtfield(0).Text = EF("姓名")
      Combo2 = EF("证件名称")
      If txtfield(1).Text <> "" Then txtfield(1).Text = EF("证件号码")
      If txtfield(2).Text <> "" Then txtfield(2).Text = EF("详细地址")
      If txtfield(3).Text <> "" Then txtfield(3).Text = EF("出差事由")
      If txtfield(4).Text <> "" Then txtfield(4).Text = EF("联系电话")
     Label26.caption = EF("房间号")
      txtfield(5).Text = EF("客房类型")
      txtfield(6).Text = EF("客房价格")
      Combo3.Text = EF("结款方式")
      txtfield(9).Text = EF("折扣")
      txtfield(11).Text = EF("预收金额")
     If txtfield(16).Text <> "" Then txtfield(16).Text = EF("备注")
      
      txtfield(12).Text = EF("住宿日期")
      txtfield(13).Text = EF("住宿时间")
      txtfield(17).Text = EF("bz")
      txtfield(15).Text = Time
      txtfield(14).Text = Date
      
      If (Date - EF("住宿日期")) > 1 Then
            If Time <= "12:00:00" Then
            txtfield(7).Text = (Date - EF("住宿日期"))
            txtfield(8).Text = Val(txtfield(7).Text) * EF("客房价格")
            txtfield(10).Text = Val(txtfield(7).Text) * EF("客房价格")
            txtfield(18).Text = Val(txtfield(7).Text) * EF("客房价格") + EF("bz")
            Label21.caption = EF("预收金额") - (Val(txtfield(7).Text) * EF("客房价格") + EF("bz"))
            
            Else
                 If Time <= "18:00:00" Then
                 txtfield(7).Text = (Date - EF("住宿日期")) + 0.5
                 
                 txtfield(8).Text = Val(txtfield(7).Text) * EF("客房价格")
                 txtfield(10).Text = Val(txtfield(7).Text) * EF("客房价格")
                 txtfield(18).Text = Val(txtfield(7).Text) * EF("客房价格") + EF("bz")
                 Label21.caption = EF("预收金额") - (Val(txtfield(7).Text) * EF("客房价格") + EF("bz"))
                 Else
                 txtfield(7).Text = (Date - EF("住宿日期")) + 1
                
                 txtfield(8).Text = Val(txtfield(7).Text) * EF("客房价格")
                 txtfield(10).Text = Val(txtfield(7).Text) * EF("客房价格")
                 txtfield(18).Text = Val(txtfield(7).Text) * EF("客房价格") + EF("bz")
                 Label21.caption = EF("预收金额") - (Val(txtfield(7).Text) * EF("客房价格") + EF("bz"))
                 End If
     
           End If
      End If
      If (Date - EF("住宿日期")) = 0 Then
      txtfield(7).Text = 1
      
      txtfield(8).Text = Val(txtfield(7).Text) * EF("客房价格")
      txtfield(10).Text = Val(txtfield(7).Text) * EF("客房价格")
      txtfield(18).Text = Val(txtfield(7).Text) * EF("客房价格") + EF("bz")
      Label21.caption = EF("预收金额") - (Val(txtfield(7).Text) * EF("客房价格") + EF("bz"))
      End If
      If (Date - EF("住宿日期")) = 1 Then
            If Time <= "12:00:00" Then
            txtfield(7).Text = 1
            txtfield(8).Text = Val(txtfield(7).Text) * EF("客房价格")
            txtfield(10).Text = Val(txtfield(7).Text) * EF("客房价格")
            txtfield(18).Text = Val(txtfield(7).Text) * EF("客房价格") + EF("bz")
            Label21.caption = EF("预收金额") - (Val(txtfield(7).Text) * EF("客房价格") + EF("bz"))
            
            Else
                 If Time <= "18:00:00" Then
                 txtfield(7).Text = 1.5
                 
                 txtfield(8).Text = Val(txtfield(7).Text) * EF("客房价格")
                 txtfield(10).Text = Val(txtfield(7).Text) * EF("客房价格")
                 txtfield(18).Text = Val(txtfield(7).Text) * EF("客房价格") + EF("bz")
                 Label21.caption = EF("预收金额") - (Val(txtfield(7).Text) * EF("客房价格") + EF("bz"))
                 Else
                 txtfield(7).Text = (Date - EF("住宿日期")) + 1
                
                 txtfield(8).Text = Val(txtfield(7).Text) * EF("客房价格")
                 txtfield(10).Text = Val(txtfield(7).Text) * EF("客房价格")
                 txtfield(18).Text = Val(txtfield(7).Text) * EF("客房价格") + EF("bz")
                 Label21.caption = EF("预收金额") - (Val(txtfield(7).Text) * EF("客房价格") + EF("bz"))
                 End If
     
           End If
      
     End If
      
      
      
      
      
      Else
      MsgBox "请确认该房间是否有住宿登记信息!"
      End If
       
'添加合计
   EF.Close
  db.Close

End Sub

Private Sub PIt()

 '检索出售房屋信息
  Dim db As Database
  Dim EF As Recordset
  Set db = OpenDatabase(ConData, False, False, Constr)
  Set EF = db.OpenRecordset("select * from wpxh where 房间号='" & Label26.caption & "'and 标志='1'", dbOpenDynaset)

     '列出记录
     If Not (EF.BOF And EF.EOF) Then
        Do While Not EF.EOF
            EF.Edit
            EF("标志") = "0"
             EF.Update
            EF.MoveNext
        Loop
      End If
    
'添加合计
   EF.Close
  db.Close

End Sub

Private Sub ShIt()
'Grid1.Clear
'Grid1.FormatString = "凭  证  号  码  | 姓    名 |  房 间 号  | 住  宿  日  期 |   退  房  日  期  |退  房  时  间 "

 '检索数据
  Dim db As Database
  Dim EF As Recordset
  Set db = OpenDatabase(ConData, False, False, Constr)
  Set EF = db.OpenRecordset("select * from steelno where 单据名称='退宿登记'", dbOpenDynaset)
  
  
     '列出记录
      
            
            Text1.Text = EF("单据号码") + 1
            
        
      
 '添加合计
  'Grid1.AddItem "" & vbTab & "  合  计 " & vbTab & "" _
                     & vbTab & "" & vbTab & vbTab & curSumQuanty & vbTab & "" _
                      & vbTab & curSumMoney & vbTab & ""
 '更换最后一行颜色
  'Grid1.Row = Grid1.Rows - 1
  'Dim X As Integer
      'For X = 7 To 0 Step -1
         'Grid1.Col = X
        ' Grid1.CellBackColor = &HE0E0D0
      'Next
  'Grid1.ColSel = 7
  
  EF.Close
  db.Close

End Sub

Private Sub bIt()
Text2.Text = ""
 '检索出售房屋信息
  Dim db As Database
  Dim EF As Recordset
  Set db = OpenDatabase(ConData, False, True, Constr)
  Set EF = db.OpenRecordset("select * from wpxh where 房间号='" & Combo1.Text & "' and 标志='1'", dbOpenDynaset)

     '列出记录
      If Not (EF.BOF And EF.EOF) Then
         Do While Not EF.EOF
            Text2.Text = Text2.Text + EF("名称") & EF("单价") & "*" & EF("数量") & "=" & EF("合计") & "※"
            EF.MoveNext
            
         Loop
      End If
      
'添加合计
   EF.Close
  db.Close

End Sub










⌨️ 快捷键说明

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