+
资源名称:ERPSYS.zip [点击查看]
上传用户:zhpu1995
上传日期:2013-09-06
资源大小:61151k
文件大小:46k
源码类别:
企业管理
开发平台:
Visual Basic
- VERSION 5.00
- Object = "{BEEECC20-4D5F-4F8B-BFDC-5D9B6FBDE09D}#1.0#0"; "vsflex8.ocx"
- Object = "{831FDD16-0C5C-11D2-A9FC-0000F8754DA1}#2.0#0"; "mscomctl.ocx"
- Object = "{BDC217C8-ED16-11CD-956C-0000C04E4C0A}#1.1#0"; "TABCTL32.OCX"
- Begin VB.Form Dev_ItemForm
- Caption = "设备项目设置"
- ClientHeight = 6495
- ClientLeft = 60
- ClientTop = 345
- ClientWidth = 8685
- HelpContextID = 2502005
- Icon = "设置_项目设置.frx":0000
- KeyPreview = -1 'True
- LinkTopic = "Form2"
- MaxButton = 0 'False
- ScaleHeight = 6495
- ScaleWidth = 8685
- StartUpPosition = 2 '屏幕中心
- Begin TabDlg.SSTab StTab
- Height = 5745
- Left = 75
- TabIndex = 9
- Top = 675
- Width = 8580
- _ExtentX = 15134
- _ExtentY = 10134
- _Version = 393216
- Style = 1
- Tabs = 2
- TabHeight = 520
- BeginProperty Font {0BE35203-8F91-11CE-9DE3-00AA004BB851}
- Name = "宋体"
- Size = 9
- Charset = 134
- Weight = 400
- Underline = 0 'False
- Italic = 0 'False
- Strikethrough = 0 'False
- EndProperty
- TabCaption(0) = "列表视图"
- TabPicture(0) = "设置_项目设置.frx":1042
- Tab(0).ControlEnabled= -1 'True
- Tab(0).Control(0)= "CzxsGrid"
- Tab(0).Control(0).Enabled= 0 'False
- Tab(0).ControlCount= 1
- TabCaption(1) = "单张视图"
- TabPicture(1) = "设置_项目设置.frx":105E
- Tab(1).ControlEnabled= 0 'False
- Tab(1).Control(0)= "Frame1"
- Tab(1).ControlCount= 1
- Begin VSFlex8Ctl.VSFlexGrid CzxsGrid
- Height = 5210
- Left = 105
- TabIndex = 12
- Top = 420
- Width = 8355
- _cx = 5080
- _cy = 5080
- Appearance = 1
- BorderStyle = 1
- Enabled = -1 'True
- BeginProperty Font {0BE35203-8F91-11CE-9DE3-00AA004BB851}
- Name = "宋体"
- Size = 9
- Charset = 134
- Weight = 400
- Underline = 0 'False
- Italic = 0 'False
- Strikethrough = 0 'False
- EndProperty
- MousePointer = 0
- BackColor = -2147483643
- ForeColor = -2147483640
- BackColorFixed = -2147483633
- ForeColorFixed = -2147483630
- BackColorSel = -2147483635
- ForeColorSel = -2147483634
- BackColorBkg = 8421504
- BackColorAlternate= -2147483643
- GridColor = -2147483633
- GridColorFixed = -2147483632
- TreeColor = -2147483632
- FloodColor = 192
- SheetBorder = -2147483642
- FocusRect = 1
- HighLight = 1
- AllowSelection = -1 'True
- AllowBigSelection= -1 'True
- AllowUserResizing= 0
- SelectionMode = 0
- GridLines = 1
- GridLinesFixed = 2
- GridLineWidth = 1
- Rows = 5000
- Cols = 10
- FixedRows = 1
- FixedCols = 0
- RowHeightMin = 0
- RowHeightMax = 0
- ColWidthMin = 0
- ColWidthMax = 0
- ExtendLastCol = 0 'False
- FormatString = ""
- ScrollTrack = 0 'False
- ScrollBars = 3
- ScrollTips = 0 'False
- MergeCells = 0
- MergeCompare = 0
- AutoResize = -1 'True
- AutoSizeMode = 0
- AutoSearch = 0
- AutoSearchDelay = 2
- MultiTotals = -1 'True
- SubtotalPosition= 1
- OutlineBar = 0
- OutlineCol = 0
- Ellipsis = 0
- ExplorerBar = 0
- PicturesOver = 0 'False
- FillStyle = 0
- RightToLeft = 0 'False
- PictureType = 0
- TabBehavior = 0
- OwnerDraw = 0
- Editable = 0
- ShowComboButton = 1
- WordWrap = 0 'False
- TextStyle = 0
- TextStyleFixed = 0
- OleDragMode = 0
- OleDropMode = 0
- DataMode = 0
- VirtualData = -1 'True
- DataMember = ""
- ComboSearch = 3
- AutoSizeMouse = -1 'True
- FrozenRows = 0
- FrozenCols = 0
- AllowUserFreezing= 0
- BackColorFrozen = 0
- ForeColorFrozen = 0
- WallPaperAlignment= 9
- AccessibleName = ""
- AccessibleDescription= ""
- AccessibleValue = ""
- AccessibleRole = 24
- End
- Begin VB.Frame Frame1
- Height = 5295
- Left = -74880
- TabIndex = 13
- Top = 360
- Width = 8360
- Begin VB.CheckBox YN_Judge
- Caption = "有效判断"
- Height = 285
- Left = 4530
- TabIndex = 21
- Top = 5610
- Width = 1590
- End
- Begin VB.ComboBox Com_Sort
- Height = 300
- ItemData = "设置_项目设置.frx":107A
- Left = 1350
- List = "设置_项目设置.frx":1087
- Style = 2 'Dropdown List
- TabIndex = 2
- Top = 1116
- Width = 2625
- End
- Begin VB.TextBox LrText
- Height = 300
- Index = 3
- Left = 1350
- TabIndex = 4
- Text = "3"
- Top = 1905
- Width = 2625
- End
- Begin VB.TextBox LrText
- Height = 300
- Index = 2
- Left = 1350
- TabIndex = 3
- Text = "2"
- Top = 1509
- Width = 2625
- End
- Begin VB.CheckBox A_YNStop
- Caption = "是否保存代码"
- Enabled = 0 'False
- Height = 375
- Left = 5460
- TabIndex = 8
- Top = 5580
- Visible = 0 'False
- Width = 1575
- End
- Begin VB.CommandButton Ydcommand1
- Height = 289
- Index = 0
- Left = 390
- Picture = "设置_项目设置.frx":10A9
- Style = 1 'Graphical
- TabIndex = 14
- TabStop = 0 'False
- Top = 1140
- Visible = 0 'False
- Width = 285
- End
- Begin VB.CommandButton QxCommand
- Cancel = -1 'True
- Caption = "取消&C"
- Height = 300
- Left = 2855
- TabIndex = 7
- Top = 2460
- Width = 1120
- End
- Begin VB.CommandButton BcCommand
- Caption = "保存&S"
- Height = 300
- Left = 1620
- TabIndex = 6
- Top = 2460
- Width = 1120
- End
- Begin VB.TextBox LrText
- Height = 300
- Index = 1
- Left = 1350
- TabIndex = 1
- Text = "1"
- Top = 723
- Width = 2625
- End
- Begin VB.TextBox LrText
- Height = 300
- Index = 0
- Left = 1350
- TabIndex = 0
- Text = "0"
- Top = 330
- Width = 2625
- End
- Begin VB.ComboBox Combo_X
- Height = 300
- ItemData = "设置_项目设置.frx":1433
- Left = 1530
- List = "设置_项目设置.frx":143D
- Style = 2 'Dropdown List
- TabIndex = 5
- Top = 5640
- Visible = 0 'False
- Width = 2625
- End
- Begin VB.Label Label4
- AutoSize = -1 'True
- Caption = "相关类型:"
- Height = 180
- Left = 645
- TabIndex = 20
- Top = 5700
- Visible = 0 'False
- Width = 810
- End
- Begin VB.Label Label3
- AutoSize = -1 'True
- Caption = "相关:"
- Height = 180
- Left = 465
- TabIndex = 19
- Top = 1965
- Width = 2625
- End
- Begin VB.Label Label2
- AutoSize = -1 'True
- Caption = "长度:"
- Height = 180
- Left = 465
- TabIndex = 18
- Top = 1569
- Width = 450
- End
- Begin VB.Label Label1
- AutoSize = -1 'True
- Caption = "类型:"
- Height = 180
- Left = 465
- TabIndex = 17
- Top = 1176
- Width = 450
- End
- Begin VB.Label TsLabel
- AutoSize = -1 'True
- Caption = "项目名称:"
- Height = 180
- Index = 1
- Left = 465
- TabIndex = 16
- Top = 783
- Width = 810
- End
- Begin VB.Label TsLabel
- AutoSize = -1 'True
- Caption = "项目编码:"
- Height = 180
- Index = 0
- Left = 465
- TabIndex = 15
- Top = 390
- Width = 810
- End
- End
- End
- Begin MSComctlLib.Toolbar SzToolbar
- Align = 1 'Align Top
- Height = 555
- Left = 0
- TabIndex = 10
- Top = 0
- Width = 8685
- _ExtentX = 15319
- _ExtentY = 979
- ButtonWidth = 820
- ButtonHeight = 926
- Appearance = 1
- Style = 1
- ImageList = "ImageList1"
- _Version = 393216
- BeginProperty Buttons {66833FE8-8583-11D1-B16A-00C0F0283628}
- NumButtons = 12
- BeginProperty Button1 {66833FEA-8583-11D1-B16A-00C0F0283628}
- Caption = "设置"
- Key = "ymsz"
- ImageIndex = 1
- EndProperty
- BeginProperty Button2 {66833FEA-8583-11D1-B16A-00C0F0283628}
- Caption = "打印"
- Key = "dy"
- ImageIndex = 2
- EndProperty
- BeginProperty Button3 {66833FEA-8583-11D1-B16A-00C0F0283628}
- Caption = "预览"
- Key = "yl"
- ImageIndex = 3
- EndProperty
- BeginProperty Button4 {66833FEA-8583-11D1-B16A-00C0F0283628}
- Style = 3
- EndProperty
- BeginProperty Button5 {66833FEA-8583-11D1-B16A-00C0F0283628}
- Caption = "增加"
- Key = "zj"
- ImageIndex = 4
- EndProperty
- BeginProperty Button6 {66833FEA-8583-11D1-B16A-00C0F0283628}
- Caption = "修改"
- Key = "xg"
- ImageIndex = 5
- EndProperty
- BeginProperty Button7 {66833FEA-8583-11D1-B16A-00C0F0283628}
- Caption = "删除"
- Key = "sc"
- ImageIndex = 6
- EndProperty
- BeginProperty Button8 {66833FEA-8583-11D1-B16A-00C0F0283628}
- Style = 3
- EndProperty
- BeginProperty Button9 {66833FEA-8583-11D1-B16A-00C0F0283628}
- Caption = "刷新"
- Key = "sx"
- ImageIndex = 7
- EndProperty
- BeginProperty Button10 {66833FEA-8583-11D1-B16A-00C0F0283628}
- Style = 3
- EndProperty
- BeginProperty Button11 {66833FEA-8583-11D1-B16A-00C0F0283628}
- Caption = "帮助"
- Key = "bz"
- ImageIndex = 8
- EndProperty
- BeginProperty Button12 {66833FEA-8583-11D1-B16A-00C0F0283628}
- Caption = "退出"
- Key = "fh"
- ImageIndex = 9
- EndProperty
- EndProperty
- BorderStyle = 1
- Begin MSComctlLib.ImageList ImageList1
- Left = 5040
- Top = 0
- _ExtentX = 1005
- _ExtentY = 1005
- BackColor = -2147483643
- ImageWidth = 16
- ImageHeight = 16
- MaskColor = 12632256
- _Version = 393216
- BeginProperty Images {2C247F25-8591-11D1-B16A-00C0F0283628}
- NumListImages = 12
- BeginProperty ListImage1 {2C247F27-8591-11D1-B16A-00C0F0283628}
- Picture = "设置_项目设置.frx":1455
- Key = "sz"
- EndProperty
- BeginProperty ListImage2 {2C247F27-8591-11D1-B16A-00C0F0283628}
- Picture = "设置_项目设置.frx":17EF
- Key = "dy"
- EndProperty
- BeginProperty ListImage3 {2C247F27-8591-11D1-B16A-00C0F0283628}
- Picture = "设置_项目设置.frx":1B89
- Key = "yl"
- EndProperty
- BeginProperty ListImage4 {2C247F27-8591-11D1-B16A-00C0F0283628}
- Picture = "设置_项目设置.frx":1F23
- Key = "xz"
- EndProperty
- BeginProperty ListImage5 {2C247F27-8591-11D1-B16A-00C0F0283628}
- Picture = "设置_项目设置.frx":22BD
- Key = "xg"
- EndProperty
- BeginProperty ListImage6 {2C247F27-8591-11D1-B16A-00C0F0283628}
- Picture = "设置_项目设置.frx":2657
- Key = "sc"
- EndProperty
- BeginProperty ListImage7 {2C247F27-8591-11D1-B16A-00C0F0283628}
- Picture = "设置_项目设置.frx":29F1
- Key = "sx"
- EndProperty
- BeginProperty ListImage8 {2C247F27-8591-11D1-B16A-00C0F0283628}
- Picture = "设置_项目设置.frx":2D8B
- Key = "bz"
- EndProperty
- BeginProperty ListImage9 {2C247F27-8591-11D1-B16A-00C0F0283628}
- Picture = "设置_项目设置.frx":3125
- Key = "tc"
- EndProperty
- BeginProperty ListImage10 {2C247F27-8591-11D1-B16A-00C0F0283628}
- Picture = "设置_项目设置.frx":34BF
- Key = "bcgs"
- EndProperty
- BeginProperty ListImage11 {2C247F27-8591-11D1-B16A-00C0F0283628}
- Picture = "设置_项目设置.frx":3859
- Key = "mrlk"
- EndProperty
- BeginProperty ListImage12 {2C247F27-8591-11D1-B16A-00C0F0283628}
- Picture = "设置_项目设置.frx":3BF3
- Key = "xsxm"
- EndProperty
- EndProperty
- End
- Begin MSComctlLib.Toolbar GsToolbar
- Height = 525
- Left = 6090
- TabIndex = 11
- Top = 0
- Width = 2595
- _ExtentX = 4577
- _ExtentY = 926
- ButtonWidth = 1455
- ButtonHeight = 926
- Appearance = 1
- Style = 1
- ImageList = "ImageList1"
- _Version = 393216
- BeginProperty Buttons {66833FE8-8583-11D1-B16A-00C0F0283628}
- NumButtons = 3
- BeginProperty Button1 {66833FEA-8583-11D1-B16A-00C0F0283628}
- Caption = "保存格式"
- Key = "bcgs"
- ImageIndex = 10
- EndProperty
- BeginProperty Button2 {66833FEA-8583-11D1-B16A-00C0F0283628}
- Caption = "默认列宽"
- Key = "hfmrgs"
- ImageIndex = 11
- EndProperty
- BeginProperty Button3 {66833FEA-8583-11D1-B16A-00C0F0283628}
- Caption = "显示项目"
- Key = "szxsxm"
- ImageIndex = 12
- EndProperty
- EndProperty
- End
- End
- End
- Attribute VB_Name = "Dev_ItemForm"
- Attribute VB_GlobalNameSpace = False
- Attribute VB_Creatable = False
- Attribute VB_PredeclaredId = True
- Attribute VB_Exposed = False
- '*******************************************************
- '* 程序员姓名 : 王雄
- '* 最后修改人 : 王哲
- '* 最后修改时间:2000/08/22
- '* 备 注:经过自己测试
- '*******************************************************
- Dim RecDigest As New ADODB.Recordset
- Dim jdzygs As Integer '控件焦点转移个数
- Dim Lrzt As Integer '录入状态标志(0-非录入状态 1-增加 2-修改)
- Dim ReportTitle As String '报表主标题
- '以下为固定使用变量(网格)
- Dim Cxnrrec As New ADODB.Recordset '显示查询内容动态集
- Dim Dyymctbl As New DY_Dyymsz '打印页面窗体变量
- Dim GridCode As String '显示网格网格代码
- Dim GridInf() As Variant '整个网格设置信息
- Dim Tsxx As String '系统提示信息
- Dim Qslz As Long '网格隐藏(非操作显示)列数
- Dim Sjhgd As Double '网格数据行高度
- Dim GridBoolean() As Boolean '网格列信息(布尔型)
- Dim GridStr() As String '网格列信息(字符型)
- Dim GridInt() As Integer '网格列信息(整型)
- Dim Szzls As Integer '数组总列数(网格列数-1)
- '以下为固定使用变量(文本框)
- Dim Textvar() As Variant '存储变体型文本框信息
- Dim Textboolean() As Boolean '存储布尔型文本框信息
- Dim Textint() As Integer '存储整型文本框信息
- Dim Textstr() As String '存储字符型文本框信息
- Dim Max_Text_Index As Integer '最大录入文本框索引值
- Dim TextGroupCode As String '文本框录入分组编码
- Dim TextValiLock As Boolean '文本框失去焦点是否进行有效性控制判断
- Dim TextValiJudgeLock() As Boolean '文本框录入有效性判断控制锁
- Dim CurTextIndex As Integer '当前文本框索引值
- Dim TextChangeLock As Boolean '文本框内容变换控制锁
- Private Sub Com_Sort_Click()
- If Com_Sort.ListIndex = 2 Then
- LrText(2).Locked = True: LrText(2).Text = 10
- Else
- LrText(2).Locked = False
- End If
- End Sub
- Private Sub Form_KeyPress(KeyAscii As Integer) '控 制 焦 点 转 移
- jdzygs = 8
- Select Case KeyAscii
- Case vbKeyReturn
- If Kjjdzy(jdzygs) Then
- KeyAscii = 0
- End If
- Case 39 '屏蔽"'"
- KeyAscii = 0
- End Select
- End Sub
- Private Sub Form_Load()
- '定义可变部分变量
- ReportTitle = "设备项目设置"
- '调入打印页面设置窗体
- XtReportCode = "Dev_Item"
- Load Dyymctbl
- '以下为文本框处理程序
- TextGroupCode = "Dev_Item"
- Call Drwbkxx(TextGroupCode, Textvar(), Textboolean(), Textint(), Textstr()) '读入文本框录入信息
- Call Wbkcsh
- '调 入 网 格
- GridCode = "Dev_Item"
- Call BzWgcsh(CzxsGrid, GridCode, GridInf(), GridBoolean(), GridInt(), GridStr())
- Qslz = GridInf(1)
- Sjhgd = GridInf(2)
- Szzls = CzxsGrid.Cols - 1
- '填 充 网 格
- Call Cxnrtcwg
- '初始化toolbar,tab卡状态
- Com_Sort.ListIndex = 0
- StTab.Tab = 0
- StTab.TabEnabled(1) = False
- Frame1.Enabled = False
- Lrzt = 0
- End Sub
- Private Sub Cxnrtcwg() '查 询 内 容 填 充 网 格
- Dim Sqlstr As String
- Dim jsqte As Long
- '查询连接串
- Sqlstr = "select * from DEV_Item order by ItemCode"
- Set Cxnrrec = Cw_DataEnvi.DataConnect.Execute(Sqlstr)
- With Cxnrrec
- CzxsGrid.Clear , flexClearData
- CzxsGrid.Rows = .RecordCount + CzxsGrid.FixedRows
- If .EOF And .BOF Then
- Exit Sub
- End If
- jsqte = CzxsGrid.FixedRows
- Do While Not .EOF
- If jsqte >= CzxsGrid.Rows Then
- CzxsGrid.AddItem ""
- End If
- Call Jltcwg(Cxnrrec, jsqte)
- CzxsGrid.RowHeight(jsqte) = Sjhgd
- .MoveNext
- jsqte = jsqte + 1
- Loop
- End With
- End Sub
- Private Sub Jltcwg(Jlbrec As ADODB.Recordset, Rowjsq As Long) '记录内容填充网格
- '[以下为自定义部分
- Dim Text_Sort As String: Dim Help_type As String
- With Jlbrec
- CzxsGrid.TextMatrix(Rowjsq, Sydz("001", GridStr(), Szzls)) = Trim(.Fields("ItemCode")) '项目编码
- CzxsGrid.TextMatrix(Rowjsq, Sydz("002", GridStr(), Szzls)) = Trim(.Fields("ItemChineseName")) '中文名称
- Select Case Trim(.Fields("ItemFieldType")) '项目类型
- Case "0"
- Text_Sort = "0.字符型"
- Case "1"
- Text_Sort = "1.数字型"
- Case "2"
- Text_Sort = "2.日期型"
- End Select
- CzxsGrid.TextMatrix(Rowjsq, Sydz("003", GridStr(), Szzls)) = Text_Sort
- CzxsGrid.TextMatrix(Rowjsq, Sydz("004", GridStr(), Szzls)) = Trim(.Fields("ItmeFieldLength")) '项目长度
- CzxsGrid.TextMatrix(Rowjsq, Sydz("005", GridStr(), Szzls)) = "" & Trim(.Fields("ItmeCorrelation")) '相关项目
- Select Case Trim("" & .Fields("HelpType")) '帮助类型
- Case "0"
- Help_type = "0.网格式"
- Case "1"
- Help_type = "1.下拉式"
- End Select
- CzxsGrid.TextMatrix(Rowjsq, Sydz("006", GridStr(), Szzls)) = Help_type
- If Trim(.Fields!YNRoot) = "0" Then
- CzxsGrid.TextMatrix(Rowjsq, Sydz("007", GridStr(), Szzls)) = False
- Else
- CzxsGrid.TextMatrix(Rowjsq, Sydz("007", GridStr(), Szzls)) = True
- End If
- If Trim(.Fields!YNJudge) = "0" Then
- CzxsGrid.TextMatrix(Rowjsq, Sydz("008", GridStr(), Szzls)) = False
- Else
- CzxsGrid.TextMatrix(Rowjsq, Sydz("008", GridStr(), Szzls)) = True
- End If
- If Trim(.Fields!yncode) = "0" Then
- CzxsGrid.TextMatrix(Rowjsq, Sydz("009", GridStr(), Szzls)) = False
- Else
- CzxsGrid.TextMatrix(Rowjsq, Sydz("009", GridStr(), Szzls)) = True
- End If
- End With
- '以上为自定义部分]
- End Sub
- Private Sub Form_Resize()
- On Error Resume Next
- If Me.Height < 5000 Then Me.Height = 5000
- If Me.Width < 8805 Then Me.Width = 8805
- End Sub
- Private Sub Form_Unload(Cancel As Integer) '窗体卸载
- Set Cxnrrec = Nothing
- Unload Dyymctbl
- End Sub
- Private Function Bclrsj() As Boolean '判断录入数据有效性,并保存数据
- Dim jsqte As Integer
- Dim Ssql As String
- Dim H_str As String
- If Trim(LrText(3).Text) = "" Then
- H_str = ""
- Else
- H_str = "CorrelationList"
- End If
- With RecDigest
- For jsqte = 0 To Max_Text_Index
- If Textint(jsqte, 8) = 1 Then '字段不能为空
- If Len(Trim(LrText(jsqte).Text)) = 0 Then
- Tsxx = Textstr(jsqte, 7) & "不能为空!"
- Call Xtxxts(Tsxx, 0, 1)
- LrText(jsqte).SetFocus
- Bclrsj = False
- Exit Function
- End If
- Else
- If Textint(jsqte, 8) = 2 Then '字段不能为零
- If Val(Trim(LrText(jsqte).Text)) = 0 Then
- Tsxx = Textstr(jsqte, 7) & "不能为零!"
- Call Xtxxts(Tsxx, 0, 1)
- LrText(jsqte).SetFocus
- Bclrsj = False
- Exit Function
- End If
- End If
- End If
- Next jsqte
- '对需要进行事后判断的文本框录入内容进行有效性判断 (固定不变)
- For jsqte = 0 To Max_Text_Index
- If Textboolean(jsqte, 2) Then
- If Not TextYxxpd(jsqte) Then
- Exit Function
- End If
- End If
- Next jsqte
- '<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
- ' On Error GoTo Err_bc
- If Lrzt = 1 Then '增 加
- If .State = 1 Then .Close
- .Open "SELECT * FROM DEV_Item WHERE ItemCode= '" + Trim(LrText(0).Text) + "'", Cw_DataEnvi.DataConnect, adOpenDynamic, adLockOptimistic
- If Not .EOF Then
- Tsxx = "项目编码重复!"
- Call Xtxxts(Tsxx, 0, 1)
- LrText(0).SetFocus
- Bclrsj = False
- Exit Function
- End If
- If .State = 1 Then
- .Close
- End If
- .Open "SELECT * FROM DEV_Item WHERE ItemChineseName= '" + Trim(LrText(1).Text) + "'", Cw_DataEnvi.DataConnect, adOpenDynamic, adLockOptimistic
- If .RecordCount > 0 Then
- RecDigest.Close
- Tsxx = "项目名称重复!"
- Call Xtxxts(Tsxx, 0, 1)
- LrText(1).SetFocus
- Bclrsj = False
- Exit Function
- End If
- RecDigest.Close
- Ssql = "insert into DEV_Item(ItemCode,ItemChineseName,ItemFieldName,ItemFieldType,ItmeFieldLength,ItmeCorrelation,YNcode,HelpType,YNJudge,TableName) " _
- & "values('" & Trim(LrText(0).Text) & "','" & Trim(LrText(1).Text) & "','" _
- & "a" & Trim(LrText(0).Text) & "','" & Com_Sort.ListIndex & "'," & Trim(LrText(2).Text) & ",'" & Trim(LrText(3).Text) & "','" _
- & A_YNStop.Value & "','" & Combo_X.ListIndex & "','" & YN_Judge.Value & "','" & H_str & "' )"
- Cw_DataEnvi.DataConnect.Execute Ssql
- Ssql = "ALTER TABLE DEV_RootInfo ADD " & "a" & Trim(LrText(0).Text) & " NVARCHAR(50) NULL"
- Cw_DataEnvi.DataConnect.Execute Ssql
- Sqlstr = "SELECT * FROM DEV_Item where ItemChineseName='" & Trim(LrText(1).Text) & "'"
- Set Cxnrrec = Cw_DataEnvi.DataConnect.Execute(Sqlstr)
- With CzxsGrid
- .AddItem ""
- .RowHeight(.Rows - 1) = Sjhgd
- .Select .Rows - 1, Qslz
- Call Jltcwg(Cxnrrec, .Rows - 1)
- End With
- Cxnrrec.Close
- Tsxx = "保存完毕!"
- Call Xtxxts(Tsxx, 0, 4)
- Call Cshlrxx(1)
- LrText(0).SetFocus
- '<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
- Else
- If .State = 1 Then .Close
- .Open "SELECT * FROM DEV_Item WHERE " _
- & "ItemChineseName= '" & Trim(LrText(1).Text) & "' " _
- & "and ItemCode<>" & Trim(LrText(0).Text) _
- , Cw_DataEnvi.DataConnect, adOpenDynamic, adLockOptimistic
- RecDigest.Close
- If P_RecordCount > 0 Then
- Tsxx = "项目重复!"
- Call Xtxxts(Tsxx, 0, 1)
- LrText(1).SetFocus
- Bclrsj = False
- Exit Function
- End If
- Cw_DataEnvi.DataConnect.Execute "update DEV_Item set ItemChineseName='" _
- & Trim(LrText(1).Text) & "',YNcode='" & A_YNStop.Value & "'," _
- & "ItemFieldType='" & Com_Sort.ListIndex & "',ItmeFieldLength=" _
- & Val(LrText(2).Text) & ",ItmeCorrelation='" & Trim(LrText(3).Text) & "' " _
- & ",helpType='" & Combo_X.ListIndex & "',YNJudge='" & Val(YN_Judge.Value) & "',TableName='" & H_str & "' Where ItemCode = " & Trim(LrText(0).Text)
- Sqlstr = "SELECT * FROM DEV_Item where ItemCode='" & Trim(LrText(0).Text) & "'"
- Set Cxnrrec = Cw_DataEnvi.DataConnect.Execute(Sqlstr)
- If Not Cxnrrec.EOF Then
- With CzxsGrid
- Call Jltcwg(Cxnrrec, .Row)
- End With
- End If
- Cxnrrec.Close
- End If
- Bclrsj = True
- Exit Function
- End With
- Err_bc:
- Tsxx = "存盘过程中出现错误,请退出后重新进入!"
- If Err.Number = -2147217873 Then
- Tsxx = "编码不能重复"
- End If
- Call Xtxxts(Tsxx, 0, 1)
- Exit Function
- End Function
- Private Sub Cshlrxx(lrztxx As Integer) '初始化录入字段信息
- If lrztxx = 1 Then
- For jsqte = 0 To Max_Text_Index
- If Len(Trim(Textstr(jsqte, 1))) <> 0 Then
- TextChangeLock = True
- LrText(jsqte).Text = ""
- LrText(jsqte).Tag = ""
- TextChangeLock = False
- End If
- TextValiJudgeLock(jsqte) = True
- Next jsqte
- Else
- With CzxsGrid
- LrText(0).Text = Trim(.TextMatrix(.Row, Sydz("001", GridStr(), Szzls)))
- LrText(1).Text = Trim(.TextMatrix(.Row, Sydz("002", GridStr(), Szzls)))
- Com_Sort.ListIndex = Mid(Trim(.TextMatrix(.Row, Sydz("003", GridStr(), Szzls))), 1, 1)
- If Trim(.TextMatrix(.Row, Sydz("003", GridStr(), Szzls))) = 2 Then
- LrText(2).Locked = True
- End If
- LrText(2).Text = Trim(.TextMatrix(.Row, Sydz("004", GridStr(), Szzls)))
- LrText(3).Text = Trim(.TextMatrix(.Row, Sydz("005", GridStr(), Szzls)))
- Combo_X.ListIndex = Mid(Trim(.TextMatrix(.Row, Sydz("006", GridStr(), Szzls))), 1, 1)
- A_YNStop.Value = Val(Trim(.TextMatrix(.Row, Sydz("007", GridStr(), Szzls))))
- YN_Judge.Value = Val((.TextMatrix(.Row, Sydz("008", GridStr(), Szzls))))
- End With
- End If
- End Sub
- Private Sub Scdqjl() '删 除 当 前 记 录
- Dim Yhanswer As Integer
- If Not Security_Log("Dev_ItemSetEdit", Xtczybm, 1, True) Then
- Exit Sub
- End If
- If CzxsGrid.Row < CzxsGrid.FixedRows Then
- Exit Sub
- End If
- Tsxx = "请确认是否删除当前记录?"
- Yhanswer = Xtxxts(Tsxx, 2, 2)
- If Yhanswer = 2 Then
- Exit Sub
- End If
- 'On Error GoTo Cwcl
- '[以下需自定义部分
- Dim aDo_Item As New Recordset
- Set aDo_Item = Cw_DataEnvi.DataConnect.Execute("select * from DEV_Item where ItemCode = '" + Trim(CzxsGrid.TextMatrix(CzxsGrid.Row, Sydz("001", GridStr(), Szzls))) & "'")
- Cw_DataEnvi.DataConnect.Execute "ALTER TABLE DEV_RootInfo DROP COLUMN " + aDo_Item!ItemFieldName
- aDo_Item.Close
- Set aDo_Item = Nothing
- Cw_DataEnvi.DataConnect.Execute "delete DEV_Item where ItemCode = '" + Trim(CzxsGrid.TextMatrix(CzxsGrid.Row, Sydz("001", GridStr(), Szzls)) & "'")
- '以上为自定义部分]
- '<<<<<<<<<<<<<<<<<<<<<<
- CzxsGrid.RemoveItem CzxsGrid.Row
- Exit Sub
- Cwcl:
- If Err.Number = -2147217900 Then
- Tsxx = "该编码已经被使用,不能删除!"
- Call Xtxxts(Tsxx, 0, 1)
- Exit Sub
- Else
- Tsxx = "出现未知情况,该编码不能被删除!"
- Call Xtxxts(Tsxx, 0, 1)
- Exit Sub
- End If
- End Sub
- '******************以下为基本处理程序(固定不变)************************'
- Private Sub Form_KeyUp(KeyCode As Integer, Shift As Integer) '支持热键操作
- If Shift = 2 Then
- Select Case UCase(Chr(KeyCode))
- Case "P" 'Ctrl+P 打印
- Call bbyl(False)
- Case "I" 'Ctrl+I 增加
- If Not Security_Log("Dev_ItemSetEdit", Xtczybm, 1, True) Then
- Exit Sub
- End If
- Call Toolbjzt
- Lrzt = 1
- Call Cshlrxx(Lrzt)
- LrText(0).SetFocus
- LrText(0).Locked = False
- Case "D" 'Ctrl+D 删除
- Call Scdqjl
- End Select
- End If
- End Sub
- Private Sub QxCommand_MouseDown(Button As Integer, Shift As Integer, x As Single, y As Single)
- For jsqte = 0 To Max_Text_Index
- TextValiJudgeLock(jsqte) = True
- Next jsqte
- Call Toolfbjzt
- End Sub
- Private Sub SzToolbar_ButtonClick(ByVal Button As MSComctlLib.Button)
- Select Case Button.Key
- Case "ymsz" '页面设置
- Dyymctbl.Show 1
- Case "yl" '预 览
- Call bbyl(True)
- Case "dy" '打 印
- Call bbyl(False)
- Case "zj" '增 加
- If Not Security_Log("Dev_ItemSetEdit", Xtczybm, 1, True) Then
- Exit Sub
- End If
- Call Toolbjzt
- Lrzt = 1
- Call Cshlrxx(Lrzt)
- LrText(0).Enabled = True
- LrText(0).SetFocus
- Case "xg" '修 改
- If CzxsGrid.Row < CzxsGrid.FixedRows Then MsgBox "没有选定明细! ", 32: Exit Sub
- Call Xgdqjl
- Case "sc" '删 除
- If Trim(CzxsGrid.TextMatrix(CzxsGrid.Row, Sydz("007", GridStr(), Szzls))) = True Then
- MsgBox "此项为固定项不能删除! ", 32
- Exit Sub
- End If
- Call Scdqjl
- Case "fq" '取 消
- Call Toolfbjzt
- Case "sx" '刷 新
- Call Cxnrtcwg
- Case "bz" '帮 助
- Call F1bz
- Case "fh" '退 出
- Unload Me
- End Select
- End Sub
- Private Sub CzxsGrid_DblClick() '修改当前编码记录
- Call Xgdqjl
- End Sub
- Private Sub Xgdqjl() '修改当前编码记录
- If Not Security_Log("Dev_ItemSetEdit", Xtczybm, 1, True, False) Then
- BcCommand.Enabled = False
- End If
- If Trim(CzxsGrid.TextMatrix(CzxsGrid.Row, Sydz("007", GridStr(), Szzls))) = 1 Then
- MsgBox "此项为固定项不能修改!", 32
- Exit Sub
- End If
- If CzxsGrid.Row < CzxsGrid.FixedRows Then
- Exit Sub
- End If
- Call Toolbjzt
- Lrzt = 2
- Call Cshlrxx(Lrzt)
- LrText(1).SetFocus
- LrText(0).Enabled = False
- End Sub
- Private Sub Toolbjzt() 'Toolbar状态(编辑状态)
- Com_Sort.ListIndex = 0
- Combo_X.ListIndex = 0
- A_YNStop.Value = 0
- LrText(2).Locked = False
- StTab.TabEnabled(1) = True
- StTab.Tab = 1
- Frame1.Enabled = True
- StTab.TabEnabled(0) = False
- CzxsGrid.Enabled = False
- With SzToolbar
- .Buttons("ymsz").Enabled = False
- .Buttons("dy").Enabled = False
- .Buttons("yl").Enabled = False
- .Buttons("zj").Enabled = False
- .Buttons("xg").Enabled = False
- .Buttons("sc").Enabled = False
- .Buttons("sx").Enabled = False
- End With
- End Sub
- Private Sub Toolfbjzt() 'Toolbar状态(非编辑状态)
- StTab.TabEnabled(0) = True
- StTab.Tab = 0
- CzxsGrid.Enabled = True
- Frame1.Enabled = False
- StTab.TabEnabled(1) = False
- Lrzt = 0
- With SzToolbar
- .Buttons("ymsz").Enabled = True
- .Buttons("dy").Enabled = True
- .Buttons("yl").Enabled = True
- .Buttons("zj").Enabled = True
- .Buttons("xg").Enabled = True
- .Buttons("sc").Enabled = True
- .Buttons("sx").Enabled = True
- End With
- End Sub
- Private Sub BcCommand_Click() '保 存
- If Not Bclrsj Then
- Exit Sub
- End If
- If Lrzt = 2 Then
- Call Toolfbjzt
- End If
- End Sub
- Private Sub CzxsGrid_BeforeMoveColumn(ByVal Col As Long, Position As Long) '网格列发生移动时自动交换网格索引信息
- FnBln_RefreshArray Col, Position, GridStr(), GridInf()
- End Sub
- Private Sub GsToolbar_ButtonClick(ByVal Button As MSComctlLib.Button) '表格格式设置(通用)
- Select Case Button.Key
- Case "bcgs" '保存表格格式
- Call Bcwggs(CzxsGrid, GridCode, GridStr())
- Case "hfmrgs" '恢复默认格式
- Call Hfmrgs(CzxsGrid, GridCode, GridStr())
- Case "szxsxm" '设置显示项目
- Call Szxsxm(CzxsGrid, GridCode)
- End Select
- End Sub
- Private Sub bbyl(bbylte As Boolean) '报表打印预览
- Dim Bbzbt$, Bbxbt() As String, bbxbtzzxs() As Integer, Bbxbtgs As Integer
- Dim Bbbwh() As String, Bbbwhzzxs() As Integer, Bbbwhgs As Integer
- Bbxbtgs = 1 '报 表 小 标 题 行 数
- Bbbwhgs = 0 '报 表 表 尾 行 数
- ReDim Bbxbt(1 To Bbxbtgs)
- ReDim bbxbtzzxs(1 To Bbxbtgs)
- If Bbbwhgs <> 0 Then
- ReDim Bbbwh(1 To Bbbwhgs)
- ReDim Bbbwhzzxs(1 To Bbbwhgs)
- End If
- Bbzbt = ReportTitle
- Bbxbt(1) = " "
- bbxbtzzxs(1) = 0 '报表行组织形式(0-居左 1-居中 2-居右)
- Call Scyxsjb(CzxsGrid) '生成报表数据
- Call Scdybb(Dyymctbl, Bbzbt, Bbxbt(), bbxbtzzxs(), Bbxbtgs, Bbbwh(), Bbbwhzzxs(), Bbbwhgs, bbylte)
- If Not bbylte Then
- Unload DY_Tybbyldy
- End If
- End Sub
- '************以下为文本框录入处理程序(固定不变部分)*************'
- Private Sub Wbklrwbcl(Index As Integer) '文本框录入事后处理程序
- '以下为依据实际情况自定义部分[
- ']以上为依据实际情况自定义部分
- End Sub
- Private Sub LrText_Change(Index As Integer)
- '屏蔽程序改变控制
- If TextChangeLock Then
- Exit Sub
- End If
- TextValiJudgeLock(Index) = False '打开有效性判断锁
- '限制字段录入长度
- TextChangeLock = True '加锁(防止执行Lrtext_Change)
- Select Case Textint(Index, 1)
- Case 8 '金额型
- Call Sjgskz(LrText(Index), Xtjezws - Xtjexsws - 1, Xtjexsws)
- Case 9 '数量型
- Call Sjgskz(LrText(Index), Xtslzws - Xtslxsws - 1, Xtslxsws)
- Case 10 '单价型
- Call Sjgskz(LrText(Index), Xtdjzws - Xtdjxsws - 1, Xtdjxsws)
- Case Else '其他小数类型控制
- If Textint(Index, 6) <> 0 Or Textint(Index, 7) <> 0 Then
- Call Sjgskz(LrText(Index), Textint(Index, 6), Textint(Index, 7))
- End If
- End Select
- TextChangeLock = False '解锁
- End Sub
- Private Sub LrText_GotFocus(Index As Integer) '文本框得到焦点,显示相应信息
- Call TextShow(Index)
- CurTextIndex = Index
- End Sub
- Private Sub LrText_KeyDown(Index As Integer, KeyCode As Integer, Shift As Integer) '字段按F2键提供帮助
- Select Case KeyCode
- Case vbKeyF2
- Call Text_Help(Index)
- End Select
- End Sub
- Private Sub LrText_KeyPress(Index As Integer, KeyAscii As Integer) '文本框录入事中控制
- Call InputFieldLimit(LrText(Index), Textint(Index, 1), KeyAscii)
- End Sub
- Private Sub LrText_LostFocus(Index As Integer) '文本框失去焦点进行有效性判断及相应处理
- If Not Textboolean(Index, 2) Then '事中判断
- Call TextYxxpd(Index)
- End If
- End Sub
- Private Sub Ydcommand1_MouseDown(Index As Integer, Button As Integer, Shift As Integer, x As Single, y As Single) '按钮提供帮助
- Call Text_Help(Index)
- End Sub
- Private Sub Text_Help(Index As Integer) '录入字段帮助
- If Not Ydcommand1(Index).Visible Then
- Exit Sub
- End If
- TextValiJudgeLock(Index) = True
- '先进行有效性判断
- If Not TextYxxpd(CurTextIndex) Then
- Exit Sub
- End If
- Call Drbmhelp(Textint(Index, 2), Textstr(Index, 4), Trim(LrText(Index).Text))
- If Len(Xtfhcs) <> 0 Then
- If Textint(Index, 3) = 1 Then
- LrText(Index).Text = Xtfhcsfz
- LrText(Index).Tag = Xtfhcs
- Else
- LrText(Index).Text = Xtfhcs
- LrText(Index).Tag = Xtfhcsfz
- End If
- End If
- TextValiJudgeLock(Index) = False
- LrText(Index).SetFocus
- End Sub
- Private Sub TextShow(Index As Integer) '文本框得到焦点,显示相应信息
- '填写文本框得到焦点,进行相应信息处理程序
- End Sub
- Private Sub Wbkcsh() '录入文本框初始化
- Dim jsqte As Integer
- '最大录入文本框索引值
- Max_Text_Index = Textvar(1)
- ReDim TextValiJudgeLock(Max_Text_Index)
- For jsqte = 0 To Max_Text_Index
- If Len(Trim(Textstr(jsqte, 1))) <> 0 Then
- If Textboolean(jsqte, 1) Then
- If jsqte <> 0 Then
- Load Ydcommand1(jsqte)
- End If
- Ydcommand1(jsqte).Visible = True
- Ydcommand1(jsqte).Move LrText(jsqte).Left + LrText(jsqte).Width, LrText(jsqte).Top
- End If
- TextChangeLock = True
- LrText(jsqte).Text = ""
- LrText(jsqte).Tag = ""
- If Textint(jsqte, 5) <> 0 Then
- LrText(jsqte).MaxLength = Textint(jsqte, 5)
- End If
- TextChangeLock = False
- End If
- TextValiJudgeLock(jsqte) = True
- Next jsqte
- End Sub
- Private Function TextYxxpd(Index As Integer) As Boolean '文本框有效性判断
- Dim Sqlstr As String
- Dim Findrec As ADODB.Recordset
- If TextValiJudgeLock(Index) Then '文本框内容未曾改变不进行有效性判断
- TextYxxpd = True
- Exit Function
- End If
- If Trim(LrText(Index)) = "" Then
- LrText(Index).Tag = ""
- Call Wbklrwbcl(Index)
- TextValiJudgeLock(Index) = True
- TextYxxpd = True
- Exit Function
- End If
- Select Case Textint(Index, 4)
- Case 1 '编码型
- Sqlstr = Trim(Textstr(Index, 5))
- Sqlstr = Replace(Sqlstr, "@", "'" & Trim(LrText(Index).Text) & "'")
- Set Findrec = Cw_DataEnvi.DataConnect.Execute(Sqlstr)
- If Findrec.EOF Then
- Call Xtxxts(Trim(Textstr(Index, 6)), 0, 1)
- LrText(Index).SetFocus
- Exit Function
- Else
- Select Case Textint(Index, 3)
- Case 0
- If Len(Trim(Textstr(Index, 2))) <> 0 Then
- LrText(Index).Text = Trim(Findrec.Fields(Trim(Textstr(Index, 2))))
- End If
- If Len(Trim(Textstr(Index, 3) & "")) <> 0 Then
- LrText(Index).Tag = Trim(Findrec.Fields(Trim(Textstr(Index, 3))))
- End If
- Case 1
- If Len(Trim(Textstr(Index, 3) & "")) <> 0 Then
- LrText(Index).Text = Trim(Findrec.Fields(Trim(Textstr(Index, 3))))
- End If
- If Len(Trim(Textstr(Index, 2))) <> 0 Then
- LrText(Index).Tag = Trim(Findrec.Fields(Trim(Textstr(Index, 2))))
- End If
- End Select
- End If
- Case 2 '日期型
- If IsDate(LrText(Index).Text) Then
- LrText(Index).Text = Format(LrText(Index).Text, "yyyy-mm-dd")
- Else
- Tsxx = "非法公历日期!(格式:" + Format(Date, "yyyy-mm-dd") + ")"
- Call Xtxxts(Tsxx, 0, 1)
- LrText(Index).SetFocus
- Exit Function
- End If
- Case 3 '其他类型
- End Select
- TextValiJudgeLock(Index) = True
- TextYxxpd = True
- End Function