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

企业管理

开发平台:

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