上传用户:zhpu1995
上传日期:2013-09-06
资源大小:61151k
文件大小:20k
源码类别:

企业管理

开发平台:

Visual Basic

  1. VERSION 5.00
  2. Begin VB.Form Tr_ParkCxtj 
  3.    BorderStyle     =   1  'Fixed Single
  4.    Caption         =   "车辆在线状况查询"
  5.    ClientHeight    =   3855
  6.    ClientLeft      =   45
  7.    ClientTop       =   330
  8.    ClientWidth     =   4860
  9.    Icon            =   "铁运管理_车辆在线状况查询.frx":0000
  10.    KeyPreview      =   -1  'True
  11.    LinkTopic       =   "Form1"
  12.    MaxButton       =   0   'False
  13.    MinButton       =   0   'False
  14.    ScaleHeight     =   3855
  15.    ScaleWidth      =   4860
  16.    StartUpPosition =   1  '所有者中心
  17.    Begin VB.Frame Frame1 
  18.       Height          =   3390
  19.       Left            =   60
  20.       TabIndex        =   11
  21.       Top             =   0
  22.       Width           =   4725
  23.       Begin VB.Frame Frame2 
  24.          Caption         =   "车辆在线状况"
  25.          Height          =   585
  26.          Left            =   135
  27.          TabIndex        =   26
  28.          Top             =   2730
  29.          Width           =   4485
  30.          Begin VB.OptionButton Opt_Check 
  31.             Caption         =   "全部"
  32.             Height          =   195
  33.             Index           =   0
  34.             Left            =   180
  35.             TabIndex        =   29
  36.             Top             =   270
  37.             Value           =   -1  'True
  38.             Width           =   855
  39.          End
  40.          Begin VB.OptionButton Opt_Check 
  41.             Caption         =   "车辆不为空"
  42.             Height          =   195
  43.             Index           =   1
  44.             Left            =   1470
  45.             TabIndex        =   28
  46.             Top             =   270
  47.             Width           =   1305
  48.          End
  49.          Begin VB.OptionButton Opt_Check 
  50.             Caption         =   "车辆为空"
  51.             Height          =   195
  52.             Index           =   2
  53.             Left            =   3210
  54.             TabIndex        =   27
  55.             Top             =   270
  56.             Width           =   1245
  57.          End
  58.       End
  59.       Begin VB.TextBox LrText 
  60.          Height          =   300
  61.          Index           =   6
  62.          Left            =   1335
  63.          TabIndex        =   6
  64.          Text            =   "6"
  65.          Top             =   2325
  66.          Width           =   2985
  67.       End
  68.       Begin VB.CommandButton ydCommand1 
  69.          Height          =   300
  70.          Index           =   6
  71.          Left            =   4305
  72.          Picture         =   "铁运管理_车辆在线状况查询.frx":1042
  73.          Style           =   1  'Graphical
  74.          TabIndex        =   24
  75.          Top             =   2325
  76.          Width           =   300
  77.       End
  78.       Begin VB.CommandButton ydCommand1 
  79.          Height          =   300
  80.          Index           =   2
  81.          Left            =   4305
  82.          Picture         =   "铁运管理_车辆在线状况查询.frx":13CC
  83.          Style           =   1  'Graphical
  84.          TabIndex        =   17
  85.          Top             =   915
  86.          Width           =   300
  87.       End
  88.       Begin VB.CommandButton ydCommand1 
  89.          Height          =   300
  90.          Index           =   1
  91.          Left            =   4305
  92.          Picture         =   "铁运管理_车辆在线状况查询.frx":1756
  93.          Style           =   1  'Graphical
  94.          TabIndex        =   16
  95.          Top             =   585
  96.          Width           =   300
  97.       End
  98.       Begin VB.CommandButton ydCommand1 
  99.          Height          =   300
  100.          Index           =   5
  101.          Left            =   4305
  102.          Picture         =   "铁运管理_车辆在线状况查询.frx":1AE0
  103.          Style           =   1  'Graphical
  104.          TabIndex        =   15
  105.          Top             =   1965
  106.          Width           =   300
  107.       End
  108.       Begin VB.CommandButton ydCommand1 
  109.          Height          =   300
  110.          Index           =   4
  111.          Left            =   4305
  112.          Picture         =   "铁运管理_车辆在线状况查询.frx":1E6A
  113.          Style           =   1  'Graphical
  114.          TabIndex        =   14
  115.          Top             =   1635
  116.          Width           =   300
  117.       End
  118.       Begin VB.TextBox LrText 
  119.          Height          =   300
  120.          Index           =   3
  121.          Left            =   1335
  122.          TabIndex        =   3
  123.          Text            =   "3"
  124.          Top             =   1290
  125.          Width           =   2985
  126.       End
  127.       Begin VB.TextBox LrText 
  128.          Height          =   300
  129.          Index           =   4
  130.          Left            =   1335
  131.          TabIndex        =   4
  132.          Text            =   "4"
  133.          Top             =   1635
  134.          Width           =   2985
  135.       End
  136.       Begin VB.TextBox LrText 
  137.          Height          =   300
  138.          Index           =   5
  139.          Left            =   1335
  140.          TabIndex        =   5
  141.          Text            =   "5"
  142.          Top             =   1980
  143.          Width           =   2985
  144.       End
  145.       Begin VB.TextBox LrText 
  146.          Height          =   300
  147.          Index           =   1
  148.          Left            =   1335
  149.          TabIndex        =   1
  150.          Text            =   "1"
  151.          Top             =   585
  152.          Width           =   2985
  153.       End
  154.       Begin VB.TextBox LrText 
  155.          Height          =   300
  156.          Index           =   2
  157.          Left            =   1335
  158.          TabIndex        =   2
  159.          Text            =   "2"
  160.          Top             =   930
  161.          Width           =   2985
  162.       End
  163.       Begin VB.CommandButton ydCommand1 
  164.          Height          =   300
  165.          Index           =   3
  166.          Left            =   4305
  167.          Picture         =   "铁运管理_车辆在线状况查询.frx":21F4
  168.          Style           =   1  'Graphical
  169.          TabIndex        =   13
  170.          Top             =   1275
  171.          Width           =   300
  172.       End
  173.       Begin VB.CommandButton ydCommand1 
  174.          Height          =   300
  175.          Index           =   0
  176.          Left            =   4305
  177.          Picture         =   "铁运管理_车辆在线状况查询.frx":257E
  178.          Style           =   1  'Graphical
  179.          TabIndex        =   12
  180.          Top             =   225
  181.          Width           =   300
  182.       End
  183.       Begin VB.TextBox LrText 
  184.          Height          =   300
  185.          Index           =   0
  186.          Left            =   1335
  187.          TabIndex        =   0
  188.          Text            =   "0"
  189.          Top             =   225
  190.          Width           =   2985
  191.       End
  192.       Begin VB.Label Lab_FieldsName 
  193.          AutoSize        =   -1  'True
  194.          Caption         =   "车辆停车线:"
  195.          Height          =   180
  196.          Index           =   6
  197.          Left            =   135
  198.          TabIndex        =   25
  199.          Top             =   2385
  200.          Width           =   990
  201.       End
  202.       Begin VB.Label Lab_FieldsName 
  203.          AutoSize        =   -1  'True
  204.          Caption         =   "车辆所有权:"
  205.          Height          =   180
  206.          Index           =   1
  207.          Left            =   135
  208.          TabIndex        =   23
  209.          Top             =   635
  210.          Width           =   990
  211.       End
  212.       Begin VB.Label Lab_FieldsName 
  213.          AutoSize        =   -1  'True
  214.          Caption         =   "车号:"
  215.          Height          =   180
  216.          Index           =   0
  217.          Left            =   135
  218.          TabIndex        =   22
  219.          Top             =   285
  220.          Width           =   450
  221.       End
  222.       Begin VB.Label Lab_FieldsName 
  223.          AutoSize        =   -1  'True
  224.          Caption         =   "车辆类型:"
  225.          Height          =   180
  226.          Index           =   2
  227.          Left            =   135
  228.          TabIndex        =   21
  229.          Top             =   985
  230.          Width           =   810
  231.       End
  232.       Begin VB.Label Lab_FieldsName 
  233.          AutoSize        =   -1  'True
  234.          Caption         =   "车辆使用性质:"
  235.          Height          =   180
  236.          Index           =   3
  237.          Left            =   135
  238.          TabIndex        =   20
  239.          Top             =   1335
  240.          Width           =   1170
  241.       End
  242.       Begin VB.Label Lab_FieldsName 
  243.          AutoSize        =   -1  'True
  244.          Caption         =   "车辆状况:"
  245.          Height          =   180
  246.          Index           =   4
  247.          Left            =   135
  248.          TabIndex        =   19
  249.          Top             =   1685
  250.          Width           =   810
  251.       End
  252.       Begin VB.Label Lab_FieldsName 
  253.          AutoSize        =   -1  'True
  254.          Caption         =   "车辆等级:"
  255.          Height          =   180
  256.          Index           =   5
  257.          Left            =   135
  258.          TabIndex        =   18
  259.          Top             =   2035
  260.          Width           =   810
  261.       End
  262.    End
  263.    Begin VB.CommandButton Cmd_Clear 
  264.       Caption         =   "全清"
  265.       Height          =   300
  266.       Left            =   90
  267.       TabIndex        =   10
  268.       Top             =   3480
  269.       Width           =   1120
  270.    End
  271.    Begin VB.CommandButton QdCommand 
  272.       Caption         =   "确定(&O)"
  273.       Height          =   300
  274.       Left            =   2430
  275.       TabIndex        =   7
  276.       Top             =   3480
  277.       Width           =   1120
  278.    End
  279.    Begin VB.CommandButton QxCommand 
  280.       Cancel          =   -1  'True
  281.       Caption         =   "取消(&C)"
  282.       Height          =   300
  283.       Left            =   3660
  284.       TabIndex        =   9
  285.       Top             =   3480
  286.       Width           =   1120
  287.    End
  288.    Begin VB.CheckBox UnloadCheck 
  289.       Caption         =   "卸载窗体"
  290.       Height          =   615
  291.       Left            =   7380
  292.       TabIndex        =   8
  293.       Top             =   930
  294.       Width           =   825
  295.    End
  296. End
  297. Attribute VB_Name = "Tr_ParkCxtj"
  298. Attribute VB_GlobalNameSpace = False
  299. Attribute VB_Creatable = False
  300. Attribute VB_PredeclaredId = True
  301. Attribute VB_Exposed = False
  302. '******************************************************************
  303. '*    模 块 名 称 :车辆在线状况查询条件
  304. '*    功 能 描 述 :
  305. '*    程序员姓名  :孙宝龙
  306. '*    最后修改人  :孙宝龙
  307. '*    最后修改时间:2001/12/07
  308. '*    备        注:程序中所有依实际情况自定义部分均用[>>  <<]括起
  309. '******************************************************************
  310. Dim Tsxx As String                       '系统信息提示
  311. '以下为固定使用变量(文本框)
  312. Dim Textvar() As Variant                 '存储变体型文本框信息
  313. Dim Textboolean() As Boolean             '存储布尔型文本框信息
  314. Dim Textint() As Integer                 '存储整型文本框信息
  315. Dim Textstr() As String                  '存储字符型文本框信息
  316. Dim Max_Text_Index As Integer            '最大录入文本框索引值
  317. Dim TextGroupCode As String              '文本框录入分组编码
  318. Dim TextValiLock As Boolean              '文本框失去焦点是否进行有效性控制判断
  319. Dim TextValiJudgeLock() As Boolean       '文本框录入有效性判断控制锁
  320. Dim CurTextIndex As Integer              '当前文本框索引值
  321. Dim TextChangeLock As Boolean            '文本框内容变换控制锁
  322. Dim Bln_Cancel As Boolean                '取消按钮信息传递
  323. Private Sub Form_KeyPress(KeyAscii As Integer)   '控 制 焦 点 转 移(Fixed)
  324.     Dim jdzygs As Integer                         '控件焦点转移个数
  325.     jdzygs = 7
  326.     Select Case KeyAscii
  327.     Case vbKeyReturn
  328.         If Kjjdzy(jdzygs) Then
  329.             KeyAscii = 0
  330.         End If
  331.     Case 39           '屏蔽"'"
  332.         KeyAscii = 0
  333.     End Select
  334.     
  335. End Sub
  336. Private Sub Form_Load()
  337.     
  338.     '以下为文本框处理程序(Fixed)
  339.     TextGroupCode = "Tr_ParkList"
  340.     Call Drwbkxx(TextGroupCode, Textvar(), Textboolean(), Textint(), Textstr())  '读入文本框录入信息
  341.     Call Wbkcsh
  342.     
  343.     '[>>初始化查询条件默认值
  344.     '<<]
  345.     
  346. End Sub
  347. Private Sub Form_QueryUnload(Cancel As Integer, UnloadMode As Integer)          '查询条件窗体卸载
  348.     
  349.     '查询条件窗体卸载时判断是否因为结果窗体卸载,如是则卸载,否则隐藏
  350.     If UnloadCheck.Value <> 1 Then
  351.         Cancel = 1
  352.         Me.Hide
  353.     End If
  354.     
  355. End Sub
  356. Private Sub QdCommand_Click()                                   '确 定
  357.     
  358.     '录入条件有效性判断(Fixed)
  359.     If Not Lrtjyxxpd Then
  360.         Exit Sub
  361.     End If
  362.     Me.Hide
  363.     
  364.     '[>>激活查询过程结果窗体
  365.     
  366.     Tr_ParkList.Timer1.Enabled = True
  367.     Tr_ParkList.SetFocus
  368.     
  369.     '<<]
  370. End Sub
  371. Private Sub QxCommand_Click()                                    '取消(Fixed)
  372.     Me.Hide
  373. End Sub
  374. Private Function Lrtjyxxpd() As Boolean                          '用户录入条件有效性判断
  375.     Dim jsqte As Integer
  376.     Lrtjyxxpd = False
  377.     
  378.     '对需要进行事后判断的文本框录入内容进行有效性判断 (Fixed)
  379.     For jsqte = 0 To Max_Text_Index
  380.         If Textint(jsqte, 9) = 0 Or Textint(jsqte, 9) = 2 Then
  381.             If Not TextYxxpd(jsqte) Then
  382.                 Exit Function
  383.             End If
  384.         End If
  385.     Next jsqte
  386.     
  387.     '[>>以下为依据实际情况自定义部分
  388.     
  389.     '查询日期范围应由小到大
  390.     
  391.     
  392.     '<<]以上为依据实际情况自定义部分
  393.     
  394.     Lrtjyxxpd = True
  395.     
  396. End Function
  397. Private Sub Cmd_Clear_MouseDown(Button As Integer, Shift As Integer, x As Single, y As Single)    '将用户输入条件全部清除(可选)
  398.     
  399.     '清除文本框(Fixed)
  400.     For jsqte = 0 To Max_Text_Index
  401.         LrText(jsqte).Tag = ""
  402.         LrText(jsqte).Text = ""
  403.     Next jsqte
  404.     
  405.     '[>>
  406.     '此处可以写入其他清除条件程序
  407.     Opt_Check(0).Value = True
  408.     '<<]
  409.     
  410. End Sub
  411. '*************以下为文本框录入处理程序(固定不变部分)*************'
  412. Private Sub Wbklrwbcl(Index As Integer)    '文本框录入事后处理程序
  413.     
  414.     '以下为依据实际情况自定义部分[
  415.     '在此填写文本框录入事后处理程序
  416.     ']以上为依据实际情况自定义部分
  417.     
  418. End Sub
  419. Private Sub LrText_Change(Index As Integer)
  420.     
  421.     '屏蔽程序改变控制
  422.     If TextChangeLock Then
  423.         Exit Sub
  424.     End If
  425.     
  426.     TextValiJudgeLock(Index) = False    '打开有效性判断锁
  427.     
  428.     '限制字段录入长度
  429.     
  430.     TextChangeLock = True  '加锁(防止执行Lrtext_Change)
  431.     
  432.     Call TextChangeLimit(LrText(Index), Textint(Index, 1))  '去掉无效字符
  433.     
  434.     Select Case Textint(Index, 1)
  435.     Case 8, 11      '金额型
  436.         Call Sjgskz(LrText(Index), Xtjezws - Xtjexsws - 1, Xtjexsws)
  437.     Case 9, 12      '数量型
  438.         Call Sjgskz(LrText(Index), Xtslzws - Xtslxsws - 1, Xtslxsws)
  439.     Case 10          '单价型
  440.         Call Sjgskz(LrText(Index), Xtdjzws - Xtdjxsws - 1, Xtdjxsws)
  441.     Case Else        '其他小数类型控制
  442.         If Textint(Index, 6) <> 0 Or Textint(Index, 7) <> 0 Then
  443.             Call Sjgskz(LrText(Index), Textint(Index, 6), Textint(Index, 7))
  444.         End If
  445.     End Select
  446.     
  447.     TextChangeLock = False '解锁
  448.     
  449. End Sub
  450. Private Sub LrText_GotFocus(Index As Integer)                                                 '文本框得到焦点,显示相应信息
  451.     Call TextShow(Index)
  452.     CurTextIndex = Index
  453.     LrText(Index).SelStart = Len(LrText(Index))
  454. End Sub
  455. Private Sub LrText_KeyDown(Index As Integer, KeyCode As Integer, Shift As Integer)            '字段按F2键提供帮助
  456.     
  457.     Select Case KeyCode
  458.     Case vbKeyF2
  459.         Call Text_Help(Index)
  460.     End Select
  461.     
  462. End Sub
  463. Private Sub LrText_KeyPress(Index As Integer, KeyAscii As Integer)                            '文本框录入事中控制
  464.     Call InputFieldLimit(LrText(Index), Textint(Index, 1), KeyAscii)
  465. End Sub
  466. Private Sub LrText_LostFocus(Index As Integer)                                                '文本框失去焦点
  467.     
  468.     '显示相应信息但不能进行有效性判断
  469.     
  470. End Sub
  471. Private Sub Ydcommand1_MouseDown(Index As Integer, Button As Integer, Shift As Integer, x As Single, y As Single)     '按钮提供帮助
  472.     Call Text_Help(Index)
  473. End Sub
  474. Private Sub Text_Help(Index As Integer)                                                       '录入字段帮助
  475.     If Not Textboolean(Index, 1) Then
  476.         Exit Sub
  477.     End If
  478.     
  479.     '调用帮助
  480.     Call Drbmhelp(Textint(Index, 2), Textstr(Index, 4), Trim(LrText(Index).Text))
  481.     
  482.     '根据设置选择显示编码和名称,并进行存储
  483.     If Len(Xtfhcs) <> 0 Then
  484.         If Textint(Index, 3) = 1 Then
  485.             LrText(Index).Text = Xtfhcsfz
  486.             LrText(Index).Tag = Xtfhcs
  487.         Else
  488.             LrText(Index).Text = Xtfhcs
  489.             LrText(Index).Tag = Xtfhcsfz
  490.         End If
  491.     End If
  492.     
  493.     LrText(Index).SetFocus
  494.     
  495. End Sub
  496. Private Sub TextShow(Index As Integer)        '文本框得到焦点,显示相应信息
  497.     
  498.     '填写文本框得到焦点,进行相应信息处理程序
  499.     
  500. End Sub
  501. Private Sub Wbkcsh()                          '录入文本框初始化
  502.     
  503.     Dim jsqte As Long
  504.     
  505.     '最大录入文本框索引值
  506.     Max_Text_Index = Textvar(1)
  507.     
  508.     ReDim TextValiJudgeLock(Max_Text_Index)
  509.     For jsqte = 0 To Max_Text_Index
  510.         If Len(Trim(Textstr(jsqte, 1))) <> 0 Then
  511.             If Textboolean(jsqte, 1) Then
  512.                 If jsqte <> 0 And Not Textboolean(jsqte, 3) Then
  513.                     Load ydCommand1(jsqte)
  514.                 End If
  515.                 ydCommand1(jsqte).Visible = True
  516.                 ydCommand1(jsqte).Move LrText(jsqte).Left + LrText(jsqte).Width, LrText(jsqte).Top
  517.             End If
  518.             TextChangeLock = True
  519.             LrText(jsqte).Text = ""
  520.             LrText(jsqte).Tag = ""
  521.             If Textint(jsqte, 5) <> 0 Then
  522.                 LrText(jsqte).MaxLength = Textint(jsqte, 5)
  523.             End If
  524.             TextChangeLock = False
  525.         End If
  526.         TextValiJudgeLock(jsqte) = True
  527.     Next jsqte
  528.     
  529. End Sub
  530. Private Function TextYxxpd(Index As Integer) As Boolean           '文本框有效性判断
  531.     
  532.     Dim Sqlstr As String
  533.     Dim Findrec As ADODB.Recordset
  534.     
  535.     '文本框内容未曾改变不进行有效性判断
  536.     If TextValiJudgeLock(Index) Then
  537.         TextYxxpd = True
  538.         Exit Function
  539.     End If
  540.     
  541.     '文本框内容为空认为有效,并清空其Tag值
  542.     If Trim(LrText(Index)) = "" Then
  543.         LrText(Index).Tag = ""
  544.         Call Wbklrwbcl(Index)
  545.         TextValiJudgeLock(Index) = True
  546.         TextYxxpd = True
  547.         Exit Function
  548.     End If
  549.     
  550.     '可在此加入不做有效性判断的理由
  551.     
  552.     Select Case Textint(Index, 4)
  553.     Case 1      '编码型
  554.         Sqlstr = Trim(Textstr(Index, 5))
  555.         Sqlstr = Replace(Sqlstr, "@", "'" + Trim(LrText(Index).Text) + "'")
  556.         Set Findrec = Cw_DataEnvi.DataConnect.Execute(Sqlstr)
  557.         If Findrec.EOF Then
  558.             Call Xtxxts(Trim(Textstr(Index, 6)), 0, 1)
  559.             LrText(Index).SetFocus
  560.             Exit Function
  561.         Else
  562.             Select Case Textint(Index, 3)
  563.             Case 0
  564.                 If Len(Trim(Textstr(Index, 2))) <> 0 Then
  565.                     LrText(Index).Text = Trim(Findrec.Fields(Trim(Textstr(Index, 2))))
  566.                 End If
  567.                 If Len(Trim(Textstr(Index, 3) & "")) <> 0 Then
  568.                     LrText(Index).Tag = Trim(Findrec.Fields(Trim(Textstr(Index, 3))))
  569.                 End If
  570.             Case 1
  571.                 If Len(Trim(Textstr(Index, 3) & "")) <> 0 Then
  572.                     LrText(Index).Text = Trim(Findrec.Fields(Trim(Textstr(Index, 3))))
  573.                 End If
  574.                 If Len(Trim(Textstr(Index, 2))) <> 0 Then
  575.                     LrText(Index).Tag = Trim(Findrec.Fields(Trim(Textstr(Index, 2))))
  576.                 End If
  577.             End Select
  578.         End If
  579.     Case 2      '日期型
  580.         If IsDate(LrText(Index).Text) Then
  581.             LrText(Index).Text = Format(LrText(Index).Text, "yyyy-mm-dd")
  582.             If Val(Mid(LrText(Index), 1, 4)) < 1900 Then
  583.                 LrText(Index).Text = "1900" + Mid(LrText(Index), 5, 6)
  584.             End If
  585.         Else
  586.             Tsxx = "非法公历日期!(格式:" + Format(Date, "yyyy-mm-dd") + ")"
  587.             Call Xtxxts(Tsxx, 0, 1)
  588.             LrText(Index).SetFocus
  589.             Exit Function
  590.         End If
  591.     Case 3      '其他类型
  592.     End Select
  593.     
  594.     '如果有效则加锁,用户不改变内容则不再进行有效性判断
  595.     TextValiJudgeLock(Index) = True
  596.     
  597.     '调用文本框事后处理程序
  598.     Call Wbklrwbcl(Index)
  599.     
  600.     '有效性判断通过则返回True
  601.     TextYxxpd = True
  602.     
  603. End Function