www.pudn.com > VB-KAOQINXITONG.zip > frmWorkTimeSet.frm


VERSION 5.00 
Object = "{BDC217C8-ED16-11CD-956C-0000C04E4C0A}#1.1#0"; "Tabctl32.ocx" 
Object = "{831FDD16-0C5C-11D2-A9FC-0000F8754DA1}#2.0#0"; "MSCOMCTL.OCX" 
Object = "{B9D938CE-50EE-40B2-9FA2-79A3112F4788}#4.2#0"; "BNCtrlGroup.ocx" 
Begin VB.Form frmWorkTimeSet  
   ClientHeight    =   7455 
   ClientLeft      =   975 
   ClientTop       =   420 
   ClientWidth     =   10545 
   Icon            =   "frmWorkTimeSet.frx":0000 
   KeyPreview      =   -1  'True 
   LinkTopic       =   "Form1" 
   ScaleHeight     =   7455 
   ScaleWidth      =   10545 
   StartUpPosition =   2  '屏幕中心 
   Begin VB.CheckBox chkAddLast  
      Alignment       =   1  'Right Justify 
      Appearance      =   0  'Flat 
      Caption         =   "加班尾卡:" 
      ForeColor       =   &H80000008& 
      Height          =   210 
      Left            =   7740 
      TabIndex        =   38 
      Top             =   5025 
      Width           =   1170 
   End 
   Begin VB.Frame Frame3  
      Appearance      =   0  'Flat 
      Caption         =   " 班次描述: " 
      ForeColor       =   &H80000008& 
      Height          =   1575 
      Left            =   7890 
      TabIndex        =   36 
      Top             =   5400 
      Width           =   2490 
      Begin VB.TextBox txtDesc  
         Appearance      =   0  'Flat 
         BackColor       =   &H00E0E0E0& 
         ForeColor       =   &H00FF0000& 
         Height          =   1140 
         Left            =   165 
         MultiLine       =   -1  'True 
         ScrollBars      =   2  'Vertical 
         TabIndex        =   37 
         Top             =   300 
         Width           =   2190 
      End 
   End 
   Begin MSComctlLib.TreeView TreeView1  
      Height          =   5490 
      Left            =   5010 
      TabIndex        =   31 
      Top             =   870 
      Visible         =   0   'False 
      Width           =   2100 
      _ExtentX        =   3704 
      _ExtentY        =   9684 
      _Version        =   393217 
      LabelEdit       =   1 
      Style           =   4 
      BorderStyle     =   1 
      Appearance      =   0 
   End 
   Begin BNCtrlGroup.BNButton cmdAdd  
      Height          =   375 
      Left            =   9045 
      TabIndex        =   8 
      Top             =   570 
      Width           =   1305 
      _ExtentX        =   2302 
      _ExtentY        =   661 
      Caption         =   "添 加" 
      CapAlign        =   2 
      BackStyle       =   2 
      BeginProperty Font {0BE35203-8F91-11CE-9DE3-00AA004BB851}  
         Name            =   "宋体" 
         Size            =   10.5 
         Charset         =   134 
         Weight          =   400 
         Underline       =   0   'False 
         Italic          =   0   'False 
         Strikethrough   =   0   'False 
      EndProperty 
      Mode            =   0 
      Value           =   0   'False 
      cBack           =   -2147483633 
   End 
   Begin BNCtrlGroup.BNButton cmdDelete  
      Height          =   375 
      Left            =   9075 
      TabIndex        =   9 
      Top             =   1095 
      Width           =   1305 
      _ExtentX        =   2302 
      _ExtentY        =   661 
      Caption         =   "删 除" 
      CapAlign        =   2 
      BackStyle       =   2 
      BeginProperty Font {0BE35203-8F91-11CE-9DE3-00AA004BB851}  
         Name            =   "宋体" 
         Size            =   10.5 
         Charset         =   134 
         Weight          =   400 
         Underline       =   0   'False 
         Italic          =   0   'False 
         Strikethrough   =   0   'False 
      EndProperty 
      Mode            =   0 
      Value           =   0   'False 
      cBack           =   -2147483633 
   End 
   Begin BNCtrlGroup.BNButton cmdEdit  
      Height          =   375 
      Left            =   9075 
      TabIndex        =   10 
      Top             =   1620 
      Width           =   1305 
      _ExtentX        =   2302 
      _ExtentY        =   661 
      Caption         =   "编 辑" 
      CapAlign        =   2 
      BackStyle       =   2 
      BeginProperty Font {0BE35203-8F91-11CE-9DE3-00AA004BB851}  
         Name            =   "宋体" 
         Size            =   10.5 
         Charset         =   134 
         Weight          =   400 
         Underline       =   0   'False 
         Italic          =   0   'False 
         Strikethrough   =   0   'False 
      EndProperty 
      Mode            =   0 
      Value           =   0   'False 
      cBack           =   -2147483633 
   End 
   Begin BNCtrlGroup.BNButton cmdCancel  
      Height          =   375 
      Left            =   9075 
      TabIndex        =   11 
      Top             =   2130 
      Width           =   1305 
      _ExtentX        =   2302 
      _ExtentY        =   661 
      Caption         =   "取 消" 
      CapAlign        =   2 
      BackStyle       =   2 
      BeginProperty Font {0BE35203-8F91-11CE-9DE3-00AA004BB851}  
         Name            =   "宋体" 
         Size            =   10.5 
         Charset         =   134 
         Weight          =   400 
         Underline       =   0   'False 
         Italic          =   0   'False 
         Strikethrough   =   0   'False 
      EndProperty 
      Mode            =   0 
      Value           =   0   'False 
      cBack           =   -2147483633 
   End 
   Begin BNCtrlGroup.BNButton cmdExit  
      Cancel          =   -1  'True 
      Height          =   375 
      Left            =   9090 
      TabIndex        =   13 
      Top             =   4425 
      Width           =   1305 
      _ExtentX        =   2302 
      _ExtentY        =   661 
      Caption         =   "退 出" 
      CapAlign        =   2 
      BackStyle       =   2 
      BeginProperty Font {0BE35203-8F91-11CE-9DE3-00AA004BB851}  
         Name            =   "宋体" 
         Size            =   10.5 
         Charset         =   134 
         Weight          =   400 
         Underline       =   0   'False 
         Italic          =   0   'False 
         Strikethrough   =   0   'False 
      EndProperty 
      Mode            =   0 
      Value           =   0   'False 
      cBack           =   -2147483633 
   End 
   Begin BNCtrlGroup.BNButton cmdSave  
      Height          =   375 
      Left            =   9090 
      TabIndex        =   12 
      Top             =   2715 
      Width           =   1305 
      _ExtentX        =   2302 
      _ExtentY        =   661 
      Caption         =   "保 存" 
      CapAlign        =   2 
      BackStyle       =   2 
      BeginProperty Font {0BE35203-8F91-11CE-9DE3-00AA004BB851}  
         Name            =   "宋体" 
         Size            =   10.5 
         Charset         =   134 
         Weight          =   400 
         Underline       =   0   'False 
         Italic          =   0   'False 
         Strikethrough   =   0   'False 
      EndProperty 
      Mode            =   0 
      Value           =   0   'False 
      cBack           =   -2147483633 
   End 
   Begin VB.Frame Frame2  
      Appearance      =   0  'Flat 
      ForeColor       =   &H80000008& 
      Height          =   1575 
      Left            =   3285 
      TabIndex        =   24 
      Top             =   5400 
      Width           =   4545 
      Begin VB.TextBox txtClassTime  
         Appearance      =   0  'Flat 
         BackColor       =   &H00E0E0E0& 
         BeginProperty Font  
            Name            =   "宋体" 
            Size            =   10.5 
            Charset         =   134 
            Weight          =   400 
            Underline       =   0   'False 
            Italic          =   0   'False 
            Strikethrough   =   0   'False 
         EndProperty 
         ForeColor       =   &H00FF0000& 
         Height          =   315 
         IMEMode         =   3  'DISABLE 
         Left            =   3427 
         MaxLength       =   8 
         TabIndex        =   41 
         Top             =   716 
         Width           =   975 
      End 
      Begin VB.TextBox txtMustAdd  
         Appearance      =   0  'Flat 
         BackColor       =   &H00E0E0E0& 
         BeginProperty Font  
            Name            =   "宋体" 
            Size            =   10.5 
            Charset         =   134 
            Weight          =   400 
            Underline       =   0   'False 
            Italic          =   0   'False 
            Strikethrough   =   0   'False 
         EndProperty 
         ForeColor       =   &H00FF0000& 
         Height          =   315 
         IMEMode         =   3  'DISABLE 
         Left            =   1110 
         MaxLength       =   8 
         TabIndex        =   39 
         Top             =   1155 
         Width           =   975 
      End 
      Begin VB.TextBox txtHours  
         Appearance      =   0  'Flat 
         BackColor       =   &H00E0E0E0& 
         BeginProperty Font  
            Name            =   "宋体" 
            Size            =   10.5 
            Charset         =   134 
            Weight          =   400 
            Underline       =   0   'False 
            Italic          =   0   'False 
            Strikethrough   =   0   'False 
         EndProperty 
         ForeColor       =   &H00FF0000& 
         Height          =   315 
         IMEMode         =   3  'DISABLE 
         Left            =   3427 
         MaxLength       =   8 
         TabIndex        =   6 
         Top             =   278 
         Width           =   975 
      End 
      Begin VB.TextBox txtCode  
         Appearance      =   0  'Flat 
         BackColor       =   &H00C0FFFF& 
         BeginProperty Font  
            Name            =   "宋体" 
            Size            =   10.5 
            Charset         =   134 
            Weight          =   400 
            Underline       =   0   'False 
            Italic          =   0   'False 
            Strikethrough   =   0   'False 
         EndProperty 
         Height          =   315 
         Left            =   1110 
         MaxLength       =   3 
         TabIndex        =   16 
         TabStop         =   0   'False 
         Top             =   278 
         Width           =   975 
      End 
      Begin VB.TextBox txtClass  
         Appearance      =   0  'Flat 
         BackColor       =   &H00E0E0E0& 
         BeginProperty Font  
            Name            =   "宋体" 
            Size            =   10.5 
            Charset         =   134 
            Weight          =   400 
            Underline       =   0   'False 
            Italic          =   0   'False 
            Strikethrough   =   0   'False 
         EndProperty 
         Height          =   315 
         Left            =   1110 
         MaxLength       =   8 
         TabIndex        =   7 
         Top             =   716 
         Width           =   975 
      End 
      Begin VB.Label lblLabels  
         Alignment       =   1  'Right Justify 
         AutoSize        =   -1  'True 
         BackStyle       =   0  'Transparent 
         Caption         =   "正班工时:" 
         BeginProperty Font  
            Name            =   "Arial" 
            Size            =   9 
            Charset         =   0 
            Weight          =   400 
            Underline       =   0   'False 
            Italic          =   0   'False 
            Strikethrough   =   0   'False 
         EndProperty 
         Height          =   225 
         Index           =   7 
         Left            =   2520 
         TabIndex        =   42 
         Top             =   780 
         Width           =   765 
      End 
      Begin VB.Label lblLabels  
         Alignment       =   1  'Right Justify 
         AutoSize        =   -1  'True 
         BackStyle       =   0  'Transparent 
         Caption         =   "额定加班:" 
         BeginProperty Font  
            Name            =   "Arial" 
            Size            =   9 
            Charset         =   0 
            Weight          =   400 
            Underline       =   0   'False 
            Italic          =   0   'False 
            Strikethrough   =   0   'False 
         EndProperty 
         Height          =   225 
         Index           =   4 
         Left            =   180 
         TabIndex        =   40 
         Top             =   1200 
         Width           =   765 
      End 
      Begin VB.Label lblLabels  
         Alignment       =   1  'Right Justify 
         AutoSize        =   -1  'True 
         BackStyle       =   0  'Transparent 
         Caption         =   "排班颜色:" 
         BeginProperty Font  
            Name            =   "Arial" 
            Size            =   9 
            Charset         =   0 
            Weight          =   400 
            Underline       =   0   'False 
            Italic          =   0   'False 
            Strikethrough   =   0   'False 
         EndProperty 
         Height          =   180 
         Index           =   24 
         Left            =   2505 
         TabIndex        =   30 
         Top             =   1222 
         Width           =   810 
      End 
      Begin VB.Label lblLabels  
         Alignment       =   1  'Right Justify 
         AutoSize        =   -1  'True 
         Caption         =   "班次序号:" 
         BeginProperty Font  
            Name            =   "Times New Roman" 
            Size            =   9.75 
            Charset         =   0 
            Weight          =   400 
            Underline       =   0   'False 
            Italic          =   0   'False 
            Strikethrough   =   0   'False 
         EndProperty 
         Height          =   225 
         Index           =   0 
         Left            =   120 
         TabIndex        =   29 
         Top             =   4860 
         Visible         =   0   'False 
         Width           =   975 
      End 
      Begin VB.Label lblColor  
         Alignment       =   2  'Center 
         BackColor       =   &H00FFFFFF& 
         BackStyle       =   0  'Transparent 
         Caption         =   "字体颜色" 
         DataField       =   "Color" 
         Height          =   270 
         Left            =   3435 
         TabIndex        =   28 
         Tag             =   "A1,Color" 
         ToolTipText     =   "颜色" 
         Top             =   1215 
         Width           =   975 
      End 
      Begin VB.Label lblLabels  
         Alignment       =   1  'Right Justify 
         AutoSize        =   -1  'True 
         BackStyle       =   0  'Transparent 
         Caption         =   "标准工时:" 
         BeginProperty Font  
            Name            =   "Arial" 
            Size            =   9 
            Charset         =   0 
            Weight          =   400 
            Underline       =   0   'False 
            Italic          =   0   'False 
            Strikethrough   =   0   'False 
         EndProperty 
         Height          =   180 
         Index           =   6 
         Left            =   2467 
         TabIndex        =   27 
         Top             =   345 
         Width           =   810 
      End 
      Begin VB.Label lblLabels  
         Alignment       =   1  'Right Justify 
         AutoSize        =   -1  'True 
         BackStyle       =   0  'Transparent 
         Caption         =   "排班代号:" 
         BeginProperty Font  
            Name            =   "Arial" 
            Size            =   9 
            Charset         =   0 
            Weight          =   400 
            Underline       =   0   'False 
            Italic          =   0   'False 
            Strikethrough   =   0   'False 
         EndProperty 
         Height          =   180 
         Index           =   38 
         Left            =   135 
         TabIndex        =   26 
         Top             =   345 
         Width           =   810 
      End 
      Begin VB.Label lblLabels  
         Alignment       =   1  'Right Justify 
         AutoSize        =   -1  'True 
         BackStyle       =   0  'Transparent 
         Caption         =   "班次代码:" 
         BeginProperty Font  
            Name            =   "Arial" 
            Size            =   9 
            Charset         =   0 
            Weight          =   400 
            Underline       =   0   'False 
            Italic          =   0   'False 
            Strikethrough   =   0   'False 
         EndProperty 
         Height          =   180 
         Index           =   39 
         Left            =   135 
         TabIndex        =   25 
         Top             =   772 
         Width           =   810 
      End 
      Begin VB.Shape shpColor  
         BackColor       =   &H00FFFFFF& 
         BackStyle       =   1  'Opaque 
         Height          =   270 
         Left            =   3427 
         Top             =   1177 
         Width           =   990 
      End 
   End 
   Begin MSComctlLib.TreeView TreeList  
      Height          =   6855 
      Left            =   105 
      TabIndex        =   14 
      Top             =   120 
      Width           =   3105 
      _ExtentX        =   5477 
      _ExtentY        =   12091 
      _Version        =   393217 
      Style           =   7 
      BorderStyle     =   1 
      Appearance      =   0 
   End 
   Begin MSComctlLib.StatusBar StatusBar1  
      Align           =   2  'Align Bottom 
      Height          =   375 
      Left            =   0 
      TabIndex        =   20 
      Top             =   7080 
      Width           =   10545 
      _ExtentX        =   18600 
      _ExtentY        =   661 
      _Version        =   393216 
      BeginProperty Panels {8E3867A5-8586-11D1-B16A-00C0F0283628}  
         NumPanels       =   1 
         BeginProperty Panel1 {8E3867AB-8586-11D1-B16A-00C0F0283628}  
            AutoSize        =   1 
            Object.Width           =   18098 
         EndProperty 
      EndProperty 
   End 
   Begin BNCtrlGroup.BNComboBox cobHourKindID  
      Height          =   300 
      Left            =   5175 
      TabIndex        =   5 
      Top             =   4965 
      Width           =   1740 
      _ExtentX        =   0 
      _ExtentY        =   0 
      BackColor       =   14737632 
      BackColor       =   14737632 
      BackColor       =   14737632 
   End 
   Begin VB.TextBox txtHourKindID  
      Appearance      =   0  'Flat 
      BackColor       =   &H00E0E0E0& 
      ForeColor       =   &H00FF0000& 
      Height          =   300 
      IMEMode         =   3  'DISABLE 
      Left            =   4095 
      Locked          =   -1  'True 
      MaxLength       =   1 
      TabIndex        =   18 
      TabStop         =   0   'False 
      Top             =   4965 
      Width           =   1050 
   End 
   Begin VB.Frame Frame1  
      BorderStyle     =   0  'None 
      Height          =   5400 
      Index           =   4 
      Left            =   3150 
      TabIndex        =   21 
      Top             =   -450 
      Width           =   5865 
      Begin VB.CheckBox chkSpeCard  
         Appearance      =   0  'Flat 
         BackColor       =   &H00FFFFC0& 
         ForeColor       =   &H80000008& 
         Height          =   195 
         Index           =   1 
         Left            =   1980 
         TabIndex        =   47 
         Top             =   1785 
         Visible         =   0   'False 
         Width           =   270 
      End 
      Begin VB.TextBox txtAdjEnd  
         Appearance      =   0  'Flat 
         BackColor       =   &H00E0E0E0& 
         BeginProperty Font  
            Name            =   "宋体" 
            Size            =   10.5 
            Charset         =   134 
            Weight          =   400 
            Underline       =   0   'False 
            Italic          =   0   'False 
            Strikethrough   =   0   'False 
         EndProperty 
         ForeColor       =   &H00FF0000& 
         Height          =   315 
         IMEMode         =   3  'DISABLE 
         Index           =   1 
         Left            =   4650 
         Locked          =   -1  'True 
         MaxLength       =   8 
         TabIndex        =   46 
         Top             =   1905 
         Width           =   975 
      End 
      Begin VB.TextBox txtAdjBgn  
         BeginProperty Font  
            Name            =   "宋体" 
            Size            =   10.5 
            Charset         =   134 
            Weight          =   400 
            Underline       =   0   'False 
            Italic          =   0   'False 
            Strikethrough   =   0   'False 
         EndProperty 
         ForeColor       =   &H00FF0000& 
         Height          =   315 
         IMEMode         =   3  'DISABLE 
         Index           =   0 
         Left            =   0 
         MaxLength       =   8 
         TabIndex        =   45 
         Top             =   0 
         Width           =   975 
      End 
      Begin TabDlg.SSTab SSTab1  
         Height          =   495 
         Left            =   195 
         TabIndex        =   44 
         Top             =   585 
         Width           =   5580 
         _ExtentX        =   9843 
         _ExtentY        =   873 
         _Version        =   393216 
         Tabs            =   2 
         TabHeight       =   520 
         TabCaption(0)   =   "基本设置" 
         TabPicture(0)   =   "frmWorkTimeSet.frx":000C 
         Tab(0).ControlEnabled=   -1  'True 
         Tab(0).ControlCount=   0 
         TabCaption(1)   =   "其他设置" 
         TabPicture(1)   =   "frmWorkTimeSet.frx":0028 
         Tab(1).ControlEnabled=   0   'False 
         Tab(1).ControlCount=   0 
      End 
      Begin VB.TextBox txtAdjBgn  
         Appearance      =   0  'Flat 
         BackColor       =   &H00E0E0E0& 
         BeginProperty Font  
            Name            =   "宋体" 
            Size            =   10.5 
            Charset         =   134 
            Weight          =   400 
            Underline       =   0   'False 
            Italic          =   0   'False 
            Strikethrough   =   0   'False 
         EndProperty 
         ForeColor       =   &H00FF0000& 
         Height          =   315 
         IMEMode         =   3  'DISABLE 
         Index           =   1 
         Left            =   4635 
         MaxLength       =   8 
         TabIndex        =   35 
         Top             =   1523 
         Width           =   975 
      End 
      Begin VB.TextBox txtAdjustHours  
         Appearance      =   0  'Flat 
         BackColor       =   &H00E0E0E0& 
         ForeColor       =   &H00FF0000& 
         Height          =   315 
         IMEMode         =   3  'DISABLE 
         Index           =   1 
         Left            =   3840 
         TabIndex        =   34 
         Top             =   1725 
         Width           =   660 
      End 
      Begin VB.TextBox txtCardRange2  
         Appearance      =   0  'Flat 
         BackColor       =   &H00E0E0E0& 
         ForeColor       =   &H00FF0000& 
         Height          =   315 
         IMEMode         =   3  'DISABLE 
         Index           =   1 
         Left            =   2295 
         TabIndex        =   2 
         Top             =   1523 
         Width           =   420 
      End 
      Begin VB.CheckBox chkIsAdd  
         Appearance      =   0  'Flat 
         BackColor       =   &H00FFFFC0& 
         ForeColor       =   &H80000008& 
         Height          =   195 
         Index           =   1 
         Left            =   3405 
         TabIndex        =   4 
         Top             =   1785 
         Width           =   270 
      End 
      Begin VB.TextBox txtWorkTime  
         Appearance      =   0  'Flat 
         BackColor       =   &H00E0E0E0& 
         ForeColor       =   &H00FF0000& 
         Height          =   285 
         IMEMode         =   3  'DISABLE 
         Index           =   1 
         Left            =   855 
         TabIndex        =   0 
         Top             =   1538 
         Width           =   840 
      End 
      Begin VB.TextBox txtCardRange1  
         Appearance      =   0  'Flat 
         BackColor       =   &H00E0E0E0& 
         ForeColor       =   &H00FF0000& 
         Height          =   315 
         IMEMode         =   3  'DISABLE 
         Index           =   1 
         Left            =   1845 
         TabIndex        =   1 
         Top             =   1523 
         Width           =   420 
      End 
      Begin VB.CheckBox chkIsOver  
         Appearance      =   0  'Flat 
         BackColor       =   &H00FFFFC0& 
         Caption         =   "2" 
         ForeColor       =   &H80000008& 
         Height          =   210 
         Index           =   1 
         Left            =   2925 
         TabIndex        =   3 
         Top             =   1575 
         Width           =   285 
      End 
      Begin VB.Line Line2  
         BorderColor     =   &H00FF0000& 
         Index           =   1 
         X1              =   195 
         X2              =   5745 
         Y1              =   1440 
         Y2              =   1440 
      End 
      Begin VB.Label lblCpt  
         Alignment       =   2  'Center 
         AutoSize        =   -1  'True 
         BackStyle       =   0  'Transparent 
         Caption         =   "调整工时及起始时刻" 
         BeginProperty Font  
            Name            =   "Arial" 
            Size            =   9 
            Charset         =   0 
            Weight          =   400 
            Underline       =   0   'False 
            Italic          =   0   'False 
            Strikethrough   =   0   'False 
         EndProperty 
         Height          =   225 
         Index           =   5 
         Left            =   3900 
         TabIndex        =   33 
         Top             =   1200 
         Width           =   1620 
      End 
      Begin VB.Label lblCpt  
         Alignment       =   2  'Center 
         AutoSize        =   -1  'True 
         BackStyle       =   0  'Transparent 
         Caption         =   "标准打卡时刻" 
         BeginProperty Font  
            Name            =   "Arial" 
            Size            =   9 
            Charset         =   0 
            Weight          =   400 
            Underline       =   0   'False 
            Italic          =   0   'False 
            Strikethrough   =   0   'False 
         EndProperty 
         Height          =   225 
         Index           =   1 
         Left            =   450 
         TabIndex        =   32 
         Top             =   1200 
         Width           =   1080 
      End 
      Begin VB.Line Line1  
         BorderColor     =   &H00FF0000& 
         Index           =   0 
         X1              =   1755 
         X2              =   1755 
         Y1              =   1095 
         Y2              =   5250 
      End 
      Begin VB.Label lblCaption  
         Alignment       =   1  'Right Justify 
         AutoSize        =   -1  'True 
         BackStyle       =   0  'Transparent 
         Caption         =   "上班" 
         BeginProperty Font  
            Name            =   "Arial" 
            Size            =   9 
            Charset         =   0 
            Weight          =   400 
            Underline       =   0   'False 
            Italic          =   0   'False 
            Strikethrough   =   0   'False 
         EndProperty 
         Height          =   180 
         Index           =   1 
         Left            =   390 
         TabIndex        =   23 
         Top             =   1560 
         Width           =   360 
      End 
      Begin VB.Label lblCpt  
         AutoSize        =   -1  'True 
         BackStyle       =   0  'Transparent 
         Caption         =   "打卡范围" 
         BeginProperty Font  
            Name            =   "Arial" 
            Size            =   9 
            Charset         =   0 
            Weight          =   400 
            Underline       =   0   'False 
            Italic          =   0   'False 
            Strikethrough   =   0   'False 
         EndProperty 
         Height          =   225 
         Index           =   2 
         Left            =   1890 
         TabIndex        =   22 
         Top             =   1200 
         Width           =   720 
      End 
      Begin VB.Label lblCpt  
         Alignment       =   1  'Right Justify 
         AutoSize        =   -1  'True 
         BackStyle       =   0  'Transparent 
         Caption         =   "跨天" 
         BeginProperty Font  
            Name            =   "Arial" 
            Size            =   9 
            Charset         =   0 
            Weight          =   400 
            Underline       =   0   'False 
            Italic          =   0   'False 
            Strikethrough   =   0   'False 
         EndProperty 
         Height          =   225 
         Index           =   3 
         Left            =   2865 
         TabIndex        =   15 
         Top             =   1200 
         Width           =   360 
      End 
      Begin VB.Label lblCpt  
         Alignment       =   1  'Right Justify 
         AutoSize        =   -1  'True 
         BackStyle       =   0  'Transparent 
         Caption         =   "加班" 
         BeginProperty Font  
            Name            =   "Arial" 
            Size            =   9 
            Charset         =   0 
            Weight          =   400 
            Underline       =   0   'False 
            Italic          =   0   'False 
            Strikethrough   =   0   'False 
         EndProperty 
         Height          =   225 
         Index           =   4 
         Left            =   3360 
         TabIndex        =   17 
         Top             =   1200 
         Width           =   360 
      End 
      Begin VB.Shape Shape2  
         BackColor       =   &H00FFFFC0& 
         BackStyle       =   1  'Opaque 
         BorderStyle     =   0  'Transparent 
         Height          =   855 
         Index           =   1 
         Left            =   210 
         Top             =   1455 
         Width           =   5550 
      End 
      Begin VB.Shape Shape1  
         BackColor       =   &H8000000F& 
         BackStyle       =   1  'Opaque 
         BorderColor     =   &H00FF0000& 
         Height          =   4185 
         Left            =   195 
         Top             =   1080 
         Width           =   5580 
      End 
   End 
   Begin BNCtrlGroup.BNButton cmdSearch  
      Height          =   375 
      Left            =   9090 
      TabIndex        =   43 
      Top             =   3300 
      Width           =   1305 
      _ExtentX        =   2302 
      _ExtentY        =   661 
      Caption         =   "查 找" 
      CapAlign        =   2 
      BackStyle       =   2 
      BeginProperty Font {0BE35203-8F91-11CE-9DE3-00AA004BB851}  
         Name            =   "宋体" 
         Size            =   10.5 
         Charset         =   134 
         Weight          =   400 
         Underline       =   0   'False 
         Italic          =   0   'False 
         Strikethrough   =   0   'False 
      EndProperty 
      Mode            =   0 
      Value           =   0   'False 
      cBack           =   -2147483633 
   End 
   Begin VB.Label lblLabels  
      Alignment       =   1  'Right Justify 
      AutoSize        =   -1  'True 
      Caption         =   "班次种类:" 
      BeginProperty Font  
         Name            =   "Arial" 
         Size            =   9 
         Charset         =   0 
         Weight          =   400 
         Underline       =   0   'False 
         Italic          =   0   'False 
         Strikethrough   =   0   'False 
      EndProperty 
      Height          =   180 
      Index           =   3 
      Left            =   3255 
      TabIndex        =   19 
      Top             =   5055 
      Width           =   810 
   End 
