<% Function HojyoboSyohinAridakatyo(EnshuCD, KaisyaCD, SakuseiKaisyaCD, BunsyoSyuruiCD, BunsyoNaiyoCD, AutoFlg, PrintFlg, Param1, Param2, Param3) Dim SyohinCD SyohinCD = BunsyoNaiyoCD Dim RowBreakNum, RowCount Dim Page,Dummy RowCount = 0 If PrintFlg = 1 Then RowBreakNum = 35 Else RowBreakNum = MaxRowBreakNum MaxPage = 1 End If Dim DbKarikataKingakuTotal Dim DbKashikataKingakuTotal DbKarikataKingakuTotal = 0 DbKashikataKingakuTotal = 0 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("会計終了日") End If If Param1 <> "" Then KaikeiSyuryobi = Param1 End If Dim PageType If AutoFlg = 1 Then Query = "exec SPR入出庫在庫明細 '" & GB_SystemCD & "','" & EnshuCD & "', '" & KaisyaCD & "','" & SyohinCD & "','" & KaikeiSyuryobi & "'" PageType = "商品在庫" Else Query = "exec SPK補助簿_商品有高帳取得 '" & GB_SystemCD & "','" & EnshuCD & "', '" & KaisyaCD & "','" & SyohinCD & "'" PageType = "商品有高帳" End If Set Content = OpenQuery(Query) Dim KeisanHoho Dim Tani Dim Query, Content Dim Query1, Content1 If AutoFlg = 0 Then If Not(Content.BOF Or Content.EOF) Then KeisanHoho = Content.Fields("商品有高帳計算区分") Tani = Content.Fields("単位") End If Else Query1 = "exec SPM商品取得 '" & GB_SystemCD & "','" & EnshuCD & "','" & SyohinCD & "'" Set Content1 = OpenQuery(Query1) If Not(Content1.BOF Or Content1.EOF) Then Tani = Content1.Fields("単位") End If If BunsyoSyuruiCD = "MJ" Then KeisanHoho = "IH" Else KeisanHoho = "SS" End If End If Dim MyTable() ReDim MyTable(12, 0) Dim ii, jj ,kk ii = 1 If BunsyoSyuruiCD = "MJ" Or AutoFlg = 0 Then '06/06/28 Do While Not(Content.BOF Or Content.EOF) '移動平均法の場合の処理はここで行います。2006/06/27 By Hamada Dim SyohinAridakatyoCD, Torihikibi,TorihikisakiMeisyo Dim UkebaraiKubun, UkeireSuryo, UkeireTanka, UkeireKingaku Dim HaraidashiSuryo, HaraidashiTanka, HaraidashiKingaku Dim ZandakaSuryo, ZandakaTanka, ZandakaKingaku Dim bOriginal If AutoFlg = 0 Then 'Dummy = "あれ" Torihikibi = Content.Fields("取引日") KeisanHoho = Content.Fields("商品有高帳計算区分") UkebaraiKubun = Content.Fields("受払区分名称") UkeireSuryo = Content.Fields("受入数量") UkeireTanka = Content.Fields("受入単価") UkeireKingaku = Content.Fields("受入金額") HaraidashiSuryo = Content.Fields("払出数量") HaraidashiTanka = Content.Fields("払出単価") HaraidashiKingaku = Content.Fields("払出金額") ZandakaSuryo = Content.Fields("残高数量") ZandakaTanka = Content.Fields("残高単価") ZandakaKingaku = Content.Fields("残高金額") Else 'Dummy = "これ" Torihikibi = SetTimeMMDD(Content.Fields("処理日")) Select Case Content.fields("文書種類CD") Case "SC" 'オ商入庫 UkebaraiKubun = "オ商入庫" UkeireSuryo = Content.fields("数量") UkeireTanka = Content.fields("単価") HaraidashiSuryo = 0 HaraidashiTanka = 0 bOriginal = 1 Case "SS" '仕入入庫 If Content.fields("文書内容CD") = 0 Then UkebaraiKubun = "前期繰越" Else UkebaraiKubun = "仕入" End If UkeireSuryo = Content.fields("数量") UkeireTanka = Content.fields("単価") HaraidashiSuryo = 0 HaraidashiTanka = 0 Case "SU" '売上出庫 UkebaraiKubun = "売上" UkeireSuryo = 0 UkeireTanka = 0 HaraidashiSuryo = Content.fields("数量") HaraidashiTanka = ZandakaTanka 'Content.fields("単価") Case "SX" '仕入返品 UkebaraiKubun = "仕入返品" UkeireSuryo = 0 UkeireTanka = 0 HaraidashiSuryo = Content.fields("数量") HaraidashiTanka = Content.fields("単価") Case "SY" '売上返品 UkebaraiKubun = "売上返品" UkeireSuryo = Content.fields("数量") UkeireTanka = ZandakaTanka 'Content.fields("単価") HaraidashiSuryo = 0 HaraidashiTanka = 0 Case Else UkebaraiKubun = "その他" UkeireSuryo = Content.fields("数量") UkeireTanka = Content.fields("単価") HaraidashiSuryo = Content.fields("数量") HaraidashiTanka = Content.fields("単価") End Select If IsNull(UkeireSuryo) Or UkeireSuryo="" Then UkeireSuryo = 0 End If If IsNull(UkeireTanka) Or UkeireTanka="" Then UkeireTanka = 0 End If If IsNull(HaraidashiSuryo) Or HaraidashiSuryo="" Then HaraidashiSuryo = 0 End If If IsNull(HaraidashiTanka) Or HaraidashiTanka="" Then HaraidashiTanka = 0 End If UkeireKingaku = UkeireSuryo * UkeireTanka HaraidashiKingaku = HaraidashiSuryo * HaraidashiTanka ZandakaSuryo = ZandakaSuryo + UkeireSuryo - HaraidashiSuryo ZandakaKingaku = ZandakaKingaku + UkeireKingaku - HaraidashiKingaku If ZandakaSuryo <> 0 Then ZandakaTanka = Clng(ZandakaKingaku / ZandakaSuryo) Else ZandakaTanka = 0 End If ZandakaKingaku = ZandakaTanka * ZandakaSuryo End If TorihikisakiMeisyo = Content.Fields("取引先名称") ReDim Preserve MyTable(12, ii) MyTable(1, ii) = Torihikibi MyTable(2, ii) = UkebaraiKubun MyTable(3, ii) = TorihikisakiMeisyo MyTable(4, ii) = UkeireSuryo MyTable(5, ii) = UkeireTanka MyTable(6, ii) = UkeireKingaku MyTable(7, ii) = HaraidashiSuryo MyTable(8, ii) = HaraidashiTanka MyTable(9, ii) = HaraidashiKingaku MyTable(10, ii) = ZandakaSuryo If ZandakaSuryo = 0 Then '表示のバグ修正 BY HAMADA 06/06/27 MyTable(11, ii) = HaraidashiTanka Else MyTable(11, ii) = ZandakaTanka End If MyTable(12, ii) = ZandakaKingaku ii = ii + 1 Content.MoveNext Loop Else Dim Zaikos() ReDim Zaikos(9, 0) Dim mm mm = 0 Do While Not(Content.BOF Or Content.EOF) Dim TankaA, SuryoA Dim PlusMinus, TargetSell RowCount = RowCount + 1 TankaA = Content.fields("単価") SuryoA = Content.fields("数量") Select Case Content.fields("文書種類CD") Case "SC" 'オ商入庫 UkebaraiKubun = "オ商入庫" PlusMinus = 1 TargetSell = 4 bOriginal = 1 Case "SS" '仕入入庫 If Content.fields("文書内容CD") = 0 Then UkebaraiKubun = "前期繰越" Else UkebaraiKubun = "仕入" End If PlusMinus = 1 TargetSell = 4 Case "SU" '売上出庫 UkebaraiKubun = "売上" PlusMinus = -1 TargetSell = 5 Case "SX" '仕入返品 UkebaraiKubun = "仕入返品" PlusMinus = -1 TargetSell = 5 Case "SY" '売上返品 UkebaraiKubun = "売上返品" PlusMinus = 1 TargetSell = 4 Case Else UkebaraiKubun = "その他" PlusMinus = 1 TargetSell = 4 End Select Dim bExist bExist = 0 For jj = 1 To UBound(Zaikos, 2) For kk = 4 To 9 Zaikos(kk, jj) = 0 Next Next For jj = UBound(Zaikos, 2) To 1 Step -1 If Zaikos(1, jj) = TankaA Then Zaikos(3, jj) = Zaikos(3, jj) + PlusMinus * SuryoA Zaikos(TargetSell, jj) = SuryoA If Zaikos(3, jj) = 0 Then Zaikos(0, jj) = -1 End If bExist = 1 End If Next If bExist = 0 Then ReDim Preserve Zaikos(9, UBound(Zaikos, 2) + 1) Zaikos(0, UBound(Zaikos, 2)) = 1 Zaikos(1, UBound(Zaikos, 2)) = TankaA Zaikos(2, UBound(Zaikos, 2)) = PlusMinus * SuryoA Zaikos(3, UBound(Zaikos, 2)) = PlusMinus * SuryoA Zaikos(TargetSell, UBound(Zaikos, 2)) = SuryoA End If Dim Mokuji Mokuji = Array("有効フラグ","単価","過去", "現在庫", "今回入","今回出") ii = 0 bExist = 0 Dim ll For jj = 1 To UBound(Zaikos, 2) Dim StyleStr 'If Zaikos(0, jj) = 1 Then ii = ii + 1 mm = mm + 1 bExist = 1 ReDim Preserve MyTable(12, mm) If ii = 1 Then ll = 1 StyleStr = "style=""border-style: solid solid none solid;""" MyTable(1, mm) = (Content.fields("処理日")) MyTable(3, mm) = Content.fields("取引先名称") MyTable(2, mm) = UkebaraiKubun Else MyTable(1, mm) = "" MyTable(2, mm) = "" MyTable(3, mm) = "" End If bExist = 0 For kk = ll To UBound(Zaikos, 2) ll = kk + 1 If Zaikos(4, kk) <> 0 Or Zaikos(5, kk) <> 0 Then If Zaikos(4, kk) <> 0 Then MyTable(4, mm) = Zaikos(4, kk) MyTable(5, mm) = Zaikos(1, kk) MyTable(6, mm) = Zaikos(4, kk) * Zaikos(1, kk) Else MyTable(4, mm) = "" MyTable(5, mm) = "" MyTable(6, mm) = "" End If If Zaikos(5, kk) <> 0 Then MyTable(7, mm) = Zaikos(5, kk) MyTable(8, mm) = Zaikos(1, kk) MyTable(9, mm) = Zaikos(5, kk) * Zaikos(1, kk) Else MyTable(7, mm) = "" MyTable(8, mm) = "" MyTable(9, mm) = "" End If bExist = 1 Exit For End If Next If bExist = 0 Then MyTable(4, mm) = "" MyTable(5, mm) = "" MyTable(6, mm) = "" MyTable(7, mm) = "" MyTable(8, mm) = "" MyTable(9, mm) = "" End if '表示のバグ修正 BY HAMADA 06/06/27 If Zaikos(3, jj) <> 0 Then MyTable(10, mm) = Zaikos(3, jj) MyTable(11, mm) = Zaikos(1, jj) MyTable(12, mm) = Zaikos(3, jj) * Zaikos(1, jj) Else MyTable(10, mm) = "0" MyTable(11, mm) = Zaikos(1, jj) MyTable(12, mm) = "0" End If 'End If 'If Zaikos(3, jj) = 0 And Zaikos(1, jj) = MyTable(8, mm) Then '売り上げて在庫0になるとき ' Zaikos(0, jj) = 0 'End If Next Content.MoveNext Loop End If If PrintFlg = 0 Then %>
<% End If Dim WidthCell1, WidthCell2, WidthCell3, WidthCell4, WidthParent, WidthParent2 If PrintFlg = 0 Then WidthCell1 = 54 WidthCell2 = 67 WidthCell3 = 45 WidthCell4 = 69 WidthParent = 745 WidthParent2 = 724 Else WidthCell1 = 49 WidthCell2 = 61 WidthCell3 = 39 WidthCell4 = 59 WidthParent = 630 WidthParent2 = 630 End If For Page = 1 To MaxPage If Page <> 1 Then Response.Write("
") End If %>
<% If PrintFlg = 1 Then Response.Write(PrintHeader1(AutoFlg)) End if %>
<% = SetStringInsertSpace(PageType) %> <% If AutoFlg <> -1 And PrintFlg = 1 Then %><% = Page %>ページ<% End If %>
計算方法 : <%= Dummy %><% Response.Write(ConvKubunMeisyo("商品有高帳計算区分", KeisanHoho)) %> left<% Else %>center<% End If %>"> 商品名 :<% = ConvSyohinMeisyo(SyohinCD) %> 単位:<% Response.Write(Tani) %>
<% If PrintFlg <> 1 Then %>
取引
摘 要 受 入 払 出 残 高
受払区分 取引先 数量 単価 金額 数量 単価 金額 数量 単価 金額
<% End If %> <% ii = 0 If SyohinCD <> "" Then For jj = 1 To RowBreakNum If ii + 1 > Ubound(MyTable, 2) Then Exit For End If RowCount = RowCount + 1 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) '表示のバグ修正 BY HAMADA 06/06/27 If MyTable(10, ii + 1) = "0" Then Response.Write("" & vbCrLf) Else Response.Write("" & vbCrLf) End If Response.Write("" & vbCrLf) If MyTable(12, ii + 1) = "0" Then Response.Write("" & vbCrLf) Else Response.Write("" & vbCrLf) End If Response.Write("" & vbCrLf) ii = ii + 1 If (RowCount Mod RowBreakNum = 0) Then Exit For End If Next End If For jj = RowCount + 1 To Max(15, 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) Response.Write("" & vbCrLf) Response.Write("") Next %>
" & SetDateStr(MyTable(1, ii + 1), "MM/DD") & "" & MyTable(2, ii + 1) & "" & MyTable(3, ii + 1) & "" & ConvIntToMoney(MyTable(4, ii + 1), false, true) & "" & ConvIntToMoney(MyTable(5, ii + 1), false, true) & "" & ConvIntToMoney(MyTable(6, ii + 1), false, true) & "" & ConvIntToMoney(MyTable(7, ii + 1), false, true) & "" & ConvIntToMoney(MyTable(8, ii + 1), false, true) & "" & ConvIntToMoney(MyTable(9, ii + 1), false, true) & "" & MyTable(10, ii + 1) & "" & ConvIntToMoney(MyTable(10, ii + 1), false, true) & "" & ConvIntToMoney(MyTable(11, ii + 1), false, true) & "" & MyTable(12, ii + 1) & "" & ConvIntToMoney(MyTable(12, ii + 1), false, true) & "
 
<% If PrintFlg <> 1 Then %>
<% End If %>
<% If PrintFlg = 1 Then Response.Write(PrintFooter()) End If %>
<% If (Content.BOF Or Content.EOF) Then Exit For End If Next If PrintFlg = 0 Then %>
<% End if End Function %>