<!-- #include file="../../../include.asp" -->

<%
'<!--
'################################################
'	名称	:商品情報設定
'	作成日	:2002/8/18
'	作成者	:徳田
'	目的	:商品情報更新(追加・修正・削除)処理を行う。
'	概要	:
'			:[080314小野]材料マスタモードを追加
'################################################
'-->

main()

Sub main()
	Dim Action						'処理区分
	Dim EnshuName						'演習CD、 演習名称

	Dim SyohinCD , Shohinmei , ShohinRyakumei		'商品コード、商品名称、商品略名称
	Dim HanbaiTanka , ShireTnanka , UnsoTanka		'標準販売単価、標準仕入単価、運送費単価
	Dim SokoryoTanka , Jyuryo , Yoseki			'倉庫料単価、重量、容積
	Dim Bikou						'備考
	Dim GazoFile
	Dim Tani
	Dim Lot
	Dim Query
	Dim Content
	Dim Ng , ErrMSG , rsts, ErrMSG2
	Dim SyoyuKaisyaCD
	Dim ShiireKaisyaCD
	Dim TaxRate
	Dim Category
	Dim CategoryNew

	Dim RouteType, PageType
	Dim ShijyoCD
	Dim ShijoCD

	Dim Mode

	Dim a, b, obj, name
	DIm f1, newf1, l1
	Dim fso

	'数値文字変換チェック用
	Dim NumChrCheck
	NumChrCheck = ""

	a=Request.TotalBytes

On Error Resume Next
	Err.Clear()
	b=Request.BinaryRead(a)

	If Err.Description <> "" Then
		Response.Write("エラーが発生しました。<br>ファイルサイズが大きすぎる可能性があります。<br><br>")
		Response.Write("エラーコード:")
		Response.Write(Err.Description)
		Response.Write("<br><br>")
		Response.Write("<a href=""JavaScript:history.go(-1)"">戻る</a>")
		Exit Sub
	End If
