<!-- #include file="../../../include.asp" --> <% '<!-- '################################################ ' 名称 :材料仕入伝票入力 ' 作成日 :2008/3/14 ' 作成者 :小野 ' 目的 :材料仕入伝票の入力画面を表示する。 ' 概要 : '################################################ '--> ' %> <% main() Sub main() 'マスタの標準消費税率を取得 Dim StdTaxRate Dim StdTaxRateUnso StdTaxRate = GB_Shohizei StdTaxRateUnso = GB_Shohizei If GB_ShohizeiMode = 1 Then Query = " SELECT * FROM TDA消費税率M WHERE システムCD = '" & GB_SystemCD & "' AND 演習CD = '" & EnshuCD & "' AND (標準 = '1' OR 運送費標準 = '1') " Set Content = OpenQuery(Query) Do While Not(Content.BOF Or Content.EOF) If "" & Content.Fields("標準") = "1" Then StdTaxRate = Content.Fields("消費税率") End If If "" & Content.Fields("運送費標準") = "1" Then StdTaxRateUnso = Content.Fields("消費税率") End If Content.MoveNext Loop End If Dim DenpyoNo, Torihikibi, DenpyoTekiyo,TorihikisakiCD '伝票番号、取引日、伝票摘要、取引先CD Dim DenpyoSyoriKubun,TujyoHenpinKubun,TmpTorihikisakiName '伝票処理区分、通常返品区分、取引先名称 Dim PageType 'ページの種類 "仕入" or "売上"かを判定 Dim SyohinCD(5) '商品コード Dim SyohinName(5) '商品名称 Dim Kakaku(5) '標準価格 Dim Suryo(5) '数量 Dim Tanka(5) '単価 Dim Kingaku(5) '金額 Dim GokeiKingaku '合計 Dim SyohizeiKingaku '消費税 Dim ZeikomiKingaku '税込み金額 Dim Checked_N,Checked_R Dim GakuseiShimei '学生氏名(係印) Dim OldDenpyoNo Dim ii Dim Query Dim Content Dim Genkin, Toza Dim Shimei DenpyoNo = Request("DenpyoNo") PageType= Request("Pagetype") Dim ShowDel ShowDel = Request("ShowDel") Dim LabelSoumu Dim LabelTanto Dim LabelKakari LabelSoumu = "" LabelTanto = "" LabelKakari = "係 印" If MHMINRANLEFT <> "" Then LabelSoumu = MHMINRANLEFT End If If MHMINRANCENTER <> "" Then LabelTanto = MHMINRANCENTER End If If MHMINRANRIGHT <> "" Then LabelKakari = MHMINRANRIGHT End If Dim title title = "材料仕入伝票" Dim GakuseiBango If Session(HomeAlias & "EnshuKubun") = "P" AND GB_JisyaFlag = "0" Then Else GakuseiBango = GB_GakuseiNo End If Dim ReturnValue ReturnValue = "" & Request("ReturnValue") 'Response.Write("あ" & ReturnValue & "あ") 'Exit Sub Dim TmpCnt Dim ErrorFlg ErrorFlg = Request("ErrorFlg") '追加モードでリジェクトされた場合はクエリを取得(090528小野) If ErrorFlg <> "" Then DenpyoNo = Request("DenpyoNo") Torihikibi = Request("Torihikibi") TorihikisakiCD = Request("TorihikisakiCD") TujyoHenpinKubun = Request("TujyoHenpinKubun") DenpyoTekiyo = Request("DenpyoTekiyo") If TujyoHenpinKubun = "N" Then '通常 Checked_N = "checked" Checked_R = "" Else Checked_R = "checked" Checked_N = "" End If '修正モード ElseIf DenpyoNo <> "" Then OldDenpyoNo = DenpyoNo 'この場合のみOldDenpyoNoを持たせる(090528小野) '/////// 1.「伝票」ヘッダ部のデータを取得。 Query = "exec SPK伝票_材料仕入伝票取得 '" & GB_SystemCD & "','" & EnshuCD & "','" & KaisyaCD & "', '" & DenpyoNo & "'" Set Content = OpenQuery(Query) If Not(Content.BOF Or Content.EOF) Then Torihikibi = SetTimeYYYYMMDD(Content.Fields("取引日")) DenpyoTekiyo = Content.Fields("伝票摘要") DenpyoSyoriKubun = Content.Fields("伝票処理区分") TorihikisakiCD = Content.Fields("取引先CD") TujyoHenpinKubun = Content.Fields("通常返品区分") GakuseiShimei = Content.Fields("氏名") GakuseiBango = Content.Fields("学生番号") If TujyoHenpinKubun = "N" Then '通常 Checked_N = "checked" Checked_R = "" Else Checked_R = "checked" Checked_N = "" End If End If Else Checked_N = "checked" Checked_R = "" End If Dim jj,tmps ' Dim JidoBangoDenpyo ' JidoBangoDenpyo = GetEnshuParam(EnshuCD, "自動番号伝票") '自動番号伝票フラグ・実践日取得 Dim JidoBangoDenpyo Dim Jissenbi Jissenbi = "" Query = "exec SPM演習取得 '" & GB_SystemCD & "','" & EnshuCD & "'" Set Content = OpenQuery(Query) If Not(Content.BOF Or Content.EOF) Then JidoBangoDenpyo = "" & Content.Fields("自動番号伝票") Jissenbi = "" & SetTimeYYYYMMDD(Content.Fields("実践日")) End If Dim KouriRiyo KouriRiyo = KourihanbaiRiyo() '消費税率配列作成(消費税率マスタ及び商品マスタ・現在伝票からすべての設定税率を取得する) 'まず仮配列に代入しその後本配列にソートする Dim TmpTaxRateAry ReDim TmpTaxRateAry(0) Dim TmpTaxRate Query = "" Query = Query & " " Query = Query & " SELECT * " Query = Query & " FROM TDA消費税率M " Query = Query & " WHERE システムCD = '" & GB_SystemCD & "' " Query = Query & " AND 演習CD = '" & EnshuCD & "' " Query = Query & " ORDER BY 消費税率 DESC " Set Content = OpenQuery(Query) Do While Not(Content.BOF Or Content.EOF) ReDim PreServe TmpTaxRateAry(UBound(TmpTaxRateAry) + 1) '配列+1 TmpTaxRateAry(UBound(TmpTaxRateAry)) = Content.Fields("消費税率") 'Response.Write(TmpTaxRateAry(UBound(TmpTaxRateAry)) & "<br>") TmpTaxRate = TmpTaxRate & "'" & Content.Fields("消費税率") & "'" '存在チェック用羅列 Content.MoveNext Loop Query = "exec SPM商品一覧 '" & GB_SystemCD & "','" & EnshuCD & "', '" & GB_GakuseiNo & "'" Set Content = OpenQuery(Query) Do While Not(Content.BOF Or Content.EOF) If "" & Content.Fields("標準消費税率") <> "" Then If InStr(TmpTaxRate, "'" & Content.Fields("標準消費税率") & "'") < 1 Then ReDim PreServe TmpTaxRateAry(UBound(TmpTaxRateAry) + 1) '配列+1 TmpTaxRateAry(UBound(TmpTaxRateAry)) = Content.Fields("標準消費税率") TmpTaxRate = TmpTaxRate & "'" & Content.Fields("標準消費税率") & "'" '存在チェック用羅列 End If End If Content.MoveNext Loop Query = "exec SPK伝票_材料仕入明細取得 '" & GB_SystemCD & "','" & EnshuCD & "','" & KaisyaCD & "', '" & DenpyoNo & "'" Set Content = OpenQuery(Query) Do While Not(Content.BOF Or Content.EOF) If "" & Content.Fields("消費税率") <> "" Then If InStr(TmpTaxRate, "'" & Content.Fields("消費税率") & "'") < 1 Then ReDim PreServe TmpTaxRateAry(UBound(TmpTaxRateAry) + 1) '配列+1 TmpTaxRateAry(UBound(TmpTaxRateAry)) = Content.Fields("消費税率") TmpTaxRate = TmpTaxRate & "'" & Content.Fields("消費税率") & "'" '存在チェック用羅列 End If End If Content.MoveNext Loop '本配列にソート Dim TCnt Dim TaxRateAry ReDim TaxRateAry(0) ReDim PreServe TaxRateAry(UBound(TmpTaxRateAry)) '仮配列と同じ長さ For TCnt = 1 To UBound(TaxRateAry) TaxRateAry(Tcnt) = 0 'すべてにゼロを代入 Next TmpTaxRate = "" '存在チェック用羅列リセット For TCnt = 1 To UBound(TaxRateAry) For TmpCnt = 1 To UBound(TmpTaxRateAry) 'その時点で有効な最大税率を取得する If InStr(TmpTaxRate, "'" & TmpTaxRateAry(TmpCnt) & "'") < 1 Then If TmpTaxRateAry(TmpCnt) > TaxRateAry(TCnt) Then TaxRateAry(TCnt) = TmpTaxRateAry(TmpCnt) End If End If Next TmpTaxRate = TmpTaxRate & "'" & TaxRateAry(TCnt) & "'" '存在チェック用羅列 Next For TmpCnt = 1 To UBound(TmpTaxRateAry) ' Response.Write(TmpTaxRateAry(TmpCnt) & "<br>") Next For TCnt = 1 To UBound(TaxRateAry) ' Response.Write(TaxRateAry(TCnt) & "<br>") Next 'Response.Write(TmpTaxRate & "<br>") 'Exit Sub %> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=shift_jis"> <meta http-equiv="Pragma" content="no-cache"> <meta http-equiv="Cache-Control" content="no-cache"> <meta http-equiv="Expires" content="-1"> <link href="../../../binx/sj3web.css?<% = TimeUniq() %>" rel="stylesheet" type="text/css"> <title><% = AppTitle %></title> <script language="JScript" src="../../../include.js?<% = TimeUniq() %>"></script> <script language="JScript" src="../../../includesj.js?<% = TimeUniq() %>"></script> <script language="JScript.Encode" src="../../../include_enc.js?<% = TimeUniq() %>"></script> <script language="JScript.Encode" src="../../../includesj_enc.js?<% = TimeUniq() %>"></script> <script type=""text/javascript"" src="../../../javascript.js?<% = TimeUniq() %>"></script> </head> <SCRIPT LANGUAGE="JavaScript"> <!-- HomeAlias = "<% = HomeAlias %>"; HomeAliasSL = "<% = HomeAliasSL %>"; ExitFlg = 2; --> </SCRIPT> <body onkeydown="if(ExitFlg==2)ExitFlg=3;" onBeforeUnload="window.event.returnValue = ExitMsg(ExitFlg)" bgcolor="#5C70B6" leftmargin="0" topmargin="0" marginwidth="0" marginheight="0"> <form OnKeyDown="FormKeyDown(this)" name="form1" method="POST" action="fk_zairyoshiire_bin.asp"> <input type="hidden" name="ShowDel" value="<% = ShowDel %>"> <input type="hidden" name="PageType" value="<% = PageType %>"> <input type="hidden" name="OldDenpyoNo" value="<% = OldDenpyoNo %>"> <input type="hidden" name="SendValue" value=""> <input type="hidden" name="SyohizeiKingaku" value=""> <% Response.Write(HtmlDesign(1)) Response.Write(HttpL1(2)) 'Response.Write(HttpL2("会社選択" ,"tblbtn( '/" & HomeAlias & "/user/bk/')", GB_GyosyuMeisyo, "tblbtn( '/" & HomeAlias & "/user/bk/menu_" & GB_Gyosyu & ".asp')", "製造部", "tblbtn( '/" & HomeAlias & "/user/bk/menu_s6.asp')", "材料仕入伝票", "", "", "", "", "")) Response.Write(HttpL2("会社選択" ,"tblbtn( '/" & HomeAlias & "/user/bk/')", GB_GyosyuMeisyo, "tblbtn( '/" & HomeAlias & "/user/bk/menu_" & GB_Gyosyu & ".asp')", "経理部", "tblbtn( '/" & HomeAlias & "/user/bk/menu_s1.asp')", "伝票", "tblbtn( '/" & HomeAlias & "/user/bk/menu_s11.asp')", "材料仕入伝票", "", "", "")) Response.Write(HttpL3("", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "")) ' Response.Write(HttpL3_1("保存", "SubmitCheck()", "", "", "", "", "", "", "", "")) Response.Write(HttpL3_1("保存", "SubmitCheck()", "行の追加", "SpreadAddItem2(document.vaSpread1);", "行の挿入", "SpreadInsertItem(document.vaSpread1);", "行の削除", "SpreadDelItem(document.vaSpread1);", "", "")) If OldDenpyoNo <> "" Then Response.Write(HttpL3_2("追加", "tblbtn( 'fk_zairyoshiire.asp?PageType=" & PageType & "&ShowDel=" & ShowDel & "')", "一覧表示", "tblbtn( 'fk_zairyoshiire_ichiran.asp?DenpyoNo=" & DenpyoNo & "&PageType=" & PageType & "&ShowDel=" & ShowDel & "')", "", "", "", "", "", "")) Else Response.Write(HttpL3_2("一覧表示", "tblbtn( 'fk_zairyoshiire_ichiran.asp?DenpyoNo=" & DenpyoNo & "&PageType=" & PageType & "&ShowDel=" & ShowDel & "')", "", "", "", "", "", "", "", "")) End If If OldDenpyoNo <> "" Then Response.Write(HttpL4(Title, "修正")) Else Response.Write(HttpL4(Title, "追加")) End If Response.Write(HttpL5(ErrorFlg)) %> <div id="L0" style="position: absolute; visibility: hidden; left: 0px; top: -2000px;"> <table width="100%" height="100%" border="0" cellpadding="0" cellspacing="5"> <tr> <td align="center" style="background-image: url('images/bkimg_bsq.gif'); background-repeat: repeat-y; background-attachment: scroll; background-position: 0% 50%"> <table width="650" height="420" border="0" cellpadding="0" cellspacing="0" bgcolor="#FFFFFF" style="border:solid 1px #111111"> <tr> <td width="650" height="60"> <table width="630" height="70" border="0" cellpadding="0" cellspacing="0"> <tr> <td width="510" align="right" valign="bottom"> <table border="0" cellpadding="0" cellspacing="0" width="100%"> <tr> <td height="3" colspan="3" onMouseOver="this.focus();this.focus();"><img src="/<% = HomeAlias %>/images/spacer.gif" height="1"></td> </tr> <tr> <td width="15" valign="bottom"></td> <td width="165"> <table width="160" height="30" border="0" cellpadding="0" cellspacing="0"> <tr> <td height="45" class="tx2022" style="color:#5500FF">材 料 仕 入 伝 票</td> </tr> </table> </td> <td valign="bottom"> <table width="100%" height="20" border="0" cellpadding="0" cellspacing="0"> <tr class="tx1416"> <td width="72" height="20" align="right" style="color:#5500FF">伝票番号:</td> <td height="20"> <% If JidoBangoDenpyo = "1" Or (DenpyoNo <> "" And ErrorFlg = "") Then %> <input type="text" name="DenpyoNo" size="20" readonly class="tbox4_ro" value="<% = DenpyoNo %>"> <% Else %> <input type="text" name="DenpyoNo" size="20" onKeyup="FormStrLeft(this,12,false,false);" onKeypress="FormStrLeft(this,12,false,false);" onBlur="FormStrTrim(this,true);" class="tbox4" value="<% = DenpyoNo %>"><!-- 半角シャープを拒否(061213小野)--> <% End If %> </td> </tr> </table> </td> </tr> <tr> <td width="15"> </td> <td> <table width="100%" height="20" border="0" cellpadding="0" cellspacing="0"> <tr class="tx1416"> <td width="55" height="20" align="left" style="color:#5500FF">取引日:</td> <td height="20"> <% If Jissenbi <> "" And DenpyoNo <> "" Then '実践日固定モード且つ修正モード %> <input type="text" name="Torihikibi" size="12" value="<% = Torihikibi %>" onKeyup="FormStrDate(this);" onKeypress="FormStrDate(this);" onBlur="SetDate(this, 1, true, '<% = Torihikibi %>', '')" readonly class="tbox4_ro" tabindex="-1"> <% ElseIf Jissenbi <> "" Then '実践日固定モード %> <input type="text" name="Torihikibi" size="12" value="<% = Jissenbi %>" onKeyup="FormStrDate(this);" onKeypress="FormStrDate(this);" onBlur="SetDate(this, 1, true, '<% = Jissenbi %>', '')" readonly class="tbox4_ro" tabindex="-1"> <% Else %> <input type="text" name="Torihikibi" size="12" onKeyup="FormStrDate(this);" onKeypress="FormStrDate(this);" onBlur="SetDate(this, 1, true)" class="tbox4" value="<% = Torihikibi %>"> <% End If %> </td> </tr> </table> </td> <td> <table width="100%" height="20" border="0" cellpadding="0" cellspacing="0"> <tr class="tx1416"> <td width="72" height="20" align="right" style="color:#5500FF">摘要:</td> <td height="20" align="left" valign="middle"> <!-- <input type="text" name="DenpyoTekiyo" size="30" value="<% = DenpyoTekiyo %>" class="tbox2_ime" onBlur="FormStrLeftIME(this,30,true)"> --> <input type="hidden" name="DenpyoTekiyo" value="<% = DenpyoTekiyo %>"> <object classid="clsid:5220cb21-c88d-11cf-b347-00aa00a28331"> <param name="lpkpath" value="spread6.lpk"> </object> <object width="147" height="20" onMouseOver="SubmitFlg=1" classid="clsid:41f841c1-ae16-11d5-8817-0050da6ef5e5" codebase="/<% = HomeAlias %>/binx/spr32x60.cab#version=1,1,1,1" id="vaSpread3" border="0"> </object> </td> </tr> </table> </td> </tr> <tr> <td width="15"> </td> <td> <table width="210" height="20" border="0" cellpadding="0" cellspacing="0"> <tr class="tx1416"> <td width="55" height="20" align="left" style="color:#5500FF">取引先:</td> <td height="20"> <select size="1" name="TorihikisakiCD" class="tbox4"> <option value=""> </option> <% Query = "exec SPM会社全部一覧 '" & GB_SystemCD & "','" & EnshuCD & "', '" & GakuseiNo & "'" Set Content = OpenQuery(Query) Do While Not(Content.BOF Or Content.EOF) '材料仕入は商社のみ If Content.Fields("業種CD") = "K" Then If (Content.Fields("市場CD") = GB_ShijyoCD AND Content.Fields("業種CD") = "K") OR Content.Fields("業種CD") = "S" Then '自社はリストから除く 2006/02/14 修正 BY Hamada If Content.Fields("会社略名称") <> GB_KaisyaRyakuMeisyo Then Response.Write("<option value=""" & Content.Fields("会社CD") & """") If Content.Fields("会社CD") = TorihikisakiCD Then Response.Write(" selected") End If Response.Write(">" & Content.Fields("会社名称") & "</option>" & vbCrLf) End If End If End If Content.MoveNext Loop If KouriRiyo > 0 And PageType = "売上伝票" Then '売上伝票のみ Response.Write("<option value=""SJ4KOURIHANBAI""") If TorihikisakiCD = "SJ4KOURIHANBAI" Then Response.Write(" selected") End If Response.Write(">" & ConvKaisyaMeisyo("SJ4KOURIHANBAI") & "</option>" & vbCrLf) End If %> </select> </td> </tr> </table> </td> <td> <table width="100%" height="20" border="0" cellpadding="0" cellspacing="0"> <tr class="tx1416"> <td width="72" height="20" align="right" style="color:#5500FF">伝票区分:</td> <td height="20" style="color:#5500FF"> <input type="radio" value="N" name="TujyoHenpinKubun" <% = Checked_N %>>通常 <input type="radio" value="R" name="TujyoHenpinKubun" <% = Checked_R %>>返品 </td> </tr> </table> </td> </tr> </table> </td> <td align="right" valign="bottom"> <table width="120" height="40" border="1" cellpadding="0" cellspacing="0" bordercolor="#5500FF" STYLE="border-collapse: collapse"> <tr class="tx1214" style="color:#5500FF"> <td width="40" height="14" align="center"><% = LabelSoumu %></td> <td width="40" height="14" align="center"><% = LabelTanto %></td> <td width="40" height="14" align="center"><% = LabelKakari %></td> </tr> <tr class="tx1214"> <td width="40" height="40" align="center"> </td> <td width="40" height="40" align="center"> </td> <td width="40" height="40" align="center"><font color="FF0000"><% = ConvShimeiRyakuMeisyo(GakuseiBango) %></font></td> </tr> </table> </td> </tr> </table> </td> </tr> <tr> <td height="265" align="center" valign="top"> <table width="510" height="250" border="0" cellpadding="0" cellspacing="0"> <tr> <td> <!-- <object classid="clsid:5220cb21-c88d-11cf-b347-00aa00a28331"> <param name="lpkpath" value="spread6.lpk"> </object> --> <object width="612" height="250" onMouseOver="SubmitFlg=1" classid="clsid:41f841c1-ae16-11d5-8817-0050da6ef5e5" codebase="/<% = HomeAlias %>/binx/spr32x60.cab#version=1,1,1,1" id="vaSpread1" border="0"> </object> <object width="612" height="55" onMouseOver="SubmitFlg=1" classid="clsid:41f841c1-ae16-11d5-8817-0050da6ef5e5" codebase="/<% = HomeAlias %>/binx/spr32x60.cab#version=1,1,1,1" id="vaSpread2" border="0"> </object> </td> </tr> </table> </td> </tr> </table> </td> </tr> </table> </div> </form> </body> <SCRIPT LANGUAGE="JavaScript"> //################################################ // 名称:SubmitCheck // 目的:更新前に入力値をチェックする。 //################################################ function SubmitCheck() { //摘要スプレッドの内容を適用フォームにコピー document.vaSpread3.Row = 1; document.vaSpread3.Col = 1; form1.DenpyoTekiyo.value = document.vaSpread3.Text; <% If JidoBangoDenpyo <> "1" Then %> if (form1.DenpyoNo.value == "") { alert("伝票番号を入力してください。"); form1.DenpyoNo.focus(); return false; } <% End If %> //** 1.取引日のチェック if (form1.Torihikibi.value == "") { alert("取引日を入力して下さい"); return false; } //** 2.取引先のチェック if (form1.TorihikisakiCD.value == "") { alert("取引先を入力して下さい"); return false; } //** 3.明細部のチェック for (jj = 1; jj <= document.vaSpread1.MaxRows; jj++) { document.vaSpread1.Row = jj; var RowText; RowText = ""; var TmpRowText; TmpRowText = ""; var bCheck; bCheck = Array(); var Tanka, Suryo, Kingaku; for (ii = 1; ii <= document.vaSpread1.MaxCols; ii++) { if (ii != 2) { document.vaSpread1.Col = ii; bCheck[ii] = 0; //セルを取得 var Text1; Text1 = document.vaSpread1.Text; //通貨のカンマを除く if(document.vaSpread1.ColID == 12) { Text1 = ReplaceStr(Text1, ",", "") } //テンポラリに代入 if (ii == 1) SyohinMeisyo = '' + Text1; if (ii == 3) Suryo = Math.floor(Text1); if (ii == 4) Tanka = Math.floor(Text1); if (ii == 6) TaxRate = Text1; if (ii == 3 && Suryo > 1000000000) { alert("数量は 1,000,000,000以下で入力してください "); document.vaSpread1.SetActiveCell(3, jj); //数量セルに移動 document.vaSpread1.focus(); document.vaSpread1.EditMode = true; return; } //数量×単価を代入 if (ii == 5 && bCheck[3] != 1 && bCheck[4] != 1) { Text1 = Math.floor(Tanka * Suryo); document.vaSpread1.Text = Text1; Kingaku = Text1; } //行テキストにセルをカンマ区切りで繋げる RowText = RowText + Text1; RowText = RowText + ","; //Nullならエラーフラグを立てる if(Text1 == "" || (ii == 3 || ii == 4) && Text1 == 0) { bCheck[ii] = 1; } } } //消費税率の有無でセル数が変動するため1セル増やす RowText = RowText + ","; //行テキストに要素が存在する場合 if (ReplaceStr(RowText, ",", "") != "") { if (bCheck[1] == 1) { alert("商品を選択してください "); document.vaSpread1.SetActiveCell(1, jj); document.vaSpread1.focus(); document.vaSpread1.EditMode = true; return; } if (bCheck[3] == 1) { alert("数量を入力してください "); document.vaSpread1.SetActiveCell(3, jj); document.vaSpread1.focus(); document.vaSpread1.EditMode = true; return; } if (bCheck[4] == 1) { alert("単価を入力してください "); document.vaSpread1.SetActiveCell(4, jj); document.vaSpread1.focus(); document.vaSpread1.EditMode = true; return; } if (bCheck[6] == 1) { alert("消費税率を選択してください "); document.vaSpread1.SetActiveCell(6, jj); document.vaSpread1.focus(); document.vaSpread1.EditMode = true; return; } if (Kingaku > 9999999999) { alert("合計金額がが 9,999,999,999円以下になるようにデータを修正してください "); document.vaSpread1.SetActiveCell(3, jj); //数量セルに移動 document.vaSpread1.focus(); document.vaSpread1.EditMode = true; return; } form1.SendValue.value = form1.SendValue.value + RowText + ";" } } if (form1.SendValue.value == '') { alert("明細を入力して下さい"); return false; } <% If DenpyoNo <> "" Then %> <% If JidoBangoDenpyo <> "1" Then %> // if (form1.OldDenpyoNo.value == form1.DenpyoNo.value) { // alert("伝票を修正する場合は、新しい伝票番号を付ける必要があります。"); // return false; // } <% End If %> // if (!confirm("この伝票を削除し、新しい伝票を保存します。\r\n保存してもよろしいですか?")) { // return false; // } <% End If %> //消費税額スプレッドの値を消費税額フォームにコピー document.vaSpread2.Row = 2; document.vaSpread2.Col = 5; //alert(document.vaSpread2.Text); //return form1.SyohizeiKingaku.value = ReplaceStr(document.vaSpread2.Text, ",", ""); SubmitReal(form1); return true; } function SetGokei() { var TmpGokei = 0; var TmpShohizei = 0; for (ii = 1; ii <= document.vaSpread1.MaxRows; ii++) { document.vaSpread1.Row = ii; var Text1, Text2, Text3; document.vaSpread1.Col = 5; Text1 = document.vaSpread1.value; if (Text1 != "") { Text2 = Text1.replace(',', ''); Text1 = Text2.replace(',', ''); Text2 = Text1.replace(',', ''); Text1 = Text2.replace(',', ''); Text2 = Text1.replace(',', ''); Text1 = Text2.replace(',', ''); Text2 = eval(Text1); } else { Text2 = 0; } TmpGokei = TmpGokei + Text2; document.vaSpread1.Col = 6; Text1 = document.vaSpread1.Text; if (Text1 != "") { Text3 = parseFloat(Text1); } else { Text3 = 0; } TmpShohizei = TmpShohizei + ((Text2 * Text3) / 100) // alert((Text2 * Text3) / 100); // alert(Text1); } //alert(TmpShohizei); document.vaSpread2.Row = 1; document.vaSpread2.Col = 5; document.vaSpread2.value = TmpGokei; document.vaSpread2.Row = 2; document.vaSpread2.Col = 5; // document.vaSpread2.value = Math.floor(TmpGokei * <% = GB_Shohizei %> / 100); document.vaSpread2.value = Math.floor(TmpShohizei); document.vaSpread2.Row = 3; document.vaSpread2.Col = 5; // document.vaSpread2.value = TmpGokei + Math.floor(TmpGokei * <% = GB_Shohizei %> / 100); document.vaSpread2.value = TmpGokei + Math.floor(TmpShohizei); } function ConvZairyoHanbaiTanka(SyohinCD) { <% Query = "exec SPM材料一覧 '" & GB_SystemCD & "','" & EnshuCD & "', '" & GB_GakuseiNo & "'" Set Content = OpenQuery(Query) Do While Not(Content.BOF Or Content.EOF) Response.Write(" if(SyohinCD == """ & Content.Fields("材料CD") & """)return """ & Content.Fields("標準販売単価") & """;" & vbCrLf) Content.MoveNext Loop %> return ""; } function ConvZairyoHanbaiTanka2(ZairyoMeisyo) { //材料名称ベース <% Query = "exec SPM材料一覧 '" & GB_SystemCD & "','" & EnshuCD & "', '" & GB_GakuseiNo & "'" Set Content = OpenQuery(Query) Do While Not(Content.BOF Or Content.EOF) Response.Write(" if(ZairyoMeisyo == """ & Content.Fields("材料名称") & """)return " & Content.Fields("標準販売単価") & ";" & vbCrLf) Content.MoveNext Loop %> return ""; } function ConvZairyoSyohizeiritsu(SyohinCD) { <% Query = "exec SPM材料一覧 '" & GB_SystemCD & "','" & EnshuCD & "', '" & GB_GakuseiNo & "'" Set Content = OpenQuery(Query) Do While Not(Content.BOF Or Content.EOF) If "" & Content.Fields("標準消費税率") <> "" Then Response.Write(" if(SyohinCD == """ & Content.Fields("材料CD") & """)return """ & Content.Fields("標準消費税率") & """;" & vbCrLf) Else Response.Write(" if(SyohinCD == """ & Content.Fields("材料CD") & """)return """ & StdTaxRate & """;" & vbCrLf) End If Content.MoveNext Loop %> return ""; } function ConvZairyoSyohizeiritsu2(ZairyoMeisyo) { //材料名称ベース <% Query = "exec SPM材料一覧 '" & GB_SystemCD & "','" & EnshuCD & "', '" & GB_GakuseiNo & "'" Set Content = OpenQuery(Query) Do While Not(Content.BOF Or Content.EOF) If "" & Content.Fields("標準消費税率") <> "" Then Response.Write(" if(ZairyoMeisyo == """ & Content.Fields("材料名称") & """)return " & Content.Fields("標準消費税率") & ";" & vbCrLf) Else Response.Write(" if(ZairyoMeisyo == """ & Content.Fields("材料名称") & """)return " & StdTaxRate & ";" & vbCrLf) End If Content.MoveNext Loop %> return ""; } function SpreadInit(fpSpread) { fpSpread.MaxRows = 0; <% ii = 0 '選択行の色を変える動作を停止(090624小野) Response.Write(" SpreadRowColorMode = false;" & vbCrLf) '追加モードでリジェクトされた場合はクエリから展開(090528小野) If ErrorFlg <> "" Then Dim TmpValueRow Dim TmpValueCol TmpValueRow = Split(ReturnValue, ";") For TmpCnt = 0 To UBound(TmpValueRow) - 1 TmpValueCol = Split(TmpValueRow(TmpCnt), ",") ii = ii + 1 Response.Write(" SpreadAddItem(fpSpread);" & vbCrLf) Response.Write(" fpSpread.Row = " & ii & ";" & vbCrLf) Response.Write(" fpSpread.Col = 1;" & vbCrLf) Response.Write(" fpSpread.Text = """ & TmpValueCol(0) & """;" & vbCrLf) Response.Write(" fpSpread.Col = 2;" & vbCrLf) Response.Write(" fpSpread.Text = ConvZairyoHanbaiTanka(""" & ConvRevZairyoMeisyo(TmpValueCol(0)) & """);" & vbCrLf) Response.Write(" fpSpread.Col = 3;" & vbCrLf) Response.Write(" fpSpread.Text = """ & ConvIntToMoney(TmpValueCol(1), false ,false) & """;" & vbCrLf) Response.Write(" fpSpread.Col = 4;" & vbCrLf) Response.Write(" fpSpread.Text = """ & ConvIntToMoney(TmpValueCol(2), false ,false) & """;" & vbCrLf) Response.Write(" fpSpread.Col = 5;" & vbCrLf) Response.Write(" fpSpread.Text = """ & ConvIntToMoney(CLng(TmpValueCol(1)) * CLng(TmpValueCol(2)), false ,false) & """;" & vbCrLf) If GB_ShohizeiMode = 1 Then Response.Write(" fpSpread.Col = 6;" & vbCrLf) Response.Write(" fpSpread.Text = ConvZairyoSyohizeiritsu(""" & ConvRevZairyoMeisyo(TmpValueCol(0)) & """);" & vbCrLf) End If Response.Write(" fpSpread.Col = 0;" & vbCrLf) Response.Write(" fpSpread.Text = "" "";" & vbCrLf) Next '修正モード ElseIf DenpyoNo <> "" Then Query = "exec SPK伝票_材料仕入明細取得 '" & GB_SystemCD & "','" & EnshuCD & "','" & KaisyaCD & "', '" & DenpyoNo & "'" Set Content = OpenQuery(Query) Do While Not(Content.BOF Or Content.EOF) ' Response.Write(" SyohinMeisyoArray[" & ii & "] = """ & ConvSyohinMeisyo(Content.Fields("商品CD")) & """;" & vbCrLf) ' Response.Write(" MotoSuryoArray[" & ii & "] = " & ConvIntToMoney(Content.Fields("数量"), false ,false) & ";" & vbCrLf) ii = ii + 1 Response.Write(" SpreadAddItem(fpSpread);" & vbCrLf) Response.Write(" fpSpread.Row = " & ii & ";" & vbCrLf) Response.Write(" fpSpread.Col = 1;" & vbCrLf) Response.Write(" fpSpread.Text = """ & ConvZairyoMeisyo(Content.Fields("商品CD")) & """;" & vbCrLf) Response.Write(" fpSpread.Col = 2;" & vbCrLf) Response.Write(" fpSpread.Text = ConvZairyoHanbaiTanka(""" & Content.Fields("商品CD") & """);" & vbCrLf) Response.Write(" fpSpread.Col = 3;" & vbCrLf) Response.Write(" fpSpread.Text = """ & ConvIntToMoney(Content.Fields("受注数量"), false ,false) & """;" & vbCrLf) Response.Write(" fpSpread.Col = 4;" & vbCrLf) Response.Write(" fpSpread.Text = """ & ConvIntToMoney(Content.Fields("受注単価"), false ,false) & """;" & vbCrLf) Response.Write(" fpSpread.Col = 5;" & vbCrLf) Response.Write(" fpSpread.Text = """ & ConvIntToMoney(Content.Fields("受注数量") * Content.Fields("受注単価"), false ,false) & """;" & vbCrLf) If GB_ShohizeiMode = 1 Then Response.Write(" fpSpread.Col = 6;" & vbCrLf) Response.Write(" fpSpread.Text = ConvZairyoSyohizeiritsu(""" & Content.Fields("商品CD") & """);" & vbCrLf) End If Response.Write(" fpSpread.Col = 0;" & vbCrLf) Response.Write(" fpSpread.Text = "" "";" & vbCrLf) Content.MoveNext Loop End If Dim NyukoCnt NyukoCnt = ii If ii = 0 Then Response.Write(" SpreadAddItem(fpSpread);" & vbCrLf) NyukoCnt = 1 End If '選択行の色を変える動作を再開(090624小野) Response.Write(" SpreadRowColorMode = true;" & vbCrLf) Response.Write(" SpreadRowColor(fpSpread);") '選択行の色を変える(090624小野) %> } </SCRIPT> <SCRIPT FOR="vaSpread1" EVENT="KeyDown(KeyAsciiCode, KeyShift)" LANGUAGE="JavaScript"> // SpreadKeyDown(this, KeyAsciiCode, KeyShift); if(KeyAsciiCode == 46 && this.EditMode == false) { SetGokei(); } </SCRIPT> <SCRIPT FOR="vaSpread1" EVENT="KeyUp(KeyAsciiCode, KeyShift)" LANGUAGE="JavaScript"> SpreadKeyUp(this, KeyAsciiCode, KeyShift); </SCRIPT> <SCRIPT FOR="vaSpread3" EVENT="KeyUp(KeyAsciiCode, KeyShift)" LANGUAGE="JavaScript"> SpreadKeyUp(this, KeyAsciiCode, KeyShift); </SCRIPT> <SCRIPT FOR="vaSpread1" EVENT="Click(ColNo, RowNo)" LANGUAGE="JavaScript"> // SpreadClick(this, ColNo, RowNo); this.Col = this.ActiveCol; this.Row = this.ActiveRow; this.EditMode = true; </SCRIPT> <SCRIPT FOR="vaSpread3" EVENT="Click(ColNo, RowNo)" LANGUAGE="JavaScript"> // SpreadClick(this, ColNo, RowNo); this.Col = this.ActiveCol; this.Row = this.ActiveRow; this.EditMode = true; </SCRIPT> <SCRIPT FOR="vaSpread2" EVENT="onfocus" LANGUAGE="JavaScript"> document.vaSpread1.focus(); </SCRIPT> <SCRIPT FOR="vaSpread1" EVENT="EditMode(Col, Row, Mode, ChangeMade)" LANGUAGE="JavaScript"> this.Col = Col; this.Row = Row; if(this.CellType == 12) { if(!Mode) { this.TypeCurrencyLeadingZero = 2; } } SpreadRowColor(this); //選択行の色を変える(090624小野) this.focus(); </SCRIPT> <SCRIPT FOR="vaSpread1" EVENT="ScriptLeaveCell(ColNo, RowNo, NewColNo, NewRowNo, Cancel)" LANGUAGE="VBScript"> Dim tmp tmp = SpreadChange(Me, ColNo, RowNo) If tmp = "ERR" Then Cancel = true SpreadReFocus(Me) Else Call SetRenewCell(Me, ColNo, RowNo) End If </SCRIPT> <SCRIPT FOR="vaSpread1" EVENT="ComboCloseUp(ColNo, RowNo)" LANGUAGE="JavaScript"> SetRenewCell(this, ColNo, RowNo) this.focus(); </SCRIPT> <SCRIPT LANGUAGE="JavaScript"> function SetRenewCell(obj, ColNo, RowNo) { //alert("SetRenewCell"); var tmp; var tmp2; if (ColNo == 1) { obj.Col = 1; obj.Row = RowNo; tmp = "" + obj.Text; tmp2 = "" + obj.Text; tmp = ConvZairyoHanbaiTanka2(tmp); obj.Col = 2; obj.Row = RowNo; obj.TypeComboBoxRemoveItem(2, RowNo, 0); obj.TypeComboBoxIndex = 0; obj.TypeComboBoxString = tmp; obj.Text = tmp; tmp = ConvZairyoSyohizeiritsu2(tmp2); obj.Col = 6; obj.Row = RowNo; // obj.TypeComboBoxRemoveItem(2, RowNo, 0); // obj.TypeComboBoxIndex = 0; // obj.TypeComboBoxString = tmp; obj.Text = tmp; } //数量×単価 if (ColNo == 3 || ColNo == 4) { tmp = 0; obj.Row = RowNo; obj.Col = 3; if ('' + obj.Text != '') { tmp = ConvMoneyToInt(obj.Text); obj.Col = 4; if ('' + obj.Text != '') { tmp = tmp * ConvMoneyToInt(obj.Text); obj.Col = 5; obj.TypeComboBoxRemoveItem(2, RowNo, 0); obj.TypeComboBoxIndex = 0; obj.TypeComboBoxString = tmp; obj.Text = tmp; } } } SetGokei(); } </SCRIPT> <SCRIPT FOR="window" EVENT="onload" LANGUAGE="JavaScript"> if(typeof(form1.dummy) == "object")form1.dummy.focus(); // SpreadLoad 第 3n + 1 引数 (nは整数) // 0:日付型 1:文字型 8:コンボボックス型 10:チェックボックス型 12:通貨型 13:数値型 21:勘定科目 22:摘要 document.vaSpread1.Redraw = false; document.vaSpread2.Redraw = false; document.vaSpread3.Redraw = false; <% If GB_ShohizeiMode = 1 Then %> SpreadLoad(document.vaSpread1, "材料名称", 8, 24.5, "<% If MHMSTDSELLPRICE <> "" Then Response.Write(MHMSTDSELLPRICE) Else Response.Write("標準単価") End If %>", 12, 11.7, "数量", 12, 11.7, "仕入単価", 12, 11.7, "金額", 99, 11.7, "税率", 8, 6.6); <% Else %> SpreadLoad(document.vaSpread1, "材料名称", 8, 24.5, "<% If MHMSTDSELLPRICE <> "" Then Response.Write(MHMSTDSELLPRICE) Else Response.Write("標準単価") End If %>", 12, 11.7, "数量", 12, 11.7, "仕入単価", 12, 11.7, "金額", 99, 11.7); <% End If %> SpreadLoad(document.vaSpread2, "材料名称", 1, 24.5, "<% If MHMSTDSELLPRICE <> "" Then Response.Write(MHMSTDSELLPRICE) Else Response.Write("標準単価") End If %>", 1, 11.7, "数量", 1, 11.7, "仕入単価", 1, 11.7, "金額", 99, 11.7); SpreadLoad(document.vaSpread3, "摘要", 22, 18); document.vaSpread1.ScriptEnhanced = true; document.vaSpread2.ScriptEnhanced = true; document.vaSpread3.ScriptEnhanced = true; document.vaSpread2.OperationMode = 1; document.vaSpread2.ColHeadersShow = false; document.vaSpread2.Col = -1; document.vaSpread2.Row = -1; document.vaSpread2.FontSize = 11; document.vaSpread2.BackColorStyle = 1; document.vaSpread2.Row = -1; document.vaSpread2.Col = -1; document.vaSpread2.BackColor = 0xE6E6E6; document.vaSpread2.Lock = true; document.vaSpread2.MaxRows = 0; SpreadAddItem(document.vaSpread2); SpreadAddItem(document.vaSpread2); SpreadAddItem(document.vaSpread2); document.vaSpread2.Col = 4; document.vaSpread2.Row = 1; document.vaSpread2.Text = "合計金額" document.vaSpread2.Row = 2; document.vaSpread2.Text = "消費税額" document.vaSpread2.Row = 3; document.vaSpread2.Text = "税込合計" document.vaSpread3.BackColor = 0xffffee; document.vaSpread3.RowHeadersShow = false; document.vaSpread3.ColHeadersShow = false; document.vaSpread3.MaxRows = 1; document.vaSpread3.MaxCols = 1; document.vaSpread3.Row = 0; document.vaSpread3.Col = 0; document.vaSpread3.FontSize = 9; document.vaSpread1.Col = -1; document.vaSpread1.Row = -1; document.vaSpread1.FontSize = 11; document.vaSpread1.Col = 1; <% Dim SyohinCnt SyohinCnt = 0 Query = "exec SPM材料一覧 '" & GB_SystemCD & "', '" & EnshuCD & "', '" & GB_GakuseiNo & "'" Set Content = OpenQuery(Query) Dim ListText ListText = "" ListText = ListText & "\t" Do While Not(Content.BOF Or Content.EOF) If "" & Content.Fields("所有会社CD") = KaisyaCD Then ListText = ListText & Content.Fields("材料名称") If ListText <> "" Then ListText = ListText & "\t" End If SyohinCnt = SyohinCnt + 1 End If Content.MoveNext Loop Response.Write("document.vaSpread1.TypeComboBoxList = """ & ListText & """;") %> document.vaSpread1.Col = 2; document.vaSpread1.BackColorStyle = 1; document.vaSpread1.BackColor = 0xE6E6E6; document.vaSpread1.Lock = true; document.vaSpread1.Col = 5; document.vaSpread1.BackColorStyle = 1; document.vaSpread1.BackColor = 0xE6E6E6; document.vaSpread1.Lock = true; <% If GB_ShohizeiMode = 1 Then %> document.vaSpread1.Col = 6; <% ListText = "" ListText = ListText & "\t" ' ListText = ListText & "99.99" ' ListText = ListText & "\t" For TCnt = 1 To UBound(TaxRateAry) ListText = ListText & TaxRateAry(TCnt) If ListText <> "" Then ListText = ListText & "\t" End If Next Response.Write("document.vaSpread1.TypeComboBoxList = """ & ListText & """;") %> <% End If %> document.vaSpread1.RetainSelBlock = false; document.vaSpread3.RetainSelBlock = false; SpreadInit(document.vaSpread1); SetGokei(); document.vaSpread3.Row = 1; document.vaSpread3.Col = 1; document.vaSpread3.TypeMaxEditLen = 50; document.vaSpread3.Text = "<% = DenpyoTekiyo %>"; document.vaSpread1.Redraw = true; document.vaSpread2.ReDraw = true; document.vaSpread3.ReDraw = true; <% '商品数分だけ行を発生させる(既に入庫されている数+10をリミットとする) For ii = 1 To SyohinCnt - NyukoCnt If ii > 10 Then Exit For End If Response.Write(" SpreadAddItem(document.vaSpread1);" & vbCrLf) Next %> <% If ErrorFlg <> "" Then '伝票番号重複時の処理(090528小野)%> alert("<% = ErrorFlg %>"); form1.DenpyoNo.focus(); form1.DenpyoNo.select(); <% Else %> form1.Torihikibi.focus(); form1.Torihikibi.select(); <% End If %> event.returnValue = false; return; </SCRIPT> <% = HtmlFooter %> </html> <% End Sub %>