📄 frmaccupgrade.frm
字号:
End Sub
'输出处理程序
Private Sub outputProc()
If Not xmlInit Then
Call initPrnXmlFile
End If
If xmlInit Then
Dim sTypeList As String
Dim sSizeList As String
Dim i As Long
Dim e As Long
i = 0
sTypeList = "10,10,10,10,8,10,10"
sSizeList = "40,40,80,80,10,80,8"
e = Printer.ExportToFile(i, sTypeList, sSizeList, "", "")
xmlInit = False
' MsgBox e
End If
End Sub
'保存用户设置
Private Sub printer_SettingChanged(ByVal varLocalSettings As Variant, ByVal varModuleSettings As Variant)
Dim xmlstr As String
xmlstr = "<?xml version='1.0' standalone='yes' ?>"
xmlstr = xmlstr & "<格式>"
xmlstr = xmlstr & varLocalSettings
xmlstr = xmlstr & varModuleSettings
xmlstr = xmlstr & "</格式>"
Dim rs As New ADODB.Recordset
On Error GoTo Error0
rs.Open "select * from prn_format where moduleid='accUpprn'", con, adOpenDynamic, adLockOptimistic
rs("formatXml") = xmlstr
rs.Update
rs.Close
Set rs = Nothing
Exit Sub
Error0:
If rs.State = adStateOpen Then
rs.Close
End If
Set rs = Nothing
MsgBox "打印设置保存失败!"
End Sub
'设置打印格式
Private Function initStyleXml() As Boolean
Dim rs As New ADODB.Recordset
Dim PrnDom As New DOMDocument
Dim xmlstr As String
sqlstr = "select formatXml from PRN_format where moduleID='accUpprn'"
rs.Open sqlstr, con, adOpenDynamic, adLockOptimistic
If Not (rs.EOF Or rs.BOF) Then
xmlstr = Trim(rs("formatXml"))
Else
xmlstr = "<?xml version=''1.0'' standalone=''yes'' ?>"
xmlstr = xmlstr & "<格式>"
xmlstr = xmlstr & "<打印设置 打印范围=''全部'' 页码范围=''1-1'' 打印份数=''1'' 压缩=''是'' 多任务强制分页=''否'' />"
xmlstr = xmlstr & "<纸张设置 纸张类型=''9'' 纸张大小=''2100,2970'' 打印方向=''纵向'' 页边距=''300,200,200,200'' />"
xmlstr = xmlstr & "<页眉 对齐方式=''左'' 左顶点=''0,0'' 宽=''0'' 高=''100'' 字体名=''楷体_GB2312'' 字体大小=''12'' 颜色=''#000000'' 粗体=''否'' 斜体=''否'' 打印=''是'' />"
xmlstr = xmlstr & "<标题 对齐方式=''中'' 左顶点=''0,200'' 宽=''0'' 高=''300'' 字体名=''黑体'' 字体大小=''24'' 颜色=''#000000'' 粗体=''是'' 斜体=''否'' 打印=''是'' /> "
xmlstr = xmlstr & "<表头 对齐方式=''左'' 左顶点=''0,500'' 宽=''1600'' 高=''200'' 字体名=''宋体'' 字体大小=''12'' 颜色=''#000000'' 粗体=''否'' 斜体=''否'' 打印=''是''>"
xmlstr = xmlstr & "<字段 打印=''是'' 名字=''升级日期'' 对齐方式=''左'' 左顶点=''1100,500'' 宽=''800'' 高=''200'' 字体名=''黑体'' 字体大小=''16'' 颜色=''#000000'' 粗体=''否'' 斜体=''否'' 标题宽度=''0'' 下标线=''否'' />"
'xmlstr = xmlstr & "<字段 打印=''是'' 名字=''生成单据名称'' 对齐方式=''右'' 左顶点=''1200,650'' 宽=''600'' 高=''140'' />"
xmlstr = xmlstr & "</表头>"
xmlstr = xmlstr & "<表体 左顶点=''0,700'' 宽=''0'' 高=''1400'' 固定行数=''0'' 列宽=''250,220,350,350,300,400,200''>"
xmlstr = xmlstr & "<表体头 对齐方式=''中'' 边框风格=''783'' 边框宽度=''2'' 行高=''140'' 字体名=''黑体'' 字体大小=''14'' 颜色=''#000000'' 粗体=''是'' 斜体=''否'' 打印=''是'' />"
xmlstr = xmlstr & "<表体行 对齐方式=''左,左,左,左,左,左,左'' 边框风格=''783'' 边框宽度=''2'' 行高=''0'' 字体名=''Times New Roman'' 字体大小=''12'' 颜色=''#000000'' 粗体=''否'' 斜体=''否'' 打印=''是'' />"
xmlstr = xmlstr & "<表体尾 对齐方式=''中'' 边框风格=''735'' 边框宽度=''2'' 行高=''140'' 字体名=''黑体'' 字体大小=''14'' 颜色=''#000000'' 粗体=''否'' 斜体=''否'' 打印=''是'' />"
xmlstr = xmlstr & "</表体>"
' xmlstr = xmlstr & "<表尾 对齐方式=''左'' 左顶点=''0,2200'' 宽=''1600'' 高=''200'' 字体名=''新宋体'' 字体大小=''12'' 颜色=''#000000'' 粗体=''否'' 斜体=''否'' 打印=''是''>"
' xmlstr = xmlstr & "<字段 打印=''是'' 名字=''操作员'' 对齐方式=''左'' 左顶点=''50,2200'' 宽=''500'' 高=''200'' 字体名='''' 字体大小=''12'' 颜色=''#000000'' 粗体=''否'' 斜体=''否'' 标题宽度=''0'' 下标线=''否'' />"
' xmlstr = xmlstr & "<字段 打印=''是'' 名字=''操作日期'' 对齐方式=''右'' 左顶点=''800,2200'' 宽=''600'' 高=''150'' 字体名='''' 字体大小=''12'' 颜色=''#000000'' 粗体=''否'' 斜体=''否'' 标题宽度=''0'' 下标线=''否'' />"
' xmlstr = xmlstr & "</表尾>"
xmlstr = xmlstr & "<页脚 对齐方式=''右'' 左顶点=''0,2400'' 宽=''0'' 高=''170'' 字体名=''楷体_GB2312'' 字体大小=''10'' 颜色=''#000000'' 粗体=''否'' 斜体=''否'' 打印=''是'' />"
xmlstr = xmlstr & "</格式>"
sqlstr = "insert into PRN_format (moduleID,FormatXml) values('accUpprn','" & xmlstr & "');"
On Error GoTo Error1
con.BeginTrans
con.Execute sqlstr
con.CommitTrans
xmlstr = "<?xml version='1.0' standalone='yes' ?>"
xmlstr = xmlstr & "<格式>"
xmlstr = xmlstr & "<打印设置 打印范围='全部' 页码范围='1-1' 打印份数='1' 压缩='是' 多任务强制分页='否' />"
xmlstr = xmlstr & "<纸张设置 纸张类型='9' 纸张大小='2100,2970' 打印方向='纵向' 页边距='300,200,200,200' />"
xmlstr = xmlstr & "<页眉 对齐方式='左' 左顶点='0,0' 宽='0' 高='100' 字体名='楷体_GB2312' 字体大小='12' 颜色='#000000' 粗体='否' 斜体='否' 打印='是' />"
xmlstr = xmlstr & "<标题 对齐方式='中' 左顶点='0,200' 宽='0' 高='300' 字体名='黑体' 字体大小='24' 颜色='#000000' 粗体='是' 斜体='否' 打印='是' /> "
xmlstr = xmlstr & "<表头 对齐方式='左' 左顶点='0,500' 宽='1600' 高='200' 字体名='宋体' 字体大小='12' 颜色='#000000' 粗体='否' 斜体='否' 打印='是'>"
xmlstr = xmlstr & "<字段 打印='是' 名字='升级日期' 对齐方式='左' 左顶点='1100,500' 宽='800' 高='200' 字体名='黑体' 字体大小='16' 颜色='#000000' 粗体='否' 斜体='否' 标题宽度='0' 下标线='否' />"
'xmlstr = xmlstr & "<字段 打印='是' 名字='生成单据名称' 对齐方式='右' 左顶点='1200,650' 宽='600' 高='140' />"
xmlstr = xmlstr & "</表头>"
xmlstr = xmlstr & "<表体 左顶点='0,700' 宽='0' 高='1400' 固定行数='0' 列宽='250,220,350,350,300,400,200'>"
xmlstr = xmlstr & "<表体头 对齐方式='中' 边框风格='735' 边框宽度='2' 行高='140' 字体名='黑体' 字体大小='14' 颜色='#000000' 粗体='是' 斜体='否' 打印='是' />"
xmlstr = xmlstr & "<表体行 对齐方式='左,左,左,左,左,左,左' 边框风格='783' 边框宽度='2' 行高='0' 字体名='Times New Roman' 字体大小='12' 颜色='#000000' 粗体='否' 斜体='否' 打印='是' />"
xmlstr = xmlstr & "<表体尾 对齐方式='中' 边框风格='735' 边框宽度='2' 行高='140' 字体名='黑体' 字体大小='14' 颜色='#000000' 粗体='否' 斜体='否' 打印='是' />"
xmlstr = xmlstr & "</表体>"
' xmlstr = xmlstr & "<表尾 对齐方式='左' 左顶点='0,1800' 宽='1600' 高='200' 字体名='新宋体' 字体大小='12' 颜色='#000000' 粗体='否' 斜体='否' 打印='是'>"
' xmlstr = xmlstr & "<字段 打印='是' 名字='操作员' 对齐方式='左' 左顶点='50,1800' 宽='500' 高='200' 字体名='' 字体大小='12' 颜色='#000000' 粗体='否' 斜体='否' 标题宽度='0' 下标线='否' />"
' xmlstr = xmlstr & "<字段 打印='是' 名字='操作日期' 对齐方式='右' 左顶点='800,1800' 宽='600' 高='150' 字体名='' 字体大小='12' 颜色='#000000' 粗体='否' 斜体='否' 标题宽度='0' 下标线='否' />"
' xmlstr = xmlstr & "</表尾>"
xmlstr = xmlstr & "<页脚 对齐方式='右' 左顶点='0,2400' 宽='0' 高='170' 字体名='楷体_GB2312' 字体大小='10' 颜色='#000000' 粗体='否' 斜体='否' 打印='是' />"
xmlstr = xmlstr & "</格式>"
End If
If PrnDom.loadXML(Trim(xmlstr)) Then
PrnDom.Save App.Path & "\taccUpStyle.xml"
Else
initStyleXml = False
End If
initStyleXml = True
rs.Close
Set rs = Nothing
Set PrnDom = Nothing
Exit Function
Error1:
initStyleXml = False
con.RollbackTrans
rs.Close
Set rs = Nothing
Set PrnDom = Nothing
End Function
Private Sub Form_KeyUp(KeyCode As Integer, Shift As Integer)
Select Case KeyCode
Case vbKeyF6
If Shift = 0 And tlbTool.Buttons("save").Enabled Then
Screen.MousePointer = vbHourglass
Call saveProc
Screen.MousePointer = vbDefault
End If
Case vbKeyF3
If Shift = 0 And tlbTool.Buttons("search").Enabled Then
If frmQuqeryAcc.m_accUpgrade = 0 Then
frmQuqeryAcc.m_accUpgrade = 1
frmQuqeryAcc.Show 1
frmQuqeryAcc.m_accUpgrade = 0
Call fillGrid(False)
Else
MsgBox "账号升级或账号信息调整程序正在执行查询操作!" & vbCrLf & "请稍后再执行查询!", vbInformation, "账号升级"
End If
End If
Case vbKeyF4
If Shift = 2 Then
Unload Me
Exit Sub
' ElseIf Shift = 0 And tlbTool.Buttons("cancel").Enabled Then
' Call CancelProc
End If
Case vbKeyF5
If Shift = 0 And tlbTool.Buttons("cmdyulan").Enabled Then
Screen.MousePointer = vbHourglass
yulanProc
Screen.MousePointer = vbDefault
End If
Case vbKeyP
If Shift = 2 And tlbTool.Buttons("print").Enabled Then
Call printProc
End If
Case vbKeyZ
If Shift = 2 And tlbTool.Buttons("cancel").Enabled Then
Screen.MousePointer = vbHourglass
Call CancelProc
Screen.MousePointer = vbDefault
End If
Case vbKeyO
If Shift = 2 And tlbTool.Buttons("output").Enabled Then
Call outputProc
End If
Case vbKeyV
If Shift = 4 And tlbTool.Buttons("preview").Enabled Then
Call previewProc
End If
Case vbKeyF1
SendKeys "{F1 3}"
End Select
ocxCTBtool.RefreshEnable
End Sub
Private Sub tlbTool_ButtonClick(ByVal Button As MsComctlLib.Button)
Select Case Button.key
Case "print"
printProc
Case "preview"
previewProc
Case "output"
outputProc
Case "search"
If frmQuqeryAcc.m_accUpgrade = 0 Then
frmQuqeryAcc.m_accUpgrade = 1
frmQuqeryAcc.Show 1
frmQuqeryAcc.m_accUpgrade = 0
Call fillGrid(False)
Else
MsgBox "账号升级或账号信息调整程序正在执行查询操作!" & vbCrLf & "请稍后再执行查询!", vbInformation, "账号升级"
End If
Case "cmdyulan"
Screen.MousePointer = vbHourglass
yulanProc
Screen.MousePointer = vbDefault
Case "cancel"
Screen.MousePointer = vbHourglass
CancelProc
Screen.MousePointer = vbDefault
Case "save"
Screen.MousePointer = vbHourglass
SuperGrid1.ProtectUnload
If error_Edit Then
If errorNUM = 0 Then
MsgBox "请先改正输入错误!", vbInformation, "账号升级"
errorNUM = 1
SuperGrid1.row = selrow
SuperGrid1.col = selcol
SuperGrid1.SetFocus
Else
errorNUM = 0
End If
Else
saveProc
End If
Screen.MousePointer = vbDefault
Case "help"
SendKeys "{F1 3}"
Case "exit"
Unload Me
Exit Sub
End Select
If Button.key <> "exit" Then
ocxCTBtool.RefreshEnable
End If
End Sub
Private Sub txtSjrq_GotFocus()
If txtSjrq.Enabled Then
cmdDateRef.Visible = True
End If
End Sub
Private Sub txtSjrq_KeyUp(KeyCode As Integer, Shift As Integer)
If KeyCode = vbKeyF2 And txtSjrq.Enabled Then
cmdDateRef_Click
ElseIf KeyCode = vbKeyReturn Or KeyCode = vbKeyDown Then
SuperGrid1.SetFocus
End If
End Sub
Private Sub txtSjrq_LostFocus()
If Trim(txtSjrq.Text) <> "" Then
If DateCheck(Trim(txtSjrq.Text)) = "" Then
MsgBox "升级日期输入错误", vbInformation, "账号升级"
Exit Sub
Else
txtSjrq.Text = DateCheck(Trim(txtSjrq.Text))
End If
End If
End Sub
'set supergrid size and style
Private Sub initGrid()
With SuperGrid1
.TextMatrix(0, 0) = "旧账户号"
.SetColProperty 0, 40, BrowNull
.ColAlignment(0) = 3
.TextMatrix(0, 1) = "新账户号"
.SetColProperty 1, 50, BrowNull, EditNormal
.ColAlignment(1) = 3
.TextMatrix(0, 2) = "账户名称"
.SetColProperty 2, 80, BrowNull
.ColAlignment(2) = 3
.SetColProperty 3, 80, BrowNull
.TextMatrix(0, 3) = "单位名称"
.ColAlignment(3) = 3
.SetColProperty 4, 10, BrowNull, EditDate
.TextMatrix(0, 4) = "开户日期"
.ColAlignment(4) = 3
.TextMatrix(0, 5) = "开户银行"
.SetColProperty 5, 80, BrowNull
.ColAlignment(5) = 3
.TextMatrix(0, 6) = "币别"
.SetColProperty 6, 8, BrowNull
.ColAlignment(6) = 3
.ReadOnly = True
End With
End Sub
Private Sub loadstatic()
Me.Icon = LoadResPicture(109, vbResIcon)
cmdDateRef.Picture = LoadResPicture(1108, vbResBitmap)
ImageList1.ListImages.Add , "print", LoadResPicture(314, vbResBitmap)
ImageList1.ListImages.Add , "preview", LoadResPicture(312, vbResBitmap)
ImageList1.ListImages.Add , "output", LoadResPicture(263, vbResBitmap)
ImageList1.ListImages.Add , "cmdyulan", LoadResPicture(143, vbResBitmap)
ImageList1.ListImages.Add , "search", LoadResPicture(331, vbResBitmap)
ImageList1.ListImages.Add , "save", LoadResPicture(1145, vbResBitmap)
ImageList1.ListImages.Add , "cancel", LoadResPicture(316, vbResBitmap)
ImageList1.ListImages.Add , "help", LoadResPicture(396, vbResBitmap)
ImageList1.ListImages.Add , "exit", LoadResPicture(1118, vbResBitmap)
With tlbTool
.Buttons("print").Caption = "打印"
.Buttons("print").Image = "print"
.Buttons("print").ToolTipText = "Ctrl+p"
.Buttons("preview").Caption = "预览"
.Buttons("preview").Image = "preview"
.Buttons("preview").ToolTipText = "Alt+V"
.Buttons("output").Caption = "输出"
.Buttons("output").Image = "output"
.Buttons("output").ToolTipText = "Ctrl+O"
.Buttons("cmdyulan").Caption = "升级"
.Buttons("cmdyulan").Image = "cmdyulan"
.Buttons("cmdyulan").ToolTipText = "F5"
.Buttons("search").Caption = "查询"
.Buttons("search").Image = "search"
.Buttons("search").ToolTipText = "F3"
.Buttons("save").Caption = "保存"
.Buttons("save").Image = "save"
.Buttons("save").ToolTipText = "F6"
.Buttons("cancel").Caption = "放弃"
.Buttons("cancel").Image = "cancel"
'.Buttons("cancel").ToolTipText = "F4"
.Buttons("cancel").ToolTipText = "Ctrl+Z"
.Buttons("help").Caption = "帮助"
.Buttons("help").Image = "help"
.Buttons("help").ToolTipText = "F1"
.Buttons("exit").Caption = "退出"
.Buttons("exit").Image = "exit"
.Buttons("exit").ToolTipText = "Ctrl+F4"
End With
End Sub
Private Sub checkDup(ByVal R As Long, ByVal C As Long)
Dim i As Integer
selrow = R
selcol = C
With SuperGrid1
For i = R - 1 To 1 Step -1
If Trim(.TextMatrix(i, 0)) = Trim(.TextMatrix(R, 1)) Then
MsgBox "第" & R & "行新账户号与第" & i & "行老账户号相同!请重新输入!", vbInformation, "输入错误!"
errorNUm1 = 1
error_Edit = True
Exit Sub
End If
If Trim(.TextMatrix(i, 1)) = Trim(.TextMatrix(R, 1)) Then
MsgBox "第" & R & "行新账户号与第" & i & "行新账户号相同!请重新输入!", vbInformation, "输入错误!"
errorNUm1 = 1
error_Edit = True
.row = R
.col = C
.SetFocus
Exit Sub
End If
Next
For i = R + 1 To .Rows - 1
If Trim(.TextMatrix(i, 0)) = Trim(.TextMatrix(R, 1)) Then
MsgBox "第" & R & "行新账户号与第" & i & "行老账户号相同!请重新输入!", vbInformation, "输入错误!"
errorNUm1 = 1
error_Edit = True
Exit Sub
End If
If Trim(.TextMatrix(i, 1)) = Trim(.TextMatrix(R, 1)) Then
MsgBox "第" & R & "行新账户号与第" & i & "行新账户号相同!请重新输入!", vbInformation, "输入错误!"
errorNUm1 = 1
error_Edit = True
Exit Sub
End If
Next
End With
errorNUm1 = 0
error_Edit = False
End Sub
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -