OOJCLってのはどうよ

会社で使ってるホストの端末ソフトにはEHLLAPIというエミュレータのキー操作を行うAPIがついています。ホストとの通信そのものでなく、画面を介してのAPIというところが、なんというか・・・さすがなんですが・・・


いくつかそれを使ったマクロがありまして・・・Excelでいうところの録画ボタンを押したようなマクロです。(実のところ、VBAのマクロでAPIを呼び出し。)基本的にキー操作なので、画面のレスポンスが思うようでないと操作を無視。以降の処理はあらぬところにあらぬキーを打ちまくり。


ひどいので、チューニングをしようとしてソースを見るとひどい状態。「あれあれ、おやまあ」とお掃除。ちゃんとサブを使って・・・重複を消して・・・コメントを修正して・・・


あ〜きれいになった。それではチューニング・・・


結構安定して動くようになった。sendkeyの回数もできるだけ少なくなるようにしたから、実行も早いし気持ちいい。


あっそうだ。この機能のマクロも用意しよう。


えっと、あ〜これはさっきも組んだとこだな集約して・・・なんだかんだで、APIがグローバル変数で定義されて汚い。ん〜、クラスに格納してしまえ。(VBAではクラスが定義できます。継承はできないけど・・・)あ〜、そうするとそれをhas-aで隠蔽して、コマンドを呼び出すことにしよう・・・うん、一連のキー操作はこのクラスのメソッドとして定義して・・・


でけた。


JCLを自動生成するツールをいつの間にか作ってました。まあ、VBAなんで限界があるからファイルコピーしたり、FTPを実行したりするだけの機能しかないです。


SQLやHTMLを自動生成するのは、常識の範囲ですがJCLは聞かないなあ。やったら、喜んで使う人いるのかな〜。


最近、開発系のCPUが重いので、処理待ちにこんなことして鬱憤を晴らしてます。