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

企业管理

开发平台:

Visual Basic

  1. VERSION 5.00
  2. Object = "{D76D7128-4A96-11D3-BD95-D296DC2DD072}#1.0#0"; "VSOCX7.OCX"
  3. Object = "{831FDD16-0C5C-11D2-A9FC-0000F8754DA1}#2.0#0"; "mscomctl.ocx"
  4. Begin VB.Form An_RsAgeLongFrm 
  5.    Caption         =   "年资分析"
  6.    ClientHeight    =   8595
  7.    ClientLeft      =   315
  8.    ClientTop       =   390
  9.    ClientWidth     =   11820
  10.    HelpContextID   =   5001
  11.    Icon            =   "查询_年资分析列表.frx":0000
  12.    KeyPreview      =   -1  'True
  13.    LinkTopic       =   "Form1"
  14.    MDIChild        =   -1  'True
  15.    ScaleHeight     =   8595
  16.    ScaleWidth      =   11820
  17.    WindowState     =   2  'Maximized
  18.    Begin MSComctlLib.ProgressBar PB_Proc 
  19.       Height          =   330
  20.       Left            =   3795
  21.       TabIndex        =   4
  22.       Top             =   3735
  23.       Visible         =   0   'False
  24.       Width           =   4440
  25.       _ExtentX        =   7832
  26.       _ExtentY        =   582
  27.       _Version        =   393216
  28.       Appearance      =   1
  29.       Scrolling       =   1
  30.    End
  31.    Begin VB.PictureBox Pic_Title 
  32.       BackColor       =   &H00FFFFFF&
  33.       Height          =   690
  34.       Left            =   -75
  35.       Picture         =   "查询_年资分析列表.frx":1042
  36.       ScaleHeight     =   630
  37.       ScaleWidth      =   11715
  38.       TabIndex        =   2
  39.       Top             =   600
  40.       Width           =   11775
  41.       Begin VB.Label Lab_Title 
  42.          AutoSize        =   -1  'True
  43.          BackColor       =   &H80000018&
  44.          BackStyle       =   0  'Transparent
  45.          Caption         =   "年资分析"
  46.          BeginProperty Font 
  47.             Name            =   "宋体"
  48.             Size            =   12
  49.             Charset         =   134
  50.             Weight          =   700
  51.             Underline       =   0   'False
  52.             Italic          =   0   'False
  53.             Strikethrough   =   0   'False
  54.          EndProperty
  55.          ForeColor       =   &H00000000&
  56.          Height          =   240
  57.          Left            =   405
  58.          TabIndex        =   3
  59.          Top             =   180
  60.          Width           =   1020
  61.       End
  62.    End
  63.    Begin VSFlex8Ctl.VSFlexGrid CxbbGrid 
  64.       Height          =   7770
  65.       Left            =   60
  66.       TabIndex        =   0
  67.       Top             =   1305
  68.       Width           =   11775
  69.       _ExtentX        =   20770
  70.       _ExtentY        =   13705
  71.       Appearance      =   1
  72.       BorderStyle     =   1
  73.       Enabled         =   -1  'True
  74.       BeginProperty Font {0BE35203-8F91-11CE-9DE3-00AA004BB851} 
  75.          Name            =   "宋体"
  76.          Size            =   9
  77.          Charset         =   134
  78.          Weight          =   400
  79.          Underline       =   0   'False
  80.          Italic          =   0   'False
  81.          Strikethrough   =   0   'False
  82.       EndProperty
  83.       MousePointer    =   0
  84.       BackColor       =   16777215
  85.       ForeColor       =   -2147483640
  86.       BackColorFixed  =   -2147483633
  87.       ForeColorFixed  =   -2147483630
  88.       BackColorSel    =   -2147483635
  89.       ForeColorSel    =   -2147483634
  90.       BackColorBkg    =   -2147483636
  91.       BackColorAlternate=   16777215
  92.       GridColor       =   -2147483633
  93.       GridColorFixed  =   -2147483632
  94.       TreeColor       =   -2147483632
  95.       FloodColor      =   192
  96.       SheetBorder     =   -2147483642
  97.       FocusRect       =   1
  98.       HighLight       =   1
  99.       AllowSelection  =   -1  'True
  100.       AllowBigSelection=   -1  'True
  101.       AllowUserResizing=   0
  102.       SelectionMode   =   0
  103.       GridLines       =   1
  104.       GridLinesFixed  =   2
  105.       GridLineWidth   =   1
  106.       Rows            =   20
  107.       Cols            =   10
  108.       FixedRows       =   1
  109.       FixedCols       =   1
  110.       RowHeightMin    =   0
  111.       RowHeightMax    =   0
  112.       ColWidthMin     =   0
  113.       ColWidthMax     =   0
  114.       ExtendLastCol   =   0   'False
  115.       FormatString    =   ""
  116.       ScrollTrack     =   0   'False
  117.       ScrollBars      =   3
  118.       ScrollTips      =   0   'False
  119.       MergeCells      =   0
  120.       MergeCompare    =   0
  121.       AutoResize      =   -1  'True
  122.       AutoSizeMode    =   0
  123.       AutoSearch      =   0
  124.       MultiTotals     =   -1  'True
  125.       SubtotalPosition=   1
  126.       OutlineBar      =   0
  127.       OutlineCol      =   0
  128.       Ellipsis        =   0
  129.       ExplorerBar     =   0
  130.       PicturesOver    =   0   'False
  131.       FillStyle       =   0
  132.       RightToLeft     =   0   'False
  133.       PictureType     =   0
  134.       TabBehavior     =   0
  135.       OwnerDraw       =   0
  136.       Editable        =   0   'False
  137.       ShowComboButton =   -1  'True
  138.       WordWrap        =   0   'False
  139.       TextStyle       =   0
  140.       TextStyleFixed  =   0
  141.       OleDragMode     =   0
  142.       OleDropMode     =   0
  143.       DataMode        =   0
  144.       VirtualData     =   -1  'True
  145.    End
  146.    Begin MSComctlLib.Toolbar SzToolbar 
  147.       Align           =   1  'Align Top
  148.       Height          =   570
  149.       Left            =   0
  150.       TabIndex        =   1
  151.       Top             =   0
  152.       Width           =   11820
  153.       _ExtentX        =   20849
  154.       _ExtentY        =   1005
  155.       ButtonWidth     =   820
  156.       ButtonHeight    =   953
  157.       AllowCustomize  =   0   'False
  158.       Appearance      =   1
  159.       Style           =   1
  160.       ImageList       =   "ImageList1"
  161.       _Version        =   393216
  162.       BeginProperty Buttons {66833FE8-8583-11D1-B16A-00C0F0283628} 
  163.          NumButtons      =   9
  164.          BeginProperty Button1 {66833FEA-8583-11D1-B16A-00C0F0283628} 
  165.             Caption         =   "设置"
  166.             Key             =   "ymsz"
  167.             Object.ToolTipText     =   "设置打印参数"
  168.             ImageKey        =   "sz"
  169.          EndProperty
  170.          BeginProperty Button2 {66833FEA-8583-11D1-B16A-00C0F0283628} 
  171.             Caption         =   "打印"
  172.             Key             =   "dy"
  173.             Object.ToolTipText     =   "打印当前数据"
  174.             ImageKey        =   "dy"
  175.          EndProperty
  176.          BeginProperty Button3 {66833FEA-8583-11D1-B16A-00C0F0283628} 
  177.             Caption         =   "预览"
  178.             Key             =   "yl"
  179.             Object.ToolTipText     =   "显示当前数据的打印模式"
  180.             ImageKey        =   "yl"
  181.          EndProperty
  182.          BeginProperty Button4 {66833FEA-8583-11D1-B16A-00C0F0283628} 
  183.             Style           =   3
  184.          EndProperty
  185.          BeginProperty Button5 {66833FEA-8583-11D1-B16A-00C0F0283628} 
  186.             Caption         =   "查询"
  187.             Key             =   "cx"
  188.             Object.ToolTipText     =   "以某种条件取得数据"
  189.             ImageKey        =   "cx"
  190.          EndProperty
  191.          BeginProperty Button6 {66833FEA-8583-11D1-B16A-00C0F0283628} 
  192.             Caption         =   "定义"
  193.             Key             =   "DingYi"
  194.             ImageKey        =   "xsxm"
  195.          EndProperty
  196.          BeginProperty Button7 {66833FEA-8583-11D1-B16A-00C0F0283628} 
  197.             Style           =   3
  198.          EndProperty
  199.          BeginProperty Button8 {66833FEA-8583-11D1-B16A-00C0F0283628} 
  200.             Caption         =   "帮助"
  201.             Key             =   "bz"
  202.             Object.ToolTipText     =   "显示帮助信息"
  203.             ImageKey        =   "bz"
  204.          EndProperty
  205.          BeginProperty Button9 {66833FEA-8583-11D1-B16A-00C0F0283628} 
  206.             Caption         =   "退出"
  207.             Key             =   "fh"
  208.             Object.ToolTipText     =   "退出本报表"
  209.             ImageKey        =   "tc"
  210.          EndProperty
  211.       EndProperty
  212.       BorderStyle     =   1
  213.       Begin VB.Timer Timer1 
  214.          Enabled         =   0   'False
  215.          Interval        =   1
  216.          Left            =   6060
  217.          Top             =   60
  218.       End
  219.       Begin MSComctlLib.ImageList ImageList1 
  220.          Left            =   5280
  221.          Top             =   0
  222.          _ExtentX        =   1005
  223.          _ExtentY        =   1005
  224.          BackColor       =   -2147483643
  225.          ImageWidth      =   16
  226.          ImageHeight     =   16
  227.          MaskColor       =   12632256
  228.          _Version        =   393216
  229.          BeginProperty Images {2C247F25-8591-11D1-B16A-00C0F0283628} 
  230.             NumListImages   =   36
  231.             BeginProperty ListImage1 {2C247F27-8591-11D1-B16A-00C0F0283628} 
  232.                Picture         =   "查询_年资分析列表.frx":1FAC4
  233.                Key             =   "sz"
  234.             EndProperty
  235.             BeginProperty ListImage2 {2C247F27-8591-11D1-B16A-00C0F0283628} 
  236.                Picture         =   "查询_年资分析列表.frx":1FE5E
  237.                Key             =   "dy"
  238.             EndProperty
  239.             BeginProperty ListImage3 {2C247F27-8591-11D1-B16A-00C0F0283628} 
  240.                Picture         =   "查询_年资分析列表.frx":201F8
  241.                Key             =   "yl"
  242.             EndProperty
  243.             BeginProperty ListImage4 {2C247F27-8591-11D1-B16A-00C0F0283628} 
  244.                Picture         =   "查询_年资分析列表.frx":20592
  245.                Key             =   "xg"
  246.             EndProperty
  247.             BeginProperty ListImage5 {2C247F27-8591-11D1-B16A-00C0F0283628} 
  248.                Picture         =   "查询_年资分析列表.frx":2092C
  249.                Key             =   "zh"
  250.             EndProperty
  251.             BeginProperty ListImage6 {2C247F27-8591-11D1-B16A-00C0F0283628} 
  252.                Picture         =   "查询_年资分析列表.frx":20CC6
  253.                Key             =   "sh"
  254.             EndProperty
  255.             BeginProperty ListImage7 {2C247F27-8591-11D1-B16A-00C0F0283628} 
  256.                Picture         =   "查询_年资分析列表.frx":21060
  257.                Key             =   "bc"
  258.             EndProperty
  259.             BeginProperty ListImage8 {2C247F27-8591-11D1-B16A-00C0F0283628} 
  260.                Picture         =   "查询_年资分析列表.frx":213FA
  261.                Key             =   "fq"
  262.             EndProperty
  263.             BeginProperty ListImage9 {2C247F27-8591-11D1-B16A-00C0F0283628} 
  264.                Picture         =   "查询_年资分析列表.frx":21794
  265.                Key             =   "bz"
  266.             EndProperty
  267.             BeginProperty ListImage10 {2C247F27-8591-11D1-B16A-00C0F0283628} 
  268.                Picture         =   "查询_年资分析列表.frx":21B2E
  269.                Key             =   "tc"
  270.             EndProperty
  271.             BeginProperty ListImage11 {2C247F27-8591-11D1-B16A-00C0F0283628} 
  272.                Picture         =   "查询_年资分析列表.frx":21EC8
  273.                Key             =   "bcgs"
  274.             EndProperty
  275.             BeginProperty ListImage12 {2C247F27-8591-11D1-B16A-00C0F0283628} 
  276.                Picture         =   "查询_年资分析列表.frx":22262
  277.                Key             =   "mrlk"
  278.             EndProperty
  279.             BeginProperty ListImage13 {2C247F27-8591-11D1-B16A-00C0F0283628} 
  280.                Picture         =   "查询_年资分析列表.frx":225FC
  281.                Key             =   "xsxm"
  282.             EndProperty
  283.             BeginProperty ListImage14 {2C247F27-8591-11D1-B16A-00C0F0283628} 
  284.                Picture         =   "查询_年资分析列表.frx":22996
  285.                Key             =   "first"
  286.             EndProperty
  287.             BeginProperty ListImage15 {2C247F27-8591-11D1-B16A-00C0F0283628} 
  288.                Picture         =   "查询_年资分析列表.frx":22D30
  289.                Key             =   "prev"
  290.             EndProperty
  291.             BeginProperty ListImage16 {2C247F27-8591-11D1-B16A-00C0F0283628} 
  292.                Picture         =   "查询_年资分析列表.frx":230CA
  293.                Key             =   "next"
  294.             EndProperty
  295.             BeginProperty ListImage17 {2C247F27-8591-11D1-B16A-00C0F0283628} 
  296.                Picture         =   "查询_年资分析列表.frx":23464
  297.                Key             =   "last"
  298.             EndProperty
  299.             BeginProperty ListImage18 {2C247F27-8591-11D1-B16A-00C0F0283628} 
  300.                Picture         =   "查询_年资分析列表.frx":237FE
  301.                Key             =   "xx"
  302.             EndProperty
  303.             BeginProperty ListImage19 {2C247F27-8591-11D1-B16A-00C0F0283628} 
  304.                Picture         =   "查询_年资分析列表.frx":23B98
  305.                Key             =   "define"
  306.             EndProperty
  307.             BeginProperty ListImage20 {2C247F27-8591-11D1-B16A-00C0F0283628} 
  308.                Picture         =   "查询_年资分析列表.frx":23F32
  309.                Key             =   "exec"
  310.             EndProperty
  311.             BeginProperty ListImage21 {2C247F27-8591-11D1-B16A-00C0F0283628} 
  312.                Picture         =   "查询_年资分析列表.frx":242CC
  313.                Key             =   "xz"
  314.             EndProperty
  315.             BeginProperty ListImage22 {2C247F27-8591-11D1-B16A-00C0F0283628} 
  316.                Picture         =   "查询_年资分析列表.frx":24666
  317.                Key             =   "sc"
  318.             EndProperty
  319.             BeginProperty ListImage23 {2C247F27-8591-11D1-B16A-00C0F0283628} 
  320.                Picture         =   "查询_年资分析列表.frx":24A00
  321.                Key             =   "sx"
  322.             EndProperty
  323.             BeginProperty ListImage24 {2C247F27-8591-11D1-B16A-00C0F0283628} 
  324.                Picture         =   "查询_年资分析列表.frx":24D9A
  325.                Key             =   "cx"
  326.             EndProperty
  327.             BeginProperty ListImage25 {2C247F27-8591-11D1-B16A-00C0F0283628} 
  328.                Picture         =   "查询_年资分析列表.frx":25134
  329.                Key             =   "zd"
  330.             EndProperty
  331.             BeginProperty ListImage26 {2C247F27-8591-11D1-B16A-00C0F0283628} 
  332.                Picture         =   "查询_年资分析列表.frx":254CE
  333.                Key             =   "dz"
  334.             EndProperty
  335.             BeginProperty ListImage27 {2C247F27-8591-11D1-B16A-00C0F0283628} 
  336.                Picture         =   "查询_年资分析列表.frx":25868
  337.                Key             =   "ph"
  338.             EndProperty
  339.             BeginProperty ListImage28 {2C247F27-8591-11D1-B16A-00C0F0283628} 
  340.                Picture         =   "查询_年资分析列表.frx":25C02
  341.                Key             =   "fz"
  342.             EndProperty
  343.             BeginProperty ListImage29 {2C247F27-8591-11D1-B16A-00C0F0283628} 
  344.                Picture         =   "查询_年资分析列表.frx":25F9C
  345.                Key             =   "Locate"
  346.             EndProperty
  347.             BeginProperty ListImage30 {2C247F27-8591-11D1-B16A-00C0F0283628} 
  348.                Picture         =   "查询_年资分析列表.frx":26336
  349.                Key             =   "hf"
  350.             EndProperty
  351.             BeginProperty ListImage31 {2C247F27-8591-11D1-B16A-00C0F0283628} 
  352.                Picture         =   "查询_年资分析列表.frx":266D0
  353.                Key             =   "pz"
  354.             EndProperty
  355.             BeginProperty ListImage32 {2C247F27-8591-11D1-B16A-00C0F0283628} 
  356.                Picture         =   "查询_年资分析列表.frx":26A6A
  357.                Key             =   "check"
  358.             EndProperty
  359.             BeginProperty ListImage33 {2C247F27-8591-11D1-B16A-00C0F0283628} 
  360.                Picture         =   "查询_年资分析列表.frx":26E04
  361.                Key             =   "Sum"
  362.             EndProperty
  363.             BeginProperty ListImage34 {2C247F27-8591-11D1-B16A-00C0F0283628} 
  364.                Picture         =   "查询_年资分析列表.frx":2719E
  365.                Key             =   "Total"
  366.             EndProperty
  367.             BeginProperty ListImage35 {2C247F27-8591-11D1-B16A-00C0F0283628} 
  368.                Picture         =   "查询_年资分析列表.frx":27538
  369.                Key             =   "Detail"
  370.             EndProperty
  371.             BeginProperty ListImage36 {2C247F27-8591-11D1-B16A-00C0F0283628} 
  372.                Picture         =   "查询_年资分析列表.frx":278D2
  373.                Key             =   "Order"
  374.             EndProperty
  375.          EndProperty
  376.       End
  377.    End
  378. End
  379. Attribute VB_Name = "An_RsAgeLongFrm"
  380. Attribute VB_GlobalNameSpace = False
  381. Attribute VB_Creatable = False
  382. Attribute VB_PredeclaredId = True
  383. Attribute VB_Exposed = False
  384. '**************************************************************************
  385. '*    模 块 名 称 :年资分析列表
  386. '*    功 能 描 述 :
  387. '*    程序员姓名  :张洪军
  388. '*    最后修改人  :张洪军
  389. '*    最后修改时间:2002/01/03
  390. '*    备        注:程序中所有依实际情况自定义部分均用[>>  <<]括起
  391. '**************************************************************************
  392. Dim ReportTitle As String                '报表主标题
  393. Public sSqlWhere As String
  394. Public sSqlWhereMe As String
  395. Public sSqlWhereMore As String
  396. Public sSqlFrom As String
  397. Public int_CodeLevel As Integer
  398. Dim sFieldValue() As New CFieldValue
  399. Dim sSqlOrder As String
  400. Dim Str_RightEdit As String              '编辑(新增、修改、删除)权限索引
  401. '以下为固定使用变量
  402. Dim Dyymctbl As New DY_Dyymsz            '打印页面窗体变量
  403. Dim GridCode As String                   '显示网格网格代码
  404. Dim GridInf() As Variant                 '整个网格设置信息
  405. Dim Tsxx As String                       '系统提示信息
  406. Dim Qslz As Long                         '网格隐藏(非操作显示)列数
  407. Dim Sjhgd As Double                      '网格数据行高度
  408. Dim Sfxshjwg As Boolean                  '是否显示合计网格
  409. Dim GridBoolean() As Boolean             '网格列信息(布尔型)
  410. Dim GridStr()  As String                 '网格列信息(字符型)
  411. Dim GridInt() As Integer                 '网格列信息(整型)
  412. Dim Szzls As Integer                     '数组总列数(网格列数-1)
  413. Private Sub CxbbGrid_AfterMoveColumn(ByVal Col As Long, Position As Long)
  414.     Dim i As Integer
  415.     With Me.CxbbGrid
  416.         ReDim sFieldValue(.Cols - 1)
  417.         For i = 0 To .Cols - 1
  418.             sFieldValue(i).FieldName = Trim(.TextMatrix(1, i))
  419.         Next i
  420.     End With
  421. End Sub
  422. Private Sub CxbbGrid_AfterSort(ByVal Col As Long, Order As Integer)
  423.     Dim i As Long
  424.     With Me.CxbbGrid
  425.         For i = .FixedRows To .Rows - 1
  426.             .TextMatrix(i, Qslz) = i - .FixedRows + 1
  427.         Next i
  428.     End With
  429.     
  430. End Sub
  431. Private Sub Form_Resize()                '根据窗体大小来调整网格,标题栏大小(Fixed)
  432.     On Error Resume Next
  433.     With CxbbGrid
  434.         .Width = Me.Width - 160
  435.         .Height = Me.Height - .Top - 400
  436.     End With
  437.     With Pic_Title
  438.         .Width = Me.Width - 160
  439.     End With
  440.     
  441.     GsToolbar.Left = Me.Width - GsToolbar.Width - 140
  442.     With Me.PB_Proc
  443.         .Left = (Me.Width - .Width) / 2
  444.         .Top = Me.Height / 2
  445.     End With
  446.     
  447. End Sub
  448. Private Sub Form_Load()                                                   '窗体装入
  449.     On Error GoTo 0
  450.     '调入打印页面设置窗体
  451.     ReportTitle = "年资分析"
  452.     XtReportCode = "Rs_RsAgeLongFrm"
  453.     Load Dyymctbl
  454.     Me.Caption = ReportTitle
  455.     Me.Lab_Title = ReportTitle
  456.     '调整标题栏及网格、格式工具条位置(Fixed)
  457.     Pic_Title.Left = 40
  458.     Pic_Title.Top = SzToolbar.Top + SzToolbar.Height - 10
  459.     CxbbGrid.Left = Pic_Title.Left
  460.     CxbbGrid.Top = Pic_Title.Top + Pic_Title.Height + 20
  461.     
  462.     '调 入 网 格(Fixed)
  463.     GridCode = "Rs_RsAgeLongFrm"
  464.     Call BzWgcsh(CxbbGrid, GridCode, GridInf(), GridBoolean(), GridInt(), GridStr())
  465.     Me.CxbbGrid.MergeCells = flexMergeNever
  466.     Qslz = GridInf(1)
  467.     Sjhgd = GridInf(2)
  468.     Sfxshjwg = GridInf(7)
  469.     Szzls = CxbbGrid.Cols - 1
  470.     iBeginCol = Val(GridInf(1))
  471.     
  472.     '初始化变量
  473.     sSqlOrder = " order by Rs_BasicInfo.DeptCode "
  474.     Me.sSqlFrom = " from Rs_BasicInfo  "
  475.     Me.sSqlWhereMe = " where Rs_BasicInfo.YnStop=0  "
  476.     Me.sSqlWhereMore = ""
  477.     Me.sSqlWhere = Me.sSqlWhereMe & Me.sSqlWhereMore
  478.     '编辑(新增、修改、删除)权限索引
  479.     Str_RightEdit = "Rs_An_RsAgeLong_Edit"
  480. End Sub
  481. Private Sub Form_Unload(Cancel As Integer)                                  '窗体卸载
  482.         
  483.     '卸载打印页面设置窗体
  484.     Unload Dyymctbl
  485.     Security_Log "Rs_An_RsAgeLong", Xtczybm, 2, False  '用户退出时写上机日志
  486. End Sub
  487. Private Sub CxbbGrid_BeforeMoveColumn(ByVal Col As Long, Position As Long)           '网格列发生移动时自动交换网格索引信息
  488.     Dim i As Integer
  489.     Dim iMax As Integer
  490.     Dim iMin As Integer
  491.     Dim iStep As Integer
  492.     '编码列不允许移动
  493.     If Col <= Qslz Then
  494.         Position = Col
  495.         Exit Sub
  496.     End If
  497.     '不允许列超过编码列
  498.     If Position <= Qslz Then
  499.         Position = Qslz + 1
  500.     End If
  501.     '移动数组
  502.     With Me.CxbbGrid
  503.         If .Cols <= Qslz + 1 Then
  504.             Exit Sub
  505.         End If
  506.         If Col = Position Then
  507.             Exit Sub
  508.         End If
  509.         Dim sFieldValueT As New CFieldValue
  510.         iStep = IIf(Col > Position, -1, 1)
  511.         CFieldValueCopy sFieldValue(Col - Qslz - 1), sFieldValueT
  512.         For i = Col + iStep - Qslz - 1 To Position - Qslz - 1 Step iStep
  513.             CFieldValueCopy sFieldValue(i), sFieldValue(i - iStep)
  514.         Next i
  515.         CFieldValueCopy sFieldValueT, sFieldValue(Position - Qslz - 1)
  516.     End With
  517.     
  518.     
  519. End Sub
  520. Private Sub SzToolbar_ButtonClick(ByVal Button As MSComctlLib.Button)
  521.     
  522.     Select Case Button.Key
  523.     Case "ymsz"                                          '页面设置
  524.         Dyymctbl.Show 1
  525.     Case "yl"                                            '预 览
  526.         bbyl (True)
  527.     Case "dy"                                            '打 印
  528.         bbyl (False)
  529.     Case "cx"                                            '查 询
  530.        An_RsAgeLongFrmQuery.Show 1
  531.     Case "DingYi"                                        '定 义
  532.        '判断用户是否有此功能执行权限,如有则写上机日志(进入)
  533.         If Not Security_Log(Str_RightEdit, Xtczybm, 1, True) Then
  534.             Exit Sub
  535.         End If
  536.        An_RsSetAgeLongFrm.Show 1
  537.     
  538.     Case "bz"                                            '帮 助
  539.         Call F1bz
  540.     Case "fh"                                            '退 出
  541.         Unload Me
  542.     End Select
  543.     
  544. End Sub
  545. Private Sub Timer1_Timer()                                 '在窗体激活后调入查询程序
  546.     
  547.     Timer1.Enabled = False
  548.     Xt_Wait.Show
  549.     Xt_Wait.Refresh
  550.     
  551.     '加快显示速度
  552.     CxbbGrid.Redraw = False
  553.     
  554.     '生成查询结果
  555.     ShowRecord
  556.     
  557.     CxbbGrid.Redraw = True
  558.     
  559.     Xt_Wait.Hide
  560.     
  561. End Sub
  562. Public Function ShowRecord()                                  '生成查询结果(Define)
  563.     '显示数据
  564.     On Error GoTo ErrCtrl
  565.     
  566.     Dim rs As New ADODB.Recordset
  567.     Dim rec_num As New ADODB.Recordset
  568.     Dim s As String
  569.     Dim i As Long
  570.     Dim j As Long
  571.     Dim sFrom As String
  572.     Dim str_Temp As String
  573.     Dim Age() As Integer
  574.     Dim int_sum() As Integer
  575.     
  576.     
  577.     If Trim(Me.sSqlWhereMore) = "" Then
  578.         Me.sSqlWhereMore = " 1=1 "
  579.     End If
  580.     
  581.     If Trim(Me.sSqlWhere) = "" Then
  582.         GoTo ErrCtrl
  583.     End If
  584.     Me.MousePointer = 11
  585.     
  586.     With Me.CxbbGrid
  587.         '初始化网格
  588.         .Redraw = False
  589.         .Rows = .FixedRows
  590.         .Cols = Qslz + 4
  591.         .FixedCols = .Cols
  592.     
  593.     '填充年资段
  594.         s = "select  ItemName,ItemParameter from Rs_OtherSet where ItemProperty=2 order by ItemName"
  595.         Set rs = Cw_DataEnvi.DataConnect.Execute(s)
  596.         If rs.EOF() Then
  597.             MsgBox "没有设置年资段!", vbOKOnly + vbCritical
  598.             GoTo ErrCtrl
  599.         End If
  600.         .Cols = .FixedCols + 2 * rs.RecordCount + 4
  601.         ReDim Age(.Cols)
  602.         ReDim int_sum(.Cols)
  603.         
  604.         i = .FixedCols
  605.         
  606.         Age(i - 2) = "0"  '年资段最小值
  607.         int_sum(0) = 0
  608.         
  609.         
  610.         Do While Not rs.EOF()
  611.             Age(i) = Val(Trim(rs.Fields("ItemParameter") & "")) '年资段上限
  612.             
  613.             str_Temp = Age(i - 2) & "-" & Age(i) & "月"
  614.             
  615.             .TextMatrix(.FixedRows - 1, i) = str_Temp
  616.             .TextMatrix(.FixedRows - 1, i + 1) = "百分比%"
  617.             
  618.             '调整网格格式
  619.             .ColAlignment(i) = flexAlignRightCenter
  620.             .ColAlignment(i + 1) = flexAlignRightCenter
  621.             .FixedAlignment(i) = flexAlignCenterCenter
  622.             .FixedAlignment(i + 1) = flexAlignCenterCenter
  623.             i = i + 2
  624.             rs.MoveNext
  625.         Loop
  626.         rs.Close
  627.         str_Temp = Age(i - 2) & "月以上"
  628.         .TextMatrix(.FixedRows - 1, .Cols - 4) = str_Temp
  629.         .TextMatrix(.FixedRows - 1, .Cols - 3) = "百分比%"
  630.         .TextMatrix(.FixedRows - 1, .Cols - 2) = "未   知"
  631.         .TextMatrix(.FixedRows - 1, .Cols - 1) = "百分比%"
  632.         
  633.         '调整网格格式
  634.         .ColAlignment(.Cols - 2) = flexAlignRightCenter
  635.         .ColAlignment(.Cols - 1) = flexAlignRightCenter
  636.         .FixedAlignment(.Cols - 2) = flexAlignCenterCenter
  637.         .FixedAlignment(.Cols - 1) = flexAlignCenterCenter
  638.         '填充部门和部门人数
  639.         s = " select Gy_Department.DeptCode ,Gy_Department.DeptName,Gy_Department.CodeLevel " & Chr(10) _
  640.             & " ,Num=(select count(*) from Rs_BasicInfo  " & Chr(10) _
  641.             & "where  left(Rs_BasicInfo.DeptCode,len(Gy_Department.DeptCode))=Gy_Department.DeptCode  and " & Me.sSqlWhereMore & ") " & Chr(10) _
  642.             & " from Gy_Department  " & Chr(10) _
  643.             & Me.sSqlWhereMe
  644.         Set rs = Cw_DataEnvi.DataConnect.Execute(s)
  645.         If rs.EOF() Then
  646.             GoTo ErrCtrl
  647.         End If
  648.         .Rows = .FixedRows + rs.RecordCount + 1
  649.         i = .FixedRows
  650.         Do While Not rs.EOF()
  651.             .RowHeight(i) = Sjhgd
  652.             .TextMatrix(i, Qslz) = Trim(rs.Fields("DeptCode") & "")
  653.             .TextMatrix(i, Qslz + 1) = Trim(rs.Fields("DeptName") & "")
  654.             .TextMatrix(i, Qslz + 2) = Val(rs.Fields("Num") & "")
  655.             If Val(rs.Fields("CodeLevel") & "") = int_CodeLevel Then
  656.                 int_sum(0) = int_sum(0) + Val(rs.Fields("Num") & "")
  657.             End If
  658.             
  659.             '填充平均年资
  660.             s = " select num=avg(DateDiff(Month, HireTime, getdate())) from Rs_BasicInfo " & Chr(10) & _
  661.                 " where  Rs_BasicInfo.DeptCode like   '" & Trim(rs.Fields("DeptCode") & "") & "%'" & Chr(10) & _
  662.                 " and    " & Me.sSqlWhereMore & Chr(10)
  663.                 
  664.             Set rec_num = Cw_DataEnvi.DataConnect.Execute(s)
  665.             If Not rs.EOF() Then
  666.                 If rec_num.Fields("num") > 0 Then
  667.                     .TextMatrix(i, .FixedCols - 1) = rec_num.Fields("num")
  668.                 End If
  669.             End If
  670.             rec_num.Close
  671.             
  672.             '填充年资段人数和百分比
  673.             For j = .FixedCols To .Cols - 2 Step 2
  674.                 Select Case j
  675.                     Case .Cols - 2
  676.                         s = " select num=count(1) from Rs_BasicInfo " & Chr(10) & _
  677.                             " where  Rs_BasicInfo.DeptCode like   '" & Trim(rs.Fields("DeptCode") & "") & "%'" & Chr(10) & _
  678.                             " and    HireTime IS null " & Chr(10) & _
  679.                             " and    " & Me.sSqlWhereMore & Chr(10)
  680.                     Case .Cols - 4
  681.                         s = " select num=count(1) from Rs_BasicInfo " & Chr(10) & _
  682.                             " where  Rs_BasicInfo.DeptCode like   '" & Trim(rs.Fields("DeptCode") & "") & "%'" & Chr(10) & _
  683.                             " and    DateDiff(Month, HireTime, getdate()) >= " & Val(Age(j - 2)) & Chr(10) & _
  684.                             " and    " & Me.sSqlWhereMore & Chr(10)
  685.                         
  686.                     Case Else
  687.                         s = " select num=count(1) from Rs_BasicInfo " & Chr(10) & _
  688.                             " where  Rs_BasicInfo.DeptCode like   '" & Trim(rs.Fields("DeptCode") & "") & "%'" & Chr(10) & _
  689.                             " and    DateDiff(Month, HireTime, getdate()) >= " & Val(Age(j - 2)) & " And DateDiff(Month, HireTime, getdate()) < " & Val(Age(j)) & Chr(10) & _
  690.                             " and    " & Me.sSqlWhereMore & Chr(10)
  691.                 End Select
  692.                 Set rec_num = Cw_DataEnvi.DataConnect.Execute(s)
  693.                 If Not rs.EOF() Then
  694.                     If rec_num.Fields("num") > 0 Then
  695.                         .TextMatrix(i, j) = rec_num.Fields("num")
  696.                         If Val(rs.Fields("CodeLevel") & "") = int_CodeLevel Then
  697.                             int_sum(j) = int_sum(j) + rec_num.Fields("num")
  698.                         End If
  699.                         If Val(.TextMatrix(i, Qslz + 2)) <> 0 Then
  700.                             .TextMatrix(i, j + 1) = Format(100 * Val(rec_num.Fields("Num") & "") / Val(.TextMatrix(i, Qslz + 2)), "##0.00")
  701.                         End If
  702.                     End If
  703.                 End If
  704.                 rec_num.Close
  705.             Next j
  706.             
  707.             rs.MoveNext
  708.             i = i + 1
  709.         Loop
  710.         rs.Close
  711.         Set rs = Nothing
  712.         '填充合计行
  713.         .RowHeight(.Rows - 1) = Sjhgd
  714.         .TextMatrix(.Rows - 1, Qslz) = "合计"
  715.         .TextMatrix(.Rows - 1, Qslz + 1) = "合计"
  716.         .TextMatrix(.Rows - 1, Qslz + 2) = int_sum(0)
  717.                 '填充平均年资
  718.         s = " select num=avg(DateDiff(Month, HireTime, getdate())) from Rs_BasicInfo " & Chr(10) & _
  719.             " inner join Gy_DepartMent on Left(Rs_BasicInfo.DeptCode, Len(Gy_Department.DeptCode)) = Gy_Department.DeptCode " & Chr(10) & _
  720.               Me.sSqlWhereMe & " and " & Me.sSqlWhereMore
  721.         
  722.         Set rec_num = Cw_DataEnvi.DataConnect.Execute(s)
  723.         If Not rec_num.EOF() Then
  724.             If rec_num.Fields("num") > 0 Then
  725.                 .TextMatrix(.Rows - 1, Qslz + 3) = rec_num.Fields("num")
  726.             End If
  727.         End If
  728.         rec_num.Close
  729.             
  730.         
  731.         
  732.         For j = .FixedCols To .Cols - 2 Step 2
  733.             .Cell(flexcpBackColor, .Rows - 1, j) = &HF7F3EC
  734.             .Cell(flexcpBackColor, .Rows - 1, j) = &HF7F3EC
  735.             If int_sum(j) > 0 Then
  736.                 .TextMatrix(.Rows - 1, j) = int_sum(j)
  737.                 
  738.                 If Val(.TextMatrix(.Rows - 1, Qslz + 2)) <> 0 Then
  739.                     .TextMatrix(.Rows - 1, j + 1) = Format(100 * int_sum(j) / Val(.TextMatrix(.Rows - 1, Qslz + 2)), "##0.00")
  740.                 End If
  741.             End If
  742.         
  743.         Next j
  744.         
  745.         .Redraw = True
  746.     End With
  747.     Me.PB_Proc.Visible = False
  748.     Me.MousePointer = 0
  749.     Exit Function
  750. ErrCtrl:
  751.     If rs.State = 1 Then
  752.         rs.Close
  753.     End If
  754.     Set rs = Nothing
  755.     Me.PB_Proc.Visible = False
  756.     Me.CxbbGrid.Redraw = True
  757.     Me.MousePointer = 0
  758. End Function
  759. Private Sub bbyl(bbylte As Boolean)                    '报表打印预览
  760.     
  761.     Dim Bbzbt$, Bbxbt() As String, bbxbtzzxs() As Integer, Bbxbtgs As Integer
  762.     Dim Bbbwh() As String, Bbbwhzzxs() As Integer, Bbbwhgs As Integer
  763.     Bbxbtgs = 1                                         '报 表 小 标 题 行 数
  764.     Bbbwhgs = 0                                          '报 表 表 尾 行 数
  765.     ReDim Bbxbt(1 To Bbxbtgs)
  766.     ReDim bbxbtzzxs(1 To Bbxbtgs)
  767.     If Bbbwhgs <> 0 Then
  768.         ReDim Bbbwh(1 To Bbbwhgs)
  769.         ReDim Bbbwhzzxs(1 To Bbbwhgs)
  770.     End If
  771.     Bbzbt = ReportTitle
  772.     
  773.     bbxbtzzxs(1) = 0                                     '报表行组织形式(0-居左 1-居中 2-居右)
  774.     Call Scyxsjb(CxbbGrid)                               '生成报表数据
  775.     Call Scdybb(Dyymctbl, Bbzbt, Bbxbt(), bbxbtzzxs(), Bbxbtgs, Bbbwh(), Bbbwhzzxs(), Bbbwhgs, bbylte)
  776.     If Not bbylte Then
  777.         Unload DY_Tybbyldy
  778.     End If
  779.     
  780. End Sub