%
'
'
Function SeizouSashizusho(EnshuCD, KaisyaCD, BunsyoNaiyoCD, AutoFlg, PrintFlg)
Dim RowBreakNum, RowCount
Dim Page
RowCount = 0
If PrintFlg = 1 Then
RowBreakNum = 23
Else
RowBreakNum = MaxRowBreakNum
MaxPage = 1
End If
Dim ii
Dim Query
Dim Content
Dim Content2
Dim jj,tmps
'実践日取得
Dim Jissenbi
Jissenbi = ""
Query = "exec SPM演習取得 '" & GB_SystemCD & "','" & EnshuCD & "'"
Set Content = OpenQuery(Query)
If Not(Content.BOF Or Content.EOF) Then
Jissenbi = "" & SetTimeYYYYMMDD(Content.Fields("実践日"))
End If
'改ページでリセットされないよう此処で取得する
Dim SyohinKubun
Dim SyohinKubunMei
Dim SyohinCD
Dim ShohinMeisho
Dim Lot
Dim Tani
Dim SeizoLot
Dim SoSeizoSu
Dim SyohinTanka
Dim Syoribi
Dim Kanryobi
Dim SeizouKubun
Dim ZBunsyoNaiyoCD
Dim RoumuHi
Dim KeiHi
Dim KansetsuHi
Dim GokeiKingaku
Dim GenkaKeisanhyoFlug
GenkaKeisanhyoFlug = False
KeiHi = 0
RoumuHi = 0
KansetsuHi = 0
Query = "exec SPK補助簿_原価計算表取得 '" & GB_SystemCD & "','" & EnshuCD & "', '" & KaisyaCD & "', '" & BunsyoNaiyoCD & "'"
Set Content = OpenQuery(Query)
If Not(Content.BOF Or Content.EOF) Then
Do While Not(Content.BOF Or Content.EOF)
GenkaKeisanhyoFlug = True
If "" & Content.Fields("直接経費") <> "" Then
KeiHi = KeiHi + Content.Fields("直接経費")
End If
If "" & Content.Fields("直接労務費") <> "" Then
RoumuHi = RoumuHi + Content.Fields("直接労務費")
End If
If "" & Content.Fields("製造間接費") <> "" Then
KansetsuHi = KansetsuHi + Content.Fields("製造間接費")
End If
Content.MoveNext
Loop
End If
Query = "exec SPD製造指図書取得 '" & GB_SystemCD & "', '" & EnshuCD & "', '" & KaisyaCD & "', '" & BunsyoNaiyoCD & "'"
Set Content = OpenQuery(Query)
If Not(Content.BOF Or Content.EOF) Then
SyohinCD = Content.Fields("商品CD")
' Lot = 1 'ゼロ除算例外対策
If Left(Content.Fields("製造状況区分"), 1) = "P" Or Left(Content.Fields("製造状況区分"), 1) = "M" Then
SyohinKubun = "S"
SyohinKubunMei = "商品"
Query = "exec SPM商品取得 '" & GB_SystemCD & "','" & EnshuCD & "','" & SyohinCD & "'"
Set Content2 = OpenQuery(Query)
If Not(Content2.BOF Or Content2.EOF) Then
ShohinMeisho = Content2.Fields("商品名称")
Lot = Content2.Fields("ロット")
Tani = Content2.Fields("単位")
End If
Else
SyohinKubun = "Z"
SyohinKubunMei = "材料"
Query = "exec SPM材料取得 '" & GB_SystemCD & "','" & EnshuCD & "','" & SyohinCD & "'"
Set Content2 = OpenQuery(Query)
If Not(Content2.BOF Or Content2.EOF) Then
ShohinMeisho = Content2.Fields("材料名称")
Lot = Content2.Fields("ロット")
Tani = Content2.Fields("単位")
End If
End If
SeizoLot = Content.Fields("商品数量")
If Lot <> 0 Then
SeizoLot = SeizoLot / Lot
End If
SoSeizoSu = Content.Fields("商品数量")
SyohinTanka = Content.Fields("商品単価")
Syoribi = SetTimeYYYYMMDD(Content.Fields("処理日"))
Kanryobi = SetTimeYYYYMMDD(Content.Fields("完了日"))
SeizouKubun = Content.Fields("製造状況区分")
ZBunsyoNaiyoCD = Content.Fields("材料出庫CD")
If Not(GenkaKeisanhyoFlug) Then
'原価計算表未入力時は計画値を取得
If "" & Content.Fields("経費") <> "" Then
KeiHi = KeiHi + Content.Fields("経費")
End If
If "" & Content.Fields("労務費") <> "" Then
RoumuHi = RoumuHi + Content.Fields("労務費")
End If
End If
End If
GokeiKingaku = 0
For Page = 1 To MaxPage
If Page <> 1 Then
Response.Write(PageBreakBefore)
End If
%>
<%
If PrintFlg = 1 Then
Response.Write(PrintHeader1(AutoFlg))
End if
%>
<%
GokeiKingaku = GokeiKingaku + (Content.Fields("材料単価") * Content.Fields("材料数量"))
RowCount = RowCount + 1
Content.MoveNext
'ページ上限を超えたらDoループを抜ける
If (RowCount Mod RowBreakNum = 0) Then
Exit Do
End If
Loop
For jj = RowCount + 1 To Max(8, Max(RowBreakNum, (Int((RowCount - 1) / RowBreakNum) + 1) * RowBreakNum) * PrintFlg)
%>
<%
Next
%>
<% If PrintFlg = 0 Then %>
<% End If %>
仕入価格合計
<% = SetMoney(GokeiKingaku, false, true) %>
労務費合計
<% = SetMoney(RoumuHi, false, true) %>
経費合計
<% = SetMoney(KeiHi, false, true) %>
間接費合計
<% = SetMoney(KansetsuHi, false, true) %>
ロット:<% = Lot %><% = Tani %>
製造ロット数
<% = SetMoney(SeizoLot, false, true) %>
製造開始日:
<% = Syoribi %>
総 製 造 数
<% = SetMoney(SoSeizoSu, false, true) %>
製造完了日:
<% If (SeizouKubun = "PS" Or SeizouKubun = "YS") And PrintFlg <> 1 Then %>
<% If Jissenbi <> "" Then '実践日固定モード %>
<% Else %>
<% End If %>
<% Else %>
<% = Kanryobi %>
<% End If %>