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

企业管理

开发平台:

Visual Basic

  1. VERSION 5.00
  2. Begin VB.Form CL_MakeVoucherFind 
  3.    BorderStyle     =   1  'Fixed Single
  4.    Caption         =   "生成凭证查询条件"
  5.    ClientHeight    =   4170
  6.    ClientLeft      =   45
  7.    ClientTop       =   330
  8.    ClientWidth     =   7350
  9.    HelpContextID   =   130407
  10.    Icon            =   "处理_生成凭证查询条件.frx":0000
  11.    KeyPreview      =   -1  'True
  12.    LinkTopic       =   "Form1"
  13.    MaxButton       =   0   'False
  14.    MinButton       =   0   'False
  15.    ScaleHeight     =   4170
  16.    ScaleWidth      =   7350
  17.    StartUpPosition =   2  'CenterScreen
  18.    Visible         =   0   'False
  19.    Begin VB.CommandButton Cmd_Clear 
  20.       Caption         =   "全清(&L)"
  21.       Height          =   300
  22.       Left            =   120
  23.       TabIndex        =   32
  24.       Top             =   3720
  25.       Width           =   1120
  26.    End
  27.    Begin VB.CheckBox UnloadCheck 
  28.       Caption         =   "Check1"
  29.       Height          =   255
  30.       Left            =   1620
  31.       TabIndex        =   24
  32.       Top             =   3870
  33.       Visible         =   0   'False
  34.       Width           =   975
  35.    End
  36.    Begin VB.Frame Frame1 
  37.       Height          =   3615
  38.       Left            =   2880
  39.       TabIndex        =   14
  40.       Top             =   0
  41.       Width           =   4365
  42.       Begin VB.CommandButton YDCommand1 
  43.          Height          =   300
  44.          Index           =   6
  45.          Left            =   3930
  46.          Picture         =   "处理_生成凭证查询条件.frx":1042
  47.          Style           =   1  'Graphical
  48.          TabIndex        =   31
  49.          Top             =   2190
  50.          Visible         =   0   'False
  51.          Width           =   300
  52.       End
  53.       Begin VB.CommandButton YDCommand1 
  54.          Height          =   300
  55.          Index           =   5
  56.          Left            =   3930
  57.          Picture         =   "处理_生成凭证查询条件.frx":13CC
  58.          Style           =   1  'Graphical
  59.          TabIndex        =   30
  60.          Top             =   1800
  61.          Visible         =   0   'False
  62.          Width           =   300
  63.       End
  64.       Begin VB.CommandButton YDCommand1 
  65.          Height          =   300
  66.          Index           =   2
  67.          Left            =   3930
  68.          Picture         =   "处理_生成凭证查询条件.frx":1756
  69.          Style           =   1  'Graphical
  70.          TabIndex        =   29
  71.          Top             =   1050
  72.          Visible         =   0   'False
  73.          Width           =   300
  74.       End
  75.       Begin VB.CommandButton YDCommand1 
  76.          Height          =   300
  77.          Index           =   1
  78.          Left            =   3930
  79.          Picture         =   "处理_生成凭证查询条件.frx":1AE0
  80.          Style           =   1  'Graphical
  81.          TabIndex        =   28
  82.          Top             =   690
  83.          Visible         =   0   'False
  84.          Width           =   300
  85.       End
  86.       Begin VB.CommandButton YDCommand1 
  87.          Height          =   300
  88.          Index           =   4
  89.          Left            =   3930
  90.          Picture         =   "处理_生成凭证查询条件.frx":1E6A
  91.          Style           =   1  'Graphical
  92.          TabIndex        =   27
  93.          Top             =   1440
  94.          Visible         =   0   'False
  95.          Width           =   300
  96.       End
  97.       Begin VB.CommandButton YDCommand1 
  98.          Height          =   300
  99.          Index           =   3
  100.          Left            =   2190
  101.          Picture         =   "处理_生成凭证查询条件.frx":21F4
  102.          Style           =   1  'Graphical
  103.          TabIndex        =   26
  104.          Top             =   1440
  105.          Visible         =   0   'False
  106.          Width           =   300
  107.       End
  108.       Begin VB.CommandButton YDCommand1 
  109.          Height          =   300
  110.          Index           =   0
  111.          Left            =   3930
  112.          Picture         =   "处理_生成凭证查询条件.frx":257E
  113.          Style           =   1  'Graphical
  114.          TabIndex        =   25
  115.          Top             =   300
  116.          Visible         =   0   'False
  117.          Width           =   300
  118.       End
  119.       Begin VB.OptionButton Opti_pz 
  120.          Caption         =   "已生成的凭证"
  121.          Height          =   195
  122.          Left            =   180
  123.          TabIndex        =   23
  124.          Top             =   3240
  125.          Visible         =   0   'False
  126.          Width           =   2055
  127.       End
  128.       Begin VB.OptionButton Opti_bill2 
  129.          Caption         =   "已生成凭证的单据"
  130.          Height          =   255
  131.          Left            =   2250
  132.          TabIndex        =   22
  133.          Top             =   2760
  134.          Width           =   1815
  135.       End
  136.       Begin VB.OptionButton Opti_bill1 
  137.          Caption         =   "未生成凭证的单据"
  138.          Height          =   255
  139.          Left            =   150
  140.          TabIndex        =   21
  141.          Top             =   2760
  142.          Value           =   -1  'True
  143.          Width           =   1935
  144.       End
  145.       Begin VB.TextBox LrText 
  146.          Height          =   300
  147.          Index           =   6
  148.          Left            =   1020
  149.          TabIndex        =   6
  150.          Text            =   "6"
  151.          Top             =   2190
  152.          Width           =   2925
  153.       End
  154.       Begin VB.TextBox LrText 
  155.          Height          =   300
  156.          Index           =   4
  157.          Left            =   2730
  158.          TabIndex        =   4
  159.          Text            =   "4"
  160.          Top             =   1440
  161.          Width           =   1215
  162.       End
  163.       Begin VB.TextBox LrText 
  164.          Height          =   300
  165.          Index           =   5
  166.          Left            =   1020
  167.          TabIndex        =   5
  168.          Text            =   "5"
  169.          Top             =   1815
  170.          Width           =   2925
  171.       End
  172.       Begin VB.TextBox LrText 
  173.          Height          =   300
  174.          Index           =   2
  175.          Left            =   1020
  176.          TabIndex        =   2
  177.          Text            =   "2"
  178.          Top             =   1050
  179.          Width           =   2925
  180.       End
  181.       Begin VB.TextBox LrText 
  182.          Height          =   300
  183.          Index           =   3
  184.          Left            =   1020
  185.          TabIndex        =   3
  186.          Text            =   "3"
  187.          Top             =   1440
  188.          Width           =   1185
  189.       End
  190.       Begin VB.TextBox LrText 
  191.          Height          =   300
  192.          Index           =   1
  193.          Left            =   1020
  194.          TabIndex        =   1
  195.          Text            =   "1"
  196.          Top             =   675
  197.          Width           =   2925
  198.       End
  199.       Begin VB.TextBox LrText 
  200.          Height          =   300
  201.          Index           =   0
  202.          Left            =   1020
  203.          TabIndex        =   0
  204.          Text            =   "0"
  205.          Top             =   300
  206.          Width           =   2925
  207.       End
  208.       Begin VB.Line Line1 
  209.          X1              =   2520
  210.          X2              =   2670
  211.          Y1              =   1590
  212.          Y2              =   1590
  213.       End
  214.       Begin VB.Label Label1 
  215.          AutoSize        =   -1  'True
  216.          Caption         =   "部门:"
  217.          Height          =   195
  218.          Index           =   3
  219.          Left            =   150
  220.          TabIndex        =   20
  221.          Top             =   1860
  222.          Width           =   405
  223.       End
  224.       Begin VB.Label Label1 
  225.          AutoSize        =   -1  'True
  226.          Caption         =   "记帐人:"
  227.          Height          =   195
  228.          Index           =   14
  229.          Left            =   150
  230.          TabIndex        =   19
  231.          Top             =   2250
  232.          Width           =   585
  233.       End
  234.       Begin VB.Label Label1 
  235.          AutoSize        =   -1  'True
  236.          Caption         =   "仓库:"
  237.          Height          =   195
  238.          Index           =   2
  239.          Left            =   150
  240.          TabIndex        =   18
  241.          Top             =   360
  242.          Width           =   405
  243.       End
  244.       Begin VB.Label Label1 
  245.          AutoSize        =   -1  'True
  246.          Caption         =   "单据日期:"
  247.          Height          =   195
  248.          Index           =   11
  249.          Left            =   150
  250.          TabIndex        =   17
  251.          Top             =   1500
  252.          Width           =   765
  253.       End
  254.       Begin VB.Label Label1 
  255.          AutoSize        =   -1  'True
  256.          Caption         =   "存货:"
  257.          Height          =   195
  258.          Index           =   12
  259.          Left            =   150
  260.          TabIndex        =   16
  261.          Top             =   1140
  262.          Width           =   405
  263.       End
  264.       Begin VB.Label Label1 
  265.          AutoSize        =   -1  'True
  266.          Caption         =   "存货分类:"
  267.          Height          =   195
  268.          Index           =   1
  269.          Left            =   150
  270.          TabIndex        =   15
  271.          Top             =   750
  272.          Width           =   765
  273.       End
  274.    End
  275.    Begin VB.CommandButton QdCommand 
  276.       Caption         =   "确定(&O)"
  277.       Height          =   300
  278.       Left            =   4890
  279.       TabIndex        =   7
  280.       Top             =   3750
  281.       Width           =   1120
  282.    End
  283.    Begin VB.CommandButton QxCommand 
  284.       Caption         =   "取消(&C)"
  285.       Height          =   300
  286.       Left            =   6120
  287.       TabIndex        =   13
  288.       Top             =   3750
  289.       Width           =   1120
  290.    End
  291.    Begin VB.Frame Frame3 
  292.       Height          =   3615
  293.       Left            =   90
  294.       TabIndex        =   8
  295.       Top             =   0
  296.       Width           =   2685
  297.       Begin VB.ListBox Lst_BillCode 
  298.          Height          =   2310
  299.          Left            =   120
  300.          Style           =   1  'Checkbox
  301.          TabIndex        =   11
  302.          Top             =   510
  303.          Width           =   2445
  304.       End
  305.       Begin VB.CommandButton Com_Qbfd 
  306.          Caption         =   "全消"
  307.          Height          =   300
  308.          Left            =   180
  309.          TabIndex        =   10
  310.          Top             =   3180
  311.          Width           =   1120
  312.       End
  313.       Begin VB.CommandButton Com_Qbxz 
  314.          Caption         =   "全选"
  315.          Height          =   300
  316.          Left            =   1410
  317.          TabIndex        =   9
  318.          Top             =   3180
  319.          Width           =   1120
  320.       End
  321.       Begin VB.Label Label1 
  322.          AutoSize        =   -1  'True
  323.          Caption         =   "单据名称:"
  324.          Height          =   195
  325.          Index           =   0
  326.          Left            =   150
  327.          TabIndex        =   12
  328.          Top             =   210
  329.          Width           =   765
  330.       End
  331.    End
  332. End
  333. Attribute VB_Name = "CL_MakeVoucherFind"
  334. Attribute VB_GlobalNameSpace = False
  335. Attribute VB_Creatable = False
  336. Attribute VB_PredeclaredId = True
  337. Attribute VB_Exposed = False
  338.  Option Explicit
  339.  
  340.  '**************************************************************************
  341. '*    模 块 名 称 :生成凭证列表查询条件
  342. '*    功 能 描 述 :
  343. '*    程序员姓名  :杨波
  344. '*    最后修改人  :杨波
  345. '*    最后修改时间:2001/12/18
  346. '*    备        注:程序中所有依实际情况自定义部分均用[>>  <<]括起
  347. '**************************************************************************
  348.  
  349.  Dim SaveTxt() As String                         '保留文本内容
  350.  Dim SaveLst() As Boolean                        '保留列表内容
  351.  Dim SaveOption() As Boolean                     '保留option内容
  352.  
  353. '以下为固定使用变量(文本框)
  354.  Dim Tsxx As String                              '提示信息
  355.  Dim Textvar() As Variant                        '存储变体型文本框信息
  356.  Dim Textboolean() As Boolean                    '存储布尔型文本框信息
  357.  Dim Textint() As Integer                        '存储整型文本框信息
  358.  Dim Textstr() As String                         '存储字符型文本框信息
  359.  Dim Max_Text_Index As Integer                   '最大录入文本框索引值
  360.  Dim TextGroupCode As String                     '文本框录入分组编码
  361.  Dim TextValiLock As Boolean                     '文本框失去焦点是否进行有效性控制判断
  362.  Dim TextValiJudgeLock() As Boolean              '文本框录入有效性判断控制锁
  363.  Dim TextChangeLock As Boolean                   '文本框内容变换控制锁
  364.  Dim Bln_Cancel As Boolean                       '取消按钮信息传递
  365.  Dim Jsqte As Integer
  366.  
  367.  Dim BillCode(11) As String                      '单据类型编码
  368.  Dim MSQLStr As String
  369. Private Sub Cmd_Clear_MouseDown(Button As Integer, Shift As Integer, x As Single, y As Single)    '将用户输入条件全部清除(可选)
  370.     '清除文本框(Fixed)
  371.     For Jsqte = 0 To Max_Text_Index
  372.         LrText(Jsqte).Tag = ""
  373.         LrText(Jsqte).Text = ""
  374.     Next Jsqte
  375. End Sub
  376. Private Sub Com_Qbxz_Click()      '全选
  377. Dim i As Integer
  378. For i = 0 To Lst_BillCode.ListCount - 1
  379.     Lst_BillCode.Selected(i) = True
  380. Next i
  381. End Sub
  382. Private Sub Com_Qbfd_Click()      '不选
  383. Dim i As Integer
  384. For i = 0 To Lst_BillCode.ListCount - 1
  385.     Lst_BillCode.Selected(i) = False
  386. Next i
  387. End Sub
  388. Private Sub Form_KeyPress(KeyAscii As Integer)       '控 制 焦 点 转 移
  389.    Dim jdzygs As Integer
  390.    
  391.    jdzygs = 7
  392.    Select Case KeyAscii
  393.         Case vbKeyReturn
  394.             If Kjjdzy(jdzygs) Then
  395.                 KeyAscii = 0
  396.             End If
  397.         
  398.         Case 39           '屏蔽字符"'"
  399.             KeyAscii = 0
  400.    End Select
  401.    
  402. End Sub
  403. Private Sub Form_Load()                              '窗 体 装 入
  404.     Dim count As Integer
  405.     '以下为文本框处理程序
  406.     TextGroupCode = "Chhs_MakeVoucherFind"
  407.     
  408.     Call Drwbkxx(TextGroupCode, Textvar(), Textboolean(), Textint(), Textstr())  '读入文本框录入信息
  409.     Call Wbkcsh
  410.      
  411.     '添加仓库  汇总方式
  412.     Call Add_BillType
  413.       
  414.     '初始定义
  415.     ReDim SaveLst(Lst_BillCode.ListCount - 1)
  416.     ReDim SaveTxt(LrText.count - 1)
  417.     ReDim SaveOption(2)
  418.     
  419.     For count = 0 To Lst_BillCode.ListCount - 1
  420.         SaveLst(count) = False
  421.     Next count
  422.     For count = 0 To LrText.count - 1
  423.        SaveTxt(count) = ""
  424.     Next count
  425.     
  426.     SaveOption(0) = True
  427.     SaveOption(1) = False
  428.     SaveOption(2) = False
  429.  
  430.   
  431.   
  432. End Sub
  433. Private Sub Add_BillType()           '添加内容
  434.     
  435.     Dim Rectemp As Recordset
  436.         
  437.     With Lst_BillCode
  438.         .AddItem "材料入库单"
  439.         BillCode(0) = "1212"
  440.         .AddItem "产品入库单"
  441.         BillCode(1) = "1202"
  442.         .AddItem "其他入库单"
  443.         BillCode(2) = "1203"
  444.         .AddItem "材料出库单"
  445.         BillCode(3) = "1204"
  446.         .AddItem "销售出库单"
  447.         BillCode(4) = "1205"
  448.         .AddItem "其他出库单"
  449.         BillCode(5) = "1206"
  450.         .AddItem "入库单调整"
  451.         BillCode(6) = "1301"
  452.         .AddItem "出库单调整"
  453.         BillCode(7) = "1302"
  454.         .AddItem "计划价调整单"
  455.         BillCode(8) = "1303"
  456.         .AddItem "蓝字暂估单"
  457.         BillCode(9) = "1304"
  458.         .AddItem "红字回冲单"
  459.         BillCode(10) = "1305"
  460.         .AddItem "差异结转单"
  461.         BillCode(11) = "1307"
  462.         
  463.     End With
  464.     
  465. End Sub
  466. '************以下为文本框录入处理程序(固定不变部分)*************'
  467. Private Sub Wbklrwbcl(Index As Integer)    '文本框录入事后处理程序
  468.   '以下为依据实际情况自定义部分[
  469.    
  470.   ']以上为依据实际情况自定义部分
  471. End Sub
  472. Private Sub Form_QueryUnload(Cancel As Integer, UnloadMode As Integer)
  473.     If UnloadCheck.Value <> 1 Then
  474.        Cancel = 1
  475.        Call QxCommand_Click
  476.     End If
  477.     
  478. End Sub
  479. Private Sub LrText_Change(Index As Integer)
  480.     '屏蔽程序改变控制
  481.     If TextChangeLock Then
  482.         Exit Sub
  483.     End If
  484.    
  485.     TextValiJudgeLock(Index) = False    '打开有效性判断锁
  486.     
  487.     '限制字段录入长度
  488.           
  489.     TextChangeLock = True  '加锁(防止执行Txt_LrText_Change)
  490.     
  491.     Select Case Textint(Index, 1)
  492.         Case 8           '金额型
  493.             Call Sjgskz(LrText(Index), Xtjezws - Xtjexsws - 1, Xtjexsws)
  494.         Case 9           '数量型
  495.             Call Sjgskz(LrText(Index), Xtslzws - Xtslxsws - 1, Xtslxsws)
  496.         Case 10          '单价型
  497.             Call Sjgskz(LrText(Index), Xtdjzws - Xtdjxsws - 1, Xtdjxsws)
  498.         Case Else        '其他小数类型控制
  499.             If Textint(Index, 6) <> 0 Or Textint(Index, 7) <> 0 Then
  500.                 Call Sjgskz(LrText(Index), Textint(Index, 6), Textint(Index, 7))
  501.             End If
  502.     End Select
  503.         
  504.     TextChangeLock = False '解锁
  505.      
  506. End Sub
  507. Private Sub LrText_GotFocus(Index As Integer)                                                 '文本框得到焦点,显示相应信息
  508.    
  509.     Call TextShow(Index)
  510.     LrText(Index).SelStart = Len(LrText(Index))
  511.    
  512. End Sub
  513. Private Sub LrText_KeyDown(Index As Integer, KeyCode As Integer, Shift As Integer)            '字段按F2键提供帮助
  514.    
  515.     Select Case KeyCode
  516.         Case vbKeyF2
  517.             Call Text_Help(Index)
  518.     End Select
  519.     
  520. End Sub
  521. Private Sub LrText_KeyPress(Index As Integer, KeyAscii As Integer)                            '文本框录入事中控制
  522.    
  523.     Call InputFieldLimit(LrText(Index), Textint(Index, 1), KeyAscii)
  524.    
  525. End Sub
  526. Private Sub LrText_LostFocus(Index As Integer)                                                '文本框失去焦点进行有效性判断及相应处理
  527.   
  528.     If Textint(Index, 9) = 0 Or Textint(Index, 9) = 1 Then '事中判断
  529.         Call TextYxxpd(Index)
  530.     End If
  531.     
  532. End Sub
  533. Private Sub QdCommand_Click()      '确认
  534.     Dim count As Integer
  535.     Dim BillTypeFlag As Boolean
  536.      '录入条件有效性判断
  537.     If Not Lrtjyxxpd Then
  538.         Exit Sub
  539.     End If
  540.     
  541.     '判断是否选中单据
  542.     For count = 0 To Lst_BillCode.ListCount - 1
  543.         If Lst_BillCode.Selected(count) Then
  544.             BillTypeFlag = True
  545.             Exit For
  546.         End If
  547.         BillTypeFlag = False
  548.     Next
  549.     
  550.     If Not BillTypeFlag Then
  551.         Tsxx = "请选择至少一种单据"
  552.         Call Xtxxts(Tsxx, 0, 4)
  553.         Exit Sub
  554.     End If
  555.     
  556.     '选择单据
  557.     MSQLStr = ""
  558.     For count = 0 To Lst_BillCode.ListCount - 1
  559.         If Lst_BillCode.Selected(count) And MSQLStr = "" Then
  560.             MSQLStr = "AND (BillCode='" & BillCode(count) & "'"
  561.         Else
  562.             If Lst_BillCode.Selected(count) Then
  563.                 MSQLStr = MSQLStr + " OR " & " BillCode='" & BillCode(count) & "'"
  564.             End If
  565.         End If
  566.     Next
  567.     MSQLStr = MSQLStr + ")"
  568.     
  569.     '激活查询过程
  570.     CL_MakeVoucher.Timer1.Enabled = True
  571.     
  572.     '保存查询条件设置
  573.     For count = 0 To Lst_BillCode.ListCount - 1
  574.         SaveLst(count) = Lst_BillCode.Selected(count)
  575.     Next count
  576.     For count = 0 To LrText.count - 1
  577.        SaveTxt(count) = LrText(count)
  578.     Next count
  579.     
  580.     SaveOption(0) = Opti_bill1.Value
  581.     SaveOption(1) = Opti_bill2.Value
  582.     SaveOption(2) = Opti_pz.Value
  583.     
  584.     Me.Hide
  585.     
  586.     
  587. End Sub
  588. Private Sub Ydcommand1_MouseDown(Index As Integer, Button As Integer, Shift As Integer, x As Single, y As Single)
  589.     
  590.     Call Text_Help(Index)
  591.     
  592. End Sub
  593. Private Sub Text_Help(Index As Integer)                                                       '录入字段帮助
  594.     
  595.     If Not Textboolean(Index, 1) Then
  596.         Exit Sub
  597.     End If
  598.     
  599.     TextValiLock = True
  600.     
  601.     Call Drbmhelp(Textint(Index, 2), Textstr(Index, 4), Trim(LrText(Index).Text))
  602.     
  603.     If Len(Xtfhcs) <> 0 Then
  604.         If Textint(Index, 3) = 1 Then
  605.             LrText(Index).Text = Xtfhcsfz
  606.             LrText(Index).Tag = Xtfhcs
  607.         Else
  608.             LrText(Index).Text = Xtfhcs
  609.             LrText(Index).Tag = Xtfhcsfz
  610.         End If
  611.      End If
  612.      
  613.     TextValiLock = False
  614.     LrText(Index).SetFocus
  615.     
  616. End Sub
  617. Private Sub TextShow(Index As Integer)        '文本框得到焦点,显示相应信息
  618.    '填写文本框得到焦点,进行相应信息处理程序
  619. End Sub
  620. Private Sub Wbkcsh()                          '录入文本框初始化
  621.     
  622.     '最大录入文本框索引值
  623.     Max_Text_Index = Textvar(1)
  624.     ReDim TextValiJudgeLock(Max_Text_Index)
  625.     For Jsqte = 0 To Max_Text_Index
  626.     
  627.         If Len(Trim(Textstr(Jsqte, 1))) <> 0 Then
  628.             If Textboolean(Jsqte, 1) Then
  629.                 If Jsqte <> 0 And Not Textboolean(Jsqte, 3) Then
  630.                     Load YDCommand1(Jsqte)
  631.                 End If
  632.                 YDCommand1(Jsqte).Visible = True
  633.                 YDCommand1(Jsqte).Move LrText(Jsqte).Left + LrText(Jsqte).Width, LrText(Jsqte).Top
  634.             End If
  635.             TextChangeLock = True
  636.             LrText(Jsqte).Text = ""
  637.             LrText(Jsqte).Tag = ""
  638.             If Textint(Jsqte, 5) <> 0 Then
  639.                 LrText(Jsqte).MaxLength = Textint(Jsqte, 5)
  640.             End If
  641.             TextChangeLock = False
  642.         End If
  643.         TextValiJudgeLock(Jsqte) = True
  644.     Next Jsqte
  645. End Sub
  646. Private Function TextYxxpd(Index As Integer) As Boolean           '文本框有效性判断
  647.   
  648.     Dim SqlStr As String
  649.     Dim Findrec As ADODB.Recordset
  650.   
  651.   
  652.     '按帮助不进行有效性判断
  653.   
  654.     If TextValiLock Then
  655.         TextValiLock = False
  656.         TextYxxpd = True
  657.         Exit Function
  658.     End If
  659.     
  660.     '文本框内容未曾改变不进行有效性判断
  661.   
  662.     If TextValiJudgeLock(Index) Then
  663.         TextYxxpd = True
  664.         Exit Function
  665.     End If
  666.     
  667.     Call Wbklrwbcl(Index)
  668.   
  669.     If Trim(LrText(Index)) = "" Then
  670.         LrText(Index).Tag = ""
  671.         TextValiJudgeLock(Index) = True
  672.         TextYxxpd = True
  673.         Exit Function
  674.     End If
  675.     
  676.     Select Case Textint(Index, 4)
  677.         Case 1      '编码型
  678.             SqlStr = Trim(Textstr(Index, 5))
  679.             SqlStr = Replace(SqlStr, "@", "'" + Trim(LrText(Index).Text) + "'")
  680.             SqlStr = Replace(SqlStr, "$$", "'" + Trim(Xtczybm) + "'")
  681.             Set Findrec = Cw_DataEnvi.DataConnect.Execute(SqlStr)
  682.             If Findrec.EOF Then
  683.                 Call Xtxxts(Trim(Textstr(Index, 6)), 0, 1)
  684.                 LrText(Index).SetFocus
  685.                 Exit Function
  686.             Else
  687.                 Select Case Textint(Index, 3)
  688.                     Case 0
  689.                         If Len(Trim(Textstr(Index, 2))) <> 0 Then
  690.                             LrText(Index).Text = Trim(Findrec.Fields(Trim(Textstr(Index, 2))))
  691.                         End If
  692.                         If Len(Trim(Textstr(Index, 3) & "")) <> 0 Then
  693.                             LrText(Index).Tag = Trim(Findrec.Fields(Trim(Textstr(Index, 3))))
  694.                         End If
  695.                     Case 1
  696.                         If Len(Trim(Textstr(Index, 3) & "")) <> 0 Then
  697.                             LrText(Index).Text = Trim(Findrec.Fields(Trim(Textstr(Index, 3))))
  698.                         End If
  699.                         If Len(Trim(Textstr(Index, 2))) <> 0 Then
  700.                             LrText(Index).Tag = Trim(Findrec.Fields(Trim(Textstr(Index, 2))))
  701.                         End If
  702.                 End Select
  703.                
  704.             End If
  705.             
  706.         Case 2      '日期型
  707.             If IsDate(LrText(Index).Text) Then
  708.                 LrText(Index).Text = Format(LrText(Index).Text, "yyyy-mm-dd")
  709.                 If Val(Mid(LrText(Index), 1, 4)) < 1900 Then
  710.                     LrText(Index).Text = "1900" + Mid(LrText(Index), 5, 6)
  711.                 End If
  712.             Else
  713.                 Tsxx = "非法公历日期!(格式:" + Format(Date, "yyyy-mm-dd") + ")"
  714.                 Call Xtxxts(Tsxx, 0, 1)
  715.                 LrText(Index).SetFocus
  716.                 Exit Function
  717.             End If
  718.         Case 3      '其他类型
  719.     End Select
  720.        
  721.     TextValiJudgeLock(Index) = True
  722.     TextYxxpd = True
  723.    
  724. End Function
  725. Private Sub QxCommand_Click()
  726.     
  727.     '恢复查询设置
  728.     For Jsqte = 0 To Lst_BillCode.ListCount - 1
  729.         Lst_BillCode.Selected(Jsqte) = SaveLst(Jsqte)
  730.     Next Jsqte
  731.     For Jsqte = 0 To LrText.count - 1
  732.         LrText(Jsqte) = SaveTxt(Jsqte)
  733.     Next Jsqte
  734.     
  735.     Opti_bill1 = SaveOption(0)
  736.     Opti_bill2 = SaveOption(1)
  737.     Opti_pz = SaveOption(2)
  738.     
  739.     Me.Hide
  740. End Sub
  741. Private Function Lrtjyxxpd() As Boolean                          '用户录入条件有效性判断
  742.     
  743.     Dim Jsqte As Integer
  744.     Lrtjyxxpd = False
  745.  
  746.     '对需要进行事后判断的文本框录入内容进行有效性判断 (固定不变)
  747.     For Jsqte = 0 To Max_Text_Index
  748.         If Textint(Jsqte, 9) = 0 Or Textint(Jsqte, 9) = 2 Then
  749.             If Not TextYxxpd(Jsqte) Then
  750.                 Exit Function
  751.             End If
  752.         End If
  753.     Next Jsqte
  754.    
  755.     '[>>以下为依据实际情况自定义部分
  756.   
  757.     If LrText(3).Text > LrText(4).Text And LrText(4).Text <> "" Then
  758.         Tsxx = "日期范围应由小到大!"
  759.         Call Xtxxts(Tsxx, 0, 4)
  760.         LrText(3).SetFocus
  761.         Exit Function
  762.     End If
  763.     '<<]以上为依据实际情况自定义部分
  764.  
  765.     Lrtjyxxpd = True
  766.     
  767. End Function
  768. Public Property Get SqlStr() As Variant
  769.     SqlStr = MSQLStr
  770. End Property