<!-- #include file="../../../include.asp" --> <% '<!-- '################################################ ' 名称 :勘定残高設定 ' 作成日:2003/1/20 ' 作成者:山崎 ' 目的 :繰越残高設定画面を表示する。 ' 概要 : ' <<表示>> ' ・初期は"追加モード":伝票番号はNULL ' ・伝票番号が指定してある場合は"修正モード" ' <<入力チェック>> '################################################ '--> ' %> <% main() Sub main() If Not(SessionCheck()) Then Exit Sub End If Dim Cnt Dim tmp, tmp2, tmp3 Dim Dic Dim KurikoshiFlg Dim HyojiFlg HyojiFlg = Request("HyojiFlg") Dim ShijoCD ShijoCD = Request("ShijoCD") Dim DenpyoNo, Torihikibi, DenpyoTekiyo '伝票番号、取引日、伝票摘要 Dim KanjyoCD(10) '勘定科目コード Dim Kanjyomei(10) '勘定科目名称 Dim Kingaku(10) '金額 Dim Tekiyo(10) '摘要 Dim TekiyoCD(10) '取引先CD Dim KarikataGokei, KashikataGokei '借方合計、貸方合計 Dim Query Dim Content Dim Genkin, Toza Dim Amend Dim Shimei Dim GakuseiBango Dim PageType PageType = "勘定残高設定" If PackageMode = 1 Then PageType = "期首残高設定" End If '製造部対応(080411小野) Dim Mode Mode = Request("Mode") Dim GyosyuKubun GyosyuKubun = ConvKaisyaGyosyuKubun(KaisyaCD) If Mode = "Seizo" Then '製造部対応(080411小野) GyosyuKubun = "G" ElseIf GyosyuKubun = "B" Then ' GyosyuKubun = "BS" '銀行で商社科目を利用する場合(保留中) End If Amend = Request("amend") DenpyoNo = Request("DenpyoNo") Genkin = 0 Toza = 0 KashikataGokei = 0 KarikataGokei = 0 Dim TekiyoCDs Query = "exec SPM摘要表示一覧 '" & GB_SystemCD & "','" & EnshuCD & "', '" & KaisyaCD & "'" Set Content = OpenQuery(Query) Do While Not(Content.BOF Or Content.EOF) If TekiyoCDs <> "" Then TekiyoCDs = TekiyoCDs & "," End If TekiyoCDs = TekiyoCDs & Content.Fields("摘要CD") Content.MoveNext Loop '取引先市場配列作成(081111小野) Dim TorihikisakiCDAry ReDim TorihikisakiCDAry(0) Dim TorihikisakiMeishoAry ReDim TorihikisakiMeishoAry(0) Dim TorihikisakiShijoAry ReDim TorihikisakiShijoAry(0) Query = "exec SPM摘要表示一覧 '" & GB_SystemCD & "','" & EnshuCD & "', '" & KaisyaCD & "'" ' Query = "exec SPM会社全部一覧 '" & GB_SystemCD & "','" & EnshuCD & "', '" & GakuseiNo & "'" Set Content = OpenQuery(Query) Do While Not(Content.BOF Or Content.EOF) If Content.Fields("摘要CD") <> KaisyaCD Then ' If Content.Fields("会社CD") <> KaisyaCD Then ReDim PreServe TorihikisakiCDAry(UBound(TorihikisakiCDAry) + 1) ReDim PreServe TorihikisakiMeishoAry(UBound(TorihikisakiMeishoAry) + 1) ReDim PreServe TorihikisakiShijoAry(UBound(TorihikisakiShijoAry) + 1) TorihikisakiCDAry(UBound(TorihikisakiCDAry)) = "" & Content.Fields("摘要CD") TorihikisakiMeishoAry(UBound(TorihikisakiMeishoAry)) = "" & Content.Fields("摘要") TorihikisakiShijoAry(UBound(TorihikisakiShijoAry)) = "" & Content.Fields("市場CD") End If Content.MoveNext Loop Dim PreShijoCD '現金繰越残高の取得 Query = "exec SPK現金入出金取得 '" & GB_SystemCD & "','" & EnshuCD & "', '" & KaisyaCD & "', 0, 0" Set Content = OpenQuery(Query) If Not(Content.BOF Or Content.EOF) Then Genkin = Content.Fields("金額") End If '繰越商品の明細を取得しておく変数(期首仕入伝票作成のため) Dim KurikoshiSyohinMeisai KurikoshiSyohinMeisai = "" '商品(材料)繰越残高の取得 Dim QueryNyusyuko, ContentNyusyuko, KingakuNyusyuko, NyusyukoBango KingakuNyusyuko = 0 If Mode = "Seizo" Then '製造部対応(080411小野) QueryNyusyuko = "exec SPD入出庫一覧 '" & GB_SystemCD & "', '" & EnshuCD & "', '" & KaisyaCD & "', '', 'ZS'" Else QueryNyusyuko = "exec SPD入出庫一覧 '" & GB_SystemCD & "', '" & EnshuCD & "', '" & KaisyaCD & "', '', 'SS'" End If Set ContentNyusyuko = OpenQuery(QueryNyusyuko) Do While Not(ContentNyusyuko.BOF Or ContentNyusyuko.EOF) If ContentNyusyuko.Fields("処理時期区分") = 0 Then NyusyukoBango = ContentNyusyuko.Fields("文書内容CD") End If ContentNyusyuko.MoveNext Loop If Mode = "Seizo" Then '製造部対応(080411小野) QueryNyusyuko = "exec SPD入出庫取得 '" & GB_SystemCD & "', '" & EnshuCD & "', '" & KaisyaCD & "', '', 'ZS', '" & NyusyukoBango & "'" Else QueryNyusyuko = "exec SPD入出庫取得 '" & GB_SystemCD & "', '" & EnshuCD & "', '" & KaisyaCD & "', '', 'SS', '" & NyusyukoBango & "'" End If Set ContentNyusyuko = OpenQuery(QueryNyusyuko) Do While Not(ContentNyusyuko.BOF Or ContentNyusyuko.EOF) KingakuNyusyuko = KingakuNyusyuko + ContentNyusyuko.Fields("数量") * ContentNyusyuko.Fields("単価") '繰越商品の明細を取得しておく(期首仕入伝票作成のため) If KurikoshiSyohinMeisai <> "" Then KurikoshiSyohinMeisai = KurikoshiSyohinMeisai & ";" End If KurikoshiSyohinMeisai = KurikoshiSyohinMeisai & ContentNyusyuko.Fields("商品CD") & ":" & ContentNyusyuko.Fields("数量") & ":" & ContentNyusyuko.Fields("単価") ContentNyusyuko.MoveNext Loop '製品繰越残高の取得 Dim KingakuSeihin KingakuSeihin = 0 QueryNyusyuko = "exec SPD入出庫一覧 '" & GB_SystemCD & "', '" & EnshuCD & "', '" & KaisyaCD & "', '', 'MS'" Set ContentNyusyuko = OpenQuery(QueryNyusyuko) Do While Not(ContentNyusyuko.BOF Or ContentNyusyuko.EOF) If ContentNyusyuko.Fields("処理時期区分") = 0 Then NyusyukoBango = ContentNyusyuko.Fields("文書内容CD") End If ContentNyusyuko.MoveNext Loop QueryNyusyuko = "exec SPD入出庫取得 '" & GB_SystemCD & "', '" & EnshuCD & "', '" & KaisyaCD & "', '', 'MS', '" & NyusyukoBango & "'" Set ContentNyusyuko = OpenQuery(QueryNyusyuko) Do While Not(ContentNyusyuko.BOF Or ContentNyusyuko.EOF) KingakuSeihin = KingakuSeihin + ContentNyusyuko.Fields("数量") * ContentNyusyuko.Fields("単価") ContentNyusyuko.MoveNext Loop '銀行繰越残高の取得 Dim QueryKoza, ContentKoza Dim TozaKinagku,FutsuKingaku, TeikiKingaku, TsumitateKingaku, BetsudanKingaku Dim TozaGinko, FutsuGinko, TeikiGinko, TsumitateGinko, BetsudanGinko TozaKinagku = 0 FutsuKingaku = 0 TeikiKingaku = 0 TsumitateKingaku = 0 BetsudanKingaku = 0 TozaGinko = "" FutsuGinko = "" TeikiGinko = "" TsumitateGinko = "" BetsudanGinko = "" QueryKoza = "exec SPB銀行口座一覧 '" & GB_SystemCD & "','" & EnshuCD & "', '" & KaisyaCD & "', '', ''" Set ContentKoza = OpenQuery(QueryKoza) Do While Not(ContentKoza.BOF Or ContentKoza.EOF) Dim MyGinkoCD, MyKozaKubun MyGinkoCD = "" MyKozaKubun = "" If Not(ContentKoza.BOF Or ContentKoza.EOF) Then MyGinkoCD = ContentKoza.Fields("銀行CD") MyKozaKubun = ContentKoza.Fields("口座区分") End If Query = "exec SPB銀行口座入出金一覧 '" & GB_SystemCD & "','" & EnshuCD & "', '" & KaisyaCD & "', '" & MyGinkoCD & "', '" & MyKozaKubun & "', ''" Set Content = OpenQuery(Query) Do While Not(Content.BOF Or Content.EOF) If Content.Fields("処理時期区分") = 0 Then If MyKozaKubun = "B" Then BetsudanKingaku = BetsudanKingaku + Content.Fields("金額") '同一区分口座が複数存在する場合は先頭の銀行CDが取得される(手抜きだがあまり大幅にいじりたくないので)(110124小野) If BetsudanGinko = "" Then BetsudanGinko = MyGinkoCD End If ElseIf MyKozaKubun = "F" Then FutsuKingaku = FutsuKingaku + Content.Fields("金額") If FutsuGinko = "" Then FutsuGinko = MyGinkoCD End If ElseIf MyKozaKubun = "L" Then TeikiKingaku = TeikiKingaku + Content.Fields("金額") If TeikiGinko = "" Then TeikiGinko = MyGinkoCD End If ElseIf MyKozaKubun = "M" Then TsumitateKingaku = TsumitateKingaku + Content.Fields("金額") If TsumitateGinko = "" Then TsumitateGinko = MyGinkoCD End If ElseIf MyKozaKubun = "T" Then TozaKinagku = TozaKinagku + Content.Fields("金額") If TozaGinko = "" Then TozaGinko = MyGinkoCD End If End If End If Content.MoveNext Loop ContentKoza.MoveNext Loop '定款資本金の取得 Dim Shihonkin Dim KanjoCDShihonkin Dim KanjoCDShihonkinNM KanjoCDShihonkin = "" Dim TmpGyoshu Query = "exec SPM会社取得 '" & GB_SystemCD & "','" & EnshuCD & "','" & KaisyaCD & "'" Set Content = OpenQuery(Query) If Not(Content.BOF Or Content.EOF) Then Shihonkin = "" & Content.Fields("資本金") TmpGyoshu = "" & Content.Fields("業種CD") End If If Shihonkin = "0" Then Shihonkin = "" End If If TmpGyoshu <> "B" Then TmpGyoshu = "S" End If If Shihonkin <> "" Then Query = "exec SPM勘定科目詳細一覧 '" & GB_SystemCD & "','" & EnshuCD & "','" & TmpGyoshu & "','%'" Set Content = OpenQuery(Query) Do While Not(Content.BOF Or Content.EOF) If (TmpGyoshu <> "B" And Content.Fields("特別勘定区分") = "DR") Or Content.Fields("特別勘定区分") = "DV" Then KanjoCDShihonkin = Content.Fields("勘定CD") KanjoCDShihonkinNM = Content.Fields("特別勘定区分名称") End If Content.MoveNext Loop End If '製造部は材料繰越残高以外をリセットする If Mode = "Seizo" Then '製造部対応(080411小野) Genkin = 0 Toza = 0 TozaKinagku = 0 FutsuKingaku = 0 TeikiKingaku = 0 TsumitateKingaku = 0 BetsudanKingaku = 0 Shihonkin = "" End If '勘定科目配列作成 Dim KanjoCnt Dim KanjoCD Dim KanjoSaimoku Dim KanjoMeisho ReDim KanjoCD(0) ReDim KanjoSaimoku(0) ReDim KanjoMeisho(0) Query = "exec SPM勘定科目一覧 '" & GB_SystemCD & "','" & EnshuCD & "', '" & GyosyuKubun & "', '" & KanjyoMeisai & "', '" & GB_KaisyaCD & "'" Set Content = OpenQuery(Query) Do While Not(Content.BOF Or Content.EOF) ReDim PreServe KanjoCD(UBound(KanjoCD) + 1) '配列+1 ReDim PreServe KanjoSaimoku(UBound(KanjoCD)) ReDim PreServe KanjoMeisho(UBound(KanjoCD)) KanjoCD(UBound(KanjoCD)) = "" & Content.Fields("勘定CD") KanjoSaimoku(UBound(KanjoCD)) = "" & Content.Fields("勘定細目") KanjoMeisho(UBound(KanjoCD)) = "" & Content.Fields("勘定名称") Content.MoveNext Loop Dim PreKanjyoMeisai %> <html> <% = HtmlHeader("") %> <SCRIPT LANGUAGE="JavaScript"> <!-- HomeAlias = "<% = HomeAlias %>"; HomeAliasSL = "<% = HomeAliasSL %>"; ExitFlg = 2; --> </SCRIPT> <body onkeydown="if(ExitFlg==2)ExitFlg=3;" onBeforeUnload="if(ExitFlg!=0)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_kanjyozandaka_bin.asp" autocomplete="off"> <input type="hidden" name="DenpyoNo" value="0000000"> <input type="hidden" name="SendValue" value=""> <input type="hidden" name="HyojiFlg" value="<% = HyojiFlg %>"> <input type="hidden" name="ShijoCD" value="<% = ShijoCD %>"> <input type="hidden" name="Mode" value="<% = Mode %>"> <input type="hidden" name="KaisyaCD" value="<% = Request("KaisyaCD") %>"> <input type="hidden" name="KurikoshiSyohinMeisai" value="<% = KurikoshiSyohinMeisai %>"> <input type="hidden" name="KurikoshiSyohinMeisaiSave" value="Save"><!--繰越商品明細を常に保存するよう変更--> <input type="hidden" name="KurikoshiSyohinKingaku" value="<% = KingakuNyusyuko %>"> <% 'Response.Write("◆" & KaisyaCD & "◆" & KaisyaMeisyo & "◆" & KaisyaRyakuMeisyo) Response.Write(HtmlDesign(1)) If GB_Admin >= 1 Then Response.Write(HttpL1(4)) Else Response.Write(HttpL1(2)) End If If GB_Admin >= "1" Then Response.Write(HttpL2("運用管理メニュー" ,"tblbtn( '/" & HomeAlias & "/admin/admenu.asp')", "マスター管理", "tblbtn( '/" & HomeAlias & "/admin/master/fm_master_select.asp')", "会社マスター", "tblbtn( '/" & HomeAlias & "/admin/master/kaisya/fm_kaisya_view.asp?Action=2&KaisyaCD=" & KaisyaCD & "&HyojiFlg=" & HyojiFlg & "&ShijoCD=" & ShijoCD & "' )", PageType, "", "", "", "", "")) ElseIf PackageMode = 1 Then Response.Write(HttpL2("メインメニュー" ,"tblbtn('/" & HomeAlias & "/user/bk/menu_cyac.asp')", PageType, "", "", "", "", "", "", "", "", "")) ElseIf Mode = "Seizo" Then '製造部対応(080411小野) Response.Write(HttpL2("会社選択" ,"tblbtn( '/" & HomeAlias & "/user/bk/')", GB_GyosyuMeisyo, "tblbtn( '/" & HomeAlias & "/user/bk/menu_" & GB_Gyosyu & ".asp')", "製造部", "tblbtn( '/" & HomeAlias & "/user/bk/menu_s6.asp')", PageType , "", "", "", "", "")) ElseIf GB_Gyosyu <> "B" Then Response.Write(HttpL2("会社選択" ,"tblbtn( '/" & HomeAlias & "/user/bk/')", GB_GyosyuMeisyo, "tblbtn( '/" & HomeAlias & "/user/bk/menu_" & GB_Gyosyu & ".asp')", "経理部", "tblbtn( '/" & HomeAlias & "/user/bk/menu_s1.asp')", PageType , "", "", "", "", "")) Else Response.Write(HttpL2("会社選択" ,"tblbtn( '/" & HomeAlias & "/user/bk/')", GB_GyosyuMeisyo , "tblbtn( '/" & HomeAlias & "/user/bk/menu_" & GB_Gyosyu & ".asp')", "経理業務", "tblbtn( '/" & HomeAlias & "/user/bk/menu_" & GB_Gyosyu & "1.asp')", PageType, "", "", "", "", "")) End If Response.Write(HttpL3("", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "")) ' Response.Write(HttpL3_1("保存", "SubmitCheck()", "行の追加", "SpreadAddItem2(document.vaSpread1);", "行の挿入", "SpreadInsertItem(document.vaSpread1);", "行の削除", "SpreadDelItem(document.vaSpread1);SetGokei();", "", "")) If GB_IEmode = "1" Then Response.Write(HttpL3_1("保存", "SubmitCheck()", "行の追加", "SpreadAddItem2(document.vaSpread1);", "行の挿入", "SpreadInsertItem(document.vaSpread1);", "行の削除", "SpreadDelItem(document.vaSpread1);SetGokei();", "", "")) Else '※HttpL3_1にボタンを追加する事前処理(210107小野) Call HttpL3_1_AddBtn( "", "", "", "", "", "", "", "", "", "") 'Response.Write(HttpL3_1("保存", "SubmitCheck()", "行挿入", "SpRowInsertSub();", "行削除", "SpRowDeleteSub();", "行↑", "SpRowShiftSub('Up');", "行↓", "SpRowShiftSub('Dn');")) Response.Write(HttpL3_1("保存", "SubmitCheck()", "行挿入", "SpRowInsertSub();", "行削除", "SpRowDeleteSub();", "", "", "", "")) End If ' Response.Write(HttpL3_2("", "", "", "", "", "", "", "", "", "")) Response.Write(HttpL3_2("照会", "tblbtn('fk_kanjyozandaka_view.asp?KaisyaCD=" & KaisyaCD & "');", "印刷", "tblbtn('fk_kanjyozandaka_view.asp?AutoPrint=1&KaisyaCD=" & KaisyaCD & "')", "", "", "", "", "", "")) Dim KaishaHyoji If GB_Admin > 0 Then KaishaHyoji = ConvKaisyaRyakuMeisyoDx(EnshuCD, KaisyaCD) End If If Mode = "Seizo" Then '製造部対応(080411小野) Response.Write(HttpL4("製造部" & PageType, KaishaHyoji)) Else Response.Write(HttpL4(PageType, KaishaHyoji)) End If %> <div id="L0" style="position: absolute; visibility: hidden; left: 0px; top: -2000px;"> <table width="100%" height="100%" border="0" cellpadding="0" cellspacing="0"> <tr> <td align="center"> <table width="581" height="100%" border="0" cellspacing="5" cellpadding="5" bgcolor="#ffffff" style="border:1px solid #000000"> <tr> <td align="center" background="/<% = HomeAlias %>/images/window_bk.gif?<% = GB_STU %>"> <table height="100%" border="0" cellpadding="0" cellspacing="0"> <% If PackageMode = 0 And (TmpGyoshu <> "B" Or (Shihonkin <> "" And KanjoCDShihonkin <> "")) Then %> <tr> <td height="30"> <TABLE BORDER="0" CELLSPACING="0" CELLPADDING="0" HEIGHT="30" BGCOLOR="#33CCFF" CLASS="tbtn1"> <TR> <% If TmpGyoshu <> "B" Then %> <TD id="TDAL" WIDTH="10" BACKGROUND="/<% = HomeAlias %>/images/dlogbtn_bl.gif?<% = GB_STU %>" onClick="ImportKurikoshi();"> </TD> <TD id="TDAC" ALIGN="CENTER" VALIGN="MIDDLE" BACKGROUND="/<% = HomeAlias %>/images/dlogbtn_bc.gif?<% = GB_STU %>" onClick="ImportKurikoshi();">繰越残高設定からデータを取り込む</TD> <TD id="TDAR" WIDTH="10" BACKGROUND="/<% = HomeAlias %>/images/dlogbtn_br.gif?<% = GB_STU %>" onClick="ImportKurikoshi();"> </TD> <% End If %> <% If Shihonkin <> "" And KanjoCDShihonkin <> "" Then %> <TD id="TDAL" WIDTH="10" BACKGROUND="/<% = HomeAlias %>/images/dlogbtn_bl.gif?<% = GB_STU %>" onClick="ImportTeikan();"> </TD> <TD id="TDAC" ALIGN="CENTER" VALIGN="MIDDLE" BACKGROUND="/<% = HomeAlias %>/images/dlogbtn_bc.gif?<% = GB_STU %>" onClick="ImportTeikan();">定款から資本金データを取り込む</TD> <TD id="TDAR" WIDTH="10" BACKGROUND="/<% = HomeAlias %>/images/dlogbtn_br.gif?<% = GB_STU %>" onClick="ImportTeikan();"> </TD> <% End If %> </TR> </TABLE> </td> </tr> <% End If %> <tr> <td> <table width="666" height="100%" border="0" cellspacing="0" cellpadding="0"> <% If GB_IEmode = "1" Then %> <tr> <td valign="middle"> <object classid="clsid:5220cb21-c88d-11cf-b347-00aa00a28331"> <param name="lpkpath" value="spread6.lpk"> </object> <object width="666" height="100%" 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> </td> </tr> <tr> <td height="20"> <object width="666" height="100%" 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> <% Else %> <% Dim HeightCell Dim WidthCell1 '元丁/勘定CD Dim WidthCell2 '勘定科目 Dim WidthCell3 '摘要 Dim WidthCell4 '明細 Dim WidthCell5 '金額 Dim WidthParent HeightCell = 23 WidthCell1 = 50 WidthCell2 = 152 WidthCell3 = 93 WidthCell4 = 154 WidthCell5 = 92 WidthParent = 700 %> <tr> <td HEIGHT="<% = HeightCell %>" valign="middle"> <TABLE HEIGHT="<% = HeightCell %>" BORDER="1" CELLPADDING="0" CELLSPACING="0" BORDERCOLOR="#000000" BGCOLOR="#FFFFFF" CLASS="tx1416" STYLE="border-collapse: collapse"> <tr HEIGHT="<% = HeightCell %>" BGCOLOR="#DDDDDD"> <td WIDTH="<% = WidthCell1 + WidthCell2 + 1 %>" align="center">勘定科目</td> <td WIDTH="<% = WidthCell3 %>" align="center">摘要</td> <td WIDTH="<% = WidthCell4 %>" align="center">明細</td> <td WIDTH="<% = WidthCell5 %>" align="center">借方金額</td> <td WIDTH="<% = WidthCell5 %>" align="center">貸方金額</td> </tr> </table> </td> </tr> <tr> <td> <DIV ID="Layer1" STYLE="position:relative; left:0px; top:-1px; width:660px; height:100%; z-index:1; border: 1px none #000000; overflow: auto;"> <TABLE BORDER="1" CELLPADDING="0" CELLSPACING="0" BORDERCOLOR="#000000" BGCOLOR="#FFFFFF" CLASS="tx1416" STYLE="border-collapse: collapse"> <% 'スプレッドシート定義 ※全行共通なのでループ外 Dim SpMaxRow Dim SpRowCnt Dim SpMaxCol SpRowCnt = 0 SpMaxRow = SpRowCnt 'フォーム名 SpFormName = "SpCell" ' '行定義 SpRowHeight = "23" '高さ(pixel指定) SpRowCls = "" '行スタイルclass SpRowStyle = "" '行スタイル '列1定義 SpCellType(1) = "2" '形式指定(0:日付・1:文字列・2:英数字・3:通貨) SpCellWidth(1) = WidthCell1 'セル幅(pixel指定) ※フォーム幅は自動計算 SpCellCls(1) = "" 'セルスタイルclass SpCellStyle(1) = "" 'セルスタイル SpInputCls(1) = "Spread4C" 'フォームスタイルclass SpInputStyle(1) = "" 'フォームスタイル SpInputFocus(1) = "" 'onFocusで作動させるスクリプト SpInputBlur(1) = "FormStrLeftEdge(this,4,true,false);FormStrTrim(this,true);KanjoCDChange(this);" 'onBlurで作動させるスクリプト SpInputChange(1) = "" 'onChangeで作動させるスクリプト SpInputRO(1) = "" 'フォームreadonlyフラグ("1") '列2定義 SpCellType(2) = "9" '形式指定(0:日付・1:文字列・2:英数字・3:通貨 9:プルダウン) SpCellWidth(2) = WidthCell2 'セル幅(pixel指定) ※フォーム幅は自動計算 SpCellCls(2) = "" 'セルスタイルclass SpCellStyle(2) = "" 'セルスタイル SpInputCls(2) = "Spread4L" 'フォームスタイルclass SpInputStyle(2) = "" 'フォームスタイル SpInputFocus(2) = "" 'onFocusで作動させるスクリプト SpInputBlur(2) = "" 'onBlurで作動させるスクリプト SpInputChange(2) = "KanjoMeiChange(this);" 'onChangeで作動させるスクリプト SpInputRO(2) = "" 'フォームreadonlyフラグ("1") '列3定義 SpCellType(3) = "9" '形式指定(0:日付・1:文字列・2:英数字・3:通貨 9:プルダウン) SpCellWidth(3) = WidthCell3 'セル幅(pixel指定) ※フォーム幅は自動計算 SpCellCls(3) = "" 'セルスタイルclass SpCellStyle(3) = "" 'セルスタイル SpInputCls(3) = "Spread4L" 'フォームスタイルclass SpInputStyle(3) = "" 'フォームスタイル SpInputFocus(3) = "" 'onFocusで作動させるスクリプト SpInputBlur(3) = "" 'onBlurで作動させるスクリプト SpInputChange(3) = "" 'onChangeで作動させるスクリプト SpInputRO(3) = "" 'フォームreadonlyフラグ("1") '列4定義 SpCellType(4) = "1" '形式指定(0:日付・1:文字列・2:英数字・3:通貨) SpCellWidth(4) = WidthCell4 'セル幅(pixel指定) ※フォーム幅は自動計算 SpCellCls(4) = "" 'セルスタイルclass SpCellStyle(4) = "" 'セルスタイル SpInputCls(4) = "Spread4L" 'フォームスタイルclass SpInputStyle(4) = "" 'フォームスタイル SpInputFocus(4) = "" 'onFocusで作動させるスクリプト SpInputBlur(4) = "FormStrLeftIME(this,100,true);" 'onBlurで作動させるスクリプト SpInputChange(4) = "" 'onChangeで作動させるスクリプト SpInputRO(4) = "" 'フォームreadonlyフラグ("1") '列5定義 SpCellType(5) = "3" '形式指定(0:日付・1:文字列・2:英数字・3:通貨) SpCellWidth(5) = WidthCell5 'セル幅(pixel指定) ※フォーム幅は自動計算 SpCellCls(5) = "" 'セルスタイルclass SpCellStyle(5) = "" 'セルスタイル SpInputCls(5) = "Spread4R" 'フォームスタイルclass SpInputStyle(5) = "" 'フォームスタイル SpInputFocus(5) = "FormStrCommaReplace(this);" 'onFocusで作動させるスクリプト SpInputBlur(5) = "FormStrFloatEdge(this,10,0,true);FormStrFloatCutoff(this,true);SpSetGokei();" 'onBlurで作動させるスクリプト SpInputChange(5) = "" 'onChangeで作動させるスクリプト SpInputRO(5) = "" 'フォームreadonlyフラグ("1") '列6定義 SpCellType(6) = "3" '形式指定(0:日付・1:文字列・2:英数字・3:通貨) SpCellWidth(6) = WidthCell5 'セル幅(pixel指定) ※フォーム幅は自動計算 SpCellCls(6) = "" 'セルスタイルclass SpCellStyle(6) = "" 'セルスタイル SpInputCls(6) = "Spread4R" 'フォームスタイルclass SpInputStyle(6) = "" 'フォームスタイル SpInputFocus(6) = "FormStrCommaReplace(this);" 'onFocusで作動させるスクリプト SpInputBlur(6) = "FormStrFloatEdge(this,10,0,true);FormStrFloatCutoff(this,true);SpSetGokei();" 'onBlurで作動させるスクリプト SpInputChange(6) = "" 'onChangeで作動させるスクリプト SpInputRO(6) = "" 'フォームreadonlyフラグ("1") Query = "exec SPK伝票_振替伝票取得 '" & GB_SystemCD & "','" & EnshuCD & "', '" & KaisyaCD & "', '0000000', '" & GyosyuKubun & "'" Set Content = OpenQuery(Query) ii = 0 Do While Not(Content.BOF Or Content.EOF) ii = ii + 1 Dim KarikataKingaku, KashikataKingaku KarikataKingaku = Content.Fields("借方金額") KashikataKingaku = Content.Fields("貸方金額") If Not(IsNull(KarikataKingaku)) Then KarikataGokei = KarikataGokei + KarikataKingaku End If If Not(IsNull(KashikataKingaku)) Then KashikataGokei = KashikataGokei + KashikataKingaku End If 'スプレッドシート行生成 ※此処で値のみ代入 SpRowCnt = SpRowCnt + 1 '行番号(フォーム名に反映) SpMaxRow = SpRowCnt SpInputValue(1) = "" & Content.Fields("勘定CD") 'フォーム初期値 SpInputOption(2) = "" 'フォーム初期値(selectプルダウンのoptionタグ) SpInputOption(2) = SpInputOption(2) & "<option value=""""></option>"' & vbCrLf For Cnt = 1 To UBound(KanjoCD) SpInputOption(2) = SpInputOption(2) & "<option value=""" & KanjoCD(Cnt) & """" If KanjoCD(Cnt) = "" & Content.Fields("勘定CD") Then SpInputOption(2) = SpInputOption(2) & " selected" End If SpInputOption(2) = SpInputOption(2) & ">" & KanjoMeisho(Cnt) & "</option>"' & vbCrLf Next SpInputOption(3) = "" 'フォーム初期値(selectプルダウンのoptionタグ) SpInputOption(3) = SpInputOption(3) & "<option value=""""></option>"' & vbCrLf For Cnt = 1 To UBound(TorihikisakiMeishoAry) SpInputOption(3) = SpInputOption(3) & "<option value=""" & TorihikisakiMeishoAry(Cnt) & """" If TorihikisakiCDAry(Cnt) = "" & Content.Fields("摘要CD") Then SpInputOption(3) = SpInputOption(3) & " selected" End If SpInputOption(3) = SpInputOption(3) & ">" & TorihikisakiMeishoAry(Cnt) & "</option>"' & vbCrLf Next ' If KouriHanbai > 0 Then ' SpInputOption(3) = SpInputOption(3) & "<option value=""" & ConvTekiyoMeisyo("SJ4KOURIHANBAI") & """" ' If ConvTekiyoMeisyo("SJ4KOURIHANBAI") = DbTekiyoMeisyo Then ' SpInputOption(3) = SpInputOption(3) & " selected" ' End If ' SpInputOption(3) = SpInputOption(3) & ">" & ConvTekiyoMeisyo("SJ4KOURIHANBAI") & "</option>"' & vbCrLf ' End If SpInputValue(4) = "" & Content.Fields("摘要") 'フォーム初期値 SpInputValue(5) = ConvIntToMoney(KarikataKingaku, false ,false) 'フォーム初期値 SpInputValue(6) = ConvIntToMoney(KashikataKingaku, false ,false) 'フォーム初期値 'Response.Write(SpreadRow(SpRowCnt)) '引数の行番号がフォーム名に付加される Call SpreadRow(SpRowCnt) '引数の行番号がフォーム名に付加される If 0=1 Then Response.Write("<tr HEIGHT=""" & HeightCell & """>") Response.Write("<td WIDTH=""" & WidthCell1 & """ align=""center"">" & Content.Fields("勘定CD") & "</td>" & vbCrLf) Response.Write("<td WIDTH=""" & WidthCell2 & """>" & ConvKanjyoMeisyoDx(GB_SystemCD, EnshuCD, Content.Fields("勘定CD")) & "</td>" & vbCrLf) Response.Write("<td WIDTH=""" & WidthCell3 & """><span style=""width:100px; height:14px; overflow:hidden"">" & HardWrap(ConvTekiyoMeisyoDx(EnshuCD, KaisyaCD, Content.Fields("摘要CD"))) & "</span></td>" & vbCrLf) Response.Write("<td WIDTH=""" & WidthCell4 & """>" & Content.Fields("摘要") & "</td>" & vbCrLf) Response.Write("<td WIDTH=""" & WidthCell5 & """ align=""right"">" & ConvIntToMoney(KarikataKingaku, false ,false) & "</td>" & vbCrLf) Response.Write("<td WIDTH=""" & WidthCell5 & """ align=""right"">" & ConvIntToMoney(KashikataKingaku, false ,false) & "</td>" & vbCrLf) Response.Write("</tr>" & vbCrLf) End If Content.MoveNext Loop 'スプレッドシートの空白行を発生させる SpInputValue(1) = "" 'フォーム初期値 SpInputOption(2) = "" 'フォーム初期値(selectプルダウンのoptionタグ) SpInputOption(2) = SpInputOption(2) & "<option value=""""></option>"' & vbCrLf For Cnt = 1 To UBound(KanjoCD) SpInputOption(2) = SpInputOption(2) & "<option value=""" & KanjoCD(Cnt) & """>" & KanjoMeisho(Cnt) & "</option>"' & vbCrLf Next SpInputOption(3) = "" 'フォーム初期値(selectプルダウンのoptionタグ) SpInputOption(3) = SpInputOption(3) & "<option value=""""></option>"' & vbCrLf For Cnt = 1 To UBound(TorihikisakiMeishoAry) SpInputOption(3) = SpInputOption(3) & "<option value=""" & TorihikisakiMeishoAry(Cnt) & """>" & TorihikisakiMeishoAry(Cnt) & "</option>"' & vbCrLf Next SpInputValue(4) = "" 'フォーム初期値 SpInputValue(5) = "" 'フォーム初期値 SpInputValue(6) = "" 'フォーム初期値 For Cnt = SpRowCnt + 1 To SpRowCnt + SpBlankRow 'Response.Write(SpreadRow(SpRowCnt)) '引数の行番号がフォーム名に付加される Call SpreadRow(Cnt) '引数の行番号がフォーム名に付加される SpMaxRow = Cnt Next %> </table> </div> </td> </tr> <tr> <td HEIGHT="<% = HeightCell %>" valign="middle"> <TABLE HEIGHT="<% = HeightCell %>" BORDER="1" CELLPADDING="0" CELLSPACING="0" BORDERCOLOR="#000000" BGCOLOR="#FFFFFF" CLASS="tx1416" STYLE="border-collapse: collapse"> <tr HEIGHT="<% = HeightCell %>"> <td WIDTH="<% = WidthCell1 + WidthCell2 + WidthCell3 + WidthCell4 + 3 - 3 %>" align="right" style="padding-right:3px;">合計</td> <td id="KarikataGokei" WIDTH="<% = WidthCell5 - 3 %>" align="right" style="padding-right:3px;"><% = ConvIntToMoney(KarikataGokei, false ,false) %></td> <td id="KashikataGokei" WIDTH="<% = WidthCell5 - 3 %>" align="right" style="padding-right:3px;"><% = ConvIntToMoney(KashikataGokei, false ,false) %></td> </tr> </table> </td> </tr> <TR> <TD colspan="10" height="1" align="center" class="tx1214"> ※入力行が足りない場合は一度「保存」してください </td> </TR> <% End If %> </table> </td> </tr> </table> </td> </tr> </table> </td> <td width="265" valign="top"> <table border="0" width="245" height="100%" border="0" cellpadding="0" cellspacing="0"> <tr> <td height="10" align="center"><img src="/<% = HomeAlias %>/images/spacer.gif?<% = GB_STU %>" width="100" height="10"></td> </tr> <tr> <td height="10" align="center"><img src="/<% = HomeAlias %>/images/palspc_gu.gif?<% = GB_STU %>" width="245" height="10"></td> </tr> <% If PackageMode = 1 Then %> <% Else %> <tr> <td height="10" align="center" class="tx1416" background="/<% = HomeAlias %>/images/palspc_gc.gif?<% = GB_STU %>"> 取引先市場 <select size="1" name="TShijoCD" class="tbox4" onChange="SetTorihikisakiShijoList(this.value);" onMouseOver="if(SubmitFlg!=0){this.focus();}"> <option value="">全て表示</option> <% Query = "exec SPM市場一覧 '" & GB_SystemCD & "','" & EnshuCD & "'" Set Content = OpenQuery(Query) Do While Not(Content.BOF Or Content.EOF) Response.Write("<option value=""" & Content.Fields("市場CD") & """>" & Content.Fields("市場名称") & "</option>" & vbCrLf) Content.MoveNext Loop %> </select> </td> </tr> <tr> <td height="5" align="center"><img src="/<% = HomeAlias %>/images/palspc_gc.gif?<% = GB_STU %>" width="245" height="5"></td> </tr> <% End If %> <tr> <td width="245" height="145" align="center" valign="top" background="/<% = HomeAlias %>/images/palspc_gc.gif?<% = GB_STU %>"> <table width="225" height="135" border="0" cellpadding="0" cellspacing="0"> <tr> <td align="center" valign="middle" onMouseOver="this.focus();"> <table width="225" height="135" border="0" cellpadding="0" cellspacing="0"> <tr align="center"> <td id="TDA" width="75" height="45" class="tbtn3w" onclick="SetKanjyoKamokuList('A');" background="/<% = HomeAlias %>/images/palbtn_01.gif?<% = GB_STU %>">資産</td> <td id="TDD" width="75" height="45" class="tbtn3w" onclick="SetKanjyoKamokuList('D');" background="/<% = HomeAlias %>/images/palbtn_01.gif?<% = GB_STU %>">収益</td> <td id="TDG" width="75" height="45" class="tbtn3w" onclick="SetKanjyoKamokuList('G');" background="/<% = HomeAlias %>/images/palbtn_01.gif?<% = GB_STU %>">特別損益</td> </tr> <tr align="center"> <td id="TDB" width="75" height="45" class="tbtn3w" onclick="SetKanjyoKamokuList('B');" background="/<% = HomeAlias %>/images/palbtn_01.gif?<% = GB_STU %>">負債</td> <td id="TDE" width="75" height="45" class="tbtn3w" onclick="SetKanjyoKamokuList('E');" background="/<% = HomeAlias %>/images/palbtn_01.gif?<% = GB_STU %>">費用</td> <td id="TDH" width="75" height="45" class="tbtn3w" onclick="SetKanjyoKamokuList('H');" background="/<% = HomeAlias %>/images/palbtn_01.gif?<% = GB_STU %>">その他</td> </tr> <tr align="center"> <td id="TDC" width="75" height="45" class="tbtn3w" onclick="SetKanjyoKamokuList('C');" background="/<% = HomeAlias %>/images/palbtn_01.gif?<% = GB_STU %>"><% If MHMKANJOSAIMOKC <> "" Then Response.Write(MHMKANJOSAIMOKC) Else Response.Write("資本") End If %></td> <td id="TDF" width="75" height="45" class="tbtn3w" onclick="SetKanjyoKamokuList('F');" background="/<% = HomeAlias %>/images/palbtn_01.gif?<% = GB_STU %>">営業外</td> <td id="TD" width="75" height="45" class="tbtn3w" onclick="SetKanjyoKamokuList('');" background="/<% = HomeAlias %>/images/palbtn_02.gif?<% = GB_STU %>">全勘定</td> </tr> </table> </td> </tr> </table> </td> </tr> <tr> <td id="TDKanjoListBox" align="center" background="/<% = HomeAlias %>/images/palspc_gc.gif?<% = GB_STU %>" valign="top"> <!-- 複数行リストボックスは高さをピクセル指定するとIE11で激重になるのでsize属性の行数指定のみにする。tboxクラスは高さ指定しているのでダメ IE11ではダブルクリックが効かないケースがあるため自前判定を追加(念のため両方作動) --> <select id="KanjoListBox" size="<% If GB_IEmode = "1" Then %>23<% Else %>2<% End If %>" name="kanjyokamoku" style="font-family: 'MS Pゴシック'; width:216px; font-size:14px; border:solid 2px; border-color:#444444 #cccccc #dddddd #666666; background-color: #EEFFFF;" onClick="OnDblClickInstant();" onDblClick="SetKanjyoKamoku2();"> <% Dim i Dim KanjyoMeisai KanjyoMeisai = Request("kanjyomeisai") For KanjoCnt = 1 To UBound(KanjoCD) Response.Write("<option value=""" & KanjoCD(KanjoCnt) & """>" & KanjoCD(KanjoCnt) & " " & KanjoMeisho(KanjoCnt) & "</option>" & vbCrLf) Next %> </select> </td> </tr> <tr> <td height="10" align="center" bgcolor="#99E6CC"><img src="/<% = HomeAlias %>/images/palspc_gd.gif?<% = GB_STU %>" width="245" height="10"></td> </tr> <tr> <td height="10" align="center"><img src="/<% = HomeAlias %>/images/spacer.gif?<% = GB_STU %>" width="100" height="10"></td> </tr> </table> </td> </tr> </table> </div> </form> </body> <% = HtmlFooter %> <% Dim KanjyoCDCol KanjyoCDCol = 1 %> <SCRIPT LANGUAGE="JavaScript"> //↓ブラウザ不問の共通関数 //負荷軽減のためクライアントサイド処理に移設(070703小野) function ConvRevTekiyoMeisyo(tekiyomeisyo) { <% Query = "exec SPM摘要表示一覧 '" & GB_SystemCD & "', '" & EnshuCD & "', '" & KaisyaCD & "'" Set Content = OpenQuery(Query) Do While Not(Content.BOF Or Content.EOF) Response.Write(" if(tekiyomeisyo == """ & Content.Fields("摘要") & """)return """ & Content.Fields("摘要CD") & """;" & vbCrLf) Content.MoveNext Loop %> return ""; } //↑ブラウザ不問の共通関数 </SCRIPT> <% If GB_IEmode <> "1" Then %> <SCRIPT LANGUAGE="JavaScript"> SpMinRow = 1; SpMaxRow = <% = SpMaxRow %>; <% '最大セル番号を取得 SpMaxCol = 0 For Cnt = 1 To UBound(SpCellType) If "" & SpCellType(Cnt) <> "" Then SpMaxCol = Cnt End If Next %> SpMaxCol = <% = SpMaxCol %>; function SpSetGokei() { KarikataGokei = 0; KashikataGokei = 0; for (ii = SpMinRow; ii <= SpMaxRow; ii++) { if (document.getElementsByName("<% = SpFormName %>" + ii + "_5")[0].value != "") { KarikataGokei = KarikataGokei + eval(ConvMoneyToInt(document.getElementsByName("<% = SpFormName %>" + ii + "_5")[0].value)); } if (document.getElementsByName("<% = SpFormName %>" + ii + "_6")[0].value != "") { KashikataGokei = KashikataGokei + eval(ConvMoneyToInt(document.getElementsByName("<% = SpFormName %>" + ii + "_6")[0].value)); } } document.getElementById("KarikataGokei").innerHTML = NumComma(KarikataGokei, false); //NumCommaはマイナスを許容&文字列引数で動作する document.getElementById("KashikataGokei").innerHTML = NumComma(KashikataGokei, false); //NumCommaはマイナスを許容&文字列引数で動作する // alert(KarikataGokei); } var KanjyoMeisaiSelected; KanjyoMeisaiSelected = ""; function SpRowInsertSub() { //プルダウンの内容をスライドするため一旦相手勘定・取引先市場の絞込みを解除する //現在の絞込み状態を保持 TmpKanjoSaimoku = KanjyoMeisaiSelected; <% If PackageMode <> 1 Then %> TmpTorihikisakiShijo = form1.TShijoCD.value; <% End If %> //絞込みを解除(全科目は除く) if (TmpKanjoSaimoku != "") { SetKanjyoKamokuList(""); } <% If PackageMode <> 1 Then %> //絞込みを解除(全て表示は除く) if (TmpTorihikisakiShijo != "") { SetTorihikisakiShijoList(""); } <% End If %> //行挿入 SpRowInsert(); //絞込みを復元(全科目は除く) if (TmpKanjoSaimoku != "") { SetKanjyoKamokuList(TmpKanjoSaimoku); } <% If PackageMode <> 1 Then %> //絞込みを復元(全て表示は除く) if (TmpTorihikisakiShijo != "") { SetTorihikisakiShijoList(TmpTorihikisakiShijo); } <% End If %> } function SpRowDeleteSub() { //プルダウンの内容をスライドするため一旦相手勘定・取引先市場の絞込みを解除する //現在の絞込み状態を保持 TmpKanjoSaimoku = KanjyoMeisaiSelected; <% If PackageMode <> 1 Then %> TmpTorihikisakiShijo = form1.TShijoCD.value; <% End If %> //絞込みを解除(全科目は除く) if (TmpKanjoSaimoku != "") { SetKanjyoKamokuList(""); } <% If PackageMode <> 1 Then %> //絞込みを解除(全て表示は除く) if (TmpTorihikisakiShijo != "") { SetTorihikisakiShijoList(""); } <% End If %> //行削除 SpRowDelete(); //絞込みを復元(全科目は除く) if (TmpKanjoSaimoku != "") { SetKanjyoKamokuList(TmpKanjoSaimoku); } <% If PackageMode <> 1 Then %> //絞込みを復元(全て表示は除く) if (TmpTorihikisakiShijo != "") { SetTorihikisakiShijoList(TmpTorihikisakiShijo); } <% End If %> SpSetGokei(); } function SpRowShiftSub(UpDown) { //プルダウンの内容をスライドするため一旦相手勘定・取引先市場の絞込みを解除する //現在の絞込み状態を保持 TmpKanjoSaimoku = KanjyoMeisaiSelected; <% If PackageMode <> 1 Then %> TmpTorihikisakiShijo = form1.TShijoCD.value; <% End If %> //絞込みを解除(全科目は除く) if (TmpKanjoSaimoku != "") { SetKanjyoKamokuList(""); } <% If PackageMode <> 1 Then %> //絞込みを解除(全て表示は除く) if (TmpTorihikisakiShijo != "") { SetTorihikisakiShijoList(""); } <% End If %> //行入れ替え SpRowShift(UpDown); //絞込みを復元(全科目は除く) if (TmpKanjoSaimoku != "") { SetKanjyoKamokuList(TmpKanjoSaimoku); } <% If PackageMode <> 1 Then %> //絞込みを復元(全て表示は除く) if (TmpTorihikisakiShijo != "") { SetTorihikisakiShijoList(TmpTorihikisakiShijo); } <% End If %> } function KanjoCDChange(Form) { TmpValue = Form.value; TmpForm = Form.name.split("_"); Target = TmpForm[0] + "_" + (eval(TmpForm[1]) + 1); //alert(Target); elm = document.getElementsByName(Target)[0]; if (TmpValue != "") { if (ConvKanjyoMeisyoDx(TmpValue) == "") { alert("入力された勘定科目コードは存在しません"); Form.value = ""; TmpValue = ""; return; } } //プルダウンの先頭項目にセット(TmpValueがnullならクリアされる) SetKamokuList(elm, TmpValue); } function KanjoMeiChange(Form) { //alert(Form.value); TmpForm = Form.name.split("_"); Target = TmpForm[0] + "_" + (eval(TmpForm[1]) - 1); //alert(Target); elm = document.getElementsByName(Target)[0]; elm.value = Form.value; } //勘定科目一覧ダブルクリックで勘定科目フォームに代入する関数 function SetKanjyoKamoku2() { if (SpSelRow > 0) { //javascript.jsで宣言されているスプレッド選択行変数 if (form1.kanjyokamoku.selectedIndex >= 0) { Target = "<% = SpFormName %>" + SpSelRow + "_1"; elm = document.getElementsByName(Target)[0]; elm.value = form1.kanjyokamoku.options[form1.kanjyokamoku.selectedIndex].value; KanjoCDChange(elm) } } } //勘定CDから勘定名称に変換 function ConvKanjyoMeisyoDx(KanjyoCD) { <% For Cnt = 1 To UBound(KanjoCD) Response.Write(" if (KanjyoCD == """ & KanjoCD(Cnt) & """)return """ & KanjoMeisho(Cnt) & """;" & vbCrLf) Next %> return ""; } //勘定名称から勘定CDを逆引き function ConvRevKanjyoMeisyo(KanjyoMeisyo) { <% For Cnt = 1 To UBound(KanjoCD) Response.Write(" if (KanjyoMeisyo == """ & KanjoMeisho(Cnt) & """)return """ & KanjoCD(Cnt) & """;" & vbCrLf) Next %> return ""; } function SetKamokuList(elm, TmpValue) { //alert(TmpValue); //プルダウン項目を全クリア do { elm.options[0] = null; } while (elm.length != 0) Idx = 0; if (TmpValue != "") { //先頭項目に追加 elm.options[Idx] = new Option(ConvKanjyoMeisyoDx(TmpValue), TmpValue); Idx = Idx + 1; } elm.options[Idx] = new Option("", ""); //空白項目 Idx = Idx + 1; //2行目以降は現在選択されている勘定細目(KanjyoMeisaiSelected)に従う <% PreKanjyoMeisai = "" Response.Write("if (1 == 0) {" & vbCrLf) '最初のネストを開く(ループ内で常に閉じてから開くためのダミー) For Cnt = 1 To UBound(KanjoCD) If PreKanjyoMeisai <> KanjoSaimoku(Cnt) Then '勘定科目が変わったらネストを閉じて開く Response.Write("}" & vbCrLf) Response.Write("if (KanjyoMeisaiSelected == """" || KanjyoMeisaiSelected == """ & KanjoSaimoku(Cnt) & """) {" & vbCrLf) PreKanjyoMeisai = KanjoSaimoku(Cnt) End If Response.Write("elm.options[Idx] = new Option(""" & KanjoMeisho(Cnt) & """, """ & KanjoCD(Cnt) & """);") Response.Write("Idx = Idx + 1;" & vbCrLf) Next Response.Write("}" & vbCrLf) '最後のネストを閉じる %> // elm.selectedIndex = 0; //常に先頭行を選択する elm.value = TmpValue; //該当項目を選択 } //勘定細目ボタン function SetKanjyoKamokuList(kanjyomeisai, Taishaku) { //alert(Taishaku); KanjyoMeisaiSelected = kanjyomeisai; //選択状態をグローバル変数に代入 var Meisais; var ii; Meisais = Array("A", "B", "C", "D", "E", "F", "G", "H", ""); for (ii = 0; ii < Meisais.length; ii++) { // document.all.item("TD" + Meisais[ii]).background = "/<% = HomeAlias %>/images/palbtn_01.gif?<% = GB_STU %>"; document.getElementById("TD" + Meisais[ii]).style.backgroundImage = "url('/<% = HomeAlias %>/images/palbtn_01.gif?<% = GB_STU %>')"; } // document.all.item("TD" + kanjyomeisai).background = "/<% = HomeAlias %>/images/palbtn_02.gif?<% = GB_STU %>"; document.getElementById("TD" + KanjyoMeisaiSelected).style.backgroundImage = "url('/<% = HomeAlias %>/images/palbtn_02.gif?<% = GB_STU %>')"; //スプレッドプルダウンの処理 for (ii = SpMinRow; ii <= SpMaxRow; ii++) { Target = "<% = SpFormName %>" + ii + "_2"; elm = document.getElementsByName(Target)[0]; //現在選択されている科目を保持する TmpValue = elm.options[elm.selectedIndex].value; SetKamokuList(elm, TmpValue); } //リストボックスの処理 var Idx; Idx = 0; //alert(form1.kanjyokamoku.length); do { form1.kanjyokamoku.options[0] = null; } while (form1.kanjyokamoku.length != 0) <% PreKanjyoMeisai = "" Response.Write(" if (1 == 0) {" & vbCrLf) For KanjoCnt = 1 To UBound(KanjoCD) If PreKanjyoMeisai <> KanjoSaimoku(KanjoCnt) Then Response.Write(" }" & vbCrLf) Response.Write(" if (kanjyomeisai == """" || kanjyomeisai == """ & KanjoSaimoku(KanjoCnt) & """) {" & vbCrLf) PreKanjyoMeisai = KanjoSaimoku(KanjoCnt) End If Response.Write(" form1.kanjyokamoku.options[Idx] = new Option(""" & KanjoCD(KanjoCnt) & " " & KanjoMeisho(KanjoCnt) & """, """ & KanjoCD(KanjoCnt) & """);" & vbCrLf) Response.Write(" Idx = Idx + 1;" & vbCrLf) Next Response.Write(" }" & vbCrLf) %> form1.kanjyokamoku.scrollTo(0, 0); } function SetTorihikisakiShijoList(ShijoCD) { for (ii = SpMinRow; ii <= SpMaxRow; ii++) { Target = "<% = SpFormName %>" + ii + "_3"; elm = document.getElementsByName(Target)[0]; //現在選択されている摘要を保持する TmpValue = elm.options[elm.selectedIndex].value; //プルダウン項目を全クリア do { elm.options[0] = null; } while (elm.length != 0) Idx = 0; if (TmpValue != "") { //先頭項目に追加 elm.options[Idx] = new Option(TmpValue, TmpValue); Idx = Idx + 1; } elm.options[Idx] = new Option("", ""); //空白項目 Idx = Idx + 1; <% PreShijoCD = "" Response.Write("if (1 == 0) {" & vbCrLf) '最初のネストを開く(ループ内で常に閉じてから開くためのダミー) For Cnt = 1 To UBound(TorihikisakiMeishoAry) If PreShijoCD <> TorihikisakiShijoAry(Cnt) Then '勘定科目が変わったらネストを閉じて開く Response.Write("}" & vbCrLf) Response.Write("if (ShijoCD == """" || ShijoCD == """ & TorihikisakiShijoAry(Cnt) & """) {" & vbCrLf) PreShijoCD = TorihikisakiShijoAry(Cnt) End If Response.Write("elm.options[Idx] = new Option(""" & TorihikisakiMeishoAry(Cnt) & """, """ & TorihikisakiMeishoAry(Cnt) & """);") Response.Write("Idx = Idx + 1;" & vbCrLf) Next Response.Write("}" & vbCrLf) '最後のネストを閉じる ' If KouriHanbai > 0 Then ' Response.Write("elm.options[Idx] = new Option(""" & ConvTekiyoMeisyo("SJ4KOURIHANBAI") & """, """ & ConvTekiyoMeisyo("SJ4KOURIHANBAI") & """);") ' Response.Write("Idx = Idx + 1;" & vbCrLf) ' End If %> // elm.selectedIndex = 0; //常に先頭行を選択する elm.value = TmpValue; //該当項目を選択 } } <% If Shihonkin <> "" And KanjoCDShihonkin <> "" Then %> //定款の資本金をインポートする function ImportTeikan() { if (confirm("定款の資本金を残高に追加します。\r(「<% = KanjoCDShihonkinNM %>」科目が入力されている場合は金額が更新されます) \r\r<% = KanjoCDShihonkinNM %>:<% = ConvIntToMoney(Shihonkin, false, false) %>\r")) { var Target = ""; for (ii = SpMinRow; ii <= SpMaxRow; ii++) { Target = "<% = SpFormName %>" + ii + "_1"; elm = document.getElementsByName(Target)[0]; // TmpValue = elm.value; if (elm.value == "<% = KanjoCDShihonkin %>") { Target = "<% = SpFormName %>" + ii + "_6"; elm = document.getElementsByName(Target)[0]; elm.value = NumComma("<% = Shihonkin %>", false); //NumCommaはマイナスを許容&文字列引数で動作する SpSetGokei(); return; //抜ける } } //資本金の行が存在しなければ追加 for (ii = SpMinRow; ii <= SpMaxRow; ii++) { TmpValue = ""; Target = "<% = SpFormName %>" + ii + "_"; for (jj = 1; jj <= SpMaxCol; jj++) { TmpValue = TmpValue + form1[Target + jj].value; } if (TmpValue == "") { break; //空行を特定 } } form1[Target + "1"].value = "<% = KanjoCDShihonkin %>"; KanjoCDChange(form1[Target + "1"]); // form1[Target + ""].value = form1[Target + "6"].value = NumComma("<% = Shihonkin %>", false); //NumCommaはマイナスを許容&文字列引数で動作する SpSetGokei(); } } <% End If %> function ImportKurikoshi() { //金額は合計なので摘要CDは特定出来ない var tmp; var tmp_; tmp = "以下の勘定科目:金額の残高設定を追加します。 \r(既に入力されている科目は金額が更新されます) \r\r" tmp_ = "\rよろしいですか?\n" <% tmp2 = "if(1 == 0){alert('dd')}" & vbCrLf tmp3 = "" Set Dic = CreateObject("Scripting.Dictionary") Dic.Add "DA", Genkin '現金 Dic.Add "DB", FutsuKingaku '普通預金 Dic.Add "DC", TozaKinagku '当座預金 Dic.Add "DD", TeikiKingaku '定期預金 Dic.Add "DE", TsumitateKingaku '積立預金 Dic.Add "DF", BetsudanKingaku '別段預金 If Mode = "Seizo" Then '製造部対応(080411小野) Dic.Add "GJ", KingakuNyusyuko '繰越材料 Dic.Add "GK", KingakuSeihin '繰越製品 Else Dic.Add "DJ", KingakuNyusyuko '繰越商品 End If KurikoshiFlg = 0 'tmp2 = 繰越残高設定で発生する科目があれば削除する構文を格納 'tmp3 = 繰越残高設定から追加する構文を格納 If Mode = "Seizo" Then '製造部対応(080411小野) Query = "exec SPM勘定科目詳細一覧 '" & GB_SystemCD & "','" & EnshuCD & "','G','%'" Else Query = "exec SPM勘定科目詳細一覧 '" & GB_SystemCD & "','" & EnshuCD & "','S','%'" End If Set Content = OpenQuery(Query) Do While Not(Content.BOF Or Content.EOF) If Content.Fields("特別勘定区分") <> "" Then If Dic.Item("" & Content.Fields("特別勘定区分")) <> 0 Then KurikoshiFlg = 1 tmp = tmp & Content.Fields("特別勘定区分名称") & ":" & ConvIntToMoney(Dic.Item("" & Content.Fields("特別勘定区分")), false, false) & "\r" tmp2 = tmp2 & "else if (Text1 == '" & Content.Fields("勘定CD") & "') {SpSelRow = jj; SpRowDeleteSub();}" & vbCrLf ' tmp3 = tmp3 & "SpreadAddItem(document.vaSpread1);" & vbCrLf & "document.vaSpread1.Row = jj;" & vbCrLf & "document.vaSpread1.Col = 1;" & vbCrLf & "document.vaSpread1.Text = '" & Content.Fields("勘定CD") & "';" & vbCrLf & "document.vaSpread1.Col = 4;" & vbCrLf & "document.vaSpread1.Text = '" & Dic.Item("" & Content.Fields("特別勘定区分")) & "';" & vbCrLf & "SetKanjyoMeisyo(document.vaSpread1, jj);jj++" & vbCrLf '先頭行から順次追加するよう修正 tmp3 = tmp3 & "SpSelRow = 1;" & vbCrLf tmp3 = tmp3 & "SpRowInsertSub();" & vbCrLf tmp3 = tmp3 & "form1." & SpFormName & "1_1.value = '" & Content.Fields("勘定CD") & "';" & vbCrLf tmp3 = tmp3 & "KanjoCDChange(form1." & SpFormName & "1_1);" & vbCrLf tmp3 = tmp3 & "form1." & SpFormName & "1_5.value = NumComma('" & Dic.Item("" & Content.Fields("特別勘定区分")) & "', false); //NumCommaはマイナスを許容&文字列引数で動作する" & vbCrLf '取引銀行選択処理 If "" & Content.Fields("特別勘定区分") = "DB" And FutsuGinko <> "" Then tmp3 = tmp3 & "form1." & SpFormName & "1_3.value = '" & ConvKaisyaRyakuMeisyoDX(EnshuCD, FutsuGinko) & "';" & vbCrLf End If If "" & Content.Fields("特別勘定区分") = "DC" And TozaGinko <> "" Then tmp3 = tmp3 & "form1." & SpFormName & "1_3.value = '" & ConvKaisyaRyakuMeisyoDX(EnshuCD, TozaGinko) & "';" & vbCrLf End If If "" & Content.Fields("特別勘定区分") = "DD" And TeikiGinko <> "" Then tmp3 = tmp3 & "form1." & SpFormName & "1_3.value = '" & ConvKaisyaRyakuMeisyoDX(EnshuCD, TeikiGinko) & "';" & vbCrLf End If If "" & Content.Fields("特別勘定区分") = "DE" And TsumitateGinko <> "" Then tmp3 = tmp3 & "form1." & SpFormName & "1_3.value = '" & ConvKaisyaRyakuMeisyoDX(EnshuCD, TsumitateGinko) & "';" & vbCrLf End If If "" & Content.Fields("特別勘定区分") = "DF" And BetsudanGinko <> "" Then tmp3 = tmp3 & "form1." & SpFormName & "1_3.value = '" & ConvKaisyaRyakuMeisyoDX(EnshuCD, BetsudanGinko) & "';" & vbCrLf End If End If End If Content.MoveNext Loop tmp = tmp %> <% If KurikoshiFlg > 0 Then %> if (confirm(tmp + "<% = tmp %>")) { <% If PackageMode <> 1 Then %> //銀行選択時に市場絞込みが解除されている必要がある //現在の絞込み状態を保持 var TmpTorihikisakiShijo = form1.TShijoCD.value; //SpRowInsertSubで絞込み状態に戻されないようプルダウン自体を変更する必要がある form1.TShijoCD.selectedIndex = 0; SetTorihikisakiShijoList(form1.TShijoCD.value); <% End If %> //既存行の削除処理 for (jj = SpMinRow; jj <= SpMaxRow;) { Target = "<% = SpFormName %>" + jj + "_1"; Text1 = form1[Target].value; <% = tmp2 %>else jj++; } //追加処理 <% = tmp3 %> <% If PackageMode <> 1 Then %> //市場絞込みプルダウンを復元 form1.TShijoCD.value = TmpTorihikisakiShijo; SetTorihikisakiShijoList(form1.TShijoCD.value); <% End If %> } SpSetGokei(); form1.KurikoshiSyohinMeisaiSave.value = "Save"; //繰越商品の明細を期首仕入伝票に保存するフラグ <% Else %> alert('取り込むデータはありません'); <% End If %> } function SubmitCheck() { form1.SendValue.value = "" for (jj = SpMinRow; jj <= SpMaxRow; jj++) { Target = "SpCell" + jj + "_" //セル番号を除くフォーム名 var RowText; var bCheck; bCheck = new Array(); RowText = ""; for (ii = 1; ii <= SpMaxCol; ii++) { var Text1; Text1 = form1[Target + ii].value; if (ii == 3) { Text1 = ConvRevTekiyoMeisyo(Text1); //摘要CDに変換 } //通貨のカンマ区切りを外す if (ii == 5 || ii == 6) { Text1 = ReplaceStr(Text1, ",", "") if (Text1 == "0") { Text1 = "" } } //文字型フィールドの半角カンマ・セミコロンを代替文字に変換する処理(070201小野) Text1 = ReplaceStr(Text1, ",", "CommammoC") Text1 = ReplaceStr(Text1, ";", "SemicolonolocimeS") RowText = RowText + Text1; RowText = RowText + ","; bCheck[ii] = 0; if (Text1 == "") { bCheck[ii] = 1; } } if (ReplaceStr(RowText, ",", "") != "") { if (bCheck[2] == 1) { alert("勘定科目を選択してください"); form1[Target + 2].focus(); return; } if (bCheck[5] == 1 && bCheck[6] == 1) { alert("借方金額または貸方金額を入力してください"); form1[Target + 5].focus(); return; } if (bCheck[5] == 0 && bCheck[6] == 0) { alert("借方金額または貸方金額のどちらかのみを入力してください"); form1[Target + 5].focus(); return; } form1.SendValue.value = form1.SendValue.value + RowText + ";" } } //alert(form1.SendValue.value); //↓ランダムにウェイトを挟み保存処理(2006/09/22小野) if (new Boolean(GetObj("BaseL5")) == true) { GetObj("BaseL5").innerHTML = "更新中です。しばらくお待ちください。" } document.body.style.cursor="wait"; var RandomLength = 1000;//ウェイト幅(0~指定数値ミリ秒) var RandomWaitTime = Math.floor( Math.random() * RandomLength );//RandomLengthに1未満の乱数を掛け合わせ小数点以下切り捨て setTimeout( "SubmitReal(form1)", RandomWaitTime ); // SubmitReal(form1); return true; } window.onload = function() { if (document.getElementById("TDKanjoListBox").offsetHeight) { //alert(document.getElementById("TDKanjoListBox").offsetHeight); document.getElementById("KanjoListBox").style.height = (document.getElementById("TDKanjoListBox").offsetHeight - 5) + "px"; //alert(document.getElementById("TDKanjoListBox").style.height); } form1.SpCell<% = (SpRowCnt + 1) %>_1.focus(); } </SCRIPT> <% Else 'IEモード %> <script language="JavaScript"> <% If Shihonkin <> "" And KanjoCDShihonkin <> "" Then %> //定款の資本金をインポートする function ImportTeikan() { if(confirm("定款の資本金を残高に追加します。\r(「<% = KanjoCDShihonkinNM %>」科目が入力されている場合は金額が更新されます) \r\r<% = KanjoCDShihonkinNM %>:<% = ConvIntToMoney(Shihonkin, false, false) %>\r")) { for(jj = 1; jj <= document.vaSpread1.MaxRows; ) { document.vaSpread1.SetActiveCell(1, jj); document.vaSpread1.Row = jj; document.vaSpread1.Col = 1; Text1 = document.vaSpread1.Text; if (Text1 == '<% = KanjoCDShihonkin %>')SpreadDelItem(document.vaSpread1); else jj++; } document.vaSpread1.SetActiveCell(1, 1); SpreadInsertItem(document.vaSpread1); document.vaSpread1.Row = 1; document.vaSpread1.Col = 1; document.vaSpread1.Text = '<% = KanjoCDShihonkin %>'; document.vaSpread1.Col = 6; document.vaSpread1.Text = '<% = Shihonkin %>'; SetKanjyoMeisyo(document.vaSpread1, 1); } } <% End If %> function ImportKurikoshi() { //金額は合計なので摘要CDは特定出来ない var tmp; var tmp_; tmp = "以下の勘定科目:金額の残高設定を追加します。 \r(既に入力されている科目は金額が更新されます) \r\r" tmp_ = "\rよろしいですか?\n" <% tmp2 = "if(1 == 0){alert('dd')}" & vbCrLf tmp3 = "" Set Dic = CreateObject("Scripting.Dictionary") Dic.Add "DA", Genkin '現金 Dic.Add "DB", FutsuKingaku '普通預金 Dic.Add "DC", TozaKinagku '当座預金 Dic.Add "DD", TeikiKingaku '定期預金 Dic.Add "DE", TsumitateKingaku '積立預金 Dic.Add "DF", BetsudanKingaku '別段預金 If Mode = "Seizo" Then '製造部対応(080411小野) Dic.Add "GJ", KingakuNyusyuko '繰越材料 Dic.Add "GK", KingakuSeihin '繰越製品 Else Dic.Add "DJ", KingakuNyusyuko '繰越商品 End If KurikoshiFlg = 0 'tmp2 = 繰越残高設定で発生する科目があれば削除する処理 'tmp3 = 繰越残高設定から追加する処理 If Mode = "Seizo" Then '製造部対応(080411小野) Query = "exec SPM勘定科目詳細一覧 '" & GB_SystemCD & "','" & EnshuCD & "','G','%'" Else Query = "exec SPM勘定科目詳細一覧 '" & GB_SystemCD & "','" & EnshuCD & "','S','%'" End If Set Content = OpenQuery(Query) Do While Not(Content.BOF Or Content.EOF) If Content.Fields("特別勘定区分") <> "" Then If Dic.Item("" & Content.Fields("特別勘定区分")) <> 0 Then KurikoshiFlg = 1 tmp = tmp & Content.Fields("特別勘定区分名称") & ":" & ConvIntToMoney(Dic.Item("" & Content.Fields("特別勘定区分")), false, false) & "\r" tmp2 = tmp2 & "else if(Text1 == '" & Content.Fields("勘定CD") & "')SpreadDelItem(document.vaSpread1);" & vbCrLf ' tmp3 = tmp3 & "SpreadAddItem(document.vaSpread1);" & vbCrLf & "document.vaSpread1.Row = jj;" & vbCrLf & "document.vaSpread1.Col = 1;" & vbCrLf & "document.vaSpread1.Text = '" & Content.Fields("勘定CD") & "';" & vbCrLf & "document.vaSpread1.Col = 4;" & vbCrLf & "document.vaSpread1.Text = '" & Dic.Item("" & Content.Fields("特別勘定区分")) & "';" & vbCrLf & "SetKanjyoMeisyo(document.vaSpread1, jj);jj++" & vbCrLf '先頭行から順次追加するよう修正 tmp3 = tmp3 & "document.vaSpread1.SetActiveCell(1, 1);" & vbCrLf & "SpreadInsertItem(document.vaSpread1);" & vbCrLf & "document.vaSpread1.Row = 1;" & vbCrLf & "document.vaSpread1.Col = 1;" & vbCrLf & "document.vaSpread1.Text = '" & Content.Fields("勘定CD") & "';" & vbCrLf & "document.vaSpread1.Col = 5;" & vbCrLf & "document.vaSpread1.Text = '" & Dic.Item("" & Content.Fields("特別勘定区分")) & "';" & vbCrLf & "SetKanjyoMeisyo(document.vaSpread1, 1);" & vbCrLf '取引銀行選択処理を追加(110124小野) If "" & Content.Fields("特別勘定区分") = "DB" Then tmp3 = tmp3 & "document.vaSpread1.Col = 3;" & vbCrLf & "document.vaSpread1.Text = '" & ConvKaisyaRyakuMeisyoDX(EnshuCD, FutsuGinko) & "';" & vbCrLf End If If "" & Content.Fields("特別勘定区分") = "DC" Then tmp3 = tmp3 & "document.vaSpread1.Col = 3;" & vbCrLf & "document.vaSpread1.Text = '" & ConvKaisyaRyakuMeisyoDX(EnshuCD, TozaGinko) & "';" & vbCrLf End If If "" & Content.Fields("特別勘定区分") = "DD" Then tmp3 = tmp3 & "document.vaSpread1.Col = 3;" & vbCrLf & "document.vaSpread1.Text = '" & ConvKaisyaRyakuMeisyoDX(EnshuCD, TeikiGinko) & "';" & vbCrLf End If If "" & Content.Fields("特別勘定区分") = "DE" Then tmp3 = tmp3 & "document.vaSpread1.Col = 3;" & vbCrLf & "document.vaSpread1.Text = '" & ConvKaisyaRyakuMeisyoDX(EnshuCD, TsumitateGinko) & "';" & vbCrLf End If If "" & Content.Fields("特別勘定区分") = "DF" Then tmp3 = tmp3 & "document.vaSpread1.Col = 3;" & vbCrLf & "document.vaSpread1.Text = '" & ConvKaisyaRyakuMeisyoDX(EnshuCD, BetsudanGinko) & "';" & vbCrLf End If End If End If Content.MoveNext Loop tmp = tmp %> <% If KurikoshiFlg > 0 Then %> if(confirm(tmp + "<% = tmp %>")) { for(jj = 1; jj <= document.vaSpread1.MaxRows; ) { document.vaSpread1.SetActiveCell(1, jj); document.vaSpread1.Row = jj; document.vaSpread1.Col = 1; Text1 = document.vaSpread1.Text; <% = tmp2 %>else jj++; } <% = tmp3 %> } SetGokei(); form1.KurikoshiSyohinMeisaiSave.value = "Save"; //繰越商品の明細を期首仕入伝票に保存するフラグ <% Else %> alert('取り込むデータはありません'); <% End If %> } function SubmitCheck() { var KarikataGokei,KashikataGokei; KarikataGokei = 0; KashikataGokei = 0; form1.SendValue.value = ""; for(jj = 1; jj <= document.vaSpread1.MaxRows; jj++) { var bCheck; bCheck = Array(); document.vaSpread1.Row = jj; var RowText; RowText = ""; for(ii = 1; ii <= document.vaSpread1.MaxCols; ii++) { bCheck[ii] = 0; document.vaSpread1.Col = ii; //収入・支出の0入力はクリア if ((ii == 5 || ii == 6) && document.vaSpread1.Text == "0") { document.vaSpread1.Text = ""; } var Text1; Text1 = document.vaSpread1.Text; if(document.vaSpread1.ColID == 12) { Text1 = ReplaceStr(Text1, ",", "") } if(Text1 != "") { if(ii == 3) { Text1 = ConvRevTekiyoMeisyo(Text1); } if(ii == 5) { KarikataGokei = KarikataGokei + Math.floor(Text1); } if(ii == 6) { KashikataGokei = KashikataGokei + Math.floor(Text1); } } else { bCheck[ii] = 1; } RowText = RowText + Text1; RowText = RowText + "," if(Text1 == "" || Text1 == 0) { bCheck[ii] = 1; } } if(ReplaceStr(RowText, ",", "") != "") { if(bCheck[2] == 1) { alert("勘定科目を入力して下さい"); document.vaSpread1.SetActiveCell(1, jj); document.vaSpread1.focus(); document.vaSpread1.EditMode = true; return; } if(bCheck[5] == 1 && bCheck[6] == 1) { alert("借方金額または貸方金額を入力して下さい"); document.vaSpread1.SetActiveCell(4, jj); document.vaSpread1.focus(); document.vaSpread1.EditMode = true; return; } if(bCheck[5] == 0 && bCheck[6] == 0) { alert("借方金額または貸方金額のどちらかのみを入力して下さい"); document.vaSpread1.SetActiveCell(4, jj); document.vaSpread1.focus(); document.vaSpread1.EditMode = true; return; } form1.SendValue.value = form1.SendValue.value + RowText; form1.SendValue.value = form1.SendValue.value + ";" } } if(KarikataGokei != KashikataGokei) { //↓借方合計と貸方合計が等しくない際に問い合わせる(2006/09/22小野) if(window.confirm("借方合計と貸方合計が等しくありませんがこのまま保存してもよろしいですか?\n\n (一度保存してあとから修正することも出来ます)")){ }else{ window.alert("保存処理はキャンセルされました"); return false; } //↑借方合計と貸方合計が等しくない際に問い合わせる(2006/09/22小野) } //↓ランダムにウェイトを挟み保存処理(2006/09/22小野) if(new Boolean(GetObj("BaseL5")) == true) { document.all.item("BaseL5").innerHTML = "更新中です。しばらくお待ちください。" } document.body.style.cursor="wait"; var RandomLength = 1000;//ウェイト幅(0~指定数値ミリ秒) var RandomWaitTime = Math.floor( Math.random() * RandomLength );//RandomLengthに1未満の乱数を掛け合わせ小数点以下切り捨て setTimeout( "SubmitReal(form1)", RandomWaitTime ); //↑ランダムにウェイトを挟み保存処理(2006/09/22小野) // alert("借方合計と貸方合計が等しくありません"); // return false; // } // SubmitReal(form1); return true; } function ConvKanjyoMeisyo(kanjyoCD) { <% For KanjoCnt = 1 To UBound(KanjoCD) Response.Write(" if(kanjyoCD == """ & KanjoCD(KanjoCnt) & """)return """ & KanjoMeisho(KanjoCnt) & """;" & vbCrLf) Next %> return ""; } function SetKanjyoKamokuList(kanjyomeisai) { var Meisais; var ii; Meisais = Array("A", "B", "C", "D", "E", "F", "G", "H", ""); for (ii=0; ii<Meisais.length; ii++) { document.all.item("TD" + Meisais[ii]).background = "/<% = HomeAlias %>/images/palbtn_01.gif?<% = GB_STU %>"; } document.all.item("TD" + kanjyomeisai).background = "/<% = HomeAlias %>/images/palbtn_02.gif?<% = GB_STU %>"; var ii; var Idx; Idx = 0; //alert(form1.kanjyokamoku.length); do { form1.kanjyokamoku.options[0] = null; } while(form1.kanjyokamoku.length != 0) <% ' Query = "exec SPM勘定科目一覧 '" & GB_SystemCD & "','" & EnshuCD & "', '" & GyosyuKubun & "', '" & KanjyoMeisai & "', '" & GB_KaisyaCD & "'" ' Set Content = OpenQuery(Query) PreKanjyoMeisai = "" Response.Write(" if (1 == 0) {" & vbCrLf) For KanjoCnt = 1 To UBound(KanjoCD) If PreKanjyoMeisai <> KanjoSaimoku(KanjoCnt) Then Response.Write(" }" & vbCrLf) Response.Write(" if (kanjyomeisai == """" || kanjyomeisai == """ & KanjoSaimoku(KanjoCnt) & """) {" & vbCrLf) PreKanjyoMeisai = KanjoSaimoku(KanjoCnt) End If Response.Write(" form1.kanjyokamoku.options[Idx] = new Option(""" & KanjoCD(KanjoCnt) & " " & KanjoMeisho(KanjoCnt) & """, """ & KanjoCD(KanjoCnt) & """);" & vbCrLf) Response.Write(" Idx = Idx + 1;" & vbCrLf) Next Response.Write(" }" & vbCrLf) %> // return false; } function SetTorihikisakiShijoList(ShijoCD) { //取引先メニューを選択市場で絞込む(081111小野) var ii; var Idx; Idx = 0; var listout; listout = ""; document.vaSpread1.Redraw = false; <% PreShijoCD = "" Response.Write(" if (1 == 0) {" & vbCrLf) '1行目のダミーネスト For ii = 1 To UBound(TorihikisakiMeishoAry) If TorihikisakiShijoAry(ii) <> PreShijoCD Then Response.Write(" }" & vbCrLf) '上にダミーネストを設けてあるので1行目から閉じてOK PreShijoCD = TorihikisakiShijoAry(ii) Response.Write(" if (ShijoCD == """" || ShijoCD == """ & TorihikisakiShijoAry(ii) & """) {" & vbCrLf) End If Response.Write(" if (listout != """") listout = listout + ""\t"";" & vbCrLf) Response.Write(" listout = listout + """ & TorihikisakiMeishoAry(ii) & """;" & vbCrLf) Next Response.Write(" }" & vbCrLf) '最終行のネストを閉じる ' If KourihanbaiRiyo() > 0 And PageType = "売上帳" Then '売上帳のみ ' Response.Write(" if (listout != """") listout = listout + ""\t"";" & vbCrLf) ' Response.Write(" listout = listout + """ & ConvTekiyoMeisyo("SJ4KOURIHANBAI") & """;" & vbCrLf) ' End If %> document.vaSpread1.Col = 3; for (i=1; i<= document.vaSpread1.MaxRows; i++) { document.vaSpread1.Row = i; if (document.vaSpread1.Text == "") { document.vaSpread1.TypeComboBoxList = "\t" + listout; // document.vaSpread1.TypeComboBoxList = listout; } else { document.vaSpread1.TypeComboBoxList = document.vaSpread1.Text + "\t\t" + listout; // document.vaSpread1.TypeComboBoxList = document.vaSpread1.Text + "\t" + listout; } } document.vaSpread1.Redraw = true; return false; } </script> <SCRIPT LANGUAGE="JavaScript"> function SpreadInit(fpSpread) { fpSpread.MaxRows = 0; <% Dim ii ii = 0 Query = "exec SPK伝票_振替伝票取得 '" & GB_SystemCD & "','" & EnshuCD & "', '" & KaisyaCD & "', '0000000', '" & GyosyuKubun & "'" Set Content = OpenQuery(Query) '選択行の色を変える動作を停止(090624小野) Response.Write(" SpreadRowColorMode = false;" & vbCrLf) Do While Not(Content.BOF Or Content.EOF) ii = ii + 1 Response.Write(" SpreadAddItem(fpSpread);" & vbCrLf) Response.Write(" fpSpread.Row = " & ii & ";" & vbCrLf) Response.Write(" fpSpread.Col = 1;" & vbCrLf) Response.Write(" fpSpread.Text = """ & Content.Fields("勘定CD") & """;" & vbCrLf) Response.Write(" fpSpread.Col = 2;" & vbCrLf) Response.Write(" fpSpread.Text = """ & ConvKanjyoMeisyoDx(GB_SystemCD, EnshuCD, Content.Fields("勘定CD")) & """;" & vbCrLf) Response.Write(" fpSpread.Col = 3;" & vbCrLf) Response.Write(" fpSpread.Text = """ & ConvTekiyoMeisyoDx(EnshuCD, KaisyaCD, Content.Fields("摘要CD")) & """;" & vbCrLf) Response.Write(" fpSpread.Col = 4;" & vbCrLf) Response.Write(" fpSpread.Text = """ & Content.Fields("摘要") & """;" & vbCrLf) Response.Write(" fpSpread.Col = 5;" & vbCrLf) Response.Write(" fpSpread.Text = """ & ConvIntToMoney(Content.Fields("借方金額"), false ,false) & """;" & vbCrLf) Response.Write(" fpSpread.Col = 6;" & vbCrLf) Response.Write(" fpSpread.Text = """ & ConvIntToMoney(Content.Fields("貸方金額"), false ,false) & """;" & vbCrLf) Response.Write(" fpSpread.Col = 0;" & vbCrLf) Response.Write(" fpSpread.Text = "" "";" & vbCrLf) Content.MoveNext Loop '空白行を5行追加し1行目を選択状態にする(080620小野) ii = ii + 1 Response.Write(" SpreadAddItem(fpSpread);" & vbCrLf) Response.Write(" SpreadAddItem(fpSpread);" & vbCrLf) Response.Write(" SpreadAddItem(fpSpread);" & vbCrLf) Response.Write(" SpreadAddItem(fpSpread);" & vbCrLf) Response.Write(" SpreadAddItem(fpSpread);" & vbCrLf) Response.Write(" document.vaSpread1.SetActiveCell(1, " & ii & ");" & vbCrLf) Response.Write(" fpSpread.EditMode=true;" & vbCrLf) '選択行の色を変える動作を再開(090624小野) Response.Write(" SpreadRowColorMode = true;" & vbCrLf) Response.Write(" SpreadRowColor(fpSpread);") '選択行の色を変える(090624小野) %> } function SetKanjyoMeisyo(obj, RowNo) { var KanjyoMeisyo; obj.Col = 1; obj.Row = RowNo; KanjyoMeisyo = ConvKanjyoMeisyo(obj.Text); obj.Col = 2; obj.Row = RowNo; obj.Text = KanjyoMeisyo; } function SetGokei() { document.vaSpread2.ReDraw = false; var KarikataGokei, KashikataGokei; KarikataGokei = 0; KashikataGokei = 0; for(i=1; i<=document.vaSpread1.MaxRows; i++) { document.vaSpread1.Row = i; document.vaSpread1.Col = 5; if(document.vaSpread1.Text != "")KarikataGokei = KarikataGokei + ConvMoneyToInt(document.vaSpread1.Text); document.vaSpread1.Col = 6; if(document.vaSpread1.Text != "")KashikataGokei = KashikataGokei + ConvMoneyToInt(document.vaSpread1.Text); } document.vaSpread2.Row = 1; document.vaSpread2.Col = 2; document.vaSpread2.Text = ConvIntToMoney(KarikataGokei); document.vaSpread2.Col = 3; document.vaSpread2.Text = ConvIntToMoney(KashikataGokei); //} document.vaSpread2.ReDraw = true; } function SetKanjyoKamoku(RowNo) { var idx; idx = form1.kanjyokamoku.selectedIndex; if(idx >= 0) { document.vaSpread1.Row = RowNo; document.vaSpread1.Col = 1; document.vaSpread1.Text = form1.kanjyokamoku.options[idx].value; SetKanjyoMeisyo(document.vaSpread1, RowNo); } } //勘定科目フォーム指定用グローバル変数(080322小野) var KanjyoKamokuForm = <% = ii %>; //すでに記入されている行を飛ばす //勘定科目フォーム指定用グローバル変数を変更する関数(080322小野) //(勘定科目フォームonFocusで作動させることでフォーカス位置を保持する) function SetKanjyoKamokuForm(value) { KanjyoKamokuForm = value; } //勘定科目一覧ダブルクリックで勘定科目フォームに代入する関数(080322小野) //(KanjyoKamokuForm変数に保持されたフォーム番号に代入する) function SetKanjyoKamoku2() { if (KanjyoKamokuForm > 0) { if (form1.kanjyokamoku.selectedIndex >= 0) { document.vaSpread1.Row = KanjyoKamokuForm; document.vaSpread1.Col = 1; document.vaSpread1.Text = form1.kanjyokamoku.options[form1.kanjyokamoku.selectedIndex].value; SetKanjyoMeisyo(document.vaSpread1, KanjyoKamokuForm); } } } //ダブルクリック判定関数(IE11でダブルクリックが2回に1回しか作動しないバグのため) var DblClickFlg = false; function OnDblClickInstant() { if (!DblClickFlg) { //1回目のクリックでフラグを立てる DblClickFlg = true; //500ミリ秒経過したらフラグを降ろすタイマーをセット setTimeout("DblClickFlg = false;", 500); } else { //ダブルクリック処理(1回目のクリックから500ミリ秒以内で作動) DblClickFlg = false; SetKanjyoKamoku2(); } } </SCRIPT> <SCRIPT FOR="vaSpread1" EVENT="DblClick(ColNo, RowNo)" LANGUAGE="JavaScript"> if(ColNo == 1) { SetKanjyoKamoku(RowNo); } // ヘッダー列クリック時にソートしない場合にはコメントアウトする // SpreadClick(this, ColNo, RowNo); </SCRIPT> <SCRIPT FOR="vaSpread1" EVENT="KeyDown(KeyAsciiCode, KeyShift)" LANGUAGE="JavaScript"> // SpreadKeyDown(this, KeyAsciiCode, KeyShift); </SCRIPT> <SCRIPT FOR="vaSpread1" EVENT="KeyUp(KeyAsciiCode, KeyShift)" LANGUAGE="JavaScript"> SpreadKeyUp(this, KeyAsciiCode, KeyShift); SetKanjyoKamokuForm(this.ActiveRow); </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) End If Call SetRenewCell(Me, ColNo, RowNo) </SCRIPT> <SCRIPT FOR="vaSpread1" EVENT="ComboCloseUp(ColNo, RowNo)" LANGUAGE="JavaScript"> SetRenewCell(this, ColNo, RowNo) </SCRIPT> <SCRIPT LANGUAGE="JavaScript"> function SetRenewCell(obj, ColNo, RowNo) { SetKanjyoMeisyo(obj, RowNo); SetGokei(); } </SCRIPT> <SCRIPT FOR="vaSpread1" EVENT="Click(ColNo, RowNo)" LANGUAGE="JavaScript"> // ヘッダー列クリック時にソートしない場合にはコメントアウトする // SpreadClick(this, ColNo, RowNo); SetKanjyoKamokuForm(RowNo); if (this.ActiveCol != 1) { //勘定CD以外ならアクティブ化 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="window" EVENT="onload" LANGUAGE="JavaScript"> if(typeof(form1.dummy) == "object")form1.dummy.focus(); // SpreadInit 第 3n + 1 引数 (nは整数) // 0:日付型 1:文字型 8:コンボボックス型 10:チェックボックス型 12:通貨型 13:数値型 21:勘定科目 22:摘要 document.vaSpread1.Redraw = false; document.vaSpread2.ReDraw = false; SpreadLoad(document.vaSpread1 , "勘定コード", 21, 6, "勘定名称", 1, 21, "摘要", 8, 12, "明細", 22, 15,"借方金額", 12, 12, "貸方金額", 12, 12); SpreadLoad(document.vaSpread2, "合計", 1, 54.4, "借方金額", 12, 12, "貸方金額", 12, 12); document.vaSpread2.ScriptEnhanced = true; //その他の Spread に関する設定はここに入れる document.vaSpread2.ColHeadersShow = false; document.vaSpread2.MaxRows = 1; document.vaSpread2.Col = 0; document.vaSpread2.Row = 1; document.vaSpread2.Text = " "; document.vaSpread2.Row = -1; document.vaSpread2.Col = -1; document.vaSpread2.Row = 0; document.vaSpread2.Row = 1; document.vaSpread2.Col = 1; document.vaSpread2.Text = "合計"; document.vaSpread2.TypeHAlign = 1; document.vaSpread2.Col = 1; document.vaSpread2.Row = 1; document.vaSpread2.Col2 = 4; document.vaSpread2.Row2 = 2; document.vaSpread2.BlockMode = true; document.vaSpread2.BackColor = 0xE6E6E6; document.vaSpread2.Lock = true; document.vaSpread2.BlockMode = false; document.vaSpread2.BackColorStyle = 1; document.vaSpread2.OperationMode = 1; document.vaSpread2.Row = -1; document.vaSpread2.Col = -1; document.vaSpread2.FontSize = 11; document.vaSpread1.ScriptEnhanced = true; //その他の Spread に関する設定はここに入れる document.vaSpread1.Row = -1; document.vaSpread1.Col = -1; document.vaSpread1.FontSize = 11; document.vaSpread1.Row = 0; document.vaSpread1.Col = -1; document.vaSpread1.FontSize = 11; document.vaSpread1.Row = -1; document.vaSpread1.Col = 3; <% Dim ListText ' Query = "exec SPM摘要表示一覧 '" & GB_SystemCD & "','" & EnshuCD & "', '" & KaisyaCD & "'" ' Set Content = OpenQuery(Query) ListText = "\t" ' Do While Not(Content.BOF Or Content.EOF) For ii = 1 To UBound(TorihikisakiMeishoAry) ' ListText = ListText & Content.Fields("摘要") ListText = ListText & TorihikisakiMeishoAry(ii) If ListText <> "" Then ListText = ListText & "\t" End If ' Content.MoveNext ' Loop Next Response.Write("document.vaSpread1.TypeComboBoxList = """ & ListText & """") %> var SpreadHeader; SpreadHeader = -1000; document.vaSpread1.AddCellSpan(<% = KanjyoCDCol %>, SpreadHeader, 2, 2); document.vaSpread1.Row = SpreadHeader; document.vaSpread1.Col = <% = KanjyoCDCol %>; document.vaSpread1.Text = "勘定科目"; document.vaSpread1.RetainSelBlock = false; SpreadInit(document.vaSpread1); document.vaSpread1.Col = 2; //勘定科目入力不可(061218小野) document.vaSpread1.Lock = true; SetGokei(); document.vaSpread1.Redraw = true; document.vaSpread2.Redraw = true; </SCRIPT> <% End If %> </html> <% End Sub %>