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

企业管理

开发平台:

Visual Basic

  1. VERSION 5.00
  2. Object = "{65A39231-6133-11D1-BAA2-444553540000}#1.0#0"; "vslight6.OCX"
  3. Object = "{D76D7128-4A96-11D3-BD95-D296DC2DD072}#1.0#0"; "VSOCX7.OCX"
  4. Object = "{831FDD16-0C5C-11D2-A9FC-0000F8754DA1}#2.0#0"; "mscomctl.ocx"
  5. Object = "{BDC217C8-ED16-11CD-956C-0000C04E4C0A}#1.1#0"; "Tabctl32.ocx"
  6. Begin VB.Form Set_HlpSortFrm 
  7.    BorderStyle     =   1  'Fixed Single
  8.    Caption         =   "帮助类别设置"
  9.    ClientHeight    =   7110
  10.    ClientLeft      =   45
  11.    ClientTop       =   330
  12.    ClientWidth     =   9375
  13.    HelpContextID   =   2001
  14.    Icon            =   "设置_帮助类别设置.frx":0000
  15.    KeyPreview      =   -1  'True
  16.    LinkTopic       =   "Form2"
  17.    LockControls    =   -1  'True
  18.    MaxButton       =   0   'False
  19.    MinButton       =   0   'False
  20.    ScaleHeight     =   7110
  21.    ScaleWidth      =   9375
  22.    StartUpPosition =   2  '屏幕中心
  23.    Begin TabDlg.SSTab StTab 
  24.       Height          =   6435
  25.       Left            =   30
  26.       TabIndex        =   4
  27.       Top             =   660
  28.       Width           =   9330
  29.       _ExtentX        =   16457
  30.       _ExtentY        =   11351
  31.       _Version        =   393216
  32.       Style           =   1
  33.       Tabs            =   2
  34.       TabHeight       =   520
  35.       TabCaption(0)   =   "列表视图"
  36.       TabPicture(0)   =   "设置_帮助类别设置.frx":1042
  37.       Tab(0).ControlEnabled=   -1  'True
  38.       Tab(0).Control(0)=   "CzxsGrid"
  39.       Tab(0).Control(0).Enabled=   0   'False
  40.       Tab(0).ControlCount=   1
  41.       TabCaption(1)   =   "单张视图"
  42.       TabPicture(1)   =   "设置_帮助类别设置.frx":105E
  43.       Tab(1).ControlEnabled=   0   'False
  44.       Tab(1).Control(0)=   "Frame1"
  45.       Tab(1).Control(0).Enabled=   0   'False
  46.       Tab(1).ControlCount=   1
  47.       Begin VB.Frame Frame1 
  48.          Height          =   6015
  49.          Left            =   -74910
  50.          TabIndex        =   7
  51.          Top             =   330
  52.          Width           =   9135
  53.          Begin VB.TextBox LrText 
  54.             Height          =   300
  55.             Index           =   1
  56.             Left            =   1500
  57.             TabIndex        =   1
  58.             Text            =   "1"
  59.             Top             =   1095
  60.             Width           =   1830
  61.          End
  62.          Begin VB.CheckBox Chk_Fixed 
  63.             Caption         =   "固定"
  64.             Height          =   195
  65.             Left            =   3915
  66.             TabIndex        =   12
  67.             Top             =   720
  68.             Width           =   690
  69.          End
  70.          Begin VB.TextBox LrText 
  71.             Height          =   300
  72.             Index           =   0
  73.             Left            =   1500
  74.             TabIndex        =   0
  75.             Text            =   "0"
  76.             Top             =   690
  77.             Width           =   1830
  78.          End
  79.          Begin VB.CommandButton QxCommand 
  80.             Cancel          =   -1  'True
  81.             Caption         =   "取消(&C)"
  82.             Height          =   300
  83.             Left            =   2205
  84.             TabIndex        =   9
  85.             Top             =   1650
  86.             Width           =   1120
  87.          End
  88.          Begin VB.CommandButton BcCommand 
  89.             Caption         =   "保存(&S)"
  90.             Height          =   300
  91.             Left            =   990
  92.             TabIndex        =   2
  93.             Top             =   1650
  94.             Width           =   1120
  95.          End
  96.          Begin VB.CommandButton Ydcommand1 
  97.             Height          =   300
  98.             Index           =   0
  99.             Left            =   8685
  100.             Picture         =   "设置_帮助类别设置.frx":107A
  101.             Style           =   1  'Graphical
  102.             TabIndex        =   8
  103.             Top             =   270
  104.             Visible         =   0   'False
  105.             Width           =   300
  106.          End
  107.          Begin VB.Label TsLabel 
  108.             AutoSize        =   -1  'True
  109.             Caption         =   "类别名称:"
  110.             Height          =   180
  111.             Index           =   0
  112.             Left            =   585
  113.             TabIndex        =   11
  114.             Top             =   750
  115.             Width           =   810
  116.          End
  117.          Begin VB.Label TsLabel 
  118.             AutoSize        =   -1  'True
  119.             Caption         =   "备注:"
  120.             Height          =   180
  121.             Index           =   1
  122.             Left            =   585
  123.             TabIndex        =   10
  124.             Top             =   1155
  125.             Width           =   450
  126.          End
  127.       End
  128.       Begin VSFlex8Ctl.VSFlexGrid CzxsGrid 
  129.          Height          =   5955
  130.          Left            =   90
  131.          TabIndex        =   3
  132.          Top             =   390
  133.          Width           =   9135
  134.          _ExtentX        =   16113
  135.          _ExtentY        =   10504
  136.          Appearance      =   1
  137.          BorderStyle     =   1
  138.          Enabled         =   -1  'True
  139.          BeginProperty Font {0BE35203-8F91-11CE-9DE3-00AA004BB851} 
  140.             Name            =   "宋体"
  141.             Size            =   9
  142.             Charset         =   134
  143.             Weight          =   400
  144.             Underline       =   0   'False
  145.             Italic          =   0   'False
  146.             Strikethrough   =   0   'False
  147.          EndProperty
  148.          MousePointer    =   0
  149.          BackColor       =   -2147483643
  150.          ForeColor       =   -2147483640
  151.          BackColorFixed  =   -2147483633
  152.          ForeColorFixed  =   -2147483630
  153.          BackColorSel    =   -2147483635
  154.          ForeColorSel    =   -2147483634
  155.          BackColorBkg    =   8421504
  156.          BackColorAlternate=   -2147483643
  157.          GridColor       =   -2147483633
  158.          GridColorFixed  =   -2147483632
  159.          TreeColor       =   -2147483632
  160.          FloodColor      =   192
  161.          SheetBorder     =   -2147483642
  162.          FocusRect       =   1
  163.          HighLight       =   1
  164.          AllowSelection  =   -1  'True
  165.          AllowBigSelection=   -1  'True
  166.          AllowUserResizing=   0
  167.          SelectionMode   =   0
  168.          GridLines       =   1
  169.          GridLinesFixed  =   2
  170.          GridLineWidth   =   1
  171.          Rows            =   5000
  172.          Cols            =   10
  173.          FixedRows       =   1
  174.          FixedCols       =   0
  175.          RowHeightMin    =   0
  176.          RowHeightMax    =   0
  177.          ColWidthMin     =   0
  178.          ColWidthMax     =   0
  179.          ExtendLastCol   =   0   'False
  180.          FormatString    =   ""
  181.          ScrollTrack     =   0   'False
  182.          ScrollBars      =   3
  183.          ScrollTips      =   0   'False
  184.          MergeCells      =   0
  185.          MergeCompare    =   0
  186.          AutoResize      =   -1  'True
  187.          AutoSizeMode    =   0
  188.          AutoSearch      =   0
  189.          MultiTotals     =   -1  'True
  190.          SubtotalPosition=   1
  191.          OutlineBar      =   0
  192.          OutlineCol      =   0
  193.          Ellipsis        =   0
  194.          ExplorerBar     =   0
  195.          PicturesOver    =   0   'False
  196.          FillStyle       =   0
  197.          RightToLeft     =   0   'False
  198.          PictureType     =   0
  199.          TabBehavior     =   0
  200.          OwnerDraw       =   0
  201.          Editable        =   0   'False
  202.          ShowComboButton =   -1  'True
  203.          WordWrap        =   0   'False
  204.          TextStyle       =   0
  205.          TextStyleFixed  =   0
  206.          OleDragMode     =   0
  207.          OleDropMode     =   0
  208.          DataMode        =   0
  209.          VirtualData     =   -1  'True
  210.       End
  211.    End
  212.    Begin MSComctlLib.Toolbar SzToolbar 
  213.       Align           =   1  'Align Top
  214.       Height          =   570
  215.       Left            =   0
  216.       TabIndex        =   5
  217.       Top             =   0
  218.       Width           =   9375
  219.       _ExtentX        =   16536
  220.       _ExtentY        =   1005
  221.       ButtonWidth     =   820
  222.       ButtonHeight    =   953
  223.       AllowCustomize  =   0   'False
  224.       Appearance      =   1
  225.       Style           =   1
  226.       ImageList       =   "ImageList1"
  227.       _Version        =   393216
  228.       BeginProperty Buttons {66833FE8-8583-11D1-B16A-00C0F0283628} 
  229.          NumButtons      =   12
  230.          BeginProperty Button1 {66833FEA-8583-11D1-B16A-00C0F0283628} 
  231.             Caption         =   "设置"
  232.             Key             =   "ymsz"
  233.             ImageKey        =   "sz"
  234.          EndProperty
  235.          BeginProperty Button2 {66833FEA-8583-11D1-B16A-00C0F0283628} 
  236.             Caption         =   "打印"
  237.             Key             =   "dy"
  238.             Object.ToolTipText     =   "点击或按Ctrl+P打印表格"
  239.             ImageKey        =   "dy"
  240.          EndProperty
  241.          BeginProperty Button3 {66833FEA-8583-11D1-B16A-00C0F0283628} 
  242.             Caption         =   "预览"
  243.             Key             =   "yl"
  244.             ImageKey        =   "yl"
  245.          EndProperty
  246.          BeginProperty Button4 {66833FEA-8583-11D1-B16A-00C0F0283628} 
  247.             Style           =   3
  248.          EndProperty
  249.          BeginProperty Button5 {66833FEA-8583-11D1-B16A-00C0F0283628} 
  250.             Caption         =   "增加"
  251.             Key             =   "zj"
  252.             Object.ToolTipText     =   "点击或按Ctrl+A增加记录"
  253.             ImageKey        =   "xz"
  254.          EndProperty
  255.          BeginProperty Button6 {66833FEA-8583-11D1-B16A-00C0F0283628} 
  256.             Caption         =   "修改"
  257.             Key             =   "xg"
  258.             ImageKey        =   "xg"
  259.          EndProperty
  260.          BeginProperty Button7 {66833FEA-8583-11D1-B16A-00C0F0283628} 
  261.             Caption         =   "删除"
  262.             Key             =   "sc"
  263.             Object.ToolTipText     =   "点击或按Ctrl+D删除当前记录"
  264.             ImageKey        =   "sc"
  265.          EndProperty
  266.          BeginProperty Button8 {66833FEA-8583-11D1-B16A-00C0F0283628} 
  267.             Object.Visible         =   0   'False
  268.             Style           =   3
  269.          EndProperty
  270.          BeginProperty Button9 {66833FEA-8583-11D1-B16A-00C0F0283628} 
  271.             Object.Visible         =   0   'False
  272.             Caption         =   "刷新"
  273.             Key             =   "sx"
  274.             ImageKey        =   "sx"
  275.          EndProperty
  276.          BeginProperty Button10 {66833FEA-8583-11D1-B16A-00C0F0283628} 
  277.             Style           =   3
  278.          EndProperty
  279.          BeginProperty Button11 {66833FEA-8583-11D1-B16A-00C0F0283628} 
  280.             Caption         =   "帮助"
  281.             Key             =   "bz"
  282.             ImageKey        =   "bz"
  283.          EndProperty
  284.          BeginProperty Button12 {66833FEA-8583-11D1-B16A-00C0F0283628} 
  285.             Caption         =   "退出"
  286.             Key             =   "fh"
  287.             ImageKey        =   "tc"
  288.          EndProperty
  289.       EndProperty
  290.       BorderStyle     =   1
  291.       Begin MSComctlLib.Toolbar GsToolbar 
  292.          Height          =   540
  293.          Left            =   6870
  294.          TabIndex        =   6
  295.          Top             =   0
  296.          Width           =   2475
  297.          _ExtentX        =   4366
  298.          _ExtentY        =   953
  299.          ButtonWidth     =   1455
  300.          ButtonHeight    =   953
  301.          AllowCustomize  =   0   'False
  302.          Appearance      =   1
  303.          Style           =   1
  304.          ImageList       =   "ImageList1"
  305.          _Version        =   393216
  306.          BeginProperty Buttons {66833FE8-8583-11D1-B16A-00C0F0283628} 
  307.             NumButtons      =   3
  308.             BeginProperty Button1 {66833FEA-8583-11D1-B16A-00C0F0283628} 
  309.                Caption         =   "保存格式"
  310.                Key             =   "bcgs"
  311.                ImageKey        =   "bcgs"
  312.             EndProperty
  313.             BeginProperty Button2 {66833FEA-8583-11D1-B16A-00C0F0283628} 
  314.                Caption         =   "默认列宽"
  315.                Key             =   "hfmrgs"
  316.                ImageKey        =   "mrlk"
  317.             EndProperty
  318.             BeginProperty Button3 {66833FEA-8583-11D1-B16A-00C0F0283628} 
  319.                Caption         =   "显示项目"
  320.                Key             =   "szxsxm"
  321.                ImageKey        =   "xsxm"
  322.             EndProperty
  323.          EndProperty
  324.       End
  325.    End
  326.    Begin MSComctlLib.ImageList ImageList1 
  327.       Left            =   0
  328.       Top             =   420
  329.       _ExtentX        =   1005
  330.       _ExtentY        =   1005
  331.       BackColor       =   -2147483643
  332.       ImageWidth      =   16
  333.       ImageHeight     =   16
  334.       MaskColor       =   12632256
  335.       _Version        =   393216
  336.       BeginProperty Images {2C247F25-8591-11D1-B16A-00C0F0283628} 
  337.          NumListImages   =   29
  338.          BeginProperty ListImage1 {2C247F27-8591-11D1-B16A-00C0F0283628} 
  339.             Picture         =   "设置_帮助类别设置.frx":1404
  340.             Key             =   "sz"
  341.          EndProperty
  342.          BeginProperty ListImage2 {2C247F27-8591-11D1-B16A-00C0F0283628} 
  343.             Picture         =   "设置_帮助类别设置.frx":179E
  344.             Key             =   "dy"
  345.          EndProperty
  346.          BeginProperty ListImage3 {2C247F27-8591-11D1-B16A-00C0F0283628} 
  347.             Picture         =   "设置_帮助类别设置.frx":1B38
  348.             Key             =   "yl"
  349.          EndProperty
  350.          BeginProperty ListImage4 {2C247F27-8591-11D1-B16A-00C0F0283628} 
  351.             Picture         =   "设置_帮助类别设置.frx":1ED2
  352.             Key             =   "xg"
  353.          EndProperty
  354.          BeginProperty ListImage5 {2C247F27-8591-11D1-B16A-00C0F0283628} 
  355.             Picture         =   "设置_帮助类别设置.frx":226C
  356.             Key             =   "zh"
  357.          EndProperty
  358.          BeginProperty ListImage6 {2C247F27-8591-11D1-B16A-00C0F0283628} 
  359.             Picture         =   "设置_帮助类别设置.frx":2606
  360.             Key             =   "sh"
  361.          EndProperty
  362.          BeginProperty ListImage7 {2C247F27-8591-11D1-B16A-00C0F0283628} 
  363.             Picture         =   "设置_帮助类别设置.frx":29A0
  364.             Key             =   "bc"
  365.          EndProperty
  366.          BeginProperty ListImage8 {2C247F27-8591-11D1-B16A-00C0F0283628} 
  367.             Picture         =   "设置_帮助类别设置.frx":2D3A
  368.             Key             =   "fq"
  369.          EndProperty
  370.          BeginProperty ListImage9 {2C247F27-8591-11D1-B16A-00C0F0283628} 
  371.             Picture         =   "设置_帮助类别设置.frx":30D4
  372.             Key             =   "bz"
  373.          EndProperty
  374.          BeginProperty ListImage10 {2C247F27-8591-11D1-B16A-00C0F0283628} 
  375.             Picture         =   "设置_帮助类别设置.frx":346E
  376.             Key             =   "tc"
  377.          EndProperty
  378.          BeginProperty ListImage11 {2C247F27-8591-11D1-B16A-00C0F0283628} 
  379.             Picture         =   "设置_帮助类别设置.frx":3808
  380.             Key             =   "bcgs"
  381.          EndProperty
  382.          BeginProperty ListImage12 {2C247F27-8591-11D1-B16A-00C0F0283628} 
  383.             Picture         =   "设置_帮助类别设置.frx":3BA2
  384.             Key             =   "mrlk"
  385.          EndProperty
  386.          BeginProperty ListImage13 {2C247F27-8591-11D1-B16A-00C0F0283628} 
  387.             Picture         =   "设置_帮助类别设置.frx":3F3C
  388.             Key             =   "xsxm"
  389.          EndProperty
  390.          BeginProperty ListImage14 {2C247F27-8591-11D1-B16A-00C0F0283628} 
  391.             Picture         =   "设置_帮助类别设置.frx":42D6
  392.             Key             =   "first"
  393.          EndProperty
  394.          BeginProperty ListImage15 {2C247F27-8591-11D1-B16A-00C0F0283628} 
  395.             Picture         =   "设置_帮助类别设置.frx":4670
  396.             Key             =   "prev"
  397.          EndProperty
  398.          BeginProperty ListImage16 {2C247F27-8591-11D1-B16A-00C0F0283628} 
  399.             Picture         =   "设置_帮助类别设置.frx":4A0A
  400.             Key             =   "next"
  401.          EndProperty
  402.          BeginProperty ListImage17 {2C247F27-8591-11D1-B16A-00C0F0283628} 
  403.             Picture         =   "设置_帮助类别设置.frx":4DA4
  404.             Key             =   "last"
  405.          EndProperty
  406.          BeginProperty ListImage18 {2C247F27-8591-11D1-B16A-00C0F0283628} 
  407.             Picture         =   "设置_帮助类别设置.frx":513E
  408.             Key             =   "xx"
  409.          EndProperty
  410.          BeginProperty ListImage19 {2C247F27-8591-11D1-B16A-00C0F0283628} 
  411.             Picture         =   "设置_帮助类别设置.frx":54D8
  412.             Key             =   "define"
  413.          EndProperty
  414.          BeginProperty ListImage20 {2C247F27-8591-11D1-B16A-00C0F0283628} 
  415.             Picture         =   "设置_帮助类别设置.frx":5872
  416.             Key             =   "exec"
  417.          EndProperty
  418.          BeginProperty ListImage21 {2C247F27-8591-11D1-B16A-00C0F0283628} 
  419.             Picture         =   "设置_帮助类别设置.frx":5C0C
  420.             Key             =   "xz"
  421.          EndProperty
  422.          BeginProperty ListImage22 {2C247F27-8591-11D1-B16A-00C0F0283628} 
  423.             Picture         =   "设置_帮助类别设置.frx":5FA6
  424.             Key             =   "sc"
  425.          EndProperty
  426.          BeginProperty ListImage23 {2C247F27-8591-11D1-B16A-00C0F0283628} 
  427.             Picture         =   "设置_帮助类别设置.frx":6340
  428.             Key             =   "sx"
  429.          EndProperty
  430.          BeginProperty ListImage24 {2C247F27-8591-11D1-B16A-00C0F0283628} 
  431.             Picture         =   "设置_帮助类别设置.frx":66DA
  432.             Key             =   "cx"
  433.          EndProperty
  434.          BeginProperty ListImage25 {2C247F27-8591-11D1-B16A-00C0F0283628} 
  435.             Picture         =   "设置_帮助类别设置.frx":6A74
  436.             Key             =   "zd"
  437.          EndProperty
  438.          BeginProperty ListImage26 {2C247F27-8591-11D1-B16A-00C0F0283628} 
  439.             Picture         =   "设置_帮助类别设置.frx":6E0E
  440.             Key             =   "dz"
  441.          EndProperty
  442.          BeginProperty ListImage27 {2C247F27-8591-11D1-B16A-00C0F0283628} 
  443.             Picture         =   "设置_帮助类别设置.frx":71A8
  444.             Key             =   "ph"
  445.          EndProperty
  446.          BeginProperty ListImage28 {2C247F27-8591-11D1-B16A-00C0F0283628} 
  447.             Picture         =   "设置_帮助类别设置.frx":7542
  448.             Key             =   "fz"
  449.          EndProperty
  450.          BeginProperty ListImage29 {2C247F27-8591-11D1-B16A-00C0F0283628} 
  451.             Picture         =   "设置_帮助类别设置.frx":78DC
  452.             Key             =   "dw"
  453.          EndProperty
  454.       EndProperty
  455.    End
  456. End
  457. Attribute VB_Name = "Set_HlpSortFrm"
  458. Attribute VB_GlobalNameSpace = False
  459. Attribute VB_Creatable = False
  460. Attribute VB_PredeclaredId = True
  461. Attribute VB_Exposed = False
  462. '*******************************************************
  463. '*    模 块 名 称 :相关帮助类别设置
  464. '*    功 能 描 述 :相关帮助的类别设置模块
  465. '*    程序员姓名  :刘  刚
  466. '*    最后修改人  :刘  刚
  467. '*    最后修改时间:2001/11/30
  468. '*    备        注:经过自己测试
  469. '*******************************************************
  470. Dim Rec_CodeSet As New ADODB.Recordset   '编码设置表
  471. Dim jdzygs As Integer                    '控件焦点转移个数
  472. Dim Lrzt As Integer                      '录入状态标志(0-非录入状态 1-增加 2-修改)
  473. Dim ReportTitle As String                '报表主标题
  474. Dim Str_RightEdit As String             '编辑(新增、修改、删除)权限索引
  475.   
  476. '以下为固定使用变量(网格)
  477. Dim Cxnrrec As New ADODB.Recordset       '显示查询内容动态集
  478. Dim Dyymctbl As New DY_Dyymsz            '打印页面窗体变量
  479. Dim GridCode As String                   '显示网格网格代码
  480. Dim GridInf() As Variant                 '整个网格设置信息
  481. Dim Tsxx As String                       '系统提示信息
  482. Dim Qslz As Long                         '网格隐藏(非操作显示)列数
  483. Dim Sjhgd As Double                      '网格数据行高度
  484. Dim GridBoolean() As Boolean             '网格列信息(布尔型)
  485. Dim GridStr()  As String                 '网格列信息(字符型)
  486. Dim GridInt() As Integer                 '网格列信息(整型)
  487. Dim Szzls As Integer                     '数组总列数(网格列数-1)
  488. '以下为固定使用变量(文本框)
  489. Dim Textvar() As Variant                 '存储变体型文本框信息
  490. Dim Textboolean() As Boolean             '存储布尔型文本框信息
  491. Dim Textint() As Integer                 '存储整型文本框信息
  492. Dim Textstr() As String                  '存储字符型文本框信息
  493. Dim Max_Text_Index As Integer            '最大录入文本框索引值
  494. Dim TextGroupCode As String              '文本框录入分组编码
  495. Dim TextValiLock As Boolean              '文本框失去焦点是否进行有效性控制判断
  496. Dim TextValiJudgeLock() As Boolean       '文本框录入有效性判断控制锁
  497. Dim CurTextIndex As Integer              '当前文本框索引值
  498. Dim TextChangeLock As Boolean            '文本框内容变换控制锁
  499. Dim Bln_Cancel As Boolean                '取消按钮信息传递
  500. Dim sortId As Integer                     '存储类别编号的全局变量
  501. Private Sub Form_KeyPress(KeyAscii As Integer)   '控 制 焦 点 转 移
  502.     jdzygs = 10
  503.     
  504.     Select Case KeyAscii
  505.         Case vbKeyReturn
  506.             If Kjjdzy(jdzygs) Then
  507.                 KeyAscii = 0
  508.             End If
  509.         Case 39           '屏蔽"'"
  510.             KeyAscii = 0
  511.    End Select
  512.    
  513. End Sub
  514. Private Sub Form_Load()
  515.   
  516.     '打印报表标题信息
  517.     ReportTitle = "帮 助 类 别 表"
  518.      
  519.     '调入打印页面设置窗体
  520.     XtReportCode = "Rs_SetHlpSort"
  521.     Load Dyymctbl
  522.     
  523.     '以下为文本框处理程序(读入文本框录入信息)
  524.     TextGroupCode = "Rs_SetHlpSort"
  525.     Call Drwbkxx(TextGroupCode, Textvar(), Textboolean(), Textint(), Textstr())
  526.     Call Wbkcsh
  527.     
  528.     '调入网格设置信息
  529.     GridCode = "Rs_SetHlpSort"
  530.     Call BzWgcsh(CzxsGrid, GridCode, GridInf(), GridBoolean(), GridInt(), GridStr())
  531.     Qslz = GridInf(1)
  532.     Sjhgd = GridInf(2)
  533.     Szzls = CzxsGrid.Cols - 1
  534.     
  535.     '填 充 网 格
  536.     Call Cxnrtcwg
  537.        
  538.     '初始化toolbar,tab卡状态
  539.     StTab.Tab = 0
  540.     StTab.TabEnabled(1) = False
  541.     Frame1.Enabled = False
  542.      
  543.     '设置为非录入状态
  544.     Lrzt = 0
  545.     
  546.     '编辑(新增、修改、删除)权限索引
  547.     Str_RightEdit = "Rs_Set_HlpSort_Edit"
  548. End Sub
  549.  
  550. Private Sub Cxnrtcwg()                               '查询内容填充网格
  551.     Dim Sqlstr As String              '查询连接串
  552.     Dim jsqte As Long                 '查询临时使用变量
  553.   
  554.     '为加快显示速度,将网格刷新动作冻结
  555.     CzxsGrid.Redraw = False
  556.   
  557.     '[>>查询连接串
  558.     Sqlstr = "SELECT * FROM Rs_CorMain WHERE SortId <> '0' ORDER BY SortId"
  559.     '<<]
  560.     Set Cxnrrec = Cw_DataEnvi.DataConnect.Execute(Sqlstr)
  561.     
  562.     With Cxnrrec
  563.         CzxsGrid.Rows = CzxsGrid.FixedRows
  564.         If .EOF And .BOF Then
  565.             CzxsGrid.Redraw = True
  566.             Exit Sub
  567.         End If
  568.         
  569.         jsqte = CzxsGrid.FixedRows
  570.         
  571.         Do While Not .EOF
  572.             CzxsGrid.AddItem ""
  573.             Call Jltcwg(Cxnrrec, jsqte)                              '调入填充网格子过程
  574.             CzxsGrid.RowHeight(jsqte) = Sjhgd                        '设置网格高度
  575.             .MoveNext
  576.             jsqte = jsqte + 1
  577.         Loop
  578.     End With
  579.   
  580.     '将网格刷新动作解冻
  581.     CzxsGrid.Redraw = True
  582.     
  583. End Sub
  584. Private Sub Jltcwg(Jlbrec As ADODB.Recordset, Rowjsq As Long)           '记录内容填充网格
  585.     '[>>以下为自定义部分
  586.     With Jlbrec
  587.         CzxsGrid.TextMatrix(Rowjsq, 0) = Trim(.Fields("SortId") & "")            '类别编号
  588.         CzxsGrid.TextMatrix(Rowjsq, Sydz("001", GridStr(), Szzls)) = Trim(.Fields("SortName") & "")            '档案名称
  589.         CzxsGrid.TextMatrix(Rowjsq, Sydz("002", GridStr(), Szzls)) = Trim(.Fields("Remark") & "")            '备注
  590.         CzxsGrid.TextMatrix(Rowjsq, Sydz("003", GridStr(), Szzls)) = Trim(.Fields("Fixed") & "")
  591.     End With
  592.     '以上为自定义部分<<]
  593.     
  594. End Sub
  595. Private Sub Form_Unload(Cancel As Integer)             '窗体卸载
  596.     Set Cxnrrec = Nothing
  597.     Set Rec_CodeSet = Nothing
  598.     Unload Dyymctbl
  599.    
  600. End Sub
  601. Private Function Bclrsj() As Boolean                   '判断录入数据有效性,并保存数据
  602.     Dim jsqte As Integer
  603.     Dim nulStr As String
  604.     Dim nnulStr As String
  605.     Dim sSql As String
  606.     Dim tmpRs As New ADODB.Recordset
  607.     
  608.     Bclrsj = False
  609.   
  610.     '对文本框录入内容进行为零和为空判断(固定不变)
  611.     With Rec_CodeSet
  612.     
  613.         For jsqte = 0 To Max_Text_Index
  614.             If Textint(jsqte, 8) = 1 Then     '字段不能为空
  615.                 If Len(Trim(LrText(jsqte).Text)) = 0 Then
  616.                     Tsxx = Textstr(jsqte, 7) & "不能为空!"
  617.                     Call Xtxxts(Tsxx, 0, 1)
  618.                     LrText(jsqte).SetFocus
  619.                     Bclrsj = False
  620.                     Exit Function
  621.                 End If
  622.             Else
  623.                 If Textint(jsqte, 8) = 2 Then   '字段不能为零
  624.                     If Val(Trim(LrText(jsqte).Text)) = 0 Then
  625.                         Tsxx = Textstr(jsqte, 7) & "不能为零!"
  626.                         Call Xtxxts(Tsxx, 0, 1)
  627.                         LrText(jsqte).SetFocus
  628.                         Bclrsj = False
  629.                         Exit Function
  630.                     End If
  631.                 End If
  632.             End If
  633.         Next jsqte
  634.     
  635.         '对需要进行事后判断的文本框录入内容进行有效性判断 (固定不变)
  636.         For jsqte = 0 To Max_Text_Index
  637.             If Textint(jsqte, 9) = 0 Or Textint(jsqte, 9) = 2 Then
  638.                 If Not TextYxxpd(jsqte) Then
  639.                     Exit Function
  640.                 End If
  641.             End If
  642.         Next jsqte
  643.    
  644.         If Lrzt = 1 Then  '增 加
  645.         
  646.             '[>>判断类别编码/名称是否重复
  647. '            If Trim(LrText(0).Text) = "" Then Call Xtxxts("类别编码不能为空!", 0, 1): Exit Function
  648. '            If .State = 1 Then .Close
  649. '
  650. '            .Open "SELECT * FROM Rs_CorMain WHERE SortId = '" + Trim(LrText(0).Text) + "'", Cw_DataEnvi.DataConnect, adOpenDynamic, adLockOptimistic
  651. '
  652. '            If Not .EOF Then
  653. '                Tsxx = "类别编码重复,请重新设定!"
  654. '                Call Xtxxts(Tsxx, 0, 1)
  655. '                LrText(0).SetFocus
  656. '                Exit Function
  657. '            End If
  658.             
  659.             If .State = 1 Then .Close
  660.             .Open "SELECT * FROM Rs_CorMain WHERE SortName= '" + Trim(LrText(0).Text) + "'", Cw_DataEnvi.DataConnect, adOpenDynamic, adLockOptimistic
  661.     
  662.             If Not .EOF Then
  663.                 Tsxx = "类别名称重复,请重新设定!"
  664.                 Call Xtxxts(Tsxx, 0, 1)
  665.                 LrText(0).SetFocus
  666.                 
  667.                 Exit Function
  668.             End If
  669.             '判断记录内容无误后,将记录内容写入数据表
  670.             On Error GoTo Swcwcl
  671.     
  672.             Cw_DataEnvi.DataConnect.BeginTrans
  673.             
  674.             '向帮助类别表存入记录
  675.             sSql = "INSERT INTO Rs_CorMain (SortId,SortName,Remark,Fixed) " + Chr$(10) _
  676.             & "SELECT ii=(SELECT ISNULL(MAX(SortId),0)+1 FROM Rs_CorMain),'" & Trim(LrText(0).Text) & "" & "','" & Trim(LrText(1).Text) & "'," & Chk_Fixed.Value
  677.             
  678. '            sSql = "INSERT INTO Rs_CorMain (SortId,SortName,Remark,Fixed) " + Chr$(10) _
  679. '            & "VALUES ('" & Trim(LrText(0).Text) & "" & "','" & Trim(LrText(1).Text) & "','" & Trim(LrText(2).Text) & "'," & Chk_Fixed.Value & ")"
  680.             
  681.             Cw_DataEnvi.DataConnect.Execute sSql
  682.             
  683.             
  684.             Cw_DataEnvi.DataConnect.CommitTrans
  685.             '将记录加入网格
  686.             Call Cxnrtcwg
  687.             
  688.             Tsxx = "保存完毕!"
  689.             Call Xtxxts(Tsxx, 0, 4)
  690.             
  691.             Call Cshlrxx(1)
  692.             LrText(0).SetFocus
  693.             '<<]
  694.     
  695.         Else  '否则为修改记录
  696.  
  697.             If .State = 1 Then .Close
  698.             sSql = "SELECT * FROM Rs_CorMain WHERE SortName= '" + Trim(LrText(0).Text) + "' AND SortId <> '" & sortId & "'"
  699.             .Open sSql, Cw_DataEnvi.DataConnect, adOpenDynamic, adLockOptimistic
  700.     
  701.             If Not .EOF Then
  702.                 Tsxx = "类别名称重复,请重新设定!"
  703.                 Call Xtxxts(Tsxx, 0, 1)
  704.                 LrText(1).SetFocus
  705.                 
  706.                 Exit Function
  707.             End If
  708.             On Error GoTo Swcwcl
  709.             Cw_DataEnvi.DataConnect.BeginTrans
  710.             If .State = 1 Then .Close
  711.             sSql = "Update Rs_CorMain SET Fixed =" & Chk_Fixed.Value & ",SortName= '" & Trim(LrText(0).Text) & "',Remark='" & Trim(LrText(1).Text) + "" & "' WHERE SortId='" & sortId & "'"
  712.              Cw_DataEnvi.DataConnect.Execute (sSql)
  713.              Cw_DataEnvi.DataConnect.CommitTrans
  714.    
  715.             '刷新当前网格
  716.             Call Cxnrtcwg
  717.    
  718.         End If
  719.      
  720.         '保存记录成功,函数返回真值
  721.         sortId = 0
  722.         Bclrsj = True
  723.         Exit Function
  724.         
  725.     End With
  726.  
  727. Swcwcl:
  728.      Cw_DataEnvi.DataConnect.RollbackTrans
  729.      
  730.      Tsxx = "存盘过程中出现错误,程序自动恢复保存前状态!"
  731.      Call Xtxxts(Tsxx, 0, 1)
  732.      
  733.      Exit Function
  734.      
  735. End Function
  736. Private Function Cshlrxx(lrztxx As Integer) As Boolean              '初始化录入字段信息
  737.     TextChangeLock = True       '关闭文本框Chang事件
  738.     
  739.     If lrztxx = 1 Then
  740.         sortId = 0
  741.         '增加新记录时将文本框清空
  742.         For jsqte = 0 To Max_Text_Index
  743.             If Len(Trim(Textstr(jsqte, 1))) <> 0 Then
  744.                 LrText(jsqte).Text = ""
  745.                 LrText(jsqte).Tag = ""
  746.             End If
  747.             TextValiJudgeLock(jsqte) = True
  748.         Next jsqte
  749.        
  750.         '[>>
  751.         '在此处可添加新增记录时初始化设置
  752.         '<<]
  753.     Else
  754.     
  755.         '修改记录时根据记录关键字(编码)从数据表中读入其他字段内容
  756.         sortId = Val(Trim(CzxsGrid.TextMatrix(CzxsGrid.Row, 0)) & "")
  757.         With RecTemp
  758.             Sqlstr = "SELECT * FROM Rs_CorMain Where SortId='" & sortId & "'"
  759.             Set RecTemp = Cw_DataEnvi.DataConnect.Execute(Sqlstr)
  760.        
  761.             '记录如存在则读入其内容,否则提示记录已被其他人删除
  762.             If Not RecTemp.EOF Then
  763.                 LrText(0).Text = Trim(.Fields("SortName") & "")            '档案名称
  764.                 LrText(1).Text = Trim(.Fields("Remark") & "")            '备注
  765.                 If Trim(.Fields("Fixed") & "") = "True" Then
  766.                     Chk_Fixed.Value = 1
  767.                 Else
  768.                     Chk_Fixed.Value = 0
  769.                 End If
  770.             Else
  771.                 Tsxx = "该记录已经被其他人删除,请刷新当前数据!"
  772.                 Call Xtxxts(Tsxx, 0, 4)
  773.                 Call Cancel
  774.                 TextChangeLock = False
  775.                 Exit Function
  776.             End If
  777.         End With
  778.     End If
  779.     
  780.     Cshlrxx = True
  781.     TextChangeLock = False
  782.     
  783. End Function
  784. Private Sub Scdqjl()                 '删 除 当 前 记 录
  785.     Dim Yhanswer As Integer
  786.   
  787.    '判断用户是否有此功能执行权限,如有则写上机日志(进入)
  788.     If Not Security_Log(Str_RightEdit, Xtczybm, 1, True) Then
  789.          Exit Sub
  790.     End If
  791.   
  792.     '非数据行不能删除
  793.     With Me.CzxsGrid
  794.         If .Row < .FixedRows Then
  795.             Exit Sub
  796.         End If
  797.             
  798.         If .TextMatrix(.Row, Sydz("003", GridStr, Szzls)) = True Then
  799.             Call Xtxxts("固定项不能删除!", 0, 1)
  800.             Exit Sub
  801.         End If
  802.     End With
  803.     
  804.     
  805.     '用户确认是否删除记录
  806.     Tsxx = "请确认是否删除当前记录?"
  807.     Yhanswer = Xtxxts(Tsxx, 2, 2)
  808.     
  809.     If Yhanswer = 2 Then
  810.         Exit Sub
  811.     End If
  812.     On Error GoTo Cwcl
  813.   
  814.     Cw_DataEnvi.DataConnect.BeginTrans
  815.     '[>>以下需自定义部分
  816.     Cw_DataEnvi.DataConnect.Execute "DELETE Rs_CorMain WHERE SortId = '" & CzxsGrid.TextMatrix(CzxsGrid.Row, 0) & "'"
  817.     '以上为自定义部分<<]
  818.   
  819.     Cw_DataEnvi.DataConnect.CommitTrans
  820.     CzxsGrid.RemoveItem CzxsGrid.Row
  821.     Exit Sub
  822.   
  823. Cwcl:
  824.     Cw_DataEnvi.DataConnect.RollbackTrans
  825.     
  826.     If Err.Number = -2147217873 Then                '(-2147217873 为SQL Server 2000通过建立外键产生的错误号)
  827.         Tsxx = "该编码已经被使用,不能删除!"
  828.         Call Xtxxts(Tsxx, 0, 1)
  829.         Exit Sub
  830.     Else
  831.         Tsxx = "出现未知情况,该编码不能被删除!"
  832.         Call Xtxxts(Tsxx, 0, 1)
  833.         Exit Sub
  834.     End If
  835.     
  836. End Sub
  837. '*******************以下区域为编写自定义过程区域**********************
  838. '*******************以上区域为编写自定义过程区域**********************
  839. '******************以下为基本处理程序(固定不变)************************'
  840. Private Sub Form_KeyUp(KeyCode As Integer, Shift As Integer)        '支持热键操作
  841.     If Shift = 2 Then
  842.         Select Case UCase(Chr(KeyCode))
  843.             Case "P"                                                                          'Ctrl+P 打印
  844.                 If SzToolbar.Buttons("dy").Visible And SzToolbar.Buttons("dy").Enabled Then
  845.                     Call bbyl(False)
  846.                 End If
  847.             Case "A"                                                                          'Ctrl+A 增加
  848.                 '判断用户是否有此功能执行权限,如有则写上机日志(进入)
  849.                 If Not Security_Log(Str_RightEdit, Xtczybm, 1, True) Then
  850.                     Exit Sub
  851.                 End If
  852.                 If SzToolbar.Buttons("zj").Visible And SzToolbar.Buttons("zj").Enabled Then
  853.                     Call Toolbjzt
  854.                     Lrzt = 1
  855.                     Call Cshlrxx(Lrzt)
  856.                     LrText(0).SetFocus
  857.                     LrText(0).Enabled = True
  858.                 End If
  859.             Case "D"                                                                          'Ctrl+D 删除
  860.                 If SzToolbar.Buttons("sc").Visible And SzToolbar.Buttons("sc").Enabled Then
  861.                     Call Scdqjl
  862.                 End If
  863.         End Select
  864.     End If
  865.     
  866. End Sub
  867. Private Sub SzToolbar_ButtonClick(ByVal Button As MSComctlLib.Button)
  868.    
  869.     Select Case Button.Key
  870.         Case "ymsz"                                          '页面设置
  871.             Dyymctbl.Show 1
  872.         Case "yl"                                            '预 览
  873.             Call bbyl(True)
  874.         Case "dy"                                            '打 印
  875.             Call bbyl(False)
  876.         Case "zj"                                            '增 加
  877.             '判断用户是否有此功能执行权限,如有则写上机日志(进入)
  878.             If Not Security_Log(Str_RightEdit, Xtczybm, 1, True) Then
  879.                 Exit Sub
  880.             End If
  881.             Call Toolbjzt
  882.             Lrzt = 1
  883.             Call Cshlrxx(Lrzt)
  884.             LrText(0).Enabled = True
  885.             LrText(0).SetFocus
  886.         Case "xg"                                            '修 改
  887.             Call Xgdqjl
  888.         Case "sc"                                            '删 除
  889.             Call Scdqjl
  890. '        Case "sx"                                            '刷 新
  891. '            Call Cxnrtcwg
  892.         Case "bz"                                            '帮 助
  893.             Call F1bz
  894.         Case "fh"                                            '退 出
  895.             Unload Me
  896.         End Select
  897.         
  898. End Sub
  899. Private Sub CzxsGrid_DblClick()                            '修改当前编码记录
  900.     Call Xgdqjl
  901.   
  902. End Sub
  903. Private Sub Xgdqjl()                                       '修改当前编码记录
  904.     '判断用户是否有此功能执行权限,如有则写上机日志(进入)
  905.     If Not Security_Log(Str_RightEdit, Xtczybm, 1, True, False) Then
  906.         BcCommand.Enabled = False
  907.     End If
  908.     If CzxsGrid.Row < CzxsGrid.FixedRows Then
  909.         Exit Sub
  910.     End If
  911.     
  912.     If CzxsGrid.TextMatrix(CzxsGrid.Row, Sydz("003", GridStr(), Szzls)) = True Then
  913.         Call Xtxxts("固定项不能修改!", 0, 3)
  914.         Exit Sub
  915.     End If
  916.     Call Toolbjzt
  917.     Lrzt = 2
  918.     
  919.     If Cshlrxx(Lrzt) And LrText(0).Enabled Then
  920.         LrText(0).SetFocus
  921.     End If
  922.   
  923. End Sub
  924. Private Sub Toolbjzt()                                     'Toolbar状态(编辑状态)
  925.     '判断用户是否有此功能执行权限,如有则写上机日志(进入)
  926.     If Not Security_Log(Str_RightEdit, Xtczybm, 1, True, False) Then
  927.         BcCommand.Enabled = False
  928.     End If
  929.     StTab.TabEnabled(1) = True
  930.     StTab.Tab = 1
  931.     Frame1.Enabled = True
  932.     StTab.TabEnabled(0) = False
  933.     CzxsGrid.Enabled = False
  934.   
  935.     With SzToolbar
  936.         .Buttons("ymsz").Enabled = False
  937.         .Buttons("dy").Enabled = False
  938.         .Buttons("yl").Enabled = False
  939.         .Buttons("zj").Enabled = False
  940.         .Buttons("xg").Enabled = False
  941.         .Buttons("sc").Enabled = False
  942.         .Buttons("sx").Enabled = False
  943.     End With
  944.   
  945. End Sub
  946. Private Sub Toolfbjzt()                                    'Toolbar状态(非编辑状态)
  947.     StTab.TabEnabled(0) = True
  948.     StTab.Tab = 0
  949.     CzxsGrid.Enabled = True
  950.     Frame1.Enabled = False
  951.     StTab.TabEnabled(1) = False
  952.     Lrzt = 0
  953.     
  954.     With SzToolbar
  955.         .Buttons("ymsz").Enabled = True
  956.         .Buttons("dy").Enabled = True
  957.         .Buttons("yl").Enabled = True
  958.         .Buttons("zj").Enabled = True
  959.         .Buttons("xg").Enabled = True
  960.         .Buttons("sc").Enabled = True
  961.         .Buttons("sx").Enabled = True
  962.     End With
  963.   
  964. End Sub
  965. Private Sub BcCommand_Click()                                           '保 存
  966.     If Not Bclrsj Then
  967.         Exit Sub
  968.     End If
  969.   
  970.     If Lrzt = 2 Then
  971.         Call Toolfbjzt
  972.     End If
  973.   
  974. End Sub
  975. Private Sub QxCommand_MouseDown(Button As Integer, Shift As Integer, x As Single, y As Single)       '取消
  976.   
  977.     '避免执行Click程序
  978.     Bln_Cancel = True
  979.   
  980.     Call Cancel
  981.     
  982. End Sub
  983. Private Sub QxCommand_Click()                                                                         '取消
  984.  
  985.     If Bln_Cancel Then
  986.         Bln_Cancel = False
  987.         Exit Sub
  988.     End If
  989.  
  990.     Call Cancel
  991.     
  992. End Sub
  993. Private Sub Cancel()                                                                                  '取消
  994.   
  995.     '文本框加锁
  996.     For jsqte = 0 To Max_Text_Index
  997.         TextValiJudgeLock(jsqte) = True
  998.     Next jsqte
  999.   
  1000.     Call Toolfbjzt
  1001.     
  1002. End Sub
  1003. Private Sub CzxsGrid_BeforeMoveColumn(ByVal Col As Long, Position As Long)           '网格列发生移动时自动交换网格索引信息
  1004.     
  1005.     FnBln_RefreshArray Col, Position, GridStr(), GridInf()
  1006. End Sub
  1007. Private Sub GsToolbar_ButtonClick(ByVal Button As MSComctlLib.Button)   '表格格式设置(通用)
  1008.     
  1009.     Select Case Button.Key
  1010.         Case "bcgs"                                       '保存表格格式
  1011.             Call Bcwggs(CzxsGrid, GridCode, GridStr())
  1012.         Case "hfmrgs"                                     '恢复默认格式
  1013.             Call Hfmrgs(CzxsGrid, GridCode, GridStr())
  1014.         Case "szxsxm"                                     '设置显示项目
  1015.             Call Szxsxm(CzxsGrid, GridCode)
  1016.     End Select
  1017.     
  1018. End Sub
  1019. Private Sub bbyl(bbylte As Boolean)                    '报表打印预览
  1020.     Dim Bbzbt$, Bbxbt() As String, bbxbtzzxs() As Integer, Bbxbtgs As Integer
  1021.     Dim Bbbwh() As String, Bbbwhzzxs() As Integer, Bbbwhgs As Integer
  1022.     Bbxbtgs = 1                                          '报 表 小 标 题 行 数
  1023.     Bbbwhgs = 0                                          '报 表 表 尾 行 数
  1024.     ReDim Bbxbt(1 To Bbxbtgs)
  1025.     ReDim bbxbtzzxs(1 To Bbxbtgs)
  1026.     
  1027.     If Bbbwhgs <> 0 Then
  1028.         ReDim Bbbwh(1 To Bbbwhgs)
  1029.         ReDim Bbbwhzzxs(1 To Bbbwhgs)
  1030.     End If
  1031.     
  1032.     Bbzbt = ReportTitle
  1033.     Bbxbt(1) = " "
  1034.     bbxbtzzxs(1) = 0                                     '报表行组织形式(0-居左 1-居中 2-居右)
  1035.     
  1036.     Call Scyxsjb(CzxsGrid)                               '生成报表数据
  1037.     Call Scdybb(Dyymctbl, Bbzbt, Bbxbt(), bbxbtzzxs(), Bbxbtgs, Bbbwh(), Bbbwhzzxs(), Bbbwhgs, bbylte)
  1038.   
  1039.     If Not bbylte Then
  1040.         Unload DY_Tybbyldy
  1041.     End If
  1042.     
  1043. End Sub
  1044. '************以下为文本框录入处理程序(固定不变部分)*************'
  1045. Private Sub Wbklrwbcl(Index As Integer)    '文本框录入事后处理程序
  1046.     '以下为依据实际情况自定义部分[
  1047.   
  1048.         '在此填写文本框录入事后处理程序
  1049.    
  1050.     ']以上为依据实际情况自定义部分
  1051.     
  1052. End Sub
  1053. Private Sub LrText_Change(Index As Integer)
  1054.     '屏蔽程序改变控制
  1055.     If TextChangeLock Then
  1056.         Exit Sub
  1057.     End If
  1058.     
  1059.     TextValiJudgeLock(Index) = False    '打开有效性判断锁
  1060.     
  1061.     '限制字段录入长度
  1062.           
  1063.     TextChangeLock = True  '加锁(防止执行Lrtext_Change)
  1064.      
  1065.     Select Case Textint(Index, 1)
  1066.         Case 8, 11      '金额型
  1067.             Call Sjgskz(LrText(Index), Xtjezws - Xtjexsws - 1, Xtjexsws)
  1068.         Case 9, 12      '数量型
  1069.             Call Sjgskz(LrText(Index), Xtslzws - Xtslxsws - 1, Xtslxsws)
  1070.         Case 10          '单价型
  1071.             Call Sjgskz(LrText(Index), Xtdjzws - Xtdjxsws - 1, Xtdjxsws)
  1072.         Case Else        '其他小数类型控制
  1073.             If Textint(Index, 6) <> 0 Or Textint(Index, 7) <> 0 Then
  1074.                 Call Sjgskz(LrText(Index), Textint(Index, 6), Textint(Index, 7))
  1075.             End If
  1076.     End Select
  1077.         
  1078.     TextChangeLock = False '解锁
  1079.     
  1080. End Sub
  1081. Private Sub LrText_GotFocus(Index As Integer)                                                 '文本框得到焦点,显示相应信息
  1082.    
  1083.     Call TextShow(Index)
  1084.     CurTextIndex = Index
  1085.     LrText(Index).SelStart = Len(LrText(Index))
  1086.    
  1087. End Sub
  1088. Private Sub LrText_KeyDown(Index As Integer, KeyCode As Integer, Shift As Integer)            '字段按F2键提供帮助
  1089.    
  1090.     Select Case KeyCode
  1091.          Case vbKeyF2
  1092.              Call Text_Help(Index)
  1093.     End Select
  1094.    
  1095. End Sub
  1096. Private Sub LrText_KeyPress(Index As Integer, KeyAscii As Integer)                            '文本框录入事中控制
  1097.    
  1098.     Call InputFieldLimit(LrText(Index), Textint(Index, 1), KeyAscii)
  1099. End Sub
  1100. Private Sub LrText_LostFocus(Index As Integer)                                                '文本框失去焦点
  1101.     '显示相应信息但不能进行有效性判断
  1102.   
  1103. End Sub
  1104. Private Sub Ydcommand1_MouseDown(Index As Integer, Button As Integer, Shift As Integer, x As Single, y As Single)     '按钮提供帮助
  1105.     
  1106.     Call Text_Help(Index)
  1107.     
  1108. End Sub
  1109. Private Sub Text_Help(Index As Integer)                                                       '录入字段帮助
  1110.   
  1111.     If Not Textboolean(Index, 1) Then
  1112.         Exit Sub
  1113.     End If
  1114.    
  1115.     '调用帮助
  1116.     Call Drbmhelp(Textint(Index, 2), Textstr(Index, 4), Trim(LrText(Index).Text))
  1117.   
  1118.     '根据设置选择显示编码和名称,并进行存储
  1119.     If Len(Xtfhcs) <> 0 Then
  1120.         If Textint(Index, 3) = 1 Then
  1121.             LrText(Index).Text = Xtfhcsfz
  1122.             LrText(Index).Tag = Xtfhcs
  1123.         Else
  1124.             LrText(Index).Text = Xtfhcs
  1125.             LrText(Index).Tag = Xtfhcsfz
  1126.         End If
  1127.     End If
  1128.    
  1129.     LrText(Index).SetFocus
  1130.     
  1131. End Sub
  1132. Private Sub TextShow(Index As Integer)        '文本框得到焦点,显示相应信息
  1133.     '填写文本框得到焦点,进行相应信息处理程序
  1134.    
  1135. End Sub
  1136. Private Sub Wbkcsh()                          '录入文本框初始化
  1137.     Dim jsqte As Integer
  1138.   
  1139.     '最大录入文本框索引值
  1140.     Max_Text_Index = Textvar(1)
  1141.   
  1142.     ReDim TextValiJudgeLock(Max_Text_Index)
  1143.     
  1144.     For jsqte = 0 To Max_Text_Index
  1145.      
  1146.         If Len(Trim(Textstr(jsqte, 1))) <> 0 Then
  1147.             If Textboolean(jsqte, 1) Then
  1148.                 If jsqte <> 0 And Not Textboolean(jsqte, 3) Then
  1149.                     Load Ydcommand1(jsqte)
  1150.                 End If
  1151.                 Ydcommand1(jsqte).Visible = True
  1152.                 Ydcommand1(jsqte).Move LrText(jsqte).Left + LrText(jsqte).Width, LrText(jsqte).Top
  1153.             End If
  1154.             TextChangeLock = True
  1155.             LrText(jsqte).Text = ""
  1156.             LrText(jsqte).Tag = ""
  1157.             
  1158.             If Textint(jsqte, 5) <> 0 Then
  1159.                 LrText(jsqte).MaxLength = Textint(jsqte, 5)
  1160.             End If
  1161.             
  1162.             TextChangeLock = False
  1163.         End If
  1164.         
  1165.         TextValiJudgeLock(jsqte) = True
  1166.     Next jsqte
  1167.     
  1168. End Sub
  1169. Private Function TextYxxpd(Index As Integer) As Boolean           '文本框有效性判断
  1170.     Dim Sqlstr As String
  1171.     Dim Findrec As ADODB.Recordset
  1172.   
  1173.     '文本框内容未曾改变不进行有效性判断
  1174.     If TextValiJudgeLock(Index) Then
  1175.         TextYxxpd = True
  1176.         Exit Function
  1177.     End If
  1178.   
  1179.     '文本框内容为空认为有效,并清空其Tag值
  1180.     If Trim(LrText(Index)) = "" Then
  1181.         LrText(Index).Tag = ""
  1182.         Call Wbklrwbcl(Index)
  1183.         TextValiJudgeLock(Index) = True
  1184.         TextYxxpd = True
  1185.         Exit Function
  1186.     End If
  1187.   
  1188.     '可在此加入不做有效性判断的理由
  1189.   
  1190.     Select Case Textint(Index, 4)
  1191.         Case 1      '编码型
  1192.             Sqlstr = Trim(Textstr(Index, 5))
  1193.             Sqlstr = Replace(Sqlstr, "@", "'" + Trim(LrText(Index).Text) + "'")
  1194.             Set Findrec = Cw_DataEnvi.DataConnect.Execute(Sqlstr)
  1195.          
  1196.             If Findrec.EOF Then
  1197.                 Call Xtxxts(Trim(Textstr(Index, 6)), 0, 1)
  1198.                 LrText(Index).SetFocus
  1199.                 Exit Function
  1200.             Else
  1201.                 Select Case Textint(Index, 3)
  1202.                     Case 0
  1203.                         If Len(Trim(Textstr(Index, 2))) <> 0 Then
  1204.                             LrText(Index).Text = Trim(Findrec.Fields(Trim(Textstr(Index, 2))))
  1205.                         End If
  1206.                         If Len(Trim(Textstr(Index, 3) & "")) <> 0 Then
  1207.                             LrText(Index).Tag = Trim(Findrec.Fields(Trim(Textstr(Index, 3))))
  1208.                         End If
  1209.                     Case 1
  1210.                         If Len(Trim(Textstr(Index, 3) & "")) <> 0 Then
  1211.                             LrText(Index).Text = Trim(Findrec.Fields(Trim(Textstr(Index, 3))))
  1212.                         End If
  1213.                         If Len(Trim(Textstr(Index, 2))) <> 0 Then
  1214.                             LrText(Index).Tag = Trim(Findrec.Fields(Trim(Textstr(Index, 2))))
  1215.                         End If
  1216.                 End Select
  1217.             End If
  1218.             
  1219.         Case 2      '日期型
  1220.             If IsDate(LrText(Index).Text) Then
  1221.                 LrText(Index).Text = Format(LrText(Index).Text, "yyyy-mm-dd")
  1222.                 If Val(Mid(LrText(Index), 1, 4)) < 1900 Then
  1223.                     LrText(Index).Text = "1900" + Mid(LrText(Index), 5, 6)
  1224.                 End If
  1225.             Else
  1226.                 Tsxx = "非法公历日期!(格式:" + Format(Date, "yyyy-mm-dd") + ")"
  1227.                 Call Xtxxts(Tsxx, 0, 1)
  1228.                 LrText(Index).SetFocus
  1229.                 Exit Function
  1230.             End If
  1231.             
  1232.         Case 3      '其他类型
  1233.         
  1234.     End Select
  1235.     
  1236.     '如果有效则加锁,用户不改变内容则不再进行有效性判断
  1237.     TextValiJudgeLock(Index) = True
  1238.     '调用文本框事后处理程序
  1239.     Call Wbklrwbcl(Index)
  1240.    
  1241.     '有效性判断通过则返回True
  1242.     TextYxxpd = True
  1243.    
  1244. End Function