<% Function TyoboSokanjyoMototyoH(EnshuCD, KaisyaCD, SakuseiKaisyaCD, BunsyoSyuruiCD, BunsyoNaiyoCD, AutoFlg, PrintFlg, Param1, Param2, Param3) Dim RowBreakNum, RowCount Dim Page RowCount = 0 Dim ZandakaTotal,KarikataKingakuTotal,KashikataKingakuTotal Dim KarikataMonthTotal,KashikataMonthTotal KarikataMonthTotal = 0 KashikataMonthTotal = 0 '改ページ制御のためのフラグ '※月計と累計の間では改行させないよう改ページ判定時にフラグを利用する '※フラグが立っている際は下部空白行を表示しないようにする(印刷用) Dim RowBrakeFlg RowBrakeFlg = 0 If PrintFlg = 1 Then RowBreakNum = 40 Else RowBreakNum = MaxRowBreakNum MaxPage = 1 End If Dim KanjyoCD KanjyoCD = BunsyoNaiyoCD Dim Query Dim Content Dim ii, jj ii = 0 '月計累計表示フラグ Dim MonthTotalHyoji Dim KaikeiKaishibi, KaikeiSyuryobi Query = "exec SPM演習取得 '" & GB_SystemCD & "','" & EnshuCD & "'" Set Content = OpenQuery(Query) If Not(Content.BOF Or Content.EOF) Then KaikeiKaishibi = Content.Fields("会計開始日") KaikeiSyuryobi = Content.Fields("会計終了日") MonthTotalHyoji = "" & Content.Fields("総勘定元帳月計累計利用") End If If MonthTotalHyoji = "" Then MonthTotalHyoji = "0" End If 'MonthTotalHyoji = "2" Dim ContentKarikata, ContentKashikata Dim SyoruiMei If AutoFlg = 0 Then Query = "exec SPK帳簿_総勘定元帳取得 '" & GB_SystemCD & "','" & EnshuCD & "', '" & KaisyaCD & "', '" & KanjyoCD & "'" SyoruiMei = "総勘定元帳" ElseIf AutoFlg = 1 Then Query = "exec SPK自動転記帳簿_総勘定元帳照会 '" & GB_SystemCD & "','" & EnshuCD & "', '" & KaisyaCD & "','" & KanjyoCD & "','" & Param1 & "','" & KaikeiKaishibi & "','" & Param2 & "'" SyoruiMei = "総勘定元帳(自動)" Else Query = "SELECT * FROM TC1システムM WHERE 1 = 0" SyoruiMei = "総勘定元帳" End If Set ContentKarikata = OpenQuery(Query) Set ContentKashikata = OpenQuery(Query) '月計表示のため現在の月を保持する変数(110509小野) Dim TmpMonth Dim TmpMonthKari Dim TmpMonthKashi TmpMonthKari = "" TmpMonthKashi = "" If MonthTotalHyoji <> "0" Then '先頭行の早い方の月を保持する Do While Not(ContentKarikata.BOF Or ContentKarikata.EOF) If "" & ContentKarikata.Fields("借方金額") <> "" Then If ContentKarikata.Fields("借方金額") <> 0 Then TmpMonthKari = ContentKarikata.Fields("取引日") Exit Do End If End If ContentKarikata.MoveNext Loop Do While Not(ContentKashikata.BOF Or ContentKashikata.EOF) If "" & ContentKashikata.Fields("貸方金額") <> "" Then If ContentKashikata.Fields("貸方金額") <> 0 Then TmpMonthKashi = ContentKashikata.Fields("取引日") Exit Do End If End If ContentKashikata.MoveNext Loop If TmpMonthKari = "" And TmpMonthKashi = "" Then TmpMonth = "" ElseIf TmpMonthKari <> "" And TmpMonthKashi = "" Then TmpMonth = TmpMonthKari ElseIf TmpMonthKari = "" And TmpMonthKashi <> "" Then TmpMonth = TmpMonthKashi Else If DateDiff("d", TmpMonthKari, TmpMonthKashi) > 0 Then TmpMonth = TmpMonthKari Else TmpMonth = TmpMonthKashi End If End If If TmpMonth <> "" Then TmpMonth = Mid(TmpMonth, 6, 2) End If End If Dim LoopCnt1 Dim LoopCnt2 LoopCnt1 = 0 LoopCnt2 = 0 If PrintFlg = 0 Then %>
<% End If '↓ウィンドウ幅 Dim WidthParent, WidthParent2 Dim WidthCell1, WidthCell2, WidthCell3, WidthCell4, WidthCell5, WidthCell6, WidthCell7 Dim HeightCell If PrintFlg = 0 Then HeightCell = 23 WidthCell7 = 82 WidthCell3 = 77 WidthCell4 = 108 WidthCell1 = 50 WidthCell5 = 137 WidthCell2 = 91 WidthCell6 = 18 ' WidthParent2 = 811 WidthParent = 853 Else HeightCell = 18 WidthCell7 = 62 WidthCell3 = 69 WidthCell4 = 95 WidthCell1 = 36 WidthCell5 = 110 WidthCell2 = 67 WidthCell6 = 16 ' WidthParent2 = 706 WidthParent = 636 End If '↑ウィンドウ幅 For Page = 1 To MaxPage '無限ループデバッグ用 'LoopCnt2 = LoopCnt2 + 1 If LoopCnt2 > 100 then Response.Write("LoopCnt2") Exit Function End If If Page <> 1 Then Response.Write(PageBreakBefore) End If %>
<% If PrintFlg = 1 Then Response.Write(PrintHeader1(AutoFlg)) End if %>
<% If (MonthTotalHyoji <> "2" Or PrintFlg = 0) And (ContentKarikata.BOF Or ContentKarikata.EOF) And (ContentKashikata.BOF Or ContentKashikata.EOF) Then %> <% End If %>
<% = SetStringInsertSpace(SyoruiMei) %> <% If AutoFlg <> -1 And PrintFlg = 1 Then %><% = Page %>ページ<% End If %>
 <% = ConvKanjyoMeisyoDx(GB_SystemCD, EnshuCD, KanjyoCD) %>  No.<% = KanjyoCD %>
