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

酒店行业

开发平台:

Visual Basic

  1. VERSION 5.00
  2. Object = "{5E9E78A0-531B-11CF-91F6-C2863C385E30}#1.0#0"; "MSFLXGRD.OCX"
  3. Begin VB.Form frmRoom 
  4.    Caption         =   "客房信息列表"
  5.    ClientHeight    =   3972
  6.    ClientLeft      =   60
  7.    ClientTop       =   348
  8.    ClientWidth     =   7680
  9.    LinkTopic       =   "Form1"
  10.    MDIChild        =   -1  'True
  11.    ScaleHeight     =   3972
  12.    ScaleWidth      =   7680
  13.    WindowState     =   2  'Maximized
  14.    Begin MSFlexGridLib.MSFlexGrid msgList 
  15.       Height          =   3132
  16.       Left            =   120
  17.       TabIndex        =   1
  18.       Top             =   720
  19.       Width           =   7452
  20.       _ExtentX        =   13145
  21.       _ExtentY        =   5525
  22.       _Version        =   393216
  23.       Cols            =   4
  24.       FixedCols       =   3
  25.       AllowUserResizing=   1
  26.    End
  27.    Begin VB.Label lblTitle 
  28.       Caption         =   "客  房  信  息  列  表"
  29.       BeginProperty Font 
  30.          Name            =   "宋体"
  31.          Size            =   12
  32.          Charset         =   134
  33.          Weight          =   700
  34.          Underline       =   0   'False
  35.          Italic          =   0   'False
  36.          Strikethrough   =   0   'False
  37.       EndProperty
  38.       ForeColor       =   &H8000000D&
  39.       Height          =   255
  40.       Left            =   120
  41.       TabIndex        =   0
  42.       Top             =   240
  43.       Width           =   3015
  44.    End
  45. End
  46. Attribute VB_Name = "frmRoom"
  47. Attribute VB_GlobalNameSpace = False
  48. Attribute VB_Creatable = False
  49. Attribute VB_PredeclaredId = True
  50. Attribute VB_Exposed = False
  51. Option Explicit
  52. Public txtSQL As String
  53. Dim mrc As ADODB.Recordset
  54. Dim MsgText As String
  55. Private Sub Form_Load()
  56.     
  57.     ShowTitle
  58.     ShowData
  59.     flagRedit = True
  60. End Sub
  61. Private Sub Form_Resize()
  62.     If Me.WindowState <> vbMinimized And fMainForm.WindowState <> vbMinimized Then
  63.         '边界处理
  64.         If Me.ScaleHeight < 10 * lblTitle.Height Then
  65.             
  66.             Exit Sub
  67.         End If
  68.         If Me.ScaleWidth < lblTitle.Width + lblTitle.Width / 2 Then
  69.             
  70.             Exit Sub
  71.         End If
  72.         '控制控件的位置
  73.                 
  74.         lblTitle.Top = lblTitle.Height
  75.         lblTitle.Left = (Me.Width - lblTitle.Width) / 2
  76.         
  77.         msgList.Top = lblTitle.Top + lblTitle.Height + lblTitle.Height / 2
  78.         msgList.Width = Me.ScaleWidth - 200
  79.         msgList.Left = Me.ScaleLeft + 100
  80.         msgList.Height = Me.ScaleHeight - msgList.Top - 200
  81.     End If
  82. End Sub
  83. Public Sub RecordEdit()
  84.     Dim intCount As Integer
  85.     
  86.     If msgList.Rows > 1 Then
  87.         gintMode = EDIT
  88.         intCount = msgList.Row
  89.         gsSql = " where rkno='" & Trim(msgList.TextMatrix(msgList.Row, 1)) & "'"
  90.         frmMaterIn1.Show 1
  91.         ShowData
  92.         Call MovCursor(intCount, msgList)
  93.     Else
  94.         Call RecordAdd
  95.     End If
  96. End Sub
  97. Public Sub FormClose()
  98.     Unload Me
  99. End Sub
  100. '删除记录
  101. Public Sub RecordDelete()
  102.     Dim sSql As String
  103.     Dim intCount As Integer
  104.     
  105.   On Error GoTo myErr
  106.     
  107.     If msgList.Rows > 1 Then
  108.         If MsgBox("真的要删除这条文件记录么?", vbOKCancel + vbExclamation, "警告") = vbOK Then
  109.             intCount = msgList.Row
  110.             
  111.             wksHuaxia.BeginTrans
  112.             
  113.             sSql = "update amsurplus set yeaccount=yeaccount-" & Trim(msgList.TextMatrix(msgList.Row, 7)) & ",yevalue=yevalue-" & Trim(msgList.TextMatrix(msgList.Row, 9)) & " where yeid='" & Trim(msgList.TextMatrix(msgList.Row, 2)) & "'"
  114.             dbHuaxia.Execute sSql, dbSQLPassThrough
  115.             sSql = "delete from " & msTableName & " where rkno='" & Trim(msgList.TextMatrix(msgList.Row, 1)) & "'"
  116.             dbHuaxia.Execute sSql, dbSQLPassThrough
  117.             
  118.             wksHuaxia.CommitTrans
  119.             
  120.             ShowData
  121.             If msgList.Rows > 1 Then
  122.                 If intCount = msgList.Rows Then
  123.                     MovCursor msgList.Rows - 1, msgList
  124.                 Else
  125.                     MovCursor intCount, msgList
  126.                 End If
  127.             End If
  128.         End If
  129.     End If
  130.     
  131.     Exit Sub
  132.     
  133. myErr:
  134.     wksHuaxia.Rollback
  135.     ShowError
  136. End Sub
  137. Public Sub RecordRefresh()
  138.     '设置msSql
  139.     msSql = msSelect & msTableName & " where rkdate>='" & Format(DateAdd("m", -1, Now), "yyyy-mm-dd") & "' and rkdate<='" & Format(Now, "yyyy-mm-dd") & "'" & msOrderBy
  140.         
  141.     '显示数据
  142.     msBarText = "当前数据时间范围:" & Format(DateAdd("m", -1, Now), "yyyy-mm-dd") & "至" & Format(Now, "yyyy-mm-dd")
  143.     sOrder0 = "+ {rkdate}"
  144.     sOrder1 = ""
  145.     
  146.     ShowData
  147. End Sub
  148. Public Sub RecordAdd()
  149.     gintMode = Add
  150.     frmMaterIn1.Show 1
  151.     ShowData
  152. End Sub
  153. Public Sub RecordFind()
  154.     frmMaterIn2.Show 1
  155.     If Trim(frmMaterIn2.sQSql & " ") <> "" Then
  156.         msSql = msSelect & msTableName & " where" & frmMaterIn2.sQSql & msOrderBy
  157.         ShowData
  158.     End If
  159.     Unload frmMaterIn2
  160. End Sub
  161. Private Sub Form_Unload(Cancel As Integer)
  162.     flagRedit = False
  163.     flagSedit = False
  164.     gintRmode = 0
  165. End Sub
  166. '显示Grid的内容
  167. Private Sub ShowData()
  168.     
  169.     Dim j As Integer
  170.     Dim i As Integer
  171.   
  172.     Set mrc = ExecuteSQL(txtSQL, MsgText)
  173.         With msgList
  174.         .Rows = 1
  175.         
  176.         Do While Not mrc.EOF
  177.             .Rows = .Rows + 1
  178.             For i = 1 To mrc.Fields.Count
  179.                 Select Case mrc.Fields(i - 1).Type
  180.                     Case adDBDate
  181.                         .TextMatrix(.Rows - 1, i) = Format(mrc.Fields(i - 1) & "", "yyyy-mm-dd")
  182.                     Case Else
  183.                         .TextMatrix(.Rows - 1, i) = mrc.Fields(i - 1) & ""
  184.                 End Select
  185.             Next i
  186.             mrc.MoveNext
  187.         Loop
  188.         
  189.           
  190.     End With
  191.     mrc.Close
  192.     
  193.     
  194. End Sub
  195. '显示Grid表头
  196. Private Sub ShowTitle()
  197.     Dim i As Integer
  198.     
  199.     With msgList
  200.         .Cols = 7
  201.         .TextMatrix(0, 1) = "客房编号"
  202.         .TextMatrix(0, 2) = "客房种类"
  203.         .TextMatrix(0, 3) = "客房位置"
  204.         .TextMatrix(0, 4) = "客房单价"
  205.         .TextMatrix(0, 5) = "是否被定"
  206.         .TextMatrix(0, 6) = "备注"
  207.        
  208.         
  209.         '固定表头
  210.         .FixedRows = 1
  211.                 
  212.         '设置各列的对齐方式
  213.         For i = 0 To 6
  214.             .ColAlignment(i) = 0
  215.         Next i
  216.         
  217.         
  218.         '表头项居中
  219.         .FillStyle = flexFillRepeat
  220.         .Col = 0
  221.         .Row = 0
  222.         .RowSel = 1
  223.         .ColSel = .Cols - 1
  224.         .CellAlignment = 4
  225.         
  226.         '设置单元大小
  227.         .ColWidth(0) = 1000
  228.         .ColWidth(1) = 1000
  229.         .ColWidth(2) = 1000
  230.         .ColWidth(3) = 1000
  231.         .ColWidth(4) = 1000
  232.         .ColWidth(5) = 1000
  233.         .ColWidth(6) = 1000
  234.         
  235.         .Row = 1
  236.         
  237.     End With
  238. End Sub
  239. Private Sub msgList_DblClick()
  240.     Dim intCount As Integer
  241.     If flagSedit Then
  242.         If msgList.Rows > 1 Then
  243.             gintBmode = 1
  244.             intCount = msgList.Row
  245.             frmBookin1.txtSQL = "select * from rooms where roomNO = '" & Trim(msgList.TextMatrix(intCount, 1)) & "'"
  246.             frmBookin1.Show
  247.         End If
  248.     End If
  249.         
  250.     
  251. End Sub
  252. Private Sub msgList_MouseUp(Button As Integer, Shift As Integer, x As Single, y As Single)
  253.     '右键弹出
  254.     If Button = 2 And Shift = 0 Then
  255.         PopupMenu fMainForm.menuSetrooms
  256.     End If
  257.     
  258. End Sub