基幹系
汎用機の COBOL を、 書き直さずに Linux へ移す
汎用機で
- 時期
- 2008〜2012年ごろ
- 規模
- COBOL 約15,000本・
約500万行
JCL 約6,500本・約100万行 - 移した
先 - 汎用機 → Linux サーバー
(OpenCOBOL・ Perl) - その
後 - 同じ
プログラムを、 いま C# へ 変換中
はじまり
長年の業務の決まりが、 プログラムに詰まっていた
移す対象は、
プログラムには
やった
書き直さずに、移すための4つの手
変換は
機械で メーカーごとの
書き方の 違いを 自動で 置き換える プログラムを 作りました。 自動の 変換だけで、 9割近くの プログラムが コンパイルできる 状態に なりました。 規則を 直せば、 全体に 一度で 反映できます。 足りない
所は コンパイラを 直す オープンソースの
COBOL (OpenCOBOL)は ソースが 公開されているので、 足りない 機能を コンパイラその ものに 足しました。 データベースとの 橋渡しは、 COBOL から Perl を 直接呼べるように 組み込み、 最初に 試した 呼び出し方と 比べて、 数十〜数百倍の 速さで 動くようにしました。 処理の
手順は Perl へ 処理の
手順を 書いた JCL には、 オープンソースの 実装が ありません。 実際に 使っている 機能の うち、 欠かせない ものに 絞って Perl へ 移しました。 数十万件の データの 並べ替えと 集計が 数秒で 終わる 速さも 確かめられました。 帳票は
PDF で プリンタの
制御の 資料が 残っていない 中で、 ラインプリンタの 動きを まねる ソフトを 作りました。 改行の 位置などの 出し方も ほぼ元の まま、 帳票を PDF で 出せるようになりました。 PDF に した ことで、 部署ごとに ファイルを 分けて 送る こともできます。
一緒に
結果が正しいかは、 使う人に聞いて確かめた
プログラムを
帳票を
この
いまに
メーカーに縛られない形で、 引き継げる
使った
この
ご相談
古い言語で動くシステムのこと、 ご相談ください。
資料が