End 
Attribute VB_Name = "frmWorkTimeSet" 
Attribute VB_GlobalNameSpace = False 
Attribute VB_Creatable = False 
Attribute VB_PredeclaredId = True 
Attribute VB_Exposed = False 
'2002-4-15: 
'   修改了自动签卡的BUG 
'   将打卡的前后误差范围分别进行了定义 
'   修改了调整工时设置时的BUG 
 
 
Option Explicit 
Private WithEvents madoWkTmRS As ADODB.Recordset 
Attribute madoWkTmRS.VB_VarHelpID = -1 
Dim mbChangedByCode As Boolean 
Dim mbEditFlag      As Boolean 
Dim mbAddNewFlag    As Boolean 
Dim mbDataChanged   As Boolean 
Dim mbFirstRun      As Boolean 
Dim mlID            As Long 
Dim msClassID       As String 
Dim msCode          As String 
Dim mbIsBusy        As Boolean 
Dim mvBookMark 
Dim mbDisabled      As Boolean 
Dim mbDisabled1     As Boolean 
Dim mbDisabled3     As Boolean 
Dim mNode           As MSComctlLib.Node 
 
Private Sub cmdSearch_Click() 
  Dim sClassID As String 
  Dim oNode As MSComctlLib.Node 
 
'  On Error Resume Next 
  Me.Hide 
  sClassID = gclsInclude.MyInputBox("请输入须定位的班次代码", "查找班次") 
  Me.Show 
  If sClassID <> "" Then 
    sClassID = UCase(sClassID) 
    madoWkTmRS.Filter = "E6699 = '" & sClassID & "'" 
    If madoWkTmRS.RecordCount = 0 Then 
      MsgBox "未查找到编号为" & sClassID & "的班次!", vbExclamation 
    Else 
      '选中树节点 
      For Each oNode In TreeList.Nodes 
        If UCase(gclsInclude.MyGetSerialStr(oNode.Tag, 3)) = sClassID Then 
          oNode.Selected = True 
          TreeList.SetFocus 
          Exit For 
        End If 
      Next 
    End If 
  End If 
