昔プログラマだったのですが、
まぁ割りとク◯プログラマだったと自覚してて
向いてないとずーっと言ってて(実質向いてなかったと思うけど)
そんなク◯プログラマをさらに上回るようなプロジェクトにも
参加してたことがあるわけです。
絶対使えない仕様
やることは、一覧画面にある帳票ボタンを押すと、その一覧の帳票が出力されること。
ウチは、その帳票ボタンを押した先を作ることになったのだけど、
なぜかDBアクセスからSQLも1回でしなければならない。と言われた。
この業務で300行を超えるSQL文を書けるようになったのだけど
1回の発行では確実に帳票にできないものが出てくる。
なぜか一回にこだわる上司は GROUP BYすることにした。
そうすると、まとめられないカラムは何らかの条件(Max表示したり)をつけなければならない。
って、それ帳票でやっちゃだめやん。
ていうか、一覧と同じもの表示するはずの前提ひっくり返してるやん。
当時新人だったので、どこからおかしいのかがよく分からず、言われたまま頑張って作ってた。
まぁグルーピングが始まった時点で、ちょっとおかしいのは気付き始めたのだけど、どうおかしいかまでは分からずひとまず完成させるために走った。
途中、同じプロジェクトの同僚が病に倒れ、私も無駄なSQL文を作って超絶メンテナンスできなさそうなものを作ることに成功した。
納品には間に合い、私達はそのプロジェクトから抜けたわけだけど
どうなったんだろうね・・・
今ならどうするかなー。
とりあえず、画面と違うものが帳票で出るんだから、同じものをどうにかして出す方法考えるよね。(なぜあれでよしとなったのか、もめなかったのか謎だけど)
1.画面に出ているものと全く一緒でよかったので、その情報をそのまま引き継げるようにpostで渡してもらう。
→力技すぎるけど、一番頭使わなくてよさそう。まぁ普通はしないか。
2.そもそもpostが一回というだけの制約なので、SQLが一回しか発行できないことがおかしいから、そのプログラム設計周りを再考する。
→たぶん使えるモジュールの制約とかがあったはずだけど、理論的にSQLが一回しか発行できないって変。
3.そもそも先方とそんな仕様で合意できたってどうよ?というところを納得したい
→納得できちゃだめだと思うけど、今の自分だったらどういう話でそんな合意が取れたのかあらためて聞いてみたい(興味本位)