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

企业管理

开发平台:

Visual Basic

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