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

企业管理

开发平台:

Visual Basic

  1. VERSION 5.00
  2. Object = "{BEEECC20-4D5F-4F8B-BFDC-5D9B6FBDE09D}#1.0#0"; "vsflex8.ocx"
  3. Begin VB.Form PZ_FrmKjkmcz 
  4.    BorderStyle     =   3  'Fixed Dialog
  5.    Caption         =   "会计科目编码参照表"
  6.    ClientHeight    =   6015
  7.    ClientLeft      =   2130
  8.    ClientTop       =   2235
  9.    ClientWidth     =   6450
  10.    Icon            =   "会计科目编码参照(仅限凭证录入).frx":0000
  11.    LinkTopic       =   "Form1"
  12.    MaxButton       =   0   'False
  13.    MinButton       =   0   'False
  14.    ScaleHeight     =   6015
  15.    ScaleWidth      =   6450
  16.    ShowInTaskbar   =   0   'False
  17.    Begin VSFlex8Ctl.VSFlexGrid CzxsGrid 
  18.       Height          =   4965
  19.       Left            =   75
  20.       TabIndex        =   7
  21.       Top             =   525
  22.       Width           =   6240
  23.       _cx             =   11007
  24.       _cy             =   8758
  25.       Appearance      =   1
  26.       BorderStyle     =   1
  27.       Enabled         =   -1  'True
  28.       BeginProperty Font {0BE35203-8F91-11CE-9DE3-00AA004BB851} 
  29.          Name            =   "宋体"
  30.          Size            =   9
  31.          Charset         =   134
  32.          Weight          =   400
  33.          Underline       =   0   'False
  34.          Italic          =   0   'False
  35.          Strikethrough   =   0   'False
  36.       EndProperty
  37.       MousePointer    =   0
  38.       BackColor       =   -2147483643
  39.       ForeColor       =   -2147483640
  40.       BackColorFixed  =   -2147483633
  41.       ForeColorFixed  =   -2147483630
  42.       BackColorSel    =   -2147483635
  43.       ForeColorSel    =   -2147483634
  44.       BackColorBkg    =   -2147483636
  45.       BackColorAlternate=   -2147483643
  46.       GridColor       =   -2147483633
  47.       GridColorFixed  =   -2147483632
  48.       TreeColor       =   -2147483632
  49.       FloodColor      =   192
  50.       SheetBorder     =   -2147483642
  51.       FocusRect       =   1
  52.       HighLight       =   1
  53.       AllowSelection  =   -1  'True
  54.       AllowBigSelection=   -1  'True
  55.       AllowUserResizing=   0
  56.       SelectionMode   =   0
  57.       GridLines       =   1
  58.       GridLinesFixed  =   2
  59.       GridLineWidth   =   1
  60.       Rows            =   50
  61.       Cols            =   10
  62.       FixedRows       =   1
  63.       FixedCols       =   1
  64.       RowHeightMin    =   0
  65.       RowHeightMax    =   0
  66.       ColWidthMin     =   0
  67.       ColWidthMax     =   0
  68.       ExtendLastCol   =   0   'False
  69.       FormatString    =   ""
  70.       ScrollTrack     =   0   'False
  71.       ScrollBars      =   3
  72.       ScrollTips      =   0   'False
  73.       MergeCells      =   0
  74.       MergeCompare    =   0
  75.       AutoResize      =   -1  'True
  76.       AutoSizeMode    =   0
  77.       AutoSearch      =   0
  78.       AutoSearchDelay =   2
  79.       MultiTotals     =   -1  'True
  80.       SubtotalPosition=   1
  81.       OutlineBar      =   0
  82.       OutlineCol      =   0
  83.       Ellipsis        =   0
  84.       ExplorerBar     =   0
  85.       PicturesOver    =   0   'False
  86.       FillStyle       =   0
  87.       RightToLeft     =   0   'False
  88.       PictureType     =   0
  89.       TabBehavior     =   0
  90.       OwnerDraw       =   0
  91.       Editable        =   0
  92.       ShowComboButton =   1
  93.       WordWrap        =   0   'False
  94.       TextStyle       =   0
  95.       TextStyleFixed  =   0
  96.       OleDragMode     =   0
  97.       OleDropMode     =   0
  98.       DataMode        =   0
  99.       VirtualData     =   -1  'True
  100.       DataMember      =   ""
  101.       ComboSearch     =   3
  102.       AutoSizeMouse   =   -1  'True
  103.       FrozenRows      =   0
  104.       FrozenCols      =   0
  105.       AllowUserFreezing=   0
  106.       BackColorFrozen =   0
  107.       ForeColorFrozen =   0
  108.       WallPaperAlignment=   9
  109.       AccessibleName  =   ""
  110.       AccessibleDescription=   ""
  111.       AccessibleValue =   ""
  112.       AccessibleRole  =   24
  113.    End
  114.    Begin VB.CheckBox UnloadCheck 
  115.       Caption         =   "卸载窗体"
  116.       Height          =   615
  117.       Left            =   6930
  118.       TabIndex        =   6
  119.       Top             =   2550
  120.       Width           =   825
  121.    End
  122.    Begin VB.CommandButton Gridsz 
  123.       Caption         =   "恢复默认格式(&U)"
  124.       Height          =   300
  125.       Index           =   1
  126.       Left            =   1920
  127.       TabIndex        =   5
  128.       Top             =   5580
  129.       Width           =   1515
  130.    End
  131.    Begin VB.CommandButton Gridsz 
  132.       Caption         =   "保存表格格式(&S)"
  133.       Height          =   300
  134.       Index           =   0
  135.       Left            =   390
  136.       TabIndex        =   4
  137.       Top             =   5580
  138.       Width           =   1515
  139.    End
  140.    Begin VB.TextBox CodeText 
  141.       Height          =   300
  142.       Left            =   1110
  143.       TabIndex        =   0
  144.       Top             =   150
  145.       Width           =   5205
  146.    End
  147.    Begin VB.CommandButton QxCommand 
  148.       Cancel          =   -1  'True
  149.       Caption         =   "取消(&C)"
  150.       Height          =   300
  151.       Left            =   4860
  152.       TabIndex        =   2
  153.       Top             =   5580
  154.       Width           =   1120
  155.    End
  156.    Begin VB.CommandButton QdCommand 
  157.       Caption         =   "确定(&O)"
  158.       Default         =   -1  'True
  159.       Height          =   300
  160.       Left            =   3690
  161.       TabIndex        =   1
  162.       Top             =   5580
  163.       Width           =   1120
  164.    End
  165.    Begin VB.Label Label1 
  166.       AutoSize        =   -1  'True
  167.       BackColor       =   &H00C0C0C0&
  168.       BackStyle       =   0  'Transparent
  169.       Caption         =   "编码或名称:"
  170.       Height          =   180
  171.       Index           =   0
  172.       Left            =   90
  173.       TabIndex        =   3
  174.       Top             =   210
  175.       Width           =   990
  176.    End
  177. End
  178. Attribute VB_Name = "PZ_FrmKjkmcz"
  179. Attribute VB_GlobalNameSpace = False
  180. Attribute VB_Creatable = False
  181. Attribute VB_PredeclaredId = True
  182. Attribute VB_Exposed = False
  183. '**************************************************************************
  184. '*    模 块 名 称 :会计科目编码参照(仅限于凭证录入使用,为加快调入速度)
  185. '*    功 能 描 述 :
  186. '*    程序员姓名  : 张建忠
  187. '*    最后修改人  : 张建忠
  188. '*    最后修改时间:2000/09/11
  189. '*    备        注:
  190. '*    使用说明: Xtcdcs 用来传递用户输入内容; xtbmczdm 用来传递所选编码参照
  191. '                xtfhcs 用来返回用户所选编码; xtfhcsfz 用来返回用户所选名称
  192. '**************************************************************************
  193. Dim Cznr As String                       '网格首次进入查找内容
  194.  '以下为固定使用变量
  195. Dim Cxnrrec As New ADODB.Recordset       '显示查询内容动态集
  196. Dim GridCode As String                   '显示网格网格代码
  197. Dim GridInf() As Variant                 '整个网格设置信息
  198. Dim Tsxx As String                       '系统提示信息
  199. Dim Qslz As Long                         '网格隐藏(非操作显示)列数
  200. Dim Sjhgd As Double                      '网格数据行高度
  201. Dim GridBoolean() As Boolean             '网格列信息(布尔型)
  202. Dim GridStr()  As String                 '网格列信息(字符型)
  203. Dim GridInt() As Integer                 '网格列信息(整型)
  204. Dim Szzls As Integer                     '数组总列数(网格列数-1)
  205. Private Sub CodeText_Change()            '用户可模糊定位编码或名称信息
  206.     Dim DwRow As Long
  207.     Dim Lng_BmCol As Long
  208.     Dim Lng_McCol As Long
  209.     
  210.     On Error Resume Next
  211.     Lng_BmCol = Sydz("001", GridStr(), Szzls)
  212.     Lng_McCol = Sydz("002", GridStr(), Szzls)
  213.     Cznr = Trim(CodeText.Text)
  214.     With CzxsGrid
  215.         For DwRow = .FixedRows To .Rows - 1
  216.             If Mid(.TextMatrix(DwRow, Lng_BmCol), 1, Len(Cznr)) = Cznr Then
  217.                 .Row = DwRow
  218.                 .Col = Lng_BmCol
  219.                 CzxsGrid.SetFocus
  220.                 SendKeys "{LEFT}", True
  221.                 CodeText.SetFocus
  222.                 .TopRow = DwRow
  223.                 Exit Sub
  224.             End If
  225.         Next DwRow
  226.         For DwRow = .FixedRows To .Rows - 1
  227.             If Mid(.TextMatrix(DwRow, Lng_McCol), 1, Len(Cznr)) = Cznr Then
  228.                 .Row = DwRow
  229.                 .Col = Lng_BmCol
  230.                 CzxsGrid.SetFocus
  231.                 SendKeys "{LEFT}", True
  232.                 CodeText.SetFocus
  233.                 .TopRow = DwRow
  234.                 Exit Sub
  235.             End If
  236.         Next DwRow
  237.     End With
  238. End Sub
  239. Private Sub CzxsGrid_GotFocus()
  240.     SendKeys "{LEFT}", True
  241. End Sub
  242. Private Sub Form_Activate()
  243.     CodeText.Text = Trim(Xtcdcs)
  244.     CzxsGrid.SetFocus
  245. End Sub
  246. Private Sub Form_Load()                             '调 入 窗 体
  247.     
  248.     '调 入 网 格
  249.     GridCode = "Cwzz_AccCode"
  250.     
  251.     Call Sub_ShowGrid(CzxsGrid, GridCode, GridInf(), GridBoolean(), GridInt(), GridStr())
  252.     
  253.     Qslz = GridInf(1)
  254.     Sjhgd = GridInf(2)
  255.     Szzls = CzxsGrid.Cols - 1
  256.     
  257.     '填 充 网 格
  258.     Call Cxnrtcwg
  259.     
  260. End Sub
  261. Private Sub Cxnrtcwg()                               '查 询 内 容 填 充 网 格
  262.     Dim Sqlstr As String
  263.     Dim Jsqte As Long
  264.     
  265.     '查询连接串
  266.     Sqlstr = "Select Ccode,Cname,StopFlag From Cwzz_AccCode order by CCode"
  267.     Set Cxnrrec = Cw_DataEnvi.DataConnect.Execute(Sqlstr)
  268.     With Cxnrrec
  269.         CzxsGrid.Rows = .RecordCount + CzxsGrid.FixedRows
  270.         If .EOF And .BOF Then
  271.             Exit Sub
  272.         End If
  273.         Jsqte = CzxsGrid.FixedRows
  274.         Do While Not .EOF
  275.             If Jsqte >= CzxsGrid.Rows Then
  276.                 CzxsGrid.AddItem ""
  277.             End If
  278.             
  279.             Call Jltcwg(Cxnrrec, Jsqte)
  280.             
  281.             CzxsGrid.RowHeight(Jsqte) = Sjhgd
  282.             .MoveNext
  283.             Jsqte = Jsqte + 1
  284.         Loop
  285.     End With
  286. End Sub
  287. Private Sub Jltcwg(Jlbrec As ADODB.Recordset, Rowjsq As Long)                                     '记录内容填充网格
  288.     Dim Str_Fzhs As String      '辅助核算
  289.     
  290.     '[以下为自定义部分
  291.     With Jlbrec
  292.         CzxsGrid.TextMatrix(Rowjsq, Sydz("001", GridStr(), Szzls)) = Trim(.Fields("Ccode"))
  293.         CzxsGrid.TextMatrix(Rowjsq, Sydz("002", GridStr(), Szzls)) = Trim(.Fields("Cname") & "")
  294.         If .Fields("StopFlag") Then
  295.             CzxsGrid.TextMatrix(Rowjsq, Sydz("003", GridStr(), Szzls)) = "√"
  296.         End If
  297.     End With
  298.     '以上为自定义部分]
  299. End Sub
  300. Private Sub CzxsGrid_DblClick()                        '用户双击网格返回当前选中编码
  301.     Call Fhxzbm
  302. End Sub
  303. Private Sub Form_QueryUnload(Cancel As Integer, UnloadMode As Integer)                              '判断是否卸载窗体
  304.     If UnloadCheck.Value = 1 Then
  305.         Unload Me
  306.     Else
  307.         Cancel = 1
  308.         Me.Hide
  309.     End If
  310. End Sub
  311. Private Sub Form_Unload(Cancel As Integer)             '退出
  312.     Set Cxnrrec = Nothing
  313. End Sub
  314. Private Sub Gridsz_Click(Index As Integer)
  315.     
  316.     Select Case Index
  317.     Case 0                                   '保存表格格式
  318.         Call Bcwggs1(CzxsGrid, GridCode)
  319.     Case 1                                   '恢复默认格式
  320.         Call Hfmrgs1(CzxsGrid, GridCode)
  321.     End Select
  322.     
  323. End Sub
  324. Private Sub QdCommand_Click()                          '确 定
  325.     Call Fhxzbm
  326. End Sub
  327. Private Sub QxCommand_Click()                          '取 消
  328.     Xtfhcs = ""
  329.     Xtfhcsfz = ""
  330.     Me.Hide
  331. End Sub
  332. Private Sub Fhxzbm()                                   '返回用户选中编码并退出
  333.     With CzxsGrid
  334.         If .Row >= .FixedRows Then
  335.             Xtfhcs = Trim(.TextMatrix(.Row, Sydz("001", GridStr(), Szzls)))
  336.             Xtfhcsfz = Trim(.TextMatrix(.Row, Sydz("002", GridStr(), Szzls)))
  337.         Else
  338.             Xtfhcs = ""
  339.             Xtfhcsfz = ""
  340.         End If
  341.     End With
  342.     Me.Hide
  343. End Sub
  344. Private Sub Sub_ShowGrid(Xsgrid, Wgdmte As String, GridInf() As Variant, GridBoolean() As Boolean, GridInt() As Integer, GridStr() As String)           '标准网格初始化模块
  345.     
  346.     '过程参数为:生成网格对象名称(微软),网格参数编码,返回网格设置信息(返回整体信息)
  347.     '网格列属性(返回布尔型信息),网格列属性(返回整型信息),网格列属性(返回字符型信息)
  348.     
  349.     Dim wglbt() As String                      '网格显示列标题
  350.     Dim Wgxsls As Long                         '网格显示(主操作)列数
  351.     Dim gdls As Long                           '网格固定列数
  352.     Dim Gdhs As Long                           '网格固定行数(标题行数)
  353.     Dim Gdhgd As Double                        '网格固定行高度
  354.     Dim wglkd() As Double                      '每列默认字符个数
  355.     Dim wglzz() As Integer                     '网格列组织形式
  356.     Dim zdxsgs() As String                     '数值字段显示格式
  357.     Dim Sfhide() As Boolean                    '网格列是否隐藏
  358.     Dim Sfhxz As Boolean                       '网格列是否行选中
  359.     Dim Qslz As Long                           '网格隐藏(非操作显示)列数
  360.     Dim Sjhgd As Double                        '网格数据行高度
  361.     Dim Wglsfkydpx As Integer                  '网格列是否可移动及排序
  362.     Dim wgxsrec As New ADODB.Recordset         '网格显示动态集
  363.     
  364.     ReDim GridInf(1 To 7)                       '整个网格设置信息
  365.     Set wgxsrec = Cw_DataEnvi.DataConnect.Execute("SELECT * FROM xt_grid WHERE Grid_Code ='" + Wgdmte + "' ORDER BY ColId")
  366.     With wgxsrec
  367.         If .EOF And .BOF Then
  368.             Exit Sub
  369.         Else
  370.             .MoveFirst
  371.         End If
  372.         
  373.         Qslz = .Fields("BeginCol")                '网格隐藏(非操作显示)列数
  374.         Sjhgd = .Fields("DataRowHeight")          '网格数据行高度
  375.         
  376.         GridInf(1) = Qslz                         '起始列值
  377.         GridInf(2) = Sjhgd                        '数据行高度
  378.         GridInf(3) = .Fields("KeepDataRows")      '屏幕保持数据行数
  379.         GridInf(4) = .Fields("AssistantRows")     '辅助项网格行数(例如:合计行)
  380.         If .Fields("SaveHelpWidth_Flag") Then     '是否保留帮助宽度(字段提供帮助时,是否为按钮保留空间)
  381.             GridInf(5) = True
  382.         Else
  383.             GridInf(5) = False
  384.         End If
  385.         If .Fields("DeleteRowAsk_Flag") Then      '删除有效记录行是否提示
  386.             GridInf(6) = True
  387.         Else
  388.             GridInf(6) = False
  389.         End If
  390.         If .Fields("ShowSumGrid_Flag") Then       '是否显示合计网格
  391.             GridInf(7) = True
  392.         Else
  393.             GridInf(7) = False
  394.         End If
  395.         
  396.         Wgxsls = .RecordCount - 1                 '网格显示(主操作)列数(原.Fields("wgxsls"))
  397.         gdls = .Fields("FixCols")                 '网格固定列数
  398.         Gdhs = .Fields("FixRows")                 '网格固定行数(标题行数)
  399.         Gdhgd = .Fields("FixRowHeight")           '网格固定行高度
  400.         Wglsfkydpx = .Fields("explorerbar")       '网格列是否可移动及排序
  401.         
  402.         If .Fields("SelectRow_Flag") Then         '是否行选中
  403.             Sfhxz = True
  404.         End If
  405.         
  406.         ReDim wglbt(Gdhs - 1, Wgxsls + Qslz - 1)  '网格显示列标题
  407.         ReDim wglkd(Qslz + Wgxsls - 1)            '每列默认字符个数
  408.         ReDim zdxsgs(Qslz + Wgxsls - 1)           '数值字段标志
  409.         ReDim wglzz(Qslz + Wgxsls - 1)            '网格列组织形式
  410.         ReDim Sfhide(Qslz + Wgxsls - 1)           '网格列是否显示
  411.         ReDim GridBoolean(Qslz + Wgxsls - 1, 1 To 6)   '网格列属性(布尔型)
  412.         ReDim GridStr(Qslz + Wgxsls - 1, 1 To 20)      '网格列信息(字符型)
  413.         ReDim GridInt(Qslz + Wgxsls - 1, 1 To 7)       '网格列信息(整型)
  414.         
  415.         .MoveNext
  416.         Jsqte = 0
  417.         Do While Not .EOF
  418.             
  419.             wglkd(Qslz + Jsqte) = .Fields("ColWidth")                  '网格列宽度限制
  420.             If Not IsNull(.Fields("ColTitle1")) Then
  421.                 wglbt(0, Qslz + Jsqte) = Trim(.Fields("ColTitle1"))      '网格列标题1
  422.             End If
  423.             If Not IsNull(.Fields("ColTitle2")) And Gdhs = 2 Then      '网格列标题2
  424.                 wglbt(1, Qslz + Jsqte) = Trim(.Fields("ColTitle2"))
  425.             End If
  426.             
  427.             If .Fields("ColFormat") Then                               '字段显示格式(千分符)
  428.                 If .Fields("Text_Int_Length") <> 0 Then
  429.                     zdxsgs(Qslz + Jsqte) = "#,##0." + String(.Fields("Text_deci_Length"), "0")
  430.                 Else
  431.                     zdxsgs(Qslz + Jsqte) = "#,##0.00"
  432.                 End If
  433.                 Select Case .Fields("Text_Data_Type")
  434.                 Case 8   '金额
  435.                     zdxsgs(Qslz + Jsqte) = "#,##0." + String(Xtjexsws, "0")
  436.                 Case 9   '数量
  437.                     zdxsgs(Qslz + Jsqte) = "#,##0." + String(Xtslxsws, "0")
  438.                 Case 10  '单价
  439.                     zdxsgs(Qslz + Jsqte) = "#,##0." + String(Xtdjxsws, "0")
  440.                 End Select
  441.             Else
  442.                 If .Fields("Text_Int_Length") <> 0 Then
  443.                     zdxsgs(Qslz + Jsqte) = "##0." + String(.Fields("Text_deci_Length"), "0")
  444.                 End If
  445.             End If
  446.             
  447.             wglzz(Qslz + Jsqte) = .Fields("ColAlignment")              '网格列组织形式
  448.             If .Fields("ColHidden") Then                               '网格列是否隐藏
  449.                 Sfhide(Qslz + Jsqte) = True
  450.             End If
  451.             If .Fields("Edit_Flag") Then                               '网格列是否可编辑
  452.                 GridBoolean(Qslz + Jsqte, 1) = True
  453.             End If
  454.             If .Fields("Help_Flag") Then                               '网格列是否提供帮助
  455.                 GridBoolean(Qslz + Jsqte, 2) = True
  456.             End If
  457.             If .Fields("Combo_Flag") Then                              '网格列是否列表框录入
  458.                 GridBoolean(Qslz + Jsqte, 3) = True
  459.             End If
  460.             If .Fields("ColSum_Flag") Then                             '网格列是否合计
  461.                 GridBoolean(Qslz + Jsqte, 4) = True
  462.             End If
  463.             If .Fields("Zero_Empty_Flag") Then                         '网格内容为零是否清空
  464.                 GridBoolean(Qslz + Jsqte, 5) = True
  465.             End If
  466.             If .Fields("BooleanFlag") Then                             '网格列是否为布尔型
  467.                 GridBoolean(Qslz + Jsqte, 6) = True
  468.             End If
  469.             
  470.             If Not IsNull(.Fields("Text_Data_Type")) Then              '字段数据类型
  471.                 GridInt(Qslz + Jsqte, 1) = .Fields("Text_Data_Type")
  472.             End If
  473.             If Not IsNull(.Fields("Text_Length")) Then                 '字段录入长度
  474.                 GridInt(Qslz + Jsqte, 2) = .Fields("Text_Length")
  475.             End If
  476.             If Not IsNull(.Fields("Text_Int_Length")) Then             '字段整数位长度
  477.                 GridInt(Qslz + Jsqte, 3) = .Fields("Text_Int_Length")
  478.             End If
  479.             If Not IsNull(.Fields("Text_Deci_Length")) Then            '字段小数位长度
  480.                 GridInt(Qslz + Jsqte, 4) = .Fields("Text_Deci_Length")
  481.             End If
  482.             If Not IsNull(.Fields("NotAllowEmpty_Type")) Then          '字段不允许为空或为零
  483.                 GridInt(Qslz + Jsqte, 5) = .Fields("NotAllowEmpty_Type")
  484.             End If
  485.             If Not IsNull(.Fields("Help_Type")) Then                   '帮助类型
  486.                 GridInt(Qslz + Jsqte, 6) = .Fields("Help_Type")
  487.             End If
  488.             If Not IsNull(.Fields("HelpReturnValue")) Then             '帮助返回值(0-显示返回编码 1-显示返回名称)
  489.                 GridInt(Qslz + Jsqte, 7) = .Fields("HelpReturnValue")
  490.             End If
  491.             
  492.             GridStr(Qslz + Jsqte, 1) = Trim(.Fields("ColIndex") & "")    '网格列索引值
  493.             
  494.             GridStr(Qslz + Jsqte, 2) = Trim(.Fields("EmptyMessage") & "") '字段为空提示信息
  495.             
  496.             GridStr(Qslz + Jsqte, 3) = Trim(.Fields("Help_Code") & "")    '通用帮助编码
  497.             
  498.             GridStr(Qslz + Jsqte, 4) = Trim(.Fields("FieldsName") & "")   '连接字段(通用帮助)
  499.             
  500.             GridStr(Qslz + Jsqte, 5) = Trim(.Fields("Combo_Code") & "")   '列表框编码
  501.             
  502.             .MoveNext
  503.             Jsqte = Jsqte + 1
  504.         Loop
  505.         
  506.     End With
  507.     
  508.     '网格列组织形式
  509.     
  510.     With Xsgrid
  511.         .BackColorFixed = &H8000000F                                     '固定行背景色 ('&H80000018)
  512.         .FixedRows = Gdhs                                                '固定行数
  513.         .Rows = Gdhs
  514.         .FixedCols = gdls                                                '固定列数
  515.         .Cols = Qslz + Wgxsls
  516.         .AllowUserResizing = flexResizeBoth
  517.         .SelectionMode = flexSelectionByRow
  518.         .WordWrap = True
  519.         
  520.         '填 充 网 格 标 题
  521.         For Rowjsq = 0 To .FixedRows - 1
  522.             .MergeRow(Rowjsq) = True
  523.             .RowHeight(Rowjsq) = Gdhgd
  524.             For Coljsq = Qslzte To .Cols - 1
  525.                 .TextMatrix(Rowjsq, Coljsq) = wglbt(Rowjsq, Coljsq)
  526.             Next Coljsq
  527.         Next Rowjsq
  528.         
  529.         '数 据 网 格 高 度
  530.         For Rowjsq = .FixedRows To .Rows - 1
  531.             .RowHeight(Rowjsq) = Sjhgd
  532.         Next Rowjsq
  533.         
  534.         '定 义 录 入 字 段 属 性
  535.         For Coljsq = 0 To .Cols - 1
  536.             .ColWidth(Coljsq) = wglkd(Coljsq)
  537.             .ColAlignment(Coljsq) = wglzz(Coljsq)
  538.             .FixedAlignment(Coljsq) = 4
  539.         Next Coljsq
  540.         
  541.     End With
  542. End Sub
  543. Private Sub Bcwggs1(Bcgsgrid, Wggsdm As String)             '保存网格格式(包括网格列宽,网格列顺序)
  544.     
  545.     '过程参数:保存格式网格对象,网格格式代码(网格参数)
  546.     
  547.     Dim Cxsjbrec As New ADODB.Recordset
  548.     Dim Qslzte As Integer
  549.     Dim Tsxx As String
  550.     Cw_DataEnvi.DataConnect.BeginTrans
  551.     
  552.     On Error GoTo Swcwcl
  553.     
  554.     If Cxsjbrec.State = 1 Then Cxsjbrec.Close
  555.     Cxsjbrec.Open "select * from xt_grid where Grid_Code='" + Trim(Wggsdm) + "' order by ColId", Cw_DataEnvi.DataConnect, adOpenDynamic, adLockOptimistic
  556.     With Cxsjbrec
  557.         If Not .EOF Then
  558.             Qslzte = .Fields("BeginCol")
  559.             .MoveNext
  560.         End If
  561.         Do While Not .EOF
  562.             For Jsqte = Qslzte To Bcgsgrid.Cols - 1
  563.                 If Bcgsgrid.FixedRows = 1 Then
  564.                     If Trim(.Fields("ColTitle1")) = Trim(Bcgsgrid.TextMatrix(0, Jsqte)) Then
  565.                         Exit For
  566.                     End If
  567.                 Else
  568.                     If Trim(.Fields("ColTitle1")) = Trim(Bcgsgrid.TextMatrix(0, Jsqte)) And Trim(.Fields("ColTitle2")) = Trim(Bcgsgrid.TextMatrix(1, Jsqte)) Then
  569.                         Exit For
  570.                     End If
  571.                 End If
  572.             Next Jsqte
  573.             If Jsqte <= Bcgsgrid.Cols - 1 Then
  574.                 .Fields("ColId") = Jsqte - Qslzte + 1
  575.                 .Fields("ColWidth") = Bcgsgrid.ColWidth(Jsqte)
  576.                 .Update
  577.             Else
  578.                 GoTo Swcwcl
  579.             End If
  580.             .MoveNext
  581.         Loop
  582.     End With
  583.     Cw_DataEnvi.DataConnect.CommitTrans
  584.     Tsxx = "表格格式保存完毕!"
  585.     Call Xtxxts(Tsxx, 0, 4)
  586.     Exit Sub
  587. Swcwcl:
  588.     Cw_DataEnvi.DataConnect.RollbackTrans
  589.     Tsxx = "存盘过程中出现未知错误,程序自动恢复保存前状态!"
  590.     Call Xtxxts(Tsxx, 0, 1)
  591.     Exit Sub
  592.     
  593. End Sub
  594. Private Sub Hfmrgs1(Bcgsgrid, Wggsdm As String)             '恢复网格默认列宽
  595.     
  596.     '过程参数:保存格式网格对象,网格格式代码(网格参数)
  597.     
  598.     Dim Cxsjbrec As New ADODB.Recordset   '查询数据表动态集
  599.     Dim Qslzte As Integer
  600.     Dim Tsxx As String
  601.     Cw_DataEnvi.DataConnect.BeginTrans
  602.     If Cxsjbrec.State = 1 Then Cxsjbrec.Close
  603.     Cxsjbrec.Open "select * from xt_grid where Grid_Code='" + Trim(Wggsdm) + "' order by ColId", Cw_DataEnvi.DataConnect, adOpenDynamic, adLockOptimistic
  604.     
  605.     On Error GoTo Swcwcl
  606.     
  607.     With Cxsjbrec
  608.         If Not .EOF Then
  609.             Qslzte = .Fields("BeginCol")
  610.             .MoveNext
  611.         End If
  612.         Do While Not .EOF
  613.             For Jsqte = Qslzte To Bcgsgrid.Cols - 1
  614.                 If Bcgsgrid.FixedRows = 1 Then
  615.                     If Trim(.Fields("ColTitle1")) = Trim(Bcgsgrid.TextMatrix(0, Jsqte)) Then
  616.                         Exit For
  617.                     End If
  618.                 Else
  619.                     If Trim(.Fields("ColTitle1")) = Trim(Bcgsgrid.TextMatrix(0, Jsqte)) And Trim(.Fields("ColTitle2")) = Trim(Bcgsgrid.TextMatrix(1, Jsqte)) Then
  620.                         Exit For
  621.                     End If
  622.                 End If
  623.             Next Jsqte
  624.             If Jsqte <= Bcgsgrid.Cols - 1 Then
  625.                 Bcgsgrid.ColWidth(Jsqte) = .Fields("DefaultColWidth")
  626.                 .Fields("ColWidth") = .Fields("DefaultColWidth") + 0
  627.                 .Update
  628.             End If
  629.             .MoveNext
  630.         Loop
  631.     End With
  632.     Cw_DataEnvi.DataConnect.CommitTrans
  633.     Exit Sub
  634. Swcwcl:
  635.     Cw_DataEnvi.DataConnect.RollbackTrans
  636.     Tsxx = "恢复过程中出现未知错误,程序自动恢复保存前状态!"
  637.     Call Xtxxts(Tsxx, 0, 1)
  638.     Exit Sub
  639.     
  640. End Sub