End Sub 
 
Private Sub madoWkTmRS_MoveComplete(ByVal adReason As ADODB.EventReasonEnum, ByVal pError As ADODB.Error, adStatus As ADODB.EventStatusEnum, ByVal pRecordset As ADODB.Recordset) 
  If mbIsBusy Then Exit Sub 
  Dim i As Integer 
  If mbDisabled1 Then Exit Sub 
  If madoWkTmRS.EOF Or madoWkTmRS.BOF Then 
    Exit Sub 
  Else 
    cmdEdit.Enabled = True 
  End If 
  If madoWkTmRS.RecordCount > 0 Then 
    LoShowValue True 
  Else 
    LoShowValue False 
  End If 
End Sub 
 
Private Sub cmdExit_Click() 
  Unload Me 
End Sub 
 
Private Sub cobHourKindID_Click() 
  If mbDisabled3 Then Exit Sub 
  txtHourKindID.Text = gclsCommon.CBNGetFirstData(cobHourKindID.Text) 
End Sub 
 
Private Sub Form_Click() 
  StatusBar1.Panels(1).Text = "" 
  If TreeView1.Visible Then TreeView1.Visible = False 
End Sub 
 
Private Sub LoShowValue(ByVal fbFlag As Boolean) 
  Dim oControl As Control 
  Dim i As Integer 
  Dim sinTemp As Single 
  With madoWkTmRS 
    For Each oControl In Controls 
