frmBookin1.frm
上传用户:fulizhu2
上传日期:2007-06-21
资源大小:34k
文件大小:16k
源码类别:

酒店行业

开发平台:

Visual Basic

  1. VERSION 5.00
  2. Begin VB.Form frmBookin1 
  3.    BorderStyle     =   3  'Fixed Dialog
  4.    Caption         =   "订房信息"
  5.    ClientHeight    =   4368
  6.    ClientLeft      =   48
  7.    ClientTop       =   336
  8.    ClientWidth     =   8112
  9.    LinkTopic       =   "Form1"
  10.    MaxButton       =   0   'False
  11.    MinButton       =   0   'False
  12.    ScaleHeight     =   4368
  13.    ScaleWidth      =   8112
  14.    ShowInTaskbar   =   0   'False
  15.    StartUpPosition =   1  'CenterOwner
  16.    Begin VB.TextBox txtNo 
  17.       Height          =   270
  18.       Left            =   2520
  19.       TabIndex        =   23
  20.       TabStop         =   0   'False
  21.       Top             =   3960
  22.       Visible         =   0   'False
  23.       Width           =   735
  24.    End
  25.    Begin VB.Frame Frame2 
  26.       Caption         =   "顾客信息"
  27.       Height          =   3492
  28.       Left            =   4080
  29.       TabIndex        =   18
  30.       Top             =   240
  31.       Width           =   3735
  32.       Begin VB.TextBox txtItem 
  33.          Height          =   1440
  34.          Index           =   4
  35.          Left            =   1320
  36.          MultiLine       =   -1  'True
  37.          ScrollBars      =   2  'Vertical
  38.          TabIndex        =   9
  39.          Top             =   1800
  40.          Width           =   2175
  41.       End
  42.       Begin VB.TextBox txtItem 
  43.          Height          =   270
  44.          Index           =   0
  45.          Left            =   1320
  46.          MaxLength       =   5
  47.          TabIndex        =   5
  48.          Top             =   360
  49.          Width           =   2175
  50.       End
  51.       Begin VB.TextBox txtItem 
  52.          Height          =   270
  53.          Index           =   1
  54.          Left            =   1320
  55.          MaxLength       =   18
  56.          TabIndex        =   6
  57.          Top             =   720
  58.          Width           =   2175
  59.       End
  60.       Begin VB.TextBox txtItem 
  61.          Height          =   270
  62.          Index           =   2
  63.          Left            =   1320
  64.          MaxLength       =   10
  65.          TabIndex        =   7
  66.          Top             =   1080
  67.          Width           =   2172
  68.       End
  69.       Begin VB.TextBox txtItem 
  70.          Height          =   270
  71.          Index           =   3
  72.          Left            =   1320
  73.          MaxLength       =   3
  74.          TabIndex        =   8
  75.          Top             =   1440
  76.          Width           =   1572
  77.       End
  78.       Begin VB.Label Label2 
  79.          Caption         =   "%"
  80.          Height          =   252
  81.          Index           =   8
  82.          Left            =   3120
  83.          TabIndex        =   25
  84.          Top             =   1440
  85.          Width           =   492
  86.       End
  87.       Begin VB.Label Label2 
  88.          Caption         =   "备 注 信 息:"
  89.          Height          =   252
  90.          Index           =   7
  91.          Left            =   240
  92.          TabIndex        =   24
  93.          Top             =   1800
  94.          Width           =   972
  95.       End
  96.       Begin VB.Label Label2 
  97.          Caption         =   "入 住 时 间:"
  98.          Height          =   252
  99.          Index           =   11
  100.          Left            =   240
  101.          TabIndex        =   22
  102.          Top             =   1080
  103.          Width           =   972
  104.       End
  105.       Begin VB.Label Label2 
  106.          Caption         =   "折            扣:"
  107.          Height          =   252
  108.          Index           =   6
  109.          Left            =   240
  110.          TabIndex        =   21
  111.          Top             =   1440
  112.          Width           =   972
  113.       End
  114.       Begin VB.Label Label2 
  115.          Caption         =   "身份证号码:"
  116.          Height          =   255
  117.          Index           =   5
  118.          Left            =   240
  119.          TabIndex        =   20
  120.          Top             =   720
  121.          Width           =   975
  122.       End
  123.       Begin VB.Label Label2 
  124.          Caption         =   "顾 客  姓 名:"
  125.          Height          =   255
  126.          Index           =   4
  127.          Left            =   240
  128.          TabIndex        =   19
  129.          Top             =   360
  130.          Width           =   975
  131.       End
  132.    End
  133.    Begin VB.Frame Frame1 
  134.       Caption         =   "客房信息"
  135.       Height          =   3492
  136.       Left            =   240
  137.       TabIndex        =   12
  138.       Top             =   240
  139.       Width           =   3735
  140.       Begin VB.TextBox txtItem 
  141.          Height          =   960
  142.          Index           =   5
  143.          Left            =   1320
  144.          MaxLength       =   5
  145.          MultiLine       =   -1  'True
  146.          ScrollBars      =   2  'Vertical
  147.          TabIndex        =   4
  148.          Top             =   2400
  149.          Width           =   2175
  150.       End
  151.       Begin VB.ComboBox cboItem 
  152.          Height          =   300
  153.          Index           =   3
  154.          Left            =   1320
  155.          Style           =   2  'Dropdown List
  156.          TabIndex        =   3
  157.          Top             =   1920
  158.          Width           =   2175
  159.       End
  160.       Begin VB.ComboBox cboItem 
  161.          Height          =   300
  162.          Index           =   2
  163.          Left            =   1320
  164.          Style           =   2  'Dropdown List
  165.          TabIndex        =   2
  166.          Top             =   1440
  167.          Width           =   2175
  168.       End
  169.       Begin VB.ComboBox cboItem 
  170.          Height          =   300
  171.          Index           =   1
  172.          Left            =   1320
  173.          Style           =   2  'Dropdown List
  174.          TabIndex        =   1
  175.          Top             =   960
  176.          Width           =   2175
  177.       End
  178.       Begin VB.ComboBox cboItem 
  179.          Height          =   300
  180.          Index           =   0
  181.          Left            =   1320
  182.          Style           =   2  'Dropdown List
  183.          TabIndex        =   0
  184.          Top             =   480
  185.          Width           =   2175
  186.       End
  187.       Begin VB.Label Label2 
  188.          Caption         =   "客房单价:"
  189.          Height          =   255
  190.          Index           =   3
  191.          Left            =   240
  192.          TabIndex        =   17
  193.          Top             =   1920
  194.          Width           =   975
  195.       End
  196.       Begin VB.Label Label2 
  197.          Caption         =   "客房编号:"
  198.          Height          =   255
  199.          Index           =   0
  200.          Left            =   240
  201.          TabIndex        =   16
  202.          Top             =   480
  203.          Width           =   975
  204.       End
  205.       Begin VB.Label Label2 
  206.          Caption         =   "客房种类:"
  207.          Height          =   255
  208.          Index           =   1
  209.          Left            =   240
  210.          TabIndex        =   15
  211.          Top             =   960
  212.          Width           =   975
  213.       End
  214.       Begin VB.Label Label2 
  215.          Caption         =   "客房备注:"
  216.          Height          =   255
  217.          Index           =   2
  218.          Left            =   240
  219.          TabIndex        =   14
  220.          Top             =   2400
  221.          Width           =   975
  222.       End
  223.       Begin VB.Label Label2 
  224.          Caption         =   "客房位置:"
  225.          Height          =   255
  226.          Index           =   16
  227.          Left            =   240
  228.          TabIndex        =   13
  229.          Top             =   1440
  230.          Width           =   975
  231.       End
  232.    End
  233.    Begin VB.CommandButton cmdExit 
  234.       Caption         =   "返回 (&X)"
  235.       Height          =   375
  236.       Left            =   6120
  237.       TabIndex        =   11
  238.       Top             =   3840
  239.       Width           =   1215
  240.    End
  241.    Begin VB.CommandButton cmdSave 
  242.       Caption         =   "保存 (&S)"
  243.       Height          =   375
  244.       Left            =   4680
  245.       TabIndex        =   10
  246.       Top             =   3840
  247.       Width           =   1215
  248.    End
  249. End
  250. Attribute VB_Name = "frmBookin1"
  251. Attribute VB_GlobalNameSpace = False
  252. Attribute VB_Creatable = False
  253. Attribute VB_PredeclaredId = True
  254. Attribute VB_Exposed = False
  255. Option Explicit
  256. '是否改动过记录,ture为改过
  257. Dim mblChange As Boolean
  258. Dim mrc As ADODB.Recordset
  259. Public txtSQL As String
  260. Private Sub cboItem_Change(Index As Integer)
  261.     '有变化设置gblchange
  262.     
  263.     mblChange = True
  264.     
  265. End Sub
  266. Private Sub cboItem_Click(Index As Integer)
  267.     Dim mrcc As ADODB.Recordset
  268.     Dim intCount As Integer
  269.     Dim MsgText As String
  270.     
  271.     If gintBmode = 1 Then
  272.         If Index = 0 Then
  273.             txtSQL = "select * from rooms where roomNO = '" & Trim(cboItem(0)) & "' and putup <> '是'"
  274.             Set mrcc = ExecuteSQL(txtSQL, MsgText)
  275.             For intCount = 1 To 3
  276.                 cboItem(intCount).Clear
  277.                 cboItem(intCount).AddItem mrcc.Fields(intCount)
  278.                 cboItem(intCount).ListIndex = 0
  279.             Next intCount
  280.             txtItem(5) = mrcc.Fields(5)
  281.             mrcc.Close
  282.         End If
  283.     End If
  284. End Sub
  285. Private Sub cboItem_KeyDown(Index As Integer, KeyCode As Integer, Shift As Integer)
  286.     EnterToTab KeyCode
  287.     
  288. End Sub
  289. Private Sub cmdExit_Click()
  290.     If mblChange And cmdSave.Enabled Then
  291.         If MsgBox("保存当前记录的变化吗?", vbOKCancel + vbExclamation, "警告") = vbOK Then
  292.             '保存
  293.             Call cmdSave_Click
  294.         End If
  295.     End If
  296.     Unload Me
  297. End Sub
  298. Private Sub cmdSave_Click()
  299.     Dim intCount As Integer
  300.     Dim sMeg As String
  301.     Dim mrcc As ADODB.Recordset
  302.     Dim MsgText As String
  303.     
  304.     For intCount = 0 To 3
  305.         If Trim(txtItem(intCount) & " ") = "" Then
  306.             Select Case intCount
  307.                 Case 0
  308.                     sMeg = "顾客姓名"
  309.                 Case 1
  310.                     sMeg = "身份证号码"
  311.                 Case 2
  312.                     sMeg = "折扣"
  313.                 Case 3
  314.                     sMeg = "入住时间"
  315.             End Select
  316.             sMeg = sMeg & "不能为空!"
  317.             MsgBox sMeg, vbOKOnly + vbExclamation, "警告"
  318.             txtItem(intCount).SetFocus
  319.         
  320.             Exit Sub
  321.         End If
  322.     Next intCount
  323.     
  324.     For intCount = 0 To 3
  325.         If Trim(cboItem(intCount) & " ") = "" Then
  326.             Select Case intCount
  327.                 Case 0
  328.                     sMeg = "客房编号"
  329.                 Case 1
  330.                     sMeg = "客房种类"
  331.                 Case 2
  332.                     sMeg = "客房位置"
  333.                 Case 3
  334.                     sMeg = "客房单价"
  335.             End Select
  336.             sMeg = sMeg & "不能为空!"
  337.             MsgBox sMeg, vbOKOnly + vbExclamation, "警告"
  338.             cboItem(intCount).SetFocus
  339.         
  340.             Exit Sub
  341.         End If
  342.     Next intCount
  343.     
  344.    
  345.     If IsDate(txtItem(2)) Then
  346.         txtItem(2) = Format(txtItem(2), "yyyy-mm-dd")
  347.     Else
  348.         MsgBox "入库时间应输入日期(yyyy-mm-dd)!", vbOKOnly + vbExclamation, "警告"
  349.         txtItem(2).SetFocus
  350.         Exit Sub
  351.     End If
  352.     
  353.     For intCount = 1 To 3 Step 2
  354.         If Not IsNumeric(txtItem(intCount)) Then
  355.             MsgBox "请输入数字", vbOKOnly + vbExclamation, "警告"
  356.             txtItem(intCount).SetFocus
  357.             Exit Sub
  358.         End If
  359.     Next intCount
  360.     
  361.     If gintBmode = 2 Then
  362.         txtSQL = "delete from bookin where bookno = '" & Trim(txtNo) & "'"
  363.         Set mrcc = ExecuteSQL(txtSQL, MsgText)
  364.     End If
  365.     
  366.     txtSQL = "select * from bookin"
  367.     Set mrcc = ExecuteSQL(txtSQL, MsgText)
  368.     mrcc.AddNew
  369.     mrcc.Fields(0) = txtNo
  370.     For intCount = 0 To 1
  371.         mrcc.Fields(intCount + 1) = txtItem(intCount)
  372.     Next intCount
  373.     
  374.     mrcc.Fields(3) = cboItem(0)
  375.     
  376.     For intCount = 2 To 4
  377.         mrcc.Fields(intCount + 2) = txtItem(intCount)
  378.     Next intCount
  379.     mrcc.Fields(8) = 0
  380.     
  381.     
  382.     mrcc.Update
  383.     mrcc.Close
  384.     
  385.     txtSQL = "select * from rooms where roomNO = '" & Trim(cboItem(0)) & "'"
  386.     Set mrcc = ExecuteSQL(txtSQL, MsgText)
  387.     If Not mrcc.EOF Then
  388.         mrcc!putup = "y"
  389.     End If
  390.     mrcc.Update
  391.     mrcc.Close
  392.         
  393.     
  394.     If gintBmode = 1 Then
  395.         MsgBox "添加订房信息成功!", vbOKOnly + vbExclamation, "添加订房消息"
  396.         Unload Me
  397.         If flagBedit Then
  398.             Unload frmBookin
  399.         End If
  400.         frmBookin.txtSQL = "select bookno,customname,customID,roomno,indate,discount,inmemo from bookin where ammount = '0'"
  401.         frmBookin.Show
  402.     Else
  403.         MsgBox "修改订房信息成功!", vbOKOnly + vbExclamation, "修改订房消息"
  404.         Unload Me
  405.         If flagBedit Then
  406.             Unload frmBookin
  407.         End If
  408.         frmBookin.txtSQL = "select bookno,customname,customID,roomno,indate,discount,inmemo from bookin where ammount = '0'"
  409.         frmBookin.Show
  410.     End If
  411.     
  412.         
  413.     
  414.     
  415.     
  416.     
  417. End Sub
  418. Private Sub Form_Load()
  419.     Dim sSql As String
  420.     Dim intCount As Integer
  421.     Dim MsgText As String
  422.     
  423.     
  424.     If flagSedit Then
  425.         Set mrc = ExecuteSQL(txtSQL, MsgText)
  426.         If Not mrc.EOF Then
  427.             For intCount = 0 To 3
  428.                 cboItem(intCount).AddItem mrc.Fields(intCount)
  429.                 cboItem(intCount).ListIndex = 0
  430.             Next intCount
  431.             txtItem(5) = mrc.Fields(5)
  432.         End If
  433.         mrc.Close
  434.         txtNo = GetRkno()
  435.         gintBmode = 1
  436.         
  437.     Else
  438.         If gintBmode = 1 Then
  439.             Me.Caption = Me.Caption & "添加"
  440.         
  441.         '初始化客房信息
  442.             txtSQL = "select DISTINCT roomNO from rooms where putup <> 'y'"
  443.             Set mrc = ExecuteSQL(txtSQL, MsgText)
  444.         
  445.             If Not mrc.EOF Then
  446.                 
  447.                     Do While Not mrc.EOF
  448.                         cboItem(0).AddItem Trim(mrc.Fields(0))
  449.                         mrc.MoveNext
  450.                     Loop
  451.             Else
  452.                 MsgBox "请先进行客房登记!", vbOKOnly + vbExclamation, "警告"
  453.                 cmdSave.Enabled = False
  454.                 Exit Sub
  455.             End If
  456.             mrc.Close
  457.         
  458.             txtNo = GetRkno
  459.                 
  460.         ElseIf gintBmode = 2 Then
  461.        
  462.         
  463.         
  464.                     Set mrc = ExecuteSQL(txtSQL, MsgText)
  465.         
  466.                     If mrc.EOF = False Then
  467.                         With mrc
  468.                             txtNo = !bookno
  469.                             
  470.                             For intCount = 0 To 1
  471.                                 If Not IsNull(.Fields(intCount + 1)) Then
  472.                                     txtItem(intCount) = .Fields(intCount + 1)
  473.                                 End If
  474.                             Next intCount
  475.                             
  476.                             cboItem(0).AddItem !roomno
  477.                             cboItem(0).ListIndex = 0
  478.                             
  479.                             For intCount = 2 To 4
  480.                                 If Not IsNull(.Fields(intCount + 2)) Then
  481.                                     txtItem(intCount) = .Fields(intCount + 2)
  482.                                 End If
  483.                             Next intCount
  484.                             
  485.                         End With
  486.                     
  487.                     End If
  488.                     mrc.Close
  489.                     Me.Caption = Me.Caption & "修改"
  490.                     
  491.                     txtSQL = "select * from rooms where roomNO = '" & Trim(cboItem(0)) & "'"
  492.                     Set mrc = ExecuteSQL(txtSQL, MsgText)
  493.                     If Not mrc.EOF Then
  494.                         For intCount = 1 To 3
  495.                             cboItem(intCount).AddItem mrc.Fields(intCount)
  496.                             cboItem(intCount).ListIndex = 0
  497.                         Next intCount
  498.                         txtItem(5) = mrc.Fields(5)
  499.                     End If
  500.                     
  501.                     mrc.Close
  502.  
  503.                 
  504.         End If
  505.     End If
  506.     
  507.         mblChange = False
  508.     
  509.     
  510. End Sub
  511. Private Sub Form_Unload(Cancel As Integer)
  512.     gintBmode = 0
  513. End Sub
  514. Private Sub txtItem_Change(Index As Integer)
  515.     '有变化设置gblchange
  516.     mblChange = True
  517.     
  518. End Sub
  519. Private Sub txtItem_GotFocus(Index As Integer)
  520.     txtItem(Index).SelStart = 0
  521.     txtItem(Index).SelLength = Len(txtItem(Index))
  522.     
  523. End Sub
  524. Private Sub txtItem_KeyDown(Index As Integer, KeyCode As Integer, Shift As Integer)
  525.         EnterToTab KeyCode
  526. End Sub
  527. Private Function GetRkno() As String
  528.     GetRkno = Format(Now, "yymmddhhmmss")
  529.     Randomize
  530.     GetRkno = GetRkno & Int((99 - 10 + 1) * Rnd + 10)
  531. End Function