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

企业管理

开发平台:

Visual Basic

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