'      Debug.Print TypeName(oControl) 
      Select Case TypeName(oControl) 
        Case "BNComboBox" 
          'txtHourKindID.DataField = "C6689" 
          If gclsInclude.MyNz(.Fields("C6689"), False) = False Then 
            oControl.ListIndex = 3 
          Else 
            i = .Fields("C6689") 
            If i <= oControl.ListCount Then 
              oControl.ListIndex = i 
            Else 
              oControl.ListIndex = 3 
            End If 
          End If 
        Case "CheckBox" 
          If Len(oControl.DataField) > 0 Then 
            If fbFlag Then 
              If gclsInclude.MyNz(.Fields(oControl.DataField), False) = False Then 
                oControl.Value = 0 
              Else 
                oControl.Value = 1 
              End If 
            Else 
              If mbAddNewFlag Then 
                If oControl.Name = "chkAddLast" Then 
                  oControl.Value = 1 
                Else 
                  oControl.Value = IIf(fbFlag, 1, 0) 
                End If 
              Else 
                oControl.Value = IIf(fbFlag, 1, 0) 
              End If 
            End If 
          End If 
        Case "TextBox" 
          If Len(oControl.DataField) > 0 Then 
            If fbFlag Then 
              If oControl.Name = "txtWorkTime" Then 
                oControl = gclsInclude.MyNz(.Fields(oControl.DataField), "") 
              ElseIf oControl.Name = "txtAdjBgn" Then 
                If IsDate(gclsInclude.MyNz(.Fields(oControl.DataField), 0)) Then 
                  sinTemp = gclsInclude.MyNz(.Fields("C667" & (5 + oControl.Index)).Value, 0) 
                  If sinTemp <> 0 Then 
                    oControl = gclsInclude.MyNz(.Fields(oControl.DataField), 0) 
                    txtAdjEnd(oControl.Index) = DateAdd("n", Abs(sinTemp * 60), CDate(.Fields(oControl.DataField))) 
                  Else 
                    oControl = "" 
                    txtAdjEnd(oControl.Index) = "" 
                  End If 
                Else 
                  oControl = "" 
                  txtAdjEnd(oControl.Index) = "" 
                End If 
              ElseIf oControl.Name = "txtClassTime" Then 
                oControl = gclsInclude.MyNz(.Fields(oControl.DataField), 0) 
                If oControl = "0" Then 
                  oControl = gclsInclude.MyNz(.Fields("C6673"), 0) 
                End If 
              ElseIf oControl.Name = "txtHourKindID" Then 
              Else 
                oControl = gclsInclude.MyNz(.Fields(oControl.DataField), 0) 
              End If 
            Else 
              Select Case oControl.Name 
                Case "txtWorkTime" 
                  oControl = "00:00:00" 
                Case "txtCardRange1", "txtCardRange2", "txtAdjustHours" 
                  oControl = "0" 
                Case "txtHours" 
                  oControl = 8 
                Case "txtClassTime" 
                  oControl = 8 
                Case "txtMustAdd" 
                  oControl = 0 
                Case "txtAdjBgn", "txtAdjEnd" 
                  oControl = 0 
                Case "txtHourKindID" 
                  i = 3 
                Case Else 
                  oControl = "" 
            End Select 
          End If 
        End If 
      End Select 
    Next 
    If fbFlag Then 
      lblColor.ForeColor = gclsInclude.MyNz(!W6680, 0) 
    Else 
      lblColor.ForeColor = 0 
    End If 
    If lblColor.ForeColor < 0 Then 
      lblColor.ForeColor = 0 
    End If 
    shpColor.BackColor = &HFFFFFF - lblColor.ForeColor 
  End With 
End Sub 
 
Private Function LoSetValue() As String 
  Dim oControl As Control 
  Dim DDate As Date 
  Dim sValue As String 
  Dim i As Integer 
   
  On Error GoTo ErrLabel 
  gDBRecordConn.BeginTrans 
   
  For i = 1 To CLASS_SEC 
    If Len(txtAdjustHours(i)) = 0 Then txtAdjustHours(i) = 0 
    If txtAdjustHours(i) = 0 Then 
      txtAdjBgn(i) = 0 
      txtAdjEnd(i) = 0 
    End If 
  Next i 
  If Len(txtHours) = 0 Then txtHours = 0 
  If Len(txtMustAdd) = 0 Then txtMustAdd = 0 
  If Len(txtHourKindID) = 0 Then txtHourKindID = 0 
  With madoWkTmRS 
    For Each oControl In Controls 
      Select Case TypeName(oControl) 
        Case "CheckBox", "TextBox" 
          If Len(oControl.DataField) > 0 Then 
            If IsNull(madoWkTmRS.Fields(oControl.DataField)) Or (Trim(oControl) <> Trim(madoWkTmRS.Fields(oControl.DataField))) Or mbAddNewFlag Then 
              If gclsDBFunc.dbGetFieldType(madoWkTmRS.Fields(oControl.DataField).Type) = "Date" Then 
                DDate = CDate(oControl) 
                If IsNull(madoWkTmRS.Fields(oControl.DataField)) Or (madoWkTmRS.Fields(oControl.DataField) <> DDate) Or mbAddNewFlag Then 
                  madoWkTmRS.Fields(oControl.DataField) = IIf(CDate(oControl) = 0, Null, CDate(oControl)) 
                End If 
              Else 
                madoWkTmRS.Fields(oControl.DataField) = oControl 
              End If 
            End If 
          End If 
      End Select 
    Next 
    If mbAddNewFlag Or IsNull(!W6680) Or (!W6680 <> lblColor.ForeColor) Then !W6680 = lblColor.ForeColor 
    If mbAddNewFlag Or IsNull(!W0093) Or (!W0093 <> "WC") Then !W0093 = "WC" 
    If mbAddNewFlag Or IsNull(!W0090) Or (!W0090 <> Left(!W6681, 1) & "00") Then !W0090 = Left(!W6681, 1) & "00" 
    If mbAddNewFlag Or IsNull(!W0091) Or (!W0091 <> 0) Then !W0091 = 0 
    For i = 1 To CLASS_SEC 
      If Val(txtAdjustHours(i).Text) < 0 Then 
        DDate = CDate(txtAdjBgn(i)) 
        DDate = DateAdd("n", Abs(Val(txtAdjustHours(i).Text) * 60), DDate) 
        txtAdjEnd(i) = Format(DDate, "HH:NN:SS") 
      Else 
        txtAdjEnd(i) = txtAdjBgn(i) 
      End If 
    Next i 
    If mbAddNewFlag Or IsNull(!ID) Or (!ID <> mlID) Then !ID = mlID 
    .Update 
    gDBRecordConn.CommitTrans 
    LoSetValue = "" 
  End With 
