元帳(一括作成) 31

1.元帳の一括作成

#----------------------------
_1:def GL_1()
_2:
require "t1"
_3:
require "t1_GC"
_4: GetProfileData()
_5: kf=$pathX+"XK_"+$hhhh+".txt"
_6: k=open(kf)
_7: while x=k.gets do
_8: y=x.split(/,/)
_9: if y[0]=="K_fDate" then
10: $fDate=y[1].chomp
11: end
12: if y[0]=="K_tDate" then
13: $tDate=y[1].chomp
14: end
15: end
16: k.close
17:
Sel9MA1XJ2WXJ_SetV("m","J_Date",$fDate,$tDate)
18: listGL=$pathX+"LGL_"+$hhhh+".txt"
19: lgl=open(listGL)
20: while x=lgl.gets do
21: $GLCode=x.chomp
22:
MkF7BgF1ZTB2ZGL($GLCode)
23:
Sel1WXJ2WGL($GLCode)
24:
Con12WGL_FormGL($GLCode,$GLCode,"")
25:
Apd7WGL9Bal12ZGL($GLCode)
26: end
27: lgl.close
28:end

29:GL_1()

1:ユーザ定義メソッドの開始宣言、名前はGL_1とする
2:「展開一番」のスクリプトを利用するためのおまじない
3:「展開一番」の汎用スクリプトを利用するためのおまじない
4:上記汎用スクリプトにあるGetProfileDataスクリプトを実行する、これにより
個別ファイルを置くフォルダのパスが変数$pathXに、法人番号が変数$hhhhにセットされる
5:上記データから基本マスタのファイル名を生成する
6:基本マスタファイルをオープンして、データ取得の準備をする
7:から15:までwhile...endに挟まれた部分が繰り返し処理される
7:でマスタファイルの1行目を読み込み、8:でフィールド別に分解しその値を変数(配列)yにセット
基本マスタの最初のフィールドはタグ名なので、配列y[0]で参照できる
9:から11:でタグ名が「fDate」に一致すれば二番目のフィールドy[1]の値を変数$fDateにセットする
12:から14:も同じで、「tDate」の値を変数$tDateにセットする
16:で基本マスタをクローズする
17:で取得した「fDate」「tDate」を利用して仕訳ファイルから当該期間の仕訳を切り出し、仕訳抽出ファイルを作成する(註)
18:で「元帳作成リスト」ファイル名を生成し、19:でファイルをオープンする
20:から26:までwhile...endに挟まれた部分が繰り返し処理される
20:で「元帳作成リスト」ファイルの1行目を読み込み、21:でその値を変数$GLCodeにセットする
22:から25:で、変数の値を利用して元帳を作成する
26:で20:に戻り、「元帳作成リスト」の2行目を読み込み、同様の処理を行う
以下、「元帳作成リスト」のデータがなくなるまでこの処理が繰り返される
27:で「元帳作成リスト」をクローズする
28:でユーザ定義メソッドを終了させ
29:でユーザ定義メソッドGL_1を実行する

(註) 20211014
スクリプト実行前に試算表が正しく作成されていることが必要です
「fDate」が7月1日、「tDate」が9月30日であれば、試算表は(3月決算の場合)、開始残高の計算期間が経過月0〜3、取引発生高の計算期間が経過月4〜6 の条件で作成されていることが必要です



Last Update 2022/01/20