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

企业管理

开发平台:

Visual Basic

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