📄 +
字号:
Begin MSComctlLib.ImageList ImageList2
Left = 0
Top = 0
_ExtentX = 1005
_ExtentY = 1005
BackColor = -2147483643
ImageWidth = 16
ImageHeight = 16
MaskColor = 12632256
_Version = 393216
BeginProperty Images {2C247F25-8591-11D1-B16A-00C0F0283628}
NumListImages = 4
BeginProperty ListImage1 {2C247F27-8591-11D1-B16A-00C0F0283628}
Picture = "设置_档案细节设置.frx":42F2
Key = "xttb"
EndProperty
BeginProperty ListImage2 {2C247F27-8591-11D1-B16A-00C0F0283628}
Picture = "设置_档案细节设置.frx":4BCC
Key = "gnqx"
EndProperty
BeginProperty ListImage3 {2C247F27-8591-11D1-B16A-00C0F0283628}
Picture = "设置_档案细节设置.frx":54A6
Key = "stb"
EndProperty
BeginProperty ListImage4 {2C247F27-8591-11D1-B16A-00C0F0283628}
Picture = "设置_档案细节设置.frx":64F8
Key = "szk"
EndProperty
EndProperty
End
End
Attribute VB_Name = "Set_ArItemsFrm"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
'*******************************************************
'* 模块名称 :档案细节设置设置
'* 功能描述 : 设置档案项目、界面的模块
'* 程序员姓名 : 刘刚
'* 最后修改人 : 刘刚
'* 最后修改时间:2001/12/03
'* 备 注:经过自己测试
'*******************************************************
Dim RecDigest As New ADODB.Recordset '常用摘要表
Dim jdzygs As Integer '控件焦点转移个数
Dim Lrzt As Integer '录入状态标志(0-非录入状态 1-增加 2-修改)
Dim ReportTitle As String '报表主标题
Dim Str_RightEdit 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 '文本框内容变换控制锁
'<<<<<<<<<<<<<<<<<<
Dim nodX As Node
Dim sortId As Integer
Dim listId As Integer
Private Sub Cmd_No_Click()
'首先要把主表的网格重新刷新
GridCode = "Rs_SetArItems"
Call BzWgcsh(CzxsGrid, GridCode, GridInf(), GridBoolean(), GridInt(), GridStr())
'设置网格的列属性不可移动
sSql = "UPDATE Xt_Grid SET explorerbar=0 WHERE System_Code='Rs_User' AND ColIndex = '000' "
Cw_DataEnvi.DataConnect.Execute (sSql)
Qslz = GridInf(1)
Sjhgd = GridInf(2)
Szzls = CzxsGrid.Cols - 1
Call Tree_List_Click
Call Toolfbjzt
With GsToolbar
.Buttons("bcgs").Enabled = True
.Buttons("hfmrgs").Enabled = True
.Buttons("szxsxm").Enabled = True
End With
Fra_face.Enabled = False
End Sub
Private Sub Cmd_Yes_Click()
If Not TxtDataPass(Txt_TitleH) Then Exit Sub
Call Bcwggs_U(vsFlexGrid1, GridCode, GridStr())
Call BzWgcsh(vsFlexGrid1, GridCode, GridInf(), GridBoolean(), GridInt(), GridStr())
vsFlexGrid1.ColHidden(Sydz("001", GridStr(), Szzls)) = True
vsFlexGrid1.ColHidden(Sydz("002", GridStr(), Szzls)) = True
vsFlexGrid1.AddItem ""
End Sub
Private Sub Form_KeyPress(KeyAscii As Integer) '控 制 焦 点 转 移
jdzygs = 5
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 = "Rs_SetArItems"
Load Dyymctbl
'以下为文本框处理程序
Add_Tree
TextGroupCode = "Rs_SetArItems"
Call Drwbkxx(TextGroupCode, Textvar(), Textboolean(), Textint(), Textstr()) '读入文本框录入信息
Call Wbkcsh
'调 入 网 格
GridCode = "Rs_SetArItems"
Call BzWgcsh(CzxsGrid, GridCode, GridInf(), GridBoolean(), GridInt(), GridStr())
Qslz = GridInf(1)
Sjhgd = GridInf(2)
Szzls = CzxsGrid.Cols - 1
'填 充 网 格
' Call Cxnrtcwg
'初始化toolbar,tab卡状态
StTab.Tab = 0
StTab.TabEnabled(1) = False
StTab.TabEnabled(2) = False
Frame1.Enabled = False
Lrzt = 0
Call FillTypeCbo
Call FillAlignCbo
Lbl_Indicate.Caption = "1.明细编码最多可以录入3位数字,在同一类别中不得重复" + Chr(10) _
& "2.明细名称最长可以录入30个汉字,在所有类别中不得重复"
'编辑(新增、修改、删除)权限索引
Str_RightEdit = "Rs_Set_ArItems_Edit"
End Sub
Private Sub Cxnrtcwg() '查 询 内 容 填 充 网 格
Dim Sqlstr As String
Dim jsqte As Long
'查询连接串
Sqlstr = "select * from Xt_Grid where FieldsName <> '' and FieldsName <> 'EmpNo' AND FieldsName<>'EmpName' AND Grid_Code = '" & F_Sort.Tag & "' ORDER BY ColIndex"
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 .Fields("FieldsName") <> "EmpNo" And .Fields("FieldsName") <> "EmpName" Then
If jsqte >= CzxsGrid.Rows Then
CzxsGrid.AddItem ""
End If
Call Jltcwg(Cxnrrec, jsqte)
CzxsGrid.RowHeight(jsqte) = Sjhgd
' End If
.MoveNext
jsqte = jsqte + 1
Loop
End With
End Sub
Private Sub Jltcwg(Jlbrec As ADODB.Recordset, Rowjsq As Long) '记录内容填充网格
Dim tmpStr As String
'[以下为自定义部分
With Jlbrec
CzxsGrid.TextMatrix(Rowjsq, 0) = Trim(.Fields("FieldsName"))
CzxsGrid.TextMatrix(Rowjsq, Sydz("001", GridStr(), Szzls)) = Trim(.Fields("ColTitle1"))
CzxsGrid.TextMatrix(Rowjsq, Sydz("002", GridStr(), Szzls)) = ConvertCode2Type(Trim(.Fields("Text_Data_Type")))
CzxsGrid.TextMatrix(Rowjsq, Sydz("003", GridStr(), Szzls)) = "" & .Fields("Text_Length")
CzxsGrid.TextMatrix(Rowjsq, Sydz("004", GridStr(), Szzls)) = "" & .Fields("Text_Deci_Length")
CzxsGrid.TextMatrix(Rowjsq, Sydz("005", GridStr(), Szzls)) = ConvertCode2Align("" & .Fields("ColAlignment"))
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 tLen As Integer '数字型总长度或是字符型总长度
Dim dLen As Integer '小数位数
Dim nulStr As String
Dim nnulStr As String
Dim FieldName As String
Dim Colid As Integer
Dim tmpRs As New ADODB.Recordset
Bclrsj = False
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 Swcwcl
tLen = Val(Trim(LrText(1).Text))
dLen = Val(Trim(LrText(2).Text))
If GetDataType = -1 Then
Call Xtxxts("请选择项目类型!", 0, 3)
Exit Function
End If
If (GetDataType = 0) Then
dLen = 0
If tLen > 30 Then
Call Xtxxts("字符型长度不能大于30!", 0, 1)
dLen = 0
Exit Function
End If
End If
If (GetDataType = 5) And (tLen - dLen > 10) Then
Call Xtxxts("数字型整数长度不能大于10!", 0, 1)
Exit Function
End If
If (GetDataType = 5) And (dLen > tLen - 1) Then
Call Xtxxts("数字型小数长度必须小于总长度!", 0, 1)
Exit Function
End If
If (GetDataType = 5) And (dLen > 2) Then
Call Xtxxts("数字型小数长度不能大于2!", 0, 1)
Exit Function
End If
If (GetDataType = 7) Then tLen = 10: dLen = 0
If Lrzt = 1 Then '增 加
'------------------------------------------------
sSql = "SELECT Col=MAX(ColIndex)+1 FROM Xt_Grid WHERE Grid_Code ='" & F_Sort.Tag & "'"
Cw_DataEnvi.DataConnect.BeginTrans
Set tmpRs = Cw_DataEnvi.DataConnect.Execute(sSql)
If Not tmpRs.EOF Then
Colid = Trim(tmpRs!Col)
FieldName = Trim(F_Sort.Tag) & Format(Colid - 2, "000") 'Right("000" & (Colid - 2), 3) '去掉职工号,姓名两条记录
End If
sSql = "INSERT INTO Xt_Grid (System_Code,Grid_Code,ColId,ColIndex,ColTitle1,FieldsName,ColAlignment,Text_Data_Type,Text_Length,Text_Deci_Length,Edit_Flag,SelectRow_flag,AssistantRows) " + Chr$(10) _
& "SELECT 'Rs_User','" & F_Sort.Tag & "','" & Colid & "','" & Format(Colid, "000") & "','" & Trim(LrText(0).Text) & "','" & FieldName & "','" & GetDataAlign & "','" & GetDataType & "','" & tLen & "','" & dLen & "','1','0','0'"
Cw_DataEnvi.DataConnect.Execute sSql
sSql = "ALTER TABLE Rs_ArMain ADD " & FieldName & " NVARCHAR(30) NULL"
Cw_DataEnvi.DataConnect.Execute sSql
Cw_DataEnvi.DataConnect.CommitTrans
Sqlstr = "SELECT * FROM Xt_Grid WHERE FieldsName ='" & FieldName & "'"
Set Cxnrrec = Cw_DataEnvi.DataConnect.Execute(Sqlstr)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -