科目別残高推移表(GS:グリッドシートとQEスクリプトを利用) 26

GS(グリッドシート)とQE(QuickExecution)スクリプトを利用した科目別残高推移表を作成するユーザスクリプトの例を紹介します
GS関連のスクリプトは、「展開一番」のアウトサイド処理となるので、利用に先立ち「t1_outside.rb」ライブラリをロード(require)しておく必要があります
各月の試算表残高の推移表を作成するため、各月の試算表が作成されていることが前提となります、それぞれが接尾辞の番号で識別できるものとします
科目別残高推移表の作成手順は以下のとおりです
1.グリッドシートを作成する
2.グリッドシートの1列目に科目コードを転記する
3.グリッドシートの2列目に科目名を転記する
4.グリッドシートの3列目に試算表1の開始残高を転記する
5.グリッドシートの4列目に試算表1の繰越残高を転記する
6.グリッドシートの5列目に試算表2の繰越残高を転記する
7.グリッドシートの6列目に試算表3の繰越残高を転記する
8.以下、同様につき省略


1.事前準備


1:「スクリプトプールファイル」(t1_SP.txt)を個別ファイルフォルダに置きます
2:「パラメタプールファイル」t1_PP.txt)を個別ファイルフォルダに置きます

-----------------------------------------
1:「スクリプトプールファイル」は、スクリプト番号順にソートされたスクリプト名のリストで、ホームページ掲載のものを利用できます
今回の作業で利用するスクリプトは「GS_MkF」「GS_vPst」の二つで、スクリプト番号は「412」「414」です
2:「パラメタプールファイル」は、パラメタ番号とパラメタの並びからなるリストで、ユーザが作成する必要があります
パラメタ番号は「10001」から始まる5桁の数字で、パラメタは必要な数だけ並べて記述します


2.パラメタプールファイルの作成


1.試算表ファイルの準備
残高推移表の作成に必要な試算表(ZTB_hhhhh.txt)を準備します
月次残高の推移表であれば月別の試算表を、四半期残高の推移表であれば四半期ごとの試算表を、年次の推移表であれば年次ごとの試算表を作成し、それぞれのファイルに識別番号を付けておきます
「Bup7ZTB」スクリプトを利用すると、試算表ファイルに識別子を付けて保存できます、例えば「Bup7ZTB(101)」で、「ZTB_hhhh.txt」ファイルを「ZTB_101_hhhh.txt」にリネームして指定フォルダに保存できます

2:「グリッドシート」作成のパラメータリスト
最初にグリッドシートを作成します
グリッドシートは、80行16列縦型を利用することにします、スクリプトの引数は「id,g_type,vi1,vi1」なので
id:識別番号は「105」、type:縦型は「"v"」、vi1:行は80、vi2:列は16、よって、引数の並びは「105,"v",80,6」となります
これをパラメタプールファイルに登録番号(例えば、21201)を付けて追加します、
ki
3.「(ZTB_101の)科目コード転記」のパラメタリスト
作成したグリッドシートの最初の列に試算表の科目コードを転記します
転記に利用するスクリプトは「GS_vPst」、引数の並びは「fn,c1,sVi,eVi,c2,id,r,c」なので
fn:ファイル名は「"ZTB_101"」、c1:転記対象ファイルのキー列は「0」(註:グリッドシートは行列ともゼロからカウントする)、sVi:キーの範囲の最初の値は「1010」、eVi:キーの最後の値は「9999」、c2:転記する数値の転記元ファイルの列は「0」、id:グリッドシートの識別番号は「105」、r:転記するグリッドシートの最初の行は「0」、c:転記するグリッドシートの最初の列は「0」、よって、
引数の並びは「"ZTB_101",0,1010,9999,0,105,0,0」となります
これをパラメタプールファイルに登録番号(例えば、21202)を付けて追加します

4.「(ZTB_101の)科目名転記」のパラメタリスト
ここから以降は、3.とほぼ同じです、転記元と転記先が一つ右に移ります
引数の並びは「"ZTB_101",0,1010,9999,1,105,0,1」となります、登録番号は21203とします

5.「(ZTB_101の)期首残高転記」のパラメタリスト
転記元は5列目(列数はゼロからカウント)、転記先は一つ右に移ります
引数の並びは「"ZTB_101",0,1010,9999,5,105,0,2」となります、登録番号は21204とします

6.「(ZTB_101の)期末残高転記」のパラメタリスト
転記元は11列目(列数はゼロからカウント)、転記先は一つ右に移ります
引数の並びは「"ZTB_101",0,1010,9999,11,105,0,3」となります、登録番号は21205とします

7.「(ZTB_102の)期末残高転記」のパラメタリスト
転記元の試算表が「ZTB_102_hhhh.txt」に変わります
引数の並びは「"ZTB_102",0,1010,9999,11,105,0,4」となります、登録番号は21206とします

8.「(ZTB_103の)期末残高転記」のパラメタリスト
転記元の試算表が「ZTB_103_hhhh.txt」に変わります
引数の並びは「"ZTB_103",0,1010,9999,11,105,0,5」となります、登録番号は21207とします

9.パラメタリスト登録時の注意事項
パラメタプールにパラメタリストを登録するとき、リストの最後に摘要文を付加する必要があります
例えば、2:の「105,"v",80,6」は、「105,"v",80,6,80行6列のグリッドシートを作成」となります
摘要文が必要なければ、「105,"v",80,6,-」のようにダミーの文字または記号を記載しておきます


3.科目別残高推移表の作成(QEスクリプトの実行)

「科目別残高推移表作成」のスクリプトファイルを作成します
-----------------------------------------
require "t1.rb"
require "t1_outside.rb"
QE(412,21201,1)
QE(414,21202,1)
QE(414,21203,1)
QE(414,21204,1)
QE(414,21205,1)
QE(414,21206,1)
QE(414,21207,1)
-----------------------------------------
QEスクリプトの第三パラメタの「1」で、利用している文字コードが「Shift-JIS」であることを指示しています
因みに「UTF-8」は「0」で、ディフォルトとなっています(指定を省略すればゼロが適用されます)
ファイル名を、例えば、「TB_TrendTable.rb」として保存します

「Ruby」で上記ファイルを実行すれば、「科目別残高推移表」(ファイル名は「GS_v105_hhhh.txt」)が作成できます
-----------------------------------------
実行例

PS E:\..t1_Profileで指定した個別ファイルを置くパス..>ruby -Ks TB_TrendTable.rb
Working Time [GS_MkF]....0.00634 Sec.
Working Time [GS_vPst]....0.0187079 Sec.
Working Time [GS_vPst]....0.0174986 Sec.
(以下略)
WorkingTime[QE]....0.6027204 Sec.
WorkingTime[QE]....0.6027344 Sec.
WorkingTime[QE]....0.6197502 Sec.
(以下略)

-----------------------------------------


Last Update 2024/10/09