Exit Function 
ErrLabel: 
  If Err = -2147467259 Then 
    LoSetValue = "查询过于复杂,数据无法保存,请联系软件供应商" 
  Else 
    LoSetValue = Error 
  End If 
  gDBRecordConn.RollbackTrans 
  Err.Clear 
End Function 
 
Private Sub LoSetDataField() 
  Dim i As Integer 
  txtClass.DataField = "E6699" 
  txtClass.ToolTipText = "班次代码最多为8位且不作限制" 
  txtDesc.DataField = "C6672" 
  txtDesc.ToolTipText = "对本班次的简要描述" 
  txtHours.DataField = "C6673" 
  txtHours.ToolTipText = "每天工作的有效时间.建议选择8小时" 
  txtClassTime.DataField = "C6680" 
  txtClassTime.ToolTipText = "每天必须工作时间.低于该工时为缺勤,一般情况下等于标准工时" 
  txtHourKindID.DataField = "C6689" 
  txtHourKindID.ToolTipText = "建议选择3" 
  txtMustAdd.DataField = "C6674" 
  txtMustAdd.ToolTipText = "每天必需的加班时间,超过此加班时间的为额外加班(小时)" 
  For i = 1 To CLASS_SEC 
    txtAdjBgn(i).DataField = "C6611" 
    txtAdjBgn(i).DataField = "C661" & i 
    txtAdjEnd(i).DataField = "" 
    txtAdjustHours(i).DataField = "C667" & 5 + i 
    txtAdjEnd(i).Locked = True 
    txtAdjBgn(i).ToolTipText = "调整工时的起始时间" & i & ",格式为(08:06)" 
    txtAdjustHours(i).ToolTipText = "调整工时" & i & ",例如当天有吃饭等须自动扣除的时间,如(-1.5)小时" 
    txtAdjEnd(i).ToolTipText = "调整工时的结束时间" & i & ",格式为(08:06),此处仅显示但不能修改,结果根据<调整工时的起始时间>与<调整工时>计算得到" 
    chkSpeCard(i).DataField = "W666" & 5 + i 
  Next i 
  txtCode.DataField = "W6681" 
  txtCode.ToolTipText = "排班代码为3位且以A-E的字母开头,如" & Chr(34) & "D05" & Chr(34) & ",双击鼠标显示未使用的排班代码" 
  chkAddLast.DataField = "C6629" 
  chkAddLast.ToolTipText = "加班时下班卡是否以最后一次为准" 
  lblColor.ToolTipText = "定义手工排班时的班次" 
  For i = 1 To 2 * CLASS_SEC 
    txtWorkTime(i).DataField = "C662" & i 
    txtWorkTime(i).ToolTipText = "规定的标准打卡时间,格式为(08:06)" 
    txtCardRange1(i).DataField = "C668" & i 
    txtCardRange1(i).ToolTipText = "有效的前打卡时间范围,单位小时.可采用小数(1.5)" 
    txtCardRange2(i).DataField = "C660" & i 
    txtCardRange2(i).ToolTipText = "有效的后打卡时间范围,单位小时.可采用小数(1.5)" 
    chkIsOver(i).DataField = "C669" & i 
    chkIsOver(i).ToolTipText = "如果该班次跨天请选择本选项" 
    If i < 5 Then 
      chkIsAdd(i).DataField = "W669" & i 
      chkIsAdd(i).ToolTipText = "如果本班次时段不计迟到旷工请选择本选项" 
    End If 
  Next i 
  cobHourKindID.ToolTipText = "建议选择3" 
   
End Sub 
 
Private Sub LoLoadCtrl() 
  Dim i As Integer 
  For i = 2 To 4 
    Load Shape2(i) 
    Shape2(i).Visible = True 
    Shape2(i).Move 210, 1455 + (i - 1) * 965 
    Shape2(i).ZOrder 
     
    Load chkIsAdd(i) 
    chkIsAdd(i).Visible = True 
    chkIsAdd(i).Move chkIsAdd(i - 1).Left, chkIsAdd(i - 1).Top + 965 
     
    Load txtAdjBgn(i) 
    txtAdjBgn(i).Visible = True 
    txtAdjBgn(i).Appearance = 0 
    txtAdjBgn(i).BackColor = &HE0E0E0 
    txtAdjBgn(i).Move txtAdjBgn(i - 1).Left, txtAdjBgn(i - 1).Top + 965 
     
    Load txtAdjEnd(i) 
    txtAdjEnd(i).Visible = True 
    txtAdjEnd(i).Move txtAdjEnd(i - 1).Left, txtAdjEnd(i - 1).Top + 965 
     
    Load txtAdjustHours(i) 
    txtAdjustHours(i).Visible = True 
    txtAdjustHours(i).Move txtAdjustHours(i - 1).Left, txtAdjustHours(i - 1).Top + 965 
     
    Load chkSpeCard(i) 
    chkSpeCard(i).Move chkSpeCard(i - 1).Left, chkSpeCard(i - 1).Top + 965 
  Next i 
  For i = 2 To 8 
    Load lblCaption(i) 
    If i Mod 2 = 0 Then lblCaption(i).Caption = "下班" 
    lblCaption(i).Visible = True 
    lblCaption(i).Move lblCaption(i - 1).Left, lblCaption(i - 1).Top + IIf(i Mod 2 = 0, 400, 565) 
    lblCaption(i).ZOrder 
     
    Load txtWorkTime(i) 
    txtWorkTime(i).Visible = True 
    txtWorkTime(i).Move txtWorkTime(i - 1).Left, txtWorkTime(i - 1).Top + IIf(i Mod 2 = 0, 400, 565) 
     
    Load txtCardRange1(i) 
    txtCardRange1(i).Visible = True 
    txtCardRange1(i).Move txtCardRange1(i - 1).Left, txtCardRange1(i - 1).Top + IIf(i Mod 2 = 0, 400, 565) 
     
    Load txtCardRange2(i) 
    txtCardRange2(i).Visible = True 
    txtCardRange2(i).Move txtCardRange2(i - 1).Left, txtCardRange2(i - 1).Top + IIf(i Mod 2 = 0, 400, 565) 
     
    Load chkIsOver(i) 
    chkIsOver(i).Visible = True 
    chkIsOver(i).Move chkIsOver(i - 1).Left, chkIsOver(i - 1).Top + IIf(i Mod 2 = 0, 400, 565) 
     
  Next i 
  Line1(0).ZOrder 
  For i = 1 To CLASS_SEC 
    Load Line1(i) 
    Line1(i).Visible = True 
    Line1(i).ZOrder 
  Next i 
  Line1(1).X1 = 2755 
  Line1(1).X2 = Line1(1).X1 
  Line1(2).X1 = 3270 
  Line1(2).X2 = Line1(2).X1 
  Line1(3).X1 = 3765 
  Line1(3).X2 = Line1(3).X1 
  Line1(4).Visible = False 
  Line1(4).X1 = 2385 
  Line1(4).X2 = Line1(4).X1 
End Sub 
 