On Error Goto 0


	set obj=server.createobject("basp21")

	Action = obj.Form(b,"Action")


	If Action <> "" Then

		f1 = obj.FormFileName(b,"GazoFile1")
		If obj.Form(b,"delImg") <> "" Then
			GazoFile = ""
		ElseIf f1 = "" Then
			GazoFile = obj.Form(b,"GazoFile")
		Else
			GazoFile=Mid(f1,InstrRev(f1,"\")+1)

			Set fso = CreateObject("Scripting.FileSystemObject")
			If Not(fso.FolderExists(Server.MapPath(Fgoods) & "/" & EnshuCD)) Then
				fso.CreateFolder(Server.MapPath(Fgoods) & "/" & EnshuCD)
			End If
			l1 = obj.FormSaveAs(b,"GazoFile1",Server.MapPath(Fgoods) & "/" & EnshuCD & "/" & GazoFile)
			'パス名260文字以上でエラー(-3)になる
			If l1 < 0 Then
				Response.Write("エラーが発生しました。<br>ファイル名が長すぎる可能性があります。<br><br>")
				Response.Write("<a href=""JavaScript:history.go(-1)"">戻る</a>")
				Exit Sub
			End If
		End If


		RouteType = obj.Form(b,"RouteType")
		SyohinCD = obj.Form(b,"SyohinCD")
		Shohinmei = obj.Form(b,"Shohinmei")
		ShohinRyakumei = obj.Form(b,"ShohinRyakumei")
		HanbaiTanka = ConvMoneyToInt(obj.Form(b,"HanbaiTanka"))
		ShireTnanka = ConvMoneyToInt(obj.Form(b,"ShireTnanka"))
		UnsoTanka = ConvMoneyToInt(obj.Form(b,"UnsoTanka"))
		SokoryoTanka = ConvMoneyToInt(obj.Form(b,"SokoryoTanka"))
		Jyuryo = ConvMoneyToInt(obj.Form(b,"Jyuryo"))
		Yoseki = ConvMoneyToInt(obj.Form(b,"Yoseki"))
		Bikou = obj.Form(b,"Bikou")
		ErrMsg = obj.Form(b,"ErrMsg")
		Tani = obj.Form(b,"Tani")
		Lot = ConvMoneyToInt(obj.Form(b,"Lot"))
		ShijyoCD = obj.Form(b,"ShijyoCD")
		PageType = obj.Form(b,"PageType")
		SyoyuKaisyaCD = obj.Form(b,"SyoyuKaisyaCD")	
		ShiireKaisyaCD = obj.Form(b,"ShiireKaisyaCD")	
		Mode = obj.Form(b,"Mode")
		ShijoCD = obj.Form(b,"ShijoCD")
		TaxRate = obj.Form(b,"TaxRate")
		Category = obj.Form(b,"Category")
		CategoryNew = obj.Form(b,"CategoryNew")
	Else
		Action = Request("Action")
		RouteType = Request("RouteType")
		SyohinCD = Request("SyohinCD")
		Shohinmei = Request("Shohinmei")
		ShohinRyakumei = Request("ShohinRyakumei")
		HanbaiTanka = ConvMoneyToInt(Request("HanbaiTanka"))
		ShireTnanka = ConvMoneyToInt(Request("ShireTnanka"))
		UnsoTanka = ConvMoneyToInt(Request("UnsoTanka"))
		SokoryoTanka = ConvMoneyToInt(Request("SokoryoTanka"))
		Jyuryo = ConvMoneyToInt(Request("Jyuryo"))
		Yoseki = ConvMoneyToInt(Request("Yoseki"))
		Bikou = Request("Bikou")
		ErrMsg = Request("ErrMsg")
		Tani = Request("Tani")
		Lot = ConvMoneyToInt(Request("Lot"))
		ShijyoCD = Request("ShijyoCD")
		PageType = Request("PageType")
		SyoyuKaisyaCD = Request("SyoyuKaisyaCD")
		ShiireKaisyaCD = Request("ShiireKaisyaCD")
		Mode = Request("Mode")
		ShijoCD = Request("ShijoCD")
		TaxRate = Request("TaxRate")
		Category = Request("Category")
		CategoryNew = Request("CategoryNew")

	End If

	NumChrCheck = NumChrCheck & Shohinmei
	NumChrCheck = NumChrCheck & ShohinRyakumei
	NumChrCheck = NumChrCheck & CategoryNew
	NumChrCheck = NumChrCheck & Tani
	NumChrCheck = NumChrCheck & Bikou

	'数値文字変換チェック
	If Not(NumChrReject(NumChrCheck)) Then
		Exit Sub
	End If

	Dim TmpShohinCD	'フォームに戻る際に元の商品CDをクエリで送るため
	TmpShohinCD = SyohinCD

	If GB_Admin = 0 Then
		'運用管理以外の場合は生徒商品なので -生徒IDを付加
		If InStr(SyohinCD, "-" & GB_GakuseiNo) = 0 Then
			SyohinCD = SyohinCD & "-" & GB_GakuseiNo
		End If
	End If


	Dim Title
	Dim SubTitle
	If Mode = "Zairyo" Then
		Title = "材料"
		SubTitle = "商品"
	Else
		Title = "商品"
		SubTitle = "材料"
	End If


	rsts =	True
	Query = "exec SPM" & Title & "取得 '" & GB_SystemCD & "','" & EnshuCD & "','" & SyohinCD & "'"
	Set Content = OpenQuery(Query)
	If Not(Content.BOF Or Content.EOF) Then
		If Action = "1" Then
			ErrMSG = "この" & Title & "コードはすでに登録済みです。"
			rsts = False
		Else
		End If
	Else
		If Action = "1" Then
		Else
			ErrMSG = "対象の" & Title & "は存在しません。"
			rsts = False
		End If
	End If
	If rsts = True Then
		Query = "exec SPM" & SubTitle & "取得 '" & GB_SystemCD & "','" & EnshuCD & "','" & SyohinCD & "'"
		Set Content = OpenQuery(Query)
		If Not(Content.BOF Or Content.EOF) Then
			If Action = "1" Then
				ErrMSG = "この" & SubTitle & "コードはすでに登録済みです。"
				ErrMSG2 = SubTitle & "コード : " & Content.Fields(SubTitle & "CD") & "\n" & SubTitle & "名称 : " & Content.Fields(SubTitle & "名称")
				rsts = False
			End If
		End If
	End If


	If rsts = False Then
		Ng = "fm_shohin.asp?action=" & Action & "&nr=r" & "&EnshuCD=" & EnshuCD
		Ng = Ng & "&SyohinCD=" & TmpShohinCD & "&Shohinmei=" & Shohinmei & "&ShohinRyakumei=" & ShohinRyakumei
		Ng = Ng & "&HanbaiTanka=" & HanbaiTanka & "&ShireTnanka=" & ShireTnanka &	"&UnsoTanka=" & UnsoTanka
		Ng = Ng & "&SokoryoTanka=" & SokoryoTanka & "&Jyuryo=" & Jyuryo & "&Yoseki=" & Yoseki
		Ng = Ng & "&Tani=" & Tani
		Ng = Ng & "&Lot=" & Lot
		Ng = Ng & "&ShijyoCD=" & ShijyoCD
		Ng = Ng & "&ShijoCD=" & ShijoCD
		Ng = Ng & "&TaxRate=" & TaxRate
		Ng = Ng & "&Category=" & Category
		Ng = Ng & "&CategoryNew=" & CategoryNew
		Ng = Ng & "&SyoyuKaisyaCD=" & SyoyuKaisyaCD
		Ng = Ng & "&ShiireKaisyaCD=" & ShiireKaisyaCD
		Ng = Ng & "&Bikou=" & Bikou
		Ng = Ng & "&PageType=" & PageType
		Ng = Ng & "&Mode=" & Mode
		Ng = Ng & "&ErrMSG=" & ErrMSG
		Ng = Ng & "&ErrMSG2=" & ErrMSG2
'		Response.Redirect(Ng)
		Response.Write(SubmitHystoryBack(Ng))
		Exit Sub
	End If


	If Category = "" And CategoryNew <> "" Then
		Category = CategoryNew
	End If


	If Action = "4" Then
		Query = "exec SPM" & Title & "削除 '" & GB_SystemCD & "'," & "'" & EnshuCD &	"','" & SyohinCD & "'"
		Set Content = OpenQuery(Query)

		Response.Redirect("fm_shohin_ichiran.asp?PageType=" & PageType & "&ShijoCD=" & ShijoCD & "&Mode=" & Mode)

	Else

		Query = "exec SPM" & Title & "更新 '" & GB_SystemCD & "', " & Action
		Query = Query & ", '" & EnshuCD &	"'"
		Query = Query & ", '" & SyohinCD & "'"
		Query = Query & ", '" & ShijyoCD & "'"
		Query = Query & ", '" & Shohinmei	& "'"
		Query = Query & ", '" & ShohinRyakumei	& "'"
		Query = Query & ", '" & SyoyuKaisyaCD	& "'"
		Query = Query & ",  " & HanbaiTanka
		If "" & ShireTnanka <> "" Then
			Query = Query & ", " & ShireTnanka
		Else
			Query = Query & ", 0"
		End If
		If "" & UnsoTanka <> "" Then
			Query = Query & ", " & UnsoTanka
		Else
			Query = Query & ", 0"
		End If
		If "" & SokoryoTanka <> "" Then
			Query = Query & ", " & SokoryoTanka
		Else
			Query = Query & ", 0"
		End If
		If "" & Jyuryo <> "" Then
			Query = Query & ", " & Jyuryo
		Else
			Query = Query & ", 0"
		End If
		If "" & Yoseki <> "" Then
			Query = Query & ", " & Yoseki
		Else
			Query = Query & ", 0"
		End If
		Query = Query & ", '" & Bikou	& "'"
		Query = Query & ", '" & GazoFile & "'"
		Query = Query & ", '" & Tani & "'"
		If "" & Lot <> "" Then
			Query = Query & ", " & Lot
		Else
			Query = Query & ", null"
		End If
		Query = Query & ",1"							'作成区分=1(運用管理作成データ)をセット

		If GB_Admin >= 1 Then
			Query = Query & ",''"
		Else
			Query = Query & ",'" & GB_GakuseiNo & "'"
		End If

	End If

'Response.Write(Query)
'Exit Sub

	Set Content = OpenQuery(Query)
	If Content.Fields.Count > 0 Then
		rsts = Content.Fields(0)
	End If


	If "" & TaxRate <> "" Then
		'標準消費税率更新
		Query = ""
		Query = Query & "  "
		Query = Query & " UPDATE TDA" & Title & "M "
		Query = Query & " SET 標準消費税率 = " & TaxRate & " "
		Query = Query & " WHERE システムCD = '" & GB_SystemCD & "' "
		Query = Query & " 	AND 演習CD = '" & EnshuCD & "' "
		Query = Query & " 	AND " & Title & "CD = '" & SyohinCD & "' "
		Set Content = OpenQuery(Query)
	End If


If PackageMode = 1 And Mode <> "Zairyo" Then
	'カテゴリ更新
	Query = ""
	Query = Query & "  "
	Query = Query & " UPDATE TDA" & Title & "M "
	Query = Query & " SET カテゴリ = '" & Category & "' "
	Query = Query & " WHERE システムCD = '" & GB_SystemCD & "' "
	Query = Query & " 	AND 演習CD = '" & EnshuCD & "' "
	Query = Query & " 	AND " & Title & "CD = '" & SyohinCD & "' "
	Set Content = OpenQuery(Query)
End If


	If Action <> "4" And Title = "商品" Then
		ShijoCD = ShijyoCD
		'商品の仕入先更新 ※「SPM商品更新」が電商くんサイバー会計連携に影響するので個別更新
		Query = ""
		Query = Query & "  "
		Query = Query & " UPDATE TDA商品M "
		Query = Query & " SET 仕入先CD = '" & ShiireKaisyaCD & "' "
		Query = Query & " WHERE システムCD = '" & GB_SystemCD & "' AND 演習CD = '" & EnshuCD &	"' AND 商品CD = '" & SyohinCD & "' "
'		Query = Query & " 	AND 仕入先CD <> '" & ShiireKaisyaCD & "' "
		Set Content = OpenQuery(Query)
	End If

	Response.Redirect("fm_shohin_view.asp?SyohinCD=" & SyohinCD & "&ShijoCD=" & ShijoCD & "&PageType=" & PageType & "&Mode=" & Mode)


End Sub
%>