取引日 相手勘定科目 仕丁 借方 取引日 相手勘定科目 仕丁 貸方
<% If PrintFlg <> 1 Then %>
<% End If %> <% ii = 0 RowBrakeFlg = 0 Dim bExist bExist = 2 Do While bExist > 0 LoopCnt1 = LoopCnt1 + 1 If LoopCnt1 > 100 then Response.Write("LoopCnt1" & ":" & TmpMonth) Exit Function End If RowCount = RowCount + 1 bExist = 2 Dim KarikataTorihikibi, KarikataTekiyo1, KarikataTekiyo2, KarikataAiteKanjyo, KarikataShityo, KarikataKingaku, KarikataTaisyakuKubun, KarikataZandaka Dim KashikataTorihikibi, KashikataTekiyo1, KashikataTekiyo2, KashikataAiteKanjyo, KashikataShityo, KashikataKingaku, KashikataTaisyakuKubun, KashikataZandaka Dim DbKarikataKingaku Dim DbKashikataKingaku KarikataTorihikibi = "" KarikataTekiyo1 = "" KarikataTekiyo2 = "" KarikataAiteKanjyo = "" KarikataShityo = "" KarikataKingaku = "" KarikataTaisyakuKubun = "" KarikataZandaka = "" KashikataTorihikibi = "" KashikataTekiyo1 = "" KashikataTekiyo2 = "" KashikataAiteKanjyo = "" KashikataShityo = "" KashikataKingaku = "" KashikataTaisyakuKubun = "" KashikataZandaka = "" For jj = 1 To 100 If (ContentKarikata.BOF Or ContentKarikata.EOF) Then bExist = bExist - 1 Exit For ElseIf MonthTotalHyoji = "0" Or Mid(ContentKarikata.Fields("取引日"), 6, 2) = TmpMonth Then If IsNull(ContentKarikata.Fields("借方金額")) Then ContentKarikata.MoveNext ElseIf ContentKarikata.Fields("借方金額") = 0 Then ContentKarikata.MoveNext Else KarikataTorihikibi = ContentKarikata.Fields("取引日") KarikataTekiyo2 = ContentKarikata.Fields("摘要") KarikataAiteKanjyo = ContentKarikata.Fields("相手勘定CD") KarikataShityo = ContentKarikata.Fields("仕丁") KarikataKingaku = ContentKarikata.Fields("借方金額") ContentKarikata.MoveNext Exit For End If Else '月が異なる場合は貸借が異なる場合のみ行を進める '(下位行に同一貸借行が存在しない場合でも実体最終行まで進めるため) If IsNull(ContentKarikata.Fields("借方金額")) Then ContentKarikata.MoveNext ElseIf ContentKarikata.Fields("借方金額") = 0 Then ContentKarikata.MoveNext Else Exit For End If End If Next For jj = 1 To 100 If (ContentKashikata.BOF Or ContentKashikata.EOF) Then bExist = bExist - 1 Exit For ElseIf MonthTotalHyoji = "0" Or Mid(ContentKashikata.Fields("取引日"), 6, 2) = TmpMonth Then If IsNull(ContentKashikata.Fields("貸方金額")) Then ContentKashikata.MoveNext ElseIf ContentKashikata.Fields("貸方金額") = 0 Then ContentKashikata.MoveNext Else KashikataTorihikibi = ContentKashikata.Fields("取引日") KashikataTekiyo2 = ContentKashikata.Fields("摘要") KashikataAiteKanjyo = ContentKashikata.Fields("相手勘定CD") KashikataShityo = ContentKashikata.Fields("仕丁") KashikataKingaku = ContentKashikata.Fields("貸方金額") ContentKashikata.MoveNext Exit For End If Else '月が異なる場合は貸借が異なる場合のみ行を進める '(下位行に同一貸借行が存在しない場合でも実体最終行まで進めるため) If IsNull(ContentKashikata.Fields("貸方金額")) Then ContentKashikata.MoveNext ElseIf ContentKashikata.Fields("貸方金額") = 0 Then ContentKashikata.MoveNext Else Exit For End If End If Next '月替わりでbottom罫線の色をトグルするため事前に次行の判定を行う Dim BottomLine BottomLine = "" If MonthTotalHyoji <> "0" Then '月末行の下線を赤にするための判定 TmpMonthKari = "" TmpMonthKashi = "" If Not(ContentKarikata.BOF Or ContentKarikata.EOF) Then If TmpMonth <> "" And Mid(ContentKarikata.Fields("取引日"), 6, 2) <> TmpMonth Then TmpMonthKari = ContentKarikata.Fields("取引日") End If End If If Not(ContentKashikata.BOF Or ContentKashikata.EOF) Then If TmpMonth <> "" And Mid(ContentKashikata.Fields("取引日"), 6, 2) <> TmpMonth Then TmpMonthKashi = ContentKashikata.Fields("取引日") End If End If '両方が最終行なら下線 If (ContentKarikata.BOF Or ContentKarikata.EOF) And (ContentKashikata.BOF Or ContentKashikata.EOF) Then BottomLine = "b1" End If '両方が異なっていれば下線 If TmpMonthKari <> "" And TmpMonthKashi <> "" Then BottomLine = "b1" If DateDiff("d", TmpMonthKari, TmpMonthKashi) > 0 Then TmpMonth = TmpMonthKari Else TmpMonth = TmpMonthKashi End If TmpMonth = Mid(TmpMonth, 6, 2) ElseIf TmpMonthKari <> "" Then BottomLine = "b1" TmpMonth = Mid(TmpMonthKari, 6, 2) ElseIf TmpMonthKashi <> "" Then BottomLine = "b1" TmpMonth = Mid(TmpMonthKashi, 6, 2) End If End If If bExist = 0 Then Exit Do End If If IsNull(KarikataKingaku) or (KarikataKingaku="") Then Else KarikataKingakuTotal = KarikataKingakuTotal + KarikataKingaku KarikataMonthTotal = KarikataMonthTotal + KarikataKingaku End If If IsNull(KashikataKingaku) or (KashikataKingaku="") Then Else KashikataKingakuTotal = KashikataKingakuTotal + KashikataKingaku KashikataMonthTotal = KashikataMonthTotal + KashikataKingaku End If Response.Write("" & vbCrLf) Response.Write("" & vbCrLf) Response.Write("" & vbCrLf) Response.Write("" & vbCrLf) Response.Write("" & vbCrLf) Response.Write("" & vbCrLf) Response.Write("" & vbCrLf) Response.Write("" & vbCrLf) Response.Write("" & vbCrLf) Response.Write("" & vbCrLf) Response.Write("" & vbCrLf) Response.Write("" & vbCrLf) ii = ii + 1 If (RowCount Mod RowBreakNum = 0) Then RowBrakeFlg = 1 '累計表示を行うので此処ではフラグだけ立てる End If '月計累計表示(110509小野) If BottomLine = "b1" Then If MonthTotalHyoji <> "0" Then '月計の下線を赤にするための判定(月計あり累計無しの場合) Dim MonthBottomLine If MonthTotalHyoji <> "2" Then MonthBottomLine = BottomLine End If '月計 Response.Write("" & vbCrLf) Response.Write("" & vbCrLf) Response.Write("" & vbCrLf) Response.Write("" & vbCrLf) Response.Write("" & vbCrLf) Response.Write("" & vbCrLf) KarikataMonthTotal = 0 'リセット KashikataMonthTotal = 0 'リセット '発生行のためMoveNextせず改ページ判定する RowCount = RowCount + 1 If (RowCount Mod RowBreakNum = 0) Then RowBrakeFlg = 1 '累計表示を行うので此処ではフラグだけ立てる End If End If If MonthTotalHyoji = "2" Then '累計 Response.Write("" & vbCrLf) Response.Write("" & vbCrLf) Response.Write("" & vbCrLf) Response.Write("" & vbCrLf) Response.Write("" & vbCrLf) Response.Write("" & vbCrLf) RowCount = RowCount + 1 If (RowCount Mod RowBreakNum = 0) Then RowBrakeFlg = 1 End If End If End If If RowBrakeFlg = 1 Then Exit Do End If Loop '月計累計表示の場合は印刷時に空白行を表示しない If MonthTotalHyoji <> "2" Or PrintFlg = 0 Then For jj = RowCount + 1 To Max(19, Max(RowBreakNum, (Int((RowCount - 1) / RowBreakNum) + 1) * RowBreakNum) * PrintFlg) Response.Write("" & vbCrLf) Response.Write("" & vbCrLf) Response.Write("" & vbCrLf) Response.Write("" & vbCrLf) Response.Write("" & vbCrLf) Response.Write("" & vbCrLf) Response.Write("" & vbCrLf) Response.Write("" & vbCrLf) Response.Write("" & vbCrLf) Response.Write("" & vbCrLf) Response.Write("" & vbCrLf) Response.Write("" & vbCrLf) Next End if %>
" & KarikataTorihikibi & "" & KarikataAiteKanjyo & "" & ConvKanjyoMeisyoDx(GB_SystemCD, EnshuCD, KarikataAiteKanjyo) & "" & KarikataShityo & "" & ConvIntToMoney(KarikataKingaku, false, false) & "" & KashikataTorihikibi & "" & KashikataAiteKanjyo & "" & ConvKanjyoMeisyoDx(GB_SystemCD, EnshuCD, KashikataAiteKanjyo) & "" & KashikataShityo & " "b1" Then Response.Write("0") End If Response.Write("" & BottomLine & """>" & ConvIntToMoney(KashikataKingaku, false, false) & "
月計" & ConvIntToMoney(KarikataMonthTotal, false, false) & "月計 "b1" Then Response.Write("0") End If Response.Write("" & MonthBottomLine & """>" & ConvIntToMoney(KashikataMonthTotal, false, false) & "
累計" & ConvIntToMoney(KarikataKingakuTotal, false, false) & "累計" & ConvIntToMoney(KashikataKingakuTotal, false, false) & "
          
<% If PrintFlg <> 1 Then %>
<% End If %>
合計 <% = ConvIntToMoney(KarikataKingakuTotal, false, true) %> 合計 <% = ConvIntToMoney(KashikataKingakuTotal, false, true) %>
<% If PrintFlg = 1 Then Response.Write(PrintFooter()) End If %>
<% If (bExist = 0) Then Exit For End If Next If PrintFlg = 0 Then %>
<% End if End Function %>