Private Sub Form_Load() 
  On Error GoTo ErrMessage 
  Dim i        As Integer 
  Dim lColor   As Long 
  Dim sSQL     As String 
  Dim sSQLList As String 
  Dim sPlan    As String 
   
  mbIsBusy = True 
  mbFirstRun = True 
  LoSetButtonTag 
  SetIcon Me 
  Me.Caption = "班次设置" 
  lColor = &HFFFFC0 
   
  '   置鼠标忙标志 
  Screen.MousePointer = vbHourglass 
  txtCode.Locked = True 
   
  LoLoadCtrl 
   
  For i = 0 To 3 
    Shape2(i + 1).BackColor = lColor 
    chkIsOver(i * 2 + 1).BackColor = lColor 
    chkIsOver(i * 2 + 2).BackColor = lColor 
    chkIsAdd(i + 1).BackColor = lColor 
  Next i 
  If (gTAppLicInfo.SysLoginSA Or gTAppLicInfo.SysLoginSYS) Then 
    gDBRecordConn.Execute gclsCommon.CBNCSql("DELETE * FROM T6651S001 WHERE E6699 IS NULL") 
    sSQL = " (W0090 <> 'WC') " 
    gclsCommon.CBNFillCodeTree TreeList, "WC", "T6651S001", "W6681", , , "C6672", "E6699" 
  Else 
    'gTOperRight.ClassRange-班次可设置的权限 
    'gTOperRight.WorktimeRight-班次可使用的权限 
    'sSQLList-综合gTOperRight.ClassRange和gTOperRight.WorktimeRight后的权限 
    sSQLList = LoAddClassRight(gTOperRight.ClassRange, gTOperRight.WorktimeRight) 
    sSQL = gclsCommon.CBNGetCondiSQL(sSQLList, "W6681") 
    gclsCommon.CBNFillCodeTree TreeList, "WC", "T6651S001", "W6681", , , "C6672", "E6699", , sSQL & " OR (W0090 = 'WC') " 
  End If 
  Set madoWkTmRS = New ADODB.Recordset 
  mbDisabled1 = True 
   
  sSQLList = "" 
  For i = 1 To 2 * CLASS_SEC 
    sSQLList = sSQLList & "C660" & i & "," & "C668" & i & "," 
  Next i 
   
  sSQL = "SELECT " & sSQLList & "ID,C6611,C6612,C6613,C6614,C6621,C6622,C6623,C6624,C6625,C6626," & _ 
         "C6627,C6628,C6629,C6672,C6673,C6674,C6676,C6677,C6678,C6679,C6680,C6689,C6691,C6692,C6693,C6694,C6695," & _ 
         "C6696,C6697,C6698,E6699,W6666,W6667,W6668,W6669,W6680,W6681,W6691,W6692,W6693,W6694,W0093,W0090,W0091 " & _ 
         "FROM T6651S001 WHERE (W0090<>'WC') " & IIf(sSQL = "", "", " AND " & sSQL) & " ORDER BY E6699" 
   
  madoWkTmRS.Open sSQL, gDBRecordConn, adOpenStatic, adLockOptimistic 
  mbDisabled1 = False 
  mbEditFlag = False 
  mbAddNewFlag = False 
  LoSetButtons True 
  LoSetDataField 
  mbIsBusy = False 
  Dim adoTempRS As ADODB.Recordset 
  Set adoTempRS = New ADODB.Recordset 
  adoTempRS.Open "SELECT * FROM T6652S001 ORDER BY C6689", gDBRecordConn, adOpenStatic, adLockReadOnly 
  With adoTempRS 
    Do While Not adoTempRS.EOF 
      cobHourKindID.AddItem !C6689 & SPLIT_SYMBOL & !W6684 
      cobHourKindID.ItemData(cobHourKindID.NewIndex) = !C6689 
      .MoveNext 
    Loop 
    .Close 
  End With 
  mbFirstRun = False 
  TreeView1.LineStyle = tvwRootLines 
  TreeView1.LabelEdit = tvwManual 
  TreeView1.Indentation = 50 
  TreeView1.ImageList = gclsCommon.CBNGetImageList 
  TreeView1.Style = tvwTreelinesPlusMinusPictureText 
   
  LoFillValidClassID 
  Screen.MousePointer = vbDefault 
  Exit Sub 
ErrMessage: 
  LoShowMsg Err.Description 
  Resume Next 
End Sub 
 
Private Sub Form_Unload(Cancel As Integer) 
  If mbAddNewFlag Then 
    cmdCancel_Click 
  End If 
  Set madoWkTmRS = Nothing 
  If mbDataChanged Then 
    Erase gTClassDef 
  End If 
  Screen.MousePointer = vbDefault 
End Sub 
 
Private Sub cmdAdd_Click() 
  On Error GoTo AddErr 
  mbAddNewFlag = True 
  mbEditFlag = False 
  If madoWkTmRS.RecordCount > 0 Then 
    If Not madoWkTmRS.EOF Then 
      mvBookMark = madoWkTmRS.Bookmark 
    End If 
  End If 
  LoSetButtons False 
  LoShowValue False 
  gclsInclude.MySetTxtSelect txtWorkTime(1) 
  Exit Sub 
AddErr: 
  LoShowMsg Err.Description 
End Sub 
 
Private Sub cmdEdit_Click() 
  On Error GoTo EditErr 
   
  If madoWkTmRS.RecordCount = 0 Then Exit Sub 
  mbEditFlag = True 
  mbAddNewFlag = False 
  LoSetButtons False 
  msCode = txtCode 
  msClassID = txtClass 
  If Not madoWkTmRS.EOF Then 
    mvBookMark = madoWkTmRS.Bookmark 
  End If 
  Exit Sub 
EditErr: 
  LoShowMsg Err.Description 
End Sub 
 
Private Sub cmdCancel_Click() 
  On Error GoTo errorCancel 
  LoSetButtons True 
  mbEditFlag = False 
  mbAddNewFlag = False 
  If madoWkTmRS.RecordCount > 0 Then 
    madoWkTmRS.Bookmark = mvBookMark 
  End If 
  TreeList.SetFocus 
  Exit Sub 
errorCancel: 
  LoShowMsg Err.Description 
End Sub 
 
Private Sub cmdDelete_Click() 
  On Error GoTo DeleteErr 
  Dim sKey As String 
  If madoWkTmRS.RecordCount = 0 Then Exit Sub 
  With madoWkTmRS 
    sKey = !W6681 & "_" 
    If MsgBox("确信删除编号为:" & !W6681 & " 的班次吗?", vbOKCancel + vbQuestion) = vbCancel Then Exit Sub 
    ModifyRight "W1135", !W6681, ACT_DEC 
    If txtClass <> "" Then gclsCommon.CBNSaveEvents OET_DEL_CLASS, txtClass 
    .Delete 
    TreeList.Nodes.Remove sKey 
    If .RecordCount = 0 Then LoShowValue False: Exit Sub 
    .MoveNext 
    If .EOF Then .MoveLast 
  End With 
  Exit Sub 
DeleteErr: 
  LoShowMsg Err.Description 
  Screen.MousePointer = vbDefault 
End Sub 
 
Private Sub cmdSave_Click() 
  Dim i As Long 
  Dim bChange As Boolean 
  Dim bFlag As Boolean 
  Dim sMsg As String 
  Dim sinTemp As Single 
  Dim DDate As Date 
   
  On Error GoTo UpdateErr 
  If Len(txtDesc) = 0 Then 
    LoShowMsg "班次描述不能为空!" 
    gclsInclude.MySetTxtSelect txtDesc 
    Exit Sub 
  End If 
  If Len(txtClass) = 0 Then 
    LoShowMsg "班次代码不能为空!" 
    gclsInclude.MySetTxtSelect txtClass 
    Exit Sub 
  End If 
  If gclsCommon.CBNIsReservePlan(txtClass) Then 
    LoShowMsg txtClass & "班次代码为系统保留代码,请重新填写!" 
    gclsInclude.MySetTxtSelect txtClass 
    txtClass = msClassID 
    Exit Sub 
  End If 
  If Len(txtCode) = 0 Then 
    MsgBox "排班代码不能为空,请重新填写!", vbCritical 
    TreeView1.Visible = True 
    TreeView1.SetFocus 
    Exit Sub 
  End If 
  '检查打卡的时间是否正确 
  mbDataChanged = True 
  For i = 1 To 2 * CLASS_SEC 
    If Len(txtWorkTime(i)) = 0 Then 
      txtCardRange1(i) = 0 
      txtCardRange2(i) = 0 
      txtWorkTime(i) = "00:00:00" 
    ElseIf Not gclsCommon.CBNIsTimeRight(txtWorkTime(i)) Then 
      LoShowMsg "输入的有效打卡时间数据不合法,请检查!" 
