📄 frmac_detailselectprint.frm
字号:
End Sub
Private Sub Chk_BalaNHappen_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then SendKeys "{tab}"
End Sub
Private Sub Chk_NbalaHappen_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then SendKeys "{tab}"
End Sub
Private Sub chkEndLevelSubject_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then SendKeys "{tab}"
End Sub
Private Sub chkModePrint_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then
SendKeys "{tab}"
End If
End Sub
Private Sub chkPrintDetial_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then
SendKeys "{tab}"
End If
End Sub
Private Sub cmdHelp_Click()
Cllr.PrintPageSetup
End Sub
Private Sub cmdpreview_Click()
Dim i As Integer
Dim kmdm() As String
Dim Kmmc() As String
If SqlStringValid(txtSubjectStart.text) = False Then
MsgBox "起始科目不能含有非法的字符!", vbInformation, "提示"
Exit Sub
End If
If SqlStringValid(txtSubjectEnd.text) = False Then
MsgBox "终止科目不能含有非法的字符!", vbInformation, "提示"
Exit Sub
End If
If IsNumeric(txtPageStart) = False Then MsgBox "请在起始页号输入数字!", vbInformation, "提示": Exit Sub
If Printers.Count = 0 Then
MsgBox "请安置打印机!", vbInformation
Exit Sub
End If
If Not Valid Then
MsgBox "开始级次不能大于结束级次!"
Exit Sub
End If
If Not txt_kmcheck Then
Exit Sub
End If
If chkEndLevelSubject.value <> 0 Then
m_bMjFlag = True
Else
m_bMjFlag = False
End If
Call Kmmc_set
m_sYear = txtYear.text
m_sFromMonth = Format(txtMonthFrom.text, "00")
m_sToMonth = Format(txtMonthTo.text, "00")
i = 1
If UBound(arySubDetail) >= i Then
m_sCurSubjectCode = arySubDetail(i).sSubjectCode
m_sCurSubjectName = arySubDetail(i).sSubjectName
End If
If chkModePrint.value = 1 Then
ReDim kmdm(UBound(arySubDetail) + 1)
ReDim Kmmc(UBound(arySubDetail) + 1)
For i = 0 To UBound(arySubDetail)
kmdm(i) = arySubDetail(i).sSubjectCode
Kmmc(i) = arySubDetail(i).sSubjectName
Next i
frmAC_DetailModePrint.usYear = txtYear.text
frmAC_DetailModePrint.usJcFlag = False
frmAC_DetailModePrint.usFromMonth = m_sFromMonth
frmAC_DetailModePrint.usToMonth = m_sToMonth
frmAC_DetailModePrint.usSubjectCodeStart = m_sCurSubjectCode
frmAC_DetailModePrint.usSubjectNameStart = m_sCurSubjectName
frmAC_DetailModePrint.usSubjectCodeEnd = m_sCurSubjectCode
frmAC_DetailModePrint.usSubjectNameEnd = m_sCurSubjectName
frmAC_DetailModePrint.usNRFlag = False
frmAC_DetailModePrint.CopyKmArray kmdm, Kmmc
frmAC_DetailModePrint.Cllr.OpenFile App.Path & "\CellFiles\DetailModePrint.cll", ""
frmAC_DetailModePrint.ubVisible = False
If Chk_NbalaHappen.value = 1 Then
frmAC_DetailModePrint.ubNoHaveQc = True
Else
frmAC_DetailModePrint.ubNoHaveQc = False
End If
If Chk_BalaNHappen.value = 1 Then
frmAC_DetailModePrint.ubHaveQc = True
Else
frmAC_DetailModePrint.ubHaveQc = False
End If
frmAC_DetailModePrint.uModePreview CInt(txtPageStart) - 1
Else
Call ShowResult(CInt(txtPageStart) - 1)
Call uPreview
End If
fMainForm.MousePointer = vbDefault
Screen.MousePointer = vbDefault
End Sub
Private Sub cmdPrint_Click()
Dim i As Integer
Dim kmdm() As String
Dim Kmmc() As String
Dim iPageStart As Integer
m_iPrintedPages = 0
If SqlStringValid(txtSubjectStart.text) = False Then
MsgBox "起始科目不能含有非法的字符!", vbInformation, "提示"
Exit Sub
End If
If SqlStringValid(txtSubjectEnd.text) = False Then
MsgBox "终止科目不能含有非法的字符!", vbInformation, "提示"
Exit Sub
End If
If IsNumeric(txtPageStart) = False Then MsgBox "请在起始页号输入数字!", vbInformation, "提示": Exit Sub
If IsNumeric(txtPrintStart) = False Then MsgBox "请在打印起始页输入数字!", vbInformation, "提示": Exit Sub
If txtPrintStart <= 0 Then MsgBox "打印起始页必须大于0!", vbInformation, "提示": Exit Sub
If Printers.Count = 0 Then
MsgBox "请安置打印机!", vbInformation
Exit Sub
End If
If Not Valid Then
MsgBox "开始级次不能大于结束级次!"
Exit Sub
End If
If Not txt_kmcheck Then
Exit Sub
End If
'设置末级科目是否
If chkEndLevelSubject.value <> 0 Then
m_bMjFlag = True
Else
m_bMjFlag = False
End If
Call Kmmc_set
m_sYear = txtYear.text
m_sFromMonth = Format(txtMonthFrom.text, "00")
m_sToMonth = Format(txtMonthTo.text, "00")
i = 1
Screen.MousePointer = 11
iPageStart = CInt(txtPageStart) - 1
If chkModePrint.value = 1 Then
ReDim kmdm(UBound(arySubDetail) + 1)
ReDim Kmmc(UBound(arySubDetail) + 1)
For i = 0 To UBound(arySubDetail)
kmdm(i) = arySubDetail(i).sSubjectCode
Kmmc(i) = arySubDetail(i).sSubjectName
Next i
frmAC_DetailModePrint.usYear = txtYear.text
frmAC_DetailModePrint.usJcFlag = False
frmAC_DetailModePrint.usFromMonth = m_sFromMonth
frmAC_DetailModePrint.usToMonth = m_sToMonth
frmAC_DetailModePrint.usSubjectCodeStart = m_sCurSubjectCode
frmAC_DetailModePrint.usSubjectNameStart = m_sCurSubjectName
frmAC_DetailModePrint.usSubjectCodeEnd = m_sCurSubjectCode
frmAC_DetailModePrint.usSubjectNameEnd = m_sCurSubjectName
frmAC_DetailModePrint.usNRFlag = False
frmAC_DetailModePrint.PrintStart = Val(txtPrintStart)
frmAC_DetailModePrint.PrintEnd = Val(txtPrintEnd)
frmAC_DetailModePrint.CopyKmArray kmdm, Kmmc
frmAC_DetailModePrint.ubVisible = False
If Chk_NbalaHappen.value = 1 Then
frmAC_DetailModePrint.ubNoHaveQc = True
Else
frmAC_DetailModePrint.ubNoHaveQc = False
End If
If Chk_BalaNHappen.value = 1 Then
frmAC_DetailModePrint.ubHaveQc = True
Else
frmAC_DetailModePrint.ubHaveQc = False
End If
frmAC_DetailModePrint.ubPrintDetail = (chkPrintDetial.value = 1)
iPageStart = frmAC_DetailModePrint.uModePrint(iPageStart)
Unload frmAC_DetailModePrint
Else
For i = 1 To UBound(arySubDetail)
m_sCurSubjectCode = arySubDetail(i).sSubjectCode
m_sCurSubjectName = arySubDetail(i).sSubjectName
m_bQcBalance = False
m_bBqHappen = False
iPageStart = ShowResult(iPageStart)
iPageStart = iPageStart - 1
'期初无余额,本期无发生也打印
If Not m_bQcBalance And Not m_bBqHappen Then
If Chk_NbalaHappen.value = 1 Then
udoPrint
iPageStart = iPageStart + 1
End If
End If
'期初有余额,本期无发生也打印
If m_bQcBalance And Not m_bBqHappen Then
If Chk_BalaNHappen.value = 1 Then
udoPrint
iPageStart = iPageStart + 1
End If
End If
'期初有余额,本期有发生也打印
If m_bBqHappen Then
udoPrint
iPageStart = iPageStart + 1
End If
Call SetAccountFormat(cboAccountFormat, m_bAmount, m_bForeign)
Next i
End If
fMainForm.MousePointer = vbDefault
Screen.MousePointer = vbDefault
End Sub
Private Sub cmdSubjectEnd_Click()
With frmUSU_GeneralKmHelp
' .usCondition = " isrjz=0"
.usCondition = "1=1"
.ubSelAll = True
.Show 1
If .Valid Then
txtSubjectEnd.text = .SubjectCode & "=" & .SubjectName
End If
Unload frmUSU_GeneralKmHelp
End With
End Sub
Private Sub cmdSubjectStart_Click()
With frmUSU_GeneralKmHelp
' .usCondition = " isrjz=0"
.usCondition = "1=1"
.ubSelAll = True
.Show 1
If .Valid Then
txtSubjectStart.text = .SubjectCode & "=" & .SubjectName
End If
Unload frmUSU_GeneralKmHelp
End With
End Sub
Private Sub form_load()
Dim rstTemp As ADODB.Recordset
Dim sSQL As String
Dim i As Integer
Set CSubject = New clsSubject
'年份设计为不允许修改
m_bFormLoad = True
Set rstTemp = New ADODB.Recordset
rstTemp.CursorLocation = adUseClient
sSQL = "SELECT * FROM tSYS_SubSysUsed WHERE AccountID = '" & glo.sAccountID & _
"' AND SubSysID = '" & gloSys.sSubSysId & "'"
rstTemp.Open sSQL, gloSys.cnnSYS, adOpenStatic, adLockReadOnly
With rstTemp
If .RecordCount > 0 Then
If Val(glo.sOperateYear) > Val(.Fields("ModiYear").value) Then
updMonthFrom.Tag = 1
Else
updMonthFrom.Tag = IIf(Val(glo.sOperateYear) = Val(.Fields("BeginYear").value), .Fields("BeginMonth").value, 1)
End If
End If
End With
'设置账页格式
cboAccountFormat.AddItem "金额式"
cboAccountFormat.AddItem "数量金额式"
cboAccountFormat.AddItem "外币金额式"
cboAccountFormat.AddItem "数量外币式"
cboAccountFormat.ListIndex = 0
If cboAccountFormat.ListIndex <> -1 Then
usAccountFormat = cboAccountFormat.text
Else
usAccountFormat = ""
End If
usAccountFormat = "金额式"
usAccountType = "明细账"
Select Case usAccountFormat
Case "金额式"
m_sDefaultColWidth = COLWIDTH_MONEY
Case "数量金额式"
m_sDefaultColWidth = COLWIDTH_AMOUNT
Case "外币金额式"
m_sDefaultColWidth = COLWIDTH_FOREIGN
Case "数量外币式"
m_sDefaultColWidth = COLWIDTH_AMOUNT_FOREIGN
End Select
'求出各列的宽度
' m_iColWidth = GetColWidth(usAccountType, usAccountFormat, m_sDefaultColWidth)
m_iColWidth = ToIntegerArray(m_sDefaultColWidth)
m_iColWidthTemp = m_iColWidth
'取当前登录时间为默认的年、月
txtYear.text = Year(glo.sOperateDate)
updMonthFrom.value = Month(glo.sOperateDate)
updMonthTo.value = Month(glo.sOperateDate)
With Cllr
.Login "南京伊康计算机工程公司", "11010504", "0060-1733-7722-3004"
If .OpenFile(App.Path & "\CellFiles\Detail.cll", "") = -1 Then
MsgBox "CELL文件不存在!", vbOKOnly
End If
'将CELL不可见,防止清除CELL控件内容时屏幕闪烁;
.ResetContent
.SetDefaultFont .FindFontIndex("宋体", 1), 10
.WorkbookReadonly = True
.AllowSizeColInGrid = True
End With
m_bFormLoad = False
Screen.MousePointer = vbDefault
End Sub
Private Sub Form_Resize()
On Error Resume Next
Cllr.Width = Me.ScaleWidth - 100
Cllr.Height = Me.ScaleHeight - 200
End Sub
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -