Error Log

最近電車ばっかり…

Subscribe to RSS feed

Posts tagged with "Excel"

JDK のクラス群が使えない!

,

オリジナルのフレームワークと、オリジナルのソース生成ツールの続きです。
今回は、どちらかというとフレームワークによる制約についてです。

利用できないクラス … JDK のクラス全部。

フレームワークで String・Integer といった値クラスの独自版を定義していて、それを使いなさいという話(フレームワーク外の変数は、プリミティブの int と boolean だけが作れます)。そのくせ、独自クラスのメソッドには、独自Integer ではなく int を扱いものがあったりして、ツール上に書く「処理内容」に独自Integer と int との相互変換がたびたび発生してます。

文字列リテラルはツール上の「処理内容」に書くことはできますが、ソース生成時に独自String への変換メソッドに囲まれて出てきます。。。

ちなみに、この独自クラス群、すべてインターフェースと実装クラスに分かれていて、表向き「実装を差し替えられる」ようになっていたりします。DI コンポーネント群ならまだしも、値クラスの差し替えが必要になる状況って・・・?

Undo できないツールで Java コードを作る羽目になりました

,

前のエントリで「北府中」と書きましたが、2月からの大炎上プロジェクトは9月1日に離脱して、いまは北府中で別のプロジェクトに関わってます。

入ったときの工程は外部設計の終了間近で、10月から内部設計~単体試験を順々にこなしていってます。
・・・1ヶ月ちょっとたって炎上の予感がします。いろんな意味で。

今回のプロジェクトは、(どっかで見たことのある)「自働化」をコンセプトにあげていて、Java だけれど自前で Java を書くなというスタンス。オレオレ感のあるフレームワークと、Excel VBA ベースのツールから Java コードを出して、原則それに手を加えることなく、Eclipse のプロジェクトに登録すれば、情報システムが完成!! という代物です。

そして、いつものうたい文句:「コードの品質をそろえることができます!!」「Java の知識がなくても、開発をすることができます!!」
代わりに、Java (に限らず、プログラミング全般)の知識がある人にとっては、拷問級のツールを使わされることになりました。

いろいろビックリ仰天な制約があって、書き出したらすごく長くなってしまったので、小出しにします。1つめは・・・Excel VBA に詳しい人は「そうだよなぁ」って言いたくなる制約。

ツールから Java コードを出す、といっても結局オレオレ言語のコードを Excel 上に書いているに過ぎません。だだ少し賢く(!?)て、オレオレ言語のコードを入力したそばから、コード中のエラーを赤字にしたり、正常の場合は右隣のセルに、コードを日本語化した文字列を書き込むようになってます。Excel VBA では、Range オブジェクトの更新系処理を呼ぶと Undo バッファがクリアされるので、結果的に・・・

ツール使用中はUndo ができないという、すごい仕様になってます・・・。
オレオレ言語のメソッド呼び出しの引数を、1つのセルに改行区切りで全部書き込む・・・というところもあり、すごく神経使います。

「その Excel、大きくして」

プロジェクタに映したワークシートの文字がみづらくて、
Aさんが一言、「その Excel、大きくして。」

それを受けてBさんがとった行動は、
なんと 全画面表示 でした。

… その場全員、意外すぎて撃沈。

Bさん、Excel のズーム機能の存在を
その時まで知らなかったようです。

ウィンドウ右上の「85%」に哀愁を感じた瞬間。

ストップウォッチと Excel の相性

# 久しぶりに土曜日が休みになったので、夜更かししてます:lol:

今日(正しくは昨日…)、なかなか面白い事件にあいました。

今のプロジェクト、試験フェーズも終わりに差し掛かり、
今週の初めから「性能試験/単レスポンス測定」と称して、
ストップウォッチでWeb画面の遷移時間の測定をやってました。
# 試験者は別の人です。

今日、試験結果の取りまとめをしてたリーダーがどたどたと僕のほうに来て、
「これ何とかしろ」と、単レスポンスの測定結果が書かれたワークシートを見せてきました。
そこに書かれていたレスポンス時間、「2"10」とか「1"31」とか。

・・・AVERAGE() で平均値算出できないぢゃん:faint:


なるほど、ストップウォッチの表記をそのまま記入したらそうなります。
Excel が min'sec"msec 形式の入力に対応してればいいのですが、
普通(?)なら「2"10」ではなくて「2.10」と書きますねぇ・・・。

今回は「"」→「.」の置換だけで済んだのでまだ良かったです。

----

余談ですが、Excel でミリ秒まで含んだ時刻を入力すると、表示上はミリ秒まで表示されるのですが、
F2とかでセル編集を開始すると、↓こんな感じでミリ秒部が四捨五入され秒単位になってしまいます。
  • 「11:22:33.444」-(F2を押すと)→「11:22:33」
  • 「11:22:33.555」-(F2を押すと)→「11:22:34」(!)

明示的に表示書式 hh:mm:ss.000 を設定しても駄目。(あくまで表示用なので)
これ、なんとかなりませんかね。

Excel ワークシートを貼り付けたつもりが。。。

[形式を選択して貼り付け]コマンド実行時は、確かに「Microsoft Excel ワークシートオブジェクト」と表示されるのですが、実はワークブック全体が貼り付けられているというオチ。

とある設計書(Word 文書)に OLE で貼り付けてあった Excel ワークシートを編集したら、他のワークシートがずらずらと並んでいました。
しかも、作業用・・・というよりは元作成者の頭整理用シートらしく、「確定!」とか「これ、ありえない」とか書かれていたのです・・・

元作成者に問い詰めると、「まさかブック全体が貼り付けられるとは思ってませんでした」とのこと。
納品前でよかったです・・・
February 2012
M T W T F S S
January 2012March 2012
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29