'      gclsInclude.MySetTxtSelect txtWorkTime(i) 
      Exit Sub 
    End If 
    If (i > 1) And (i Mod 2 = 0) Then 
      bFlag = False 
      If txtWorkTime(i - 1) = "00:00:00" And txtWorkTime(i) <> "00:00:00" Then 
        gclsInclude.MySetTxtSelect txtWorkTime(i - 1) 
        bFlag = True 
      ElseIf txtWorkTime(i - 1) <> "00:00:00" And txtWorkTime(i) = "00:00:00" Then 
        gclsInclude.MySetTxtSelect txtWorkTime(i) 
        bFlag = True 
      End If 
      If bFlag Then 
        LoShowMsg "输入的有效打卡时间不完整,请检查!" 
        Exit Sub 
      End If 
      If txtWorkTime(i - 1) <> "00:00:00" Then 
        If CDate(txtWorkTime(i - 1)) >= CDate(txtWorkTime(i)) Then 
          If chkIsOver(i) = 0 Then 
            LoShowMsg "输入的下班打卡时间应该大于上班时间,请检查!" 
            gclsInclude.MySetTxtSelect txtWorkTime(i) 
            Exit Sub 
          End If 
        End If 
      End If 
    Else 
      If txtWorkTime(1) = "00:00:00" Then 
        LoShowMsg "输入的第一个班次的上班时间错误,请检查!" 
        gclsInclude.MySetTxtSelect txtWorkTime(1) 
        Exit Sub 
      End If 
    End If 
  Next i 
  For i = 1 To 2 * CLASS_SEC 
    If Len(txtCardRange1(i)) = 0 Then txtCardRange1(i) = 0 
    If Len(txtCardRange2(i)) = 0 Then txtCardRange2(i) = 0 
    If txtWorkTime(i) <> "00:00:00" Then 
      If Not IsNumeric(txtCardRange1(i)) Or txtCardRange1(i) = 0 Then 
        LoShowMsg "输入的有效打卡前取值范围数据不合法,请检查!" 
        gclsInclude.MySetTxtSelect txtCardRange1(i) 
        Exit Sub 
      End If 
      If Not gTAttendCtl.Use1CardRange Then 
        If Not IsNumeric(txtCardRange2(i)) Or txtCardRange2(i) = 0 Then 
          LoShowMsg "输入的有效打卡后取值范围数据不合法,请检查!" 
          gclsInclude.MySetTxtSelect txtCardRange2(i) 
          Exit Sub 
        End If 
      End If 
    End If 
  Next i 
  For i = 1 To CLASS_SEC 
    sinTemp = Val(txtAdjustHours(i).Text) 
    If sinTemp <> 0 Then 
      If Len(txtAdjBgn(i)) = 0 Then 
        txtAdjBgn(i) = "00:00:00" 
      ElseIf Not gclsCommon.CBNIsTimeRight(txtAdjBgn(i)) Then 
        LoShowMsg "输入的调整工时起始时间数据不合法,请检查!" 
        Exit Sub 
      ElseIf CDate(txtAdjBgn(i)) = 0 Then 
        If sinTemp < 0 Then 
          LoShowMsg "因为调整工时为" & sinTemp & "小时,所以必须正确输入的调整工时起始时间,请检查!" 
          gclsInclude.MySetTxtSelect txtAdjBgn(i) 
          Exit Sub 
        End If 
      Else 
        bFlag = False 
        If CDate(txtAdjBgn(i)) > CDate(txtWorkTime(i * 2).Text) Then 
          If chkIsOver(i * 2) <> 1 Then 
            bFlag = True 
            LoShowMsg "第" & i & "段的调整工时起始时间超出该段的班次结束时间,请检查!" 
          End If 
        ElseIf CDate(txtAdjBgn(i)) < CDate(txtWorkTime(i * 2 - 1).Text) Then 
          bFlag = True 
          LoShowMsg "第" & i & "段的调整工时起始时间小于该段的班次起始时间,请检查!" 
        Else 
          DDate = DateAdd("n", Abs(sinTemp * 60), CDate(txtAdjBgn(i))) 
          txtAdjEnd(i) = DDate 
          If DDate > CDate(txtWorkTime(i * 2).Text) Then 
            bFlag = True 
            LoShowMsg "第" & i & "段的调整工时结束时间超出该段的班次结束时间,请做相应的修改!" 
          End If 
        End If 
        If bFlag Then 
          gclsInclude.MySetTxtSelect txtAdjBgn(i) 
          Exit Sub 
        End If 
      End If 
    End If 
  Next i 
  If mbAddNewFlag Then 
    If gclsDBFunc.dbIsExist("T6651S001", "E6699", txtClass, eadChar, , gDBRecordConn) Then 
      LoShowMsg "班次代号不能重复!" 
      gclsInclude.MySetTxtSelect txtClass 
      Exit Sub 
    End If 
    mlID = gclsCommon.CBNGetMaxID("T6651S001"): mlID = mlID + 1 
     
    mbDisabled1 = True 
    madoWkTmRS.AddNew 
    mbDisabled1 = False 
    gclsCommon.CBNSaveEvents OET_ADD_CLASS, txtClass 
  ElseIf mbEditFlag Then 
    If msClassID <> txtClass Then 
      If gclsDBFunc.dbIsExist("T6651S001", "E6699", txtClass, eadChar, , gDBRecordConn) Then 
        MsgBox "班次代号不能重复!" 
        txtClass = msClassID 
        gclsInclude.MySetTxtSelect txtClass 
        Exit Sub 
      End If 
      bChange = True 
    End If 
    mlID = madoWkTmRS!ID 
    gclsCommon.CBNSaveEvents OET_MDF_CLASS, txtClass 
  End If 
  If CLng(txtClassTime) < CLng(txtHours) Then 
    If MsgBox("正班段的工时(" & CLng(txtClassTime) & ")小于标准工时(" & CLng(txtHours) & "),是否继续?", vbOKCancel) = vbCancel Then 
      gclsInclude.MySetTxtSelect txtClassTime 
      Exit Sub 
    End If 
  End If 
  sMsg = LoSetValue 
  If sMsg <> "" Then MsgBox sMsg, vbCritical: Exit Sub 
  If mbEditFlag Then 
    If msCode <> txtCode Then 
      TreeList.Nodes.Remove msCode & "_" 
      Set mNode = TreeList.Nodes.Add(madoWkTmRS!W0090 & "_", tvwChild, madoWkTmRS!W6681 & "_") 
    Else 
      Set mNode = TreeList.Nodes(msCode & "_") 
    End If 
  ElseIf mbAddNewFlag Then 
      Set mNode = TreeList.Nodes.Add(madoWkTmRS!W0090 & "_", tvwChild, madoWkTmRS!W6681 & "_") 
  End If 
  mNode.Text = madoWkTmRS!W6681 & SPLIT_SYMBOL & "(" & madoWkTmRS!E6699 & ")" & madoWkTmRS!C6672 
  mNode.Tag = madoWkTmRS!W6681 & "_WC_" & madoWkTmRS!E6699 
  mNode.Image = "IMG024" 
 
  If bChange Then 
    '将所有的表中的班次代码替换 
    '涉及到的表有"T6621A001","T6623A001","T6632A001" 
    If Not gclsCommon.CBNModifyBatch(gDBRecordConn, _ 
                                    "W6699", _ 
                                    txtClass, _ 
                                    msClassID, _ 
                                    "T6651S001", , , , , _ 
                                    StatusBar1) Then GoTo EndSub 
    For i = 1 To CLASS_SEC 
      gDBRecordConn.Execute "UPDATE T6632A001 SET W660" & i & " = '" & txtClass & "' WHERE W660" & i & " = '" & msClassID & "'" 
    Next i 
    gDBRecordConn.Execute "UPDATE T6632A001 SET W6639 = '" & txtClass & "' WHERE W6639 = '" & msClassID & "'" 
  End If 
   
  mNode.Selected = True 
  mbIsBusy = True 
  madoWkTmRS.MoveFirst 
  mbIsBusy = False 
'  madoWkTmRS.Find 
  LoSetButtons True 
  mbEditFlag = False 
  mbAddNewFlag = False 
  TreeList.SetFocus 
  StatusBar1.Panels(1).Text = "" 
  Exit Sub 
UpdateErr: 
  If Err.Number = 3022 Then 
    LoShowMsg "班次序号不能重复!" 
  ElseIf Err = -2147467259 Then 
    LoShowMsg Err.Description 
  Else 
    LoShowMsg "输入的数据不合法或" & Err.Description 
    Resume Next 
  End If 
EndSub: 
  LoSetButtons False 
  Screen.MousePointer = vbDefault 
End Sub 
 
Private Sub LoSetButtons(bVal As Boolean) 
  Dim i As Integer 
  cmdAdd.Visible = bVal 
  cmdEdit.Visible = bVal 
  cmdSearch.Visible = bVal 
  cmdSave.Visible = Not bVal 
  cmdCancel.Visible = Not bVal 
  cmdDelete.Visible = bVal 
'  cmdClose.Visible = bVal 
  lblColor.Enabled = Not bVal 
  txtDesc.Locked = bVal 
  txtHours.Locked = bVal 
  txtMustAdd.Locked = bVal 
  txtHourKindID.Locked = bVal 
  TreeList.Enabled = bVal 
  txtClass.Locked = bVal 
  txtClassTime.Locked = bVal 
  chkAddLast.Enabled = Not bVal 
  cobHourKindID.Enabled = Not bVal 
  For i = 1 To 2 * CLASS_SEC 
    txtWorkTime(i).Locked = bVal 
    txtCardRange1(i).Locked = bVal 
    txtCardRange2(i).Locked = bVal 
    chkIsOver(i).Enabled = Not bVal 
    If i < 5 Then 
      chkIsAdd(i).Enabled = Not bVal 
      chkSpeCard(i).Enabled = Not bVal 
      txtAdjustHours(i).Locked = bVal 
      txtAdjBgn(i).Locked = bVal 
    End If 
  Next i 
End Sub 
 
Private Sub LoShowMsg(ByVal fsMsg As String) 
    StatusBar1.Panels(1).Text = fsMsg 
    MsgBox fsMsg 
End Sub 
 
Private Sub Frame1_MouseUp(Index As Integer, Button As Integer, Shift As Integer, x As Single, y As Single) 
  If TreeView1.Visible Then TreeView1.Visible = False 
End Sub 
 
Private Sub lblColor_Click() 
  On Error GoTo ErrLabel 
  frmMain.dlgCommonDialog.CancelError = True 
  frmMain.dlgCommonDialog.ShowColor 
  shpColor.BackColor = frmMain.dlgCommonDialog.Color 
  lblColor.ForeColor = &HFFFFFF - shpColor.BackColor 
ErrLabel: 
End Sub 
 
Private Sub SSTab1_Click(PreviousTab As Integer) 
  Dim i As Integer 
  Dim bVisible As Boolean 
  'Frame1(4).Visible = False 
  bVisible = SSTab1.Tab = 0 
  For i = 1 To 2 * CLASS_SEC 
    txtCardRange1(i).Visible = bVisible 
    txtCardRange2(i).Visible = bVisible 
    chkIsOver(i).Visible = bVisible 
    If gTAttendCtl.Use1CardRange Then 
      txtCardRange2(i).Visible = False 
    End If 
  Next i 
  For i = 1 To CLASS_SEC 
    chkIsAdd(i).Visible = bVisible 
    txtAdjustHours(i).Visible = bVisible 
    txtAdjBgn(i).Visible = bVisible 
    txtAdjEnd(i).Visible = bVisible 
    chkSpeCard(i).Visible = Not bVisible 
  Next i 
  Line1(1).Visible = bVisible 
  Line1(2).Visible = bVisible 
  Line1(3).Visible = bVisible 
  Line1(4).Visible = Not bVisible 
  lblCpt(3).Visible = bVisible 
  lblCpt(4).Visible = bVisible 
  lblCpt(5).Visible = bVisible 
   
  lblCpt(2).Caption = IIf(bVisible, "打卡范围", "特卡") 
  'Frame1(4).Visible = True 
