過去の苦労話 第12回:見積書の迷走と、禁断のPHP。「印刷の壁」を突破せよ!

 私が自社の基幹システムに関わり始める少し前、まだ顧客向けにCOBOLで建設業会計を支えていた頃の話です。
 事務所の改装に伴う什器やパーテーションの見積もり。そこには、かつて外注でC言語を使ってガチガチに固められたシステムが鎮座していました。

それがいつしかAccess版へと更新されていたようですが、毎年データ更新の時期になると「商品マスタと顧客データをください」と、私の元へ書き出し要求が飛んできます。「……いや、イントラに最新のデータ、全部あるじゃん!」データの断絶こそが無駄の元凶。そう確信した私は、見積もりもイントラへ取り込む決意をしました。
 まずは使い慣れたRuby-CGIで構築。ブラウザに印刷イメージを表示させ、そのまま印刷……。「……ダメじゃん、これじゃ使い物にならない!」ブラウザ標準の印刷では、レイアウトが崩れる、改ページが思うようにいかない。見積書としての体裁が保てません。
 解決策はひとつ、PDF出力しかありませんでした。
 しかし、当時のRubyでフリーのPDFライブラリを探しても、どれも「帯に短し襷に長し」で微妙なものばかり。「……お、PHPのライブラリならまともなのがありそうだぞ?」迷っている暇はありませんでした。背に腹は代えられず、ろくに勉強もしていないPHP-CGIで、PDF出力部分だけを突貫工事で作成。Rubyのメインシステムからデータを投げ、PHPでPDFを生成する。
 「動けば正義」の精神で繋ぎ合わせた、執念のハイブリッド・システムの誕生でした。今、私は引退後の楽しみに、EspoCRMの拡張パッケージ開発やEC-Cubeの改修でPHP(現代のVer.8系!)を触っています。
 正直、あの頃の「とりあえずのPHP」とは、もはや別次元の別物です(笑)。

Rubyだってそうでしょう。技術は常に進化し、かつての「つぎはぎ」は洗練されたアーキテクチャへと姿を変えました。でも、あの「やってらんない!」という怒りを原動力に、未知の言語に飛び込んで強引に解決した1999〜2007年代の感覚。 

(つづく)

コメント

人気の投稿