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