End Sub 
 
Private Sub TreeList_NodeClick(ByVal Node As MSComctlLib.Node) 
    Dim bEnabled As Boolean 
    Dim sClass As String 
     
    On Error GoTo ErrLabel 
    sClass = gclsCommon.CBNGetFirstData(Node) 
    If Mid(sClass, 2) = "00" Then 
      LoShowValue False 
    Else 
      madoWkTmRS.Filter = "W6681 = '" & sClass & "'" 
      If gTAppLicInfo.SysLoginSYS Or gTAppLicInfo.SysLoginSA Then 
        bEnabled = True 
      Else 
        If gclsInclude.MyIsInList(gTOperRight.ClassRange, sClass) Then 
          bEnabled = True 
        End If 
      End If 
    End If 
'    cmdAdd.Enabled = bEnabled 
    cmdEdit.Enabled = bEnabled 
'    cmdSave.Enabled = bEnabled 
'    cmdCancel.Enabled = bEnabled 
    cmdDelete.Enabled = bEnabled 
Exit Sub 
ErrLabel: 
    MsgBox Error 
End Sub 
 
Private Sub TreeView1_LostFocus() 
  If TreeView1.Visible Then TreeView1.Visible = False 
End Sub 
 
Private Sub TreeView1_NodeClick(ByVal Node As MSComctlLib.Node) 
  Dim sDesc As String 
  If Node.Tag = "CLASS" Then 
    TreeView1.Visible = False 
    sDesc = Left(Node.Key, Len(Node.Key) - 1) 
    txtCode.Text = sDesc 
    If txtClass.Text = "" Then txtClass.Text = sDesc 
    If txtDesc.Text = "" Then 
      sDesc = sDesc & "班" 
      If IsDate(txtWorkTime(1)) Then 
        If CDate(txtWorkTime(1)) <> 0 Then 
          sDesc = sDesc & " (" & txtWorkTime(1) & ")" 
        End If 
      End If 
      txtDesc.Text = sDesc 
    End If 
  End If 
End Sub 
 
Private Sub txtAdjBgn_KeyPress(Index As Integer, KeyAscii As Integer) 
    KeyAscii = gclsInclude.MyValiText(KeyAscii, "0123456789:", True, True) 
End Sub 
 
 
Private Sub txtClass_KeyPress(KeyAscii As Integer) 
    KeyAscii = gclsInclude.MyValiText(KeyAscii, "_", False, False) 
End Sub 
 
Private Sub txtCode_DblClick() 
  Dim sKey As String 
  If mbAddNewFlag Or mbEditFlag Then 
    LoFillValidClassID 
    sKey = txtCode.Text 
    If sKey <> "" Then 
      sKey = Left(sKey, 1) & "_" 
      If gclsCommon.CBNIsNodeExist(TreeView1.Nodes, sKey) Then 
        TreeView1.Nodes(sKey).Selected = True 
        TreeView1.Nodes(sKey).Expanded = True 
      End If 
    End If 
    TreeView1.Visible = True 
    TreeView1.SetFocus 
  End If 
End Sub 
 
Private Sub txtWorkTime_KeyPress(Index As Integer, KeyAscii As Integer) 
    KeyAscii = gclsInclude.MyValiText(KeyAscii, "0123456789:", True, True) 
End Sub 
 
Private Sub txtCardRange1_KeyPress(Index As Integer, KeyAscii As Integer) 
    KeyAscii = gclsInclude.MyValiText(KeyAscii, "0123456789.", True, True) 
End Sub 
 
Private Sub txtCardRange2_KeyPress(Index As Integer, KeyAscii As Integer) 
    KeyAscii = gclsInclude.MyValiText(KeyAscii, "0123456789.", True, True) 
End Sub 
 
Private Sub txtHourKindID_KeyPress(KeyAscii As Integer) 
    KeyAscii = gclsInclude.MyValiText(KeyAscii, "0123456789", True, True) 
End Sub 
 
Private Sub txtHours_KeyPress(KeyAscii As Integer) 
    KeyAscii = gclsInclude.MyValiText(KeyAscii, "0123456789.", True, True) 
End Sub 
 
Private Sub txtMustAdd_KeyPress(KeyAscii As Integer) 
    KeyAscii = gclsInclude.MyValiText(KeyAscii, "0123456789.", True, True) 
End Sub 
 
Private Sub txtAdjustHours_KeyPress(Index As Integer, KeyAscii As Integer) 
    KeyAscii = gclsInclude.MyValiText(KeyAscii, "0123456789-.", True, True) 
End Sub 
 
Private Sub LoFillValidClassID() 
    Dim adoTempRS As ADODB.Recordset 
    Dim bFlag     As Boolean 
    Dim oNode     As MSComctlLib.Node 
    Dim i As Integer 
    Dim j As Integer 
    Dim k As Integer 
    Dim sPlanCode As String 
    Set adoTempRS = New ADODB.Recordset 
    Dim sCode() As String 
    adoTempRS.Open "SELECT W6681 FROM T6651S001 WHERE (W0090<>'WC') ORDER BY W6681", gDBRecordConn, adOpenStatic, adLockReadOnly 
    TreeView1.Nodes.Clear 
    Set oNode = TreeView1.Nodes.Add(, , 0 & "_", "未使用的排班代码", "IMG072") 
    oNode.ExpandedImage = "IMG071" 
    oNode.Expanded = True 
    If adoTempRS.RecordCount > 0 Then 
    ReDim sCode(1 To adoTempRS.RecordCount) 
      For i = 1 To adoTempRS.RecordCount 
        sCode(i) = UCase(adoTempRS!W6681) 
        adoTempRS.MoveNext 
      Next i 
    Else 
      ReDim sCode(0) 
    End If 
    For i = LBound(gsValidClass) To UBound(gsValidClass) 
      If (gsValidClass(i) <> "Z") Or (gTAppLicInfo.SysLoginSA Or gTAppLicInfo.SysLoginSYS) Then 
        Set oNode = TreeView1.Nodes.Add("0_", tvwChild, gsValidClass(i) & "_", gsValidClass(i) & "班代码", "IMG054") 
      End If 
    Next i 
    If (gTAppLicInfo.SysLoginSA Or gTAppLicInfo.SysLoginSYS) Then 
      For i = LBound(gsValidClass) To UBound(gsValidClass) 
        For j = 1 To 99 
          bFlag = False 
          sPlanCode = gsValidClass(i) & Format(j, "00") 
          For k = 1 To UBound(sCode) 
            If sCode(k) = sPlanCode Then 
              bFlag = True 
              Exit For 
            End If 
          Next k 
          If Not bFlag Then 
            Set oNode = TreeView1.Nodes.Add(gsValidClass(i) & "_", tvwChild, sPlanCode & "_", sPlanCode & "班", "IMG030") 
            oNode.Tag = "CLASS" 
          End If 
        Next j 
      Next i 
    Else 
      Dim sSplit 
      sSplit = Split(gTOperRight.ClassRange, ",") 
      'sSplit-班次可设置的权限 
      'sCode-班次可使用的权限 
      For i = LBound(sSplit) To UBound(sSplit) 
        bFlag = False 
        For k = 1 To UBound(sCode) 
          If sCode(k) = sSplit(i) Then 
            bFlag = True 
            Exit For 
          End If 
        Next k 
        If Not bFlag Then 
          Set oNode = TreeView1.Nodes.Add(Left(sSplit(i), 1) & "_", tvwChild, sSplit(i) & "_", sSplit(i) & "班", "IMG030") 
          oNode.Tag = "CLASS" 
        End If 
      Next i 
    End If 
End Sub 
 
Private Function LoAddClassRight(fsRight1 As String, fsRight2 As String) As String 
    'fsRight1-班次可设置的权限 
    'fsRight2-班次可使用的权限 
    '综合权限的意义为:只要fsRight1有的必须有,但如果fsRight1中没有而fsRight2有,则要加上 
    Dim l As Long 
    Dim sCombo As String 
    Dim sSplit1 
    sCombo = fsRight1 & "," & fsRight2 
    sSplit1 = Split(sCombo, ",") 
    gclsInclude.MyRemoveDupes sSplit1 
    gclsInclude.MyRemoveBlank sSplit1 
    gclsInclude.MyQuickSort sSplit1, 0, UBound(sSplit1) 
    For l = LBound(sSplit1) To UBound(sSplit1) 
      LoAddClassRight = LoAddClassRight & sSplit1(l) & "," 
    Next l 
    LoAddClassRight = Left(LoAddClassRight, Len(LoAddClassRight) - 1) 
End Function 
 
Private Sub LoSetButtonTag() 
  cmdAdd.Tag = "IMG048" 
  cmdDelete.Tag = "IMG021" 
  cmdEdit.Tag = "IMG025" 
  cmdCancel.Tag = "IMG014" 
  cmdExit.Tag = "IMG029" 
  cmdSave.Tag = "IMG041" 
  cmdSearch.Tag = "IMG031" 
End Sub