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

企业管理

开发平台:

Visual Basic

  1. VERSION 5.00
  2. Object = "{D76D7128-4A96-11D3-BD95-D296DC2DD072}#1.0#0"; "VSOCX7.OCX"
  3. Begin VB.Form Set_PmItemFrm 
  4.    BorderStyle     =   1  'Fixed Single
  5.    Caption         =   "工资系统可查阅的人事项目"
  6.    ClientHeight    =   4695
  7.    ClientLeft      =   45
  8.    ClientTop       =   330
  9.    ClientWidth     =   3495
  10.    Icon            =   "设置_工资可查阅项目.frx":0000
  11.    LinkTopic       =   "Form1"
  12.    LockControls    =   -1  'True
  13.    MaxButton       =   0   'False
  14.    MinButton       =   0   'False
  15.    ScaleHeight     =   4695
  16.    ScaleWidth      =   3495
  17.    StartUpPosition =   2  '屏幕中心
  18.    Begin VB.CommandButton Cmd_All 
  19.       Caption         =   "全选(&A)"
  20.       Height          =   300
  21.       Left            =   1140
  22.       TabIndex        =   4
  23.       Top             =   3960
  24.       Width           =   1120
  25.    End
  26.    Begin VB.CommandButton Cmd_Cancel 
  27.       Caption         =   "取消(&C)"
  28.       Height          =   300
  29.       Left            =   2315
  30.       TabIndex        =   3
  31.       Top             =   4320
  32.       Width           =   1120
  33.    End
  34.    Begin VB.CommandButton Cmd_Save 
  35.       Caption         =   "保存(&S)"
  36.       Height          =   300
  37.       Left            =   1140
  38.       TabIndex        =   2
  39.       Top             =   4320
  40.       Width           =   1120
  41.    End
  42.    Begin VB.CommandButton Cmd_Qing 
  43.       Caption         =   "全清(&Q)"
  44.       Height          =   300
  45.       Left            =   2310
  46.       TabIndex        =   1
  47.       Top             =   3960
  48.       Width           =   1120
  49.    End
  50.    Begin VSFlex8Ctl.VSFlexGrid CzxsGrid 
  51.       Height          =   3825
  52.       Left            =   30
  53.       TabIndex        =   0
  54.       Top             =   0
  55.       Width           =   3405
  56.       _ExtentX        =   6006
  57.       _ExtentY        =   6747
  58.       Appearance      =   1
  59.       BorderStyle     =   1
  60.       Enabled         =   -1  'True
  61.       BeginProperty Font {0BE35203-8F91-11CE-9DE3-00AA004BB851} 
  62.          Name            =   "宋体"
  63.          Size            =   9
  64.          Charset         =   134
  65.          Weight          =   400
  66.          Underline       =   0   'False
  67.          Italic          =   0   'False
  68.          Strikethrough   =   0   'False
  69.       EndProperty
  70.       MousePointer    =   0
  71.       BackColor       =   -2147483643
  72.       ForeColor       =   -2147483640
  73.       BackColorFixed  =   -2147483633
  74.       ForeColorFixed  =   -2147483630
  75.       BackColorSel    =   -2147483635
  76.       ForeColorSel    =   -2147483634
  77.       BackColorBkg    =   -2147483636
  78.       BackColorAlternate=   -2147483643
  79.       GridColor       =   -2147483633
  80.       GridColorFixed  =   -2147483632
  81.       TreeColor       =   -2147483632
  82.       FloodColor      =   192
  83.       SheetBorder     =   -2147483642
  84.       FocusRect       =   1
  85.       HighLight       =   1
  86.       AllowSelection  =   -1  'True
  87.       AllowBigSelection=   -1  'True
  88.       AllowUserResizing=   0
  89.       SelectionMode   =   0
  90.       GridLines       =   1
  91.       GridLinesFixed  =   2
  92.       GridLineWidth   =   1
  93.       Rows            =   50
  94.       Cols            =   10
  95.       FixedRows       =   1
  96.       FixedCols       =   1
  97.       RowHeightMin    =   0
  98.       RowHeightMax    =   0
  99.       ColWidthMin     =   0
  100.       ColWidthMax     =   0
  101.       ExtendLastCol   =   0   'False
  102.       FormatString    =   ""
  103.       ScrollTrack     =   0   'False
  104.       ScrollBars      =   3
  105.       ScrollTips      =   0   'False
  106.       MergeCells      =   0
  107.       MergeCompare    =   0
  108.       AutoResize      =   -1  'True
  109.       AutoSizeMode    =   0
  110.       AutoSearch      =   0
  111.       MultiTotals     =   -1  'True
  112.       SubtotalPosition=   1
  113.       OutlineBar      =   0
  114.       OutlineCol      =   0
  115.       Ellipsis        =   0
  116.       ExplorerBar     =   0
  117.       PicturesOver    =   0   'False
  118.       FillStyle       =   0
  119.       RightToLeft     =   0   'False
  120.       PictureType     =   0
  121.       TabBehavior     =   0
  122.       OwnerDraw       =   0
  123.       Editable        =   0   'False
  124.       ShowComboButton =   -1  'True
  125.       WordWrap        =   0   'False
  126.       TextStyle       =   0
  127.       TextStyleFixed  =   0
  128.       OleDragMode     =   0
  129.       OleDropMode     =   0
  130.       DataMode        =   0
  131.       VirtualData     =   -1  'True
  132.    End
  133. End
  134. Attribute VB_Name = "Set_PmItemFrm"
  135. Attribute VB_GlobalNameSpace = False
  136. Attribute VB_Creatable = False
  137. Attribute VB_PredeclaredId = True
  138. Attribute VB_Exposed = False
  139. '*******************************************************
  140. '*    模 块 名 称 :显示项目设置
  141. '*    功 能 描 述 :设置字段是否对工资和人事系统可见
  142. '*    程序员姓名  :刘  刚
  143. '*    最后修改人  :刘  刚
  144. '*    最后修改时间:2001/11/30
  145. '*    备        注:经过自己测试
  146. '*******************************************************
  147. Option Explicit
  148. Dim Rec_CodeSet As New ADODB.Recordset   '编码设置表
  149. Dim jdzygs As Integer                    '控件焦点转移个数
  150. Dim Lrzt As Integer                      '录入状态标志(0-非录入状态 1-增加 2-修改)
  151. Dim Rsc As New ADODB.Recordset
  152. Dim Str_RightEdit As String              '编辑(新增、修改、删除)权限索引
  153. Dim i As Long
  154. '以下为固定使用变量(网格)
  155. Dim Cxnrrec As New ADODB.Recordset       '显示查询内容动态集
  156. Dim Dyymctbl As New DY_Dyymsz            '打印页面窗体变量
  157. Dim GridCode As String                   '显示网格网格代码
  158. Dim GridInf() As Variant                 '整个网格设置信息
  159. Dim Tsxx As String                       '系统提示信息
  160. Dim Qslz As Long                         '网格隐藏(非操作显示)列数
  161. Dim Sjhgd As Double                      '网格数据行高度
  162. Dim GridBoolean() As Boolean             '网格列信息(布尔型)
  163. Dim GridStr()  As String                 '网格列信息(字符型)
  164. Dim GridInt() As Integer                 '网格列信息(整型)
  165. Dim Szzls As Integer                     '数组总列数(网格列数-1)
  166. Private Sub Cmd_All_Click()
  167.     With CzxsGrid
  168.         For i = .FixedRows To .Rows - 1
  169.             .TextMatrix(i, Sydz("002", GridStr(), Szzls)) = 1
  170.         Next
  171.     End With
  172. End Sub
  173. Private Sub Cmd_Cancel_Click()
  174.     Unload Me
  175. End Sub
  176. Private Sub Cmd_Qing_Click()
  177.     '清空除工号和姓名以外的显示字段
  178.     With CzxsGrid
  179.         For i = .FixedRows To .Rows - 1
  180.             If LCase(Trim(.TextMatrix(i, 0))) <> "empno" And _
  181.                LCase(Trim(.TextMatrix(i, 0))) <> "empname" And _
  182.                LCase(Trim(.TextMatrix(i, 0))) <> "deptcode" Then
  183.                    .TextMatrix(i, Sydz("002", GridStr(), Szzls)) = 0
  184.             End If
  185.         Next
  186.     End With
  187.     
  188. End Sub
  189. Private Sub Cmd_Save_Click()
  190.     Dim Sql As String
  191.     '判断用户是否有此功能执行权限,如有则写上机日志(进入)
  192.     If Not Security_Log(Str_RightEdit, Xtczybm, 1, True) Then
  193.         Exit Sub
  194.     End If
  195.     Sql = ""
  196.     With CzxsGrid
  197.         For i = .FixedRows To .Rows - 1
  198.             Select Case LCase(Trim(.TextMatrix(i, 0)))
  199.                 Case "empno"
  200.                     If .TextMatrix(i, Sydz("002", GridStr(), Szzls)) = False Then
  201.                         Call Xtxxts("工号必须被选中!", 0, 1)
  202.                         Exit Sub
  203.                     End If
  204.                 Case "empname"
  205.                     If .TextMatrix(i, Sydz("002", GridStr(), Szzls)) = False Then
  206.                         Call Xtxxts("姓名必须被选中!", 0, 1)
  207.                         Exit Sub
  208.                     End If
  209.                 Case "deptcode"
  210.                     If .TextMatrix(i, Sydz("002", GridStr(), Szzls)) = False Then
  211.                         Call Xtxxts("部门必须被选中!", 0, 1)
  212.                         Exit Sub
  213.                     End If
  214.             End Select
  215.             If .TextMatrix(i, Sydz("002", GridStr(), Szzls)) = True Then
  216.                 Sql = Sql & ",'" & .TextMatrix(i, 0) & "'"
  217.             End If
  218.         Next
  219.     End With
  220.     If Trim(Sql) <> "" Then
  221.         Sql = Right(Trim(Sql), Len(Trim(Sql)) - 1)
  222.         Sql = "update rs_Items set pm=0 " & _
  223.           " update Rs_items set pm=1 where FieldName in ( " & Sql & " ) "
  224.     End If
  225.     On Error GoTo Err1
  226.     With Cw_DataEnvi.DataConnect
  227.         .BeginTrans
  228.         If Trim(Sql) <> "" Then
  229.             .Execute Sql
  230.         End If
  231.         .CommitTrans
  232.     End With
  233.     Call Xtxxts("保存成功!", 0, 4)
  234.     Exit Sub
  235. Err1:
  236.     Cw_DataEnvi.DataConnect.RollbackTrans
  237.     Call Xtxxts("保存不成功!", 0, 1)
  238. End Sub
  239. Private Sub CzxsGrid_BeforeEdit(ByVal Row As Long, ByVal Col As Long, Cancel As Boolean)
  240.     If Col <> Sydz("002", GridStr(), Szzls) Then
  241.         Cancel = True
  242.     Else
  243.         Cancel = False
  244.     End If
  245. End Sub
  246. Private Sub Form_Load()
  247.     '调入网格设置信息
  248.     GridCode = "rs_pmitem"
  249.     Call BzWgcsh(CzxsGrid, GridCode, GridInf(), GridBoolean(), GridInt(), GridStr())
  250.     Qslz = GridInf(1)
  251.     Sjhgd = GridInf(2)
  252.     Szzls = CzxsGrid.Cols - 1
  253.     CzxsGrid.TextMatrix(0, 0) = "字段名"
  254.     CzxsGrid.Editable = True
  255.     
  256.     '填 充 网 格
  257.     Call Cxnrtcwg
  258.     Str_RightEdit = "Rs_PmItem_Edit"
  259. End Sub
  260. Private Sub Cxnrtcwg()                               '查询内容填充网格
  261.     Dim Sqlstr As String              '查询连接串
  262.     Dim jsqte As Long                 '查询临时使用变量
  263.   
  264.     '为加快显示速度,将网格刷新动作冻结
  265.     CzxsGrid.Redraw = False
  266.   
  267.     '[>>查询连接串
  268.     Sqlstr = "SELECT * FROM Rs_Items  where Sid=1  order by ItemId"
  269.     '<<]
  270.     Set Cxnrrec = Cw_DataEnvi.DataConnect.Execute(Sqlstr)
  271.     
  272.     With Cxnrrec
  273.         CzxsGrid.Rows = CzxsGrid.FixedRows
  274.         If .EOF And .BOF Then
  275.             CzxsGrid.Redraw = True
  276.             Exit Sub
  277.         End If
  278.         
  279.         jsqte = CzxsGrid.FixedRows
  280.         
  281.         Do While Not .EOF
  282.             CzxsGrid.AddItem ""
  283.             Call Jltcwg(Cxnrrec, jsqte)                              '调入填充网格子过程
  284.             CzxsGrid.RowHeight(jsqte) = Sjhgd                        '设置网格高度
  285.             .MoveNext
  286.             jsqte = jsqte + 1
  287.         Loop
  288.     End With
  289.   
  290.     '将网格刷新动作解冻
  291.     CzxsGrid.Redraw = True
  292. End Sub
  293. Private Sub Jltcwg(Jlbrec As ADODB.Recordset, Rowjsq As Long)           '记录内容填充网格
  294.     '[>>以下为自定义部分
  295.     With Jlbrec
  296.         CzxsGrid.TextMatrix(Rowjsq, 0) = .Fields("FieldName")
  297.         CzxsGrid.TextMatrix(Rowjsq, Sydz("001", GridStr(), Szzls)) = Trim(.Fields("ChName") & "")            '项目名称
  298.         CzxsGrid.TextMatrix(Rowjsq, Sydz("002", GridStr(), Szzls)) = .Fields("Pm")        'Rs
  299.     End With
  300.     '以上为自定义部分<<]
  301. End Sub