i-
来自「VB开发的ERP系统」· 代码 · 共 1,398 行 · 第 1/5 页
TXT
1,398 行
CxbbGrid.TextMatrix(Jsqte, Sydz("011", GridStr(), Szzls)) = .Fields("Dfsl")
If .Fields("Jfje") <> 0 Then
CxbbGrid.TextMatrix(Jsqte, Sydz("004", GridStr(), Szzls)) = Format(.Fields("Jfje") / .Fields("Dfsl"), "##." + String(Xtdjxsws, "0"))
Else
CxbbGrid.TextMatrix(Jsqte, Sydz("004", GridStr(), Szzls)) = Format(.Fields("Dfje") / .Fields("Dfsl"), "##." + String(Xtdjxsws, "0"))
End If
End If
End If
If Bln_EndFlag And Bln_ForeignFlag Then
If .Fields("Wbjfje") <> 0 Then '借方外币
CxbbGrid.TextMatrix(Jsqte, Sydz("008", GridStr(), Szzls)) = .Fields("Wbjfje")
End If
If .Fields("Wbdfje") <> 0 Then '贷方外币
CxbbGrid.TextMatrix(Jsqte, Sydz("012", GridStr(), Szzls)) = .Fields("Wbdfje")
End If
If .Fields("AccRate") <> 0 Then '记帐汇率
CxbbGrid.TextMatrix(Jsqte, Sydz("005", GridStr(), Szzls)) = Format(.Fields("AccRate"), "##." + String(Int_Wbhlxsws, "0"))
End If
End If
'累加本日合计,本月合计,本年累计数据
Dbl_DayJejfhj = Dbl_DayJejfhj + .Fields("Jfje")
Dbl_DayJedfhj = Dbl_DayJedfhj + .Fields("Dfje")
Dbl_DaySljfhj = Dbl_DaySljfhj + .Fields("Jfsl")
Dbl_DaySldfhj = Dbl_DaySldfhj + .Fields("Dfsl")
Dbl_DayWbjfhj = Dbl_DayWbjfhj + .Fields("Wbjfje")
Dbl_DayWbdfhj = Dbl_DayWbdfhj + .Fields("Wbdfje")
Dbl_Jejfhj = Dbl_Jejfhj + .Fields("Jfje")
Dbl_Jedfhj = Dbl_Jedfhj + .Fields("Dfje")
Dbl_Sljfhj = Dbl_Sljfhj + .Fields("Jfsl")
Dbl_Sldfhj = Dbl_Sldfhj + .Fields("Dfsl")
Dbl_Wbjfhj = Dbl_Wbjfhj + .Fields("Wbjfje")
Dbl_Wbdfhj = Dbl_Wbdfhj + .Fields("Wbdfje")
Dbl_Jejflj = Dbl_Jejflj + .Fields("Jfje")
Dbl_Jedflj = Dbl_Jedflj + .Fields("Dfje")
Dbl_Sljflj = Dbl_Sljflj + .Fields("Jfsl")
Dbl_Sldflj = Dbl_Sldflj + .Fields("Dfsl")
Dbl_Wbjflj = Dbl_Wbjflj + .Fields("Wbjfje")
Dbl_Wbdflj = Dbl_Wbdflj + .Fields("Wbdfje")
'3.计算余额
Dbl_Qcyete = Dbl_Qcyete + .Fields("Jfje") - .Fields("Dfje")
Dbl_Qcslte = Dbl_Qcslte + .Fields("Jfsl") - .Fields("Dfsl")
Dbl_Qcwbte = Dbl_Qcwbte + .Fields("Wbjfje") - .Fields("Wbdfje")
'输出余额
Call Sub_OutBalance(Jsqte, Bln_EndFlag, Bln_ForeignFlag, Dbl_Qcyete, Dbl_Qcslte, Dbl_Qcwbte)
.MoveNext
'计算是否输出承前/过次行(如果用户选择输出承前/过次)
If Bln_CqGcShow Then
If Not .EOF Then
If .Fields("Period") = Int_DqPeriod Then
Call Sub_OutQcGc(Jsqte, Int_Zdzyhs, Bln_EndFlag, Bln_ForeignFlag, Int_DqPeriod, Dbl_Jejfhj, Dbl_Jedfhj, Dbl_Sljfhj, Dbl_Sldfhj, Dbl_Wbjfhj, Dbl_Wbdfhj, Dbl_Qcyete, Dbl_Qcslte, Dbl_Qcwbte)
End If
End If
End If
Loop
'添加本月合计及本年累计
If Bln_NotFirst Then
'显示本日合计
If Lng_DayCount <> 0 Then
CxbbGrid.AddItem ""
Jsqte = Jsqte + 1
'输出本日合计
Call Sub_OutDaySum(Jsqte, Bln_EndFlag, Bln_ForeignFlag, Dtm_DqDay, Dbl_DayJejfhj, Dbl_DayJedfhj, Dbl_DaySljfhj, Dbl_DaySldfhj, Dbl_DayWbjfhj, Dbl_DayWbdfhj)
'输出余额
Call Sub_OutBalance(Jsqte, Bln_EndFlag, Bln_ForeignFlag, Dbl_Qcyete, Dbl_Qcslte, Dbl_Qcwbte)
End If
If Lng_MonthCount <> 0 Then
CxbbGrid.AddItem ""
Jsqte = Jsqte + 1
'输出本月合计
Call Sub_OutPeriodSum(Jsqte, Bln_EndFlag, Bln_ForeignFlag, Int_DqPeriod, Dbl_Jejfhj, Dbl_Jedfhj, Dbl_Sljfhj, Dbl_Sldfhj, Dbl_Wbjfhj, Dbl_Wbdfhj)
'输出余额
Call Sub_OutBalance(Jsqte, Bln_EndFlag, Bln_ForeignFlag, Dbl_Qcyete, Dbl_Qcslte, Dbl_Qcwbte)
End If
'显示本年累计
If Lng_YearCount <> 0 Then
CxbbGrid.AddItem ""
Jsqte = Jsqte + 1
'输出本年累计
Call Sub_OutYearSum(Jsqte, Bln_EndFlag, Bln_ForeignFlag, Int_DqPeriod, Dbl_Jejflj, Dbl_Jedflj, Dbl_Sljflj, Dbl_Sldflj, Dbl_Wbjflj, Dbl_Wbdflj)
'输出余额
Call Sub_OutBalance(Jsqte, Bln_EndFlag, Bln_ForeignFlag, Dbl_Qcyete, Dbl_Qcslte, Dbl_Qcwbte)
End If
End If
End With
'重置网格行高
For Jsqte = CxbbGrid.FixedRows To CxbbGrid.Rows - 1
CxbbGrid.RowHeight(Jsqte) = Sjhgd
Next Jsqte
End Sub
Private Sub Combo_AccFormat_Click() '用户选择不同帐页格式
Dim Int_Coljsq As Integer '网格列临时计数器
'为了加快显示速度
CxbbGrid.Redraw = False
For Int_Coljsq = Qslz To CxbbGrid.Cols - 1
CxbbGrid.ColHidden(Int_Coljsq) = True
Next Int_Coljsq
Select Case Combo_AccFormat
Case "金额式"
CxbbGrid.ColHidden(Sydz("001", GridStr(), Szzls)) = False '日期
CxbbGrid.ColHidden(Sydz("002", GridStr(), Szzls)) = False '凭证字号
CxbbGrid.ColHidden(Sydz("003", GridStr(), Szzls)) = False '摘要
CxbbGrid.ColHidden(Sydz("006", GridStr(), Szzls)) = False '借方.借方
CxbbGrid.ColHidden(Sydz("010", GridStr(), Szzls)) = False '贷方.贷方
CxbbGrid.ColHidden(Sydz("014", GridStr(), Szzls)) = False '方向.方向
CxbbGrid.ColHidden(Sydz("020", GridStr(), Szzls)) = False '余额.余额
Case "外币金额式"
CxbbGrid.ColHidden(Sydz("001", GridStr(), Szzls)) = False '日期
CxbbGrid.ColHidden(Sydz("002", GridStr(), Szzls)) = False '凭证字号
CxbbGrid.ColHidden(Sydz("003", GridStr(), Szzls)) = False '摘要
CxbbGrid.ColHidden(Sydz("005", GridStr(), Szzls)) = False '汇率
CxbbGrid.ColHidden(Sydz("008", GridStr(), Szzls)) = False '借方.外币
CxbbGrid.ColHidden(Sydz("009", GridStr(), Szzls)) = False '借方.金额
CxbbGrid.ColHidden(Sydz("012", GridStr(), Szzls)) = False '贷方.外币
CxbbGrid.ColHidden(Sydz("013", GridStr(), Szzls)) = False '贷方.金额
CxbbGrid.ColHidden(Sydz("014", GridStr(), Szzls)) = False '方向.方向
CxbbGrid.ColHidden(Sydz("017", GridStr(), Szzls)) = False '余额.外币
CxbbGrid.ColHidden(Sydz("018", GridStr(), Szzls)) = False '余额.汇率
CxbbGrid.ColHidden(Sydz("019", GridStr(), Szzls)) = False '余额.金额
Case "数量金额式"
CxbbGrid.ColHidden(Sydz("001", GridStr(), Szzls)) = False '日期
CxbbGrid.ColHidden(Sydz("002", GridStr(), Szzls)) = False '凭证字号
CxbbGrid.ColHidden(Sydz("003", GridStr(), Szzls)) = False '摘要
CxbbGrid.ColHidden(Sydz("004", GridStr(), Szzls)) = False '单价
CxbbGrid.ColHidden(Sydz("007", GridStr(), Szzls)) = False '借方.数量
CxbbGrid.ColHidden(Sydz("009", GridStr(), Szzls)) = False '借方.金额
CxbbGrid.ColHidden(Sydz("011", GridStr(), Szzls)) = False '贷方.数量
CxbbGrid.ColHidden(Sydz("013", GridStr(), Szzls)) = False '贷方.金额
CxbbGrid.ColHidden(Sydz("014", GridStr(), Szzls)) = False '方向.方向
CxbbGrid.ColHidden(Sydz("015", GridStr(), Szzls)) = False '余额.数量
CxbbGrid.ColHidden(Sydz("016", GridStr(), Szzls)) = False '余额.单价
CxbbGrid.ColHidden(Sydz("019", GridStr(), Szzls)) = False '余额.金额
Case "数量外币式"
CxbbGrid.ColHidden(Sydz("001", GridStr(), Szzls)) = False '日期
CxbbGrid.ColHidden(Sydz("002", GridStr(), Szzls)) = False '凭证字号
CxbbGrid.ColHidden(Sydz("003", GridStr(), Szzls)) = False '摘要
CxbbGrid.ColHidden(Sydz("004", GridStr(), Szzls)) = False '单价
CxbbGrid.ColHidden(Sydz("005", GridStr(), Szzls)) = False '汇率
CxbbGrid.ColHidden(Sydz("007", GridStr(), Szzls)) = False '借方.数量
CxbbGrid.ColHidden(Sydz("008", GridStr(), Szzls)) = False '借方.外币
CxbbGrid.ColHidden(Sydz("009", GridStr(), Szzls)) = False '借方.金额
CxbbGrid.ColHidden(Sydz("011", GridStr(), Szzls)) = False '贷方.数量
CxbbGrid.ColHidden(Sydz("012", GridStr(), Szzls)) = False '贷方.外币
CxbbGrid.ColHidden(Sydz("013", GridStr(), Szzls)) = False '贷方.金额
CxbbGrid.ColHidden(Sydz("014", GridStr(), Szzls)) = False '方向.方向
CxbbGrid.ColHidden(Sydz("015", GridStr(), Szzls)) = False '余额.数量
CxbbGrid.ColHidden(Sydz("016", GridStr(), Szzls)) = False '余额.单价
CxbbGrid.ColHidden(Sydz("017", GridStr(), Szzls)) = False '余额.外币
CxbbGrid.ColHidden(Sydz("018", GridStr(), Szzls)) = False '余额.汇率
CxbbGrid.ColHidden(Sydz("019", GridStr(), Szzls)) = False '余额.金额
End Select
CxbbGrid.Redraw = True
End Sub
Private Sub Sub_OutBalance(Jsqte As Long, Bln_EndFlag As Boolean, Bln_ForeignFlag As Boolean, Dbl_Qcyete#, Dbl_Qcslte#, Dbl_Qcwbte#) '输出余额
If Dbl_Qcyete = 0 Then
CxbbGrid.TextMatrix(Jsqte, Sydz("014", GridStr(), Szzls)) = "平" '期初方向
If Bln_EndFlag And Dbl_Qcslte <> 0 Then
CxbbGrid.TextMatrix(Jsqte, Sydz("015", GridStr(), Szzls)) = Dbl_Qcslte
End If
If Bln_EndFlag And Bln_ForeignFlag And Dbl_Qcwbte <> 0 Then
CxbbGrid.TextMatrix(Jsqte, Sydz("017", GridStr(), Szzls)) = Dbl_Qcwbte
End If
Else
If Dbl_Qcyete > 0 Then
CxbbGrid.TextMatrix(Jsqte, Sydz("014", GridStr(), Szzls)) = "借"
CxbbGrid.TextMatrix(Jsqte, Sydz("019", GridStr(), Szzls)) = Dbl_Qcyete
CxbbGrid.TextMatrix(Jsqte, Sydz("020", GridStr(), Szzls)) = Dbl_Qcyete
If Bln_EndFlag And Dbl_Qcslte <> 0 Then
CxbbGrid.TextMatrix(Jsqte, Sydz("015", GridStr(), Szzls)) = Dbl_Qcslte
End If
If Bln_EndFlag And Bln_ForeignFlag And Dbl_Qcwbte <> 0 Then
CxbbGrid.TextMatrix(Jsqte, Sydz("017", GridStr(), Szzls)) = Dbl_Qcwbte
End If
Else
CxbbGrid.TextMatrix(Jsqte, Sydz("014", GridStr(), Szzls)) = "贷"
CxbbGrid.TextMatrix(Jsqte, Sydz("019", GridStr(), Szzls)) = -Dbl_Qcyete
CxbbGrid.TextMatrix(Jsqte, Sydz("020", GridStr(), Szzls)) = -Dbl_Qcyete
If Bln_EndFlag And Dbl_Qcslte <> 0 Then
CxbbGrid.TextMatrix(Jsqte, Sydz("015", GridStr(), Szzls)) = -Dbl_Qcslte
End If
If Bln_EndFlag And Dbl_Qcwbte And Bln_ForeignFlag <> 0 Then
CxbbGrid.TextMatrix(Jsqte, Sydz("017", GridStr(), Szzls)) = -Dbl_Qcwbte
End If
End If
'输出单价
If Bln_EndFlag And Dbl_Qcslte <> 0 Then
CxbbGrid.TextMatrix(Jsqte, Sydz("016", GridStr(), Szzls)) = Format(Dbl_Qcyete / Dbl_Qcslte, "##." + String(Xtdjxsws, "0"))
End If
'输出外币汇率
If Bln_EndFlag And Bln_ForeignFlag And Dbl_Qcwbte <> 0 Then
If Bln_ConVertFlag Then '(外币/汇率=本位币)
CxbbGrid.TextMatrix(Jsqte, Sydz("018", GridStr(), Szzls)) = Format(Dbl_Qcwbte / Dbl_Qcyete, "##." + String(Int_Wbhlxsws, "0"))
Else
CxbbGrid.TextMatrix(Jsqte, Sydz("018", GridStr(), Szzls)) = Format(Dbl_Qcyete / Dbl_Qcwbte, "##." + String(Int_Wbhlxsws, "0"))
End If
End If
End If
End Sub
Private Sub Sub_OutDaySum(Jsqte As Long, Bln_EndFlag As Boolean, Bln_ForeignFlag As Boolean, Dtm_DqDay As Date, Dbl_DayJejfhj#, Dbl_DayJedfhj#, Dbl_DaySljfhj#, Dbl_DaySldfhj#, Dbl_DayWbjfhj#, Dbl_DayWbdfhj#) '输出本日合计
CxbbGrid.TextMatrix(Jsqte, Sydz("001", GridStr(), Szzls)) = Dtm_DqDay
CxbbGrid.TextMatrix(Jsqte, Sydz("003", GridStr(), Szzls)) = "本日合计"
If Dbl_DayJejfhj <> 0 Then '本日借方金额合计
CxbbGrid.TextMatrix(Jsqte, Sydz("006", GridStr(), Szzls)) = Dbl_DayJejfhj
CxbbGrid.TextMatrix(Jsqte, Sydz("009", GridStr(), Szzls)) = Dbl_DayJejfhj
End If
If Dbl_DayJedfhj <> 0 Then '本日贷方金额合计
CxbbGrid.TextMatrix(Jsqte, Sydz("010", GridStr(), Szzls)) = Dbl_DayJedfhj
CxbbGrid.TextMatrix(Jsqte, Sydz("013", GridStr(), Szzls)) = Dbl_DayJedfhj
End If
'只有末级科目才显示数量和外币
If Bln_EndFlag Then
If Dbl_DaySljfhj <> 0 Then '本日借方数量合计
CxbbGrid.TextMatrix(Jsqte, Sydz("007", GridStr(), Szzls)) = Dbl_DaySljfhj
End If
If Dbl_DaySldfhj <> 0 Then '本日贷方数量合计
CxbbGrid.TextMatrix(Jsqte, Sydz("011", GridStr(), Szzls)) = Dbl_DaySldfhj
End If
End If
If Bln_EndFlag And Bln_ForeignFlag Then
If Dbl_DayWbjfhj <> 0 Then '本日借方外币合计
CxbbGrid.TextMatrix(Jsqte, Sydz("008", GridStr(), Szzls)) = Dbl_DayWbjfhj
End If
If Dbl_DayWbdfhj <> 0 Then '本日贷方外币合计
CxbbGrid.TextMatrix(Jsqte, Sydz("012", GridStr(), Szzls)) = Dbl_DayWbdfhj
End If
End If
End Sub
Private Sub Sub_OutPeriodSum(Jsqte As Long, Bln_EndFlag As Boolean, Bln_ForeignFlag As Boolean, Int_DqPeriod%, Dbl_Jejfhj#, Dbl_Jedfhj#, Dbl_Sljfhj#, Dbl_Sldfhj#, Dbl_Wbjfhj#, Dbl_Wbdfhj#) '输出本月合计
CxbbGrid.TextMatrix(Jsqte, Sydz("001", GridStr(), Szzls)) = Mid(Trim(Str(100 + Int_DqPeriod)), 2, 2)
CxbbGrid.TextMatrix(Jsqte, Sydz("003", GridStr(), Szzls)) = "本月合计"
If Dbl_Jejfhj <> 0 Then '本月借方金额合计
CxbbGrid.TextMatrix(Jsqte, Sydz("006", GridStr(), Szzls)) = Dbl_Jejfhj
CxbbGrid.TextMatrix(Jsqte, Sydz("009", GridStr(), Szzls)) = Dbl_Jejfhj
End If
If Dbl_Jedfhj <> 0 Then '本月贷方金额合计
CxbbGrid.TextMatrix(Jsqte, Sydz("010", GridStr(), Szzls)) = Dbl_Jedfhj
CxbbGrid.TextMatrix(Jsqte, Sydz("013", GridStr(), Szzls)) = Dbl_Jedfhj
End If
'只有末级科目才显示数量和外币
If Bln_EndFlag Then
If Dbl_Sljfhj
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?