JavaScriptでの実行で面倒なのが処理中の値を見ること。alertで出せばいいのだが、項目が多いと嫌になる。何とかファイルに出力したいなと思っていたが、JavaScriptでは出せないらしい。
やむなく諦めていたのだが、「JavaScriptからVBScriptの呼び出しはできる」ということを小耳に挟んだ。今回のブラウザは社内専用のスタンドアロンシステムなのでVBScriptが利用可能である。

そこで試してみたら、意外とすんなりといった。コードは紹介しないが、JavaScriptで execScript を使った。
引数を渡すことも可能。しかし、引数にタブや改行コードが入っていたらNGのようであった。よって、別の文字に置き換えて渡し、VBScript側でreplaceすることでOKであった。

単体レベルのテストは何とかなったが、画面間でデータの授受をしているケースではこのようなものも便利である。
JavaScriptと連携するFlashとのインターフェースがよろしくない。外注に出しているのだが、意思疎通がうまくいっていないようなのだ。そこで、Flashのコードを読んでみた。
困ったことに、クラス化とか共通処理とかなく、コードのベタ書き。素人か、と思うものの、そこそこ動いている。それも、画面を動かしたりしているのに、思ったよりうんと行数が少ない。

あるとき、とんでもないトラブルが発生。こんな値、論理的に返ってきてはいけないのに、なぜかその「ありえない値」が返ってくる。
それを自分で直そうとしたが、無理だった。VBなどではそれでよかったのに・・。で、外注先にも「JavaScript側で回避方法があるから、できたらでいいよ」と伝えた。
その数時間後、解決したとしてコードを送ってきたので、確認した。動きを見ると、確かに直っている。いったいどうやったのかとソースコードを確認した。すると、イベントの途中にイベントの同期を取るような処理(詳しくないので何とも言えないので、認識が間違っているかも知れないが)でうまく解決されていた。

そのコードを見て、ActionScriptのコントロール対象が広いことと、細かい制御ができることに感動すら覚えた。ここまで制御できるなら、私がActionScriptでやりたいことなんて何だってできてしまう。
改めてActionScriptの書籍を見た。いや、JavaScriptで似ているが、ActionScriptの方が余程強力な言語だ。来月からは仕事でActionScriptも使えるようにしておこう。

このActionScript、VBAにも応用の利きそうなことが結構あるようだ。更に幅を広げられれば、と思う。
Pleiades (プレアデス) は、Eclipseを最初っから日本語化してあるもので、私はEclipseに日本語パッチを適用するのが面倒なので、こちらを使うことが多い。

http://mergedoc.sourceforge.jp/index.html#/pleiades.html

このページから、適切なバージョンを選ぶ。現時点では3.5がベータ版なので3.4を選ぶ。

http://mergedoc.sourceforge.jp/index.html#/pleiades.html

ここでは、何を使うかによって選択する。
私の場合、PleiadesのUltimateを入れているので遅く、もっとシンプルなものに載せ替える所存だ。今回はPlatformという「基本」のものを入れることにした。
FlexやJavaScriptで使うなら、このPlatformに必要なものを取り入れるようにすればよい。

簡単ではあるが・・。