【Computing】のブログ記事

 休み明けはトラブルが多発するので休暇を取らないよう心がけているのであるが、今日もなかなか盛り沢山だった。毎日動かしているPCが急に1週間停まると調子狂うのかな。

 今度の休み前には「PCはつけっぱなしで帰ること」ってアナウンス出してみようかな・・・あ、でもUSO800がらみで却下されるか。

 ちがった、ISO14001か。

2009年8月 6日  

ログ

 お世話になっている自動車整備工場でコンピューター関係の作業。PCにメモリを追加したり、ソフトをインストールしたり、SUV-CAMのバージョンを上げてSDHCを読めるようにしたり・・・と約2時間ほど。

 ワシが作業している間、整備士さんとレーサーKさんは別のPCを使い、富士スピードウェイを走ったときのログを表示しながらラインやスピードの分析をしていた。GPSを使って位置情報を取得し、周回データを重ねて表示できるらしい。レース界ではこの辺はもうすっかり当たり前になっているそうで、レーシングスクールでは他のドライバーのデータと付け合わせて「もっとつっこめる」などと走りを盗めるらしい。ブレーキもタイミングだけでなく圧の強さまで見られるそうだし、ステアリングの動きもログがとられて、たとえばマイナス方向のログが残っていたらそれはカウンターが当たっている(=ロス)ということなんだそうだ。「あの看板まで突っ込め」なんてレベルの話じゃないんですな。

 ヒールアンドトゥなんかも、ブレーキの掛け具合、リリース具合、アクセルの合わせなどを細かく指摘されるらしい。ブレーキは早くリリースすればいいのかと思っていたがそうでもないそうで、不安定な挙動を与えてはいけないのだそうだ。全てが高次元で、スムースに行われなくてはならないんですな。

 昔は速く走ることに憧れていたが、今はだんだんと興味が別の方向に移ってきている。今回見聞きしたことも凄いなと思ったが、ますます「ワシには無理だな」という気持ちが強くなったのだった。

 昨日と今日で某所のPC移行作業。予備機のない環境での作業は緊張ですな。

 ThunderBirdのメールデータ移行がうまく行かず危機を感じた。Webサイトにはiniファイルをいじってフォルダ名を指定し・・・なんて書いてあったので何度かやってみたが、どうしてもうまくいかない。ThunderBirdが自分で生成したフォルダじゃないとダメなのかなと思い、新しいプロファイルを作成していったん終了し、そのフォルダに過去のデータを上書きコピーしたらあっさりと解決した。終わってみればあっさりだったが、過去数年分の仕事のデータが詰まっていてコピーだけでもけっこう時間がかかる。「あと30分」「あと20分・・・かも」「ごめん・・・あと25分」の繰り返しは辛いのである。

 今日はプリンタの設定。XPのPCではLPTは使わない方がいいことは過去の経験で学んでいたが、USBケーブルを用意するのを忘れていたのであった。この辺は事前に気を回して準備が出来るようにならないといけないのだが・・・まだまだですな。

 プリンタ自体はあっさりと設定がおわり、他の追加作業などもスムーズに進んで20時前には終了。21時すぎに泳ぎ始めて50分ほど水の中。700mほど泳いだところで急に混雑してきたのでウォーキングレーンに待避。カニ歩きは股関節が伸びて気持ちがいい。

2009年7月 8日  

エア・エクセル

 エクセルの講習会で講師をやってみる。最近の若い子は学校でも習ったりしているから普通に出来るものだとばかり思っていたが、案外そうでもないようで超初歩(=A1+B1)からじっくりやった。簡単すぎてつまらないという声が出るかもと心配していたが、

「掛けるってどうやってやるんですか」

と聞かれたときは、講習会開いてよかったとしみじみ思ったな。まあ、中学高校で6年間英語を学んでも英語がわからない人が多い(ワシもそうだけど)のと同じですな。

 この手の講習をやるとなると、たいていは外の教室に通わせたり、本を買って来てその通りにって感じになることが多いのだが、今回は教材もあえて全部自作した。中のデータは実際に業務で使う親しみ深い言葉や数字を使い、すぐに使えなくても「覚えれば便利そうだ」というイメージが頭の中に残るようにしてみた。たった90分の講習でいきなり達人になることはないだろうが、流れを変えるきっかけ作りになればという作戦。こういうやり方は外の業者には出来ないはずで、内製ならではの内容だと思う。

 エクセルってある意味魔法のソフトで、パソコンとかプログラムの知識が皆無でも自己流で使うことが出来てしまう。しかし、きれいに印刷された表も中を見てみたらトンでもない方眼紙状態だったり、電卓で計算した結果がチマチマと打ち込まれていたりなんてことも非常に多い。毎日エクセルを使っていても「関数って何?」って人も相当多い。最近はpdfにしてメールで送付するから、中身の悲惨さもバレにくいようですな。「エア・ギター」風に言うと「エア・エクセル」ってところか。

2009年7月 1日  

ルパン for Windows

 OL十数人が集まったミーティングで新作ツールの説明をした。大画面につないでオフコンやPCの操作を実演するわけである。

 昔は「ルパン for Windows」でミーティングのタイトルを流して笑いを取っていたことをふと思い出した。そういえば今回のメンバーであれ知ってるやつはたぶんいないな・・・PCの中を探してみたらまだあったのでノートPCにコピーし、仕込んでおいた。Windows3.1用だからもう十数年前のものだな。たしか、DOS/Vブームの時にDOS/Vマガジンで読んで知ったんだったっけ。

 で、ミーティング開始。

20090701a.jpg「では、始めます」

「タタン、タン、タン、タン、タン、タン」

「チャラララー チャチャン チャチャン チャチャン チャチャン チャンチャンチャン」

 ということで、その後のミーティングも好評のうち(たぶん・・・)に終了した。

 終わってから探してみたら、まだVectorに載っていて嬉しかった。ググッた時の検索結果も

ルパン for windows の検索結果 約 768,000 件中 1 - 10 件目 (0.40 秒)

だったから、かなりのものだ。ルパンとルパン for Windows、愛されてますな。

 ちなみにこれはフリーソフトで、Windows3.1以降でMS明朝が入っていれば動く(今日はWin2000で動かした)。インストールなどは不要で、ダウンロードして解凍し、中にある「lupin.exe」をダブルクリックすると動く。

20090701b.jpg ただ動かすだけだと、アニメのサブタイトルが表示される。今回のように好きな文字を出したい場合にはプログラムの引数で渡す。ショートカットを作り、中に仕込んでおくと便利だ。詳しくは同梱されているドキュメントに記載されている。

(画面イメージは、画像ソフトで再現したものです)

 Twitter Badgeから@付投稿を削るの続きである。急にバージョンアップしたくなって、やってみた。前回の作業内容を思い出しながら試行錯誤、for を do ~ while に変えて足したり引いたりするようにして、なんとか形になった。これでもまだ根本的な対応ではないが・・・まあとりあえず今回はここまで。次はまたやりたくなったときにやる。

 夕食は外食でとの指示が出たので超久しぶりに鵜ノ木『とんでんかん』に行ってみる。以前は毎週のように通っていた。久しぶりに行ってみると、赤玉の唐辛子の辛味が以前よりも強くなっているような。赤ハリガネから入って替玉は白ハリガネで抑えておく・・・が、我慢出来なくなって白粉落としをもう一つ。ワシが追い求める味とはやや方向が違うスープではあるが、しっかり作ってあって心して食べられる。親切・丁寧で安心して食べられるのである。

 食後は自動車屋さんからの依頼で別の自動車屋さんへ。ちょうどそこに更に別の自動車屋さんがいたので一仕事依頼。ちょっとややこしいですな。

2009年6月17日  

割り切ったお付き合い

 何年か前にも書いたが、1÷3×3は手で計算すると1で、電卓で計算すると0.999999999になる。この違いを理解し運用に当たらないとコンピューターと手作業は融合しない、とワシは思っている。

 依頼者は「コンピューターで自動でやって」などと軽く言ってくる訳だが、中で考える人はどういう処理がいくつのパターン必要なのかを考えて仕組みを作っていくわけで、その時に依頼漏れがあると当然エラーになったり期待外(依頼者にとっては)の動きをする。最近は誰でも中途半端にコンピューター用語を知っているもんだから「バグだ」などと言って笑ったりする訳だが、それはバグではなくてオーダーミスである。まあ、依頼者の抽象的な要望を聞いた段階でそのことに思い至らなかったという点ではワシの責任ではあるが・・・

 今日もそういうトラブルがあった。端数の調整を入れる必要が生じた。行数に余裕がある場合は調整データを入れるだけで簡単なのだが、稀に行が一杯になっている伝票で調整を入れる場合がある。そういう場合は伝票を2枚に分けて処理する運用ルールなのだが、どうしても1枚でやれという。もともとこの処理はシステム発注の際はまったく話し合われておらず、運用が始まってから「これは出来ないのか」といきなり始まって対応してきたものだ。大部分は解決したが、どうしても1枚では処理しきれないケース(2枚に分ければ簡単に処理出来るのだが)が非常に稀な確率で起きる。

 一度は断ったが、怒りがいったん収まったところで他にも方法は無いかと思い作業してみた。主要なデータは運用ルール通りにしていじらず、コピーしたデータを印刷用データとして編集し、プログラムにも若干手を加えて要望通りの伝票が印刷出来るようにした。今までは基幹業務のデータがおかしくなるような変更は絶対に認めなかったが、「これは基幹業務の機能追加や修正ではなく、顧客サービス用の印刷ツールだ」と考えてみた。

 結果は・・・まあ当たり前だが上手く行く(印刷だけだからワープロみたいなもんだ)。システムとして見ればどうしようもない、最悪・最低のインチキ処理だが、メインデータは今までの運用通りだから気にしないでおく。新たなミスが生じる可能性もこれで増えてしまったが、この場合の運用ルールを新たに設定すればまあ大丈夫だろう。現場もトラブルが避けられて喜んでいる。釈然としない気分も残るが、これは顧客サービスだと割り切った。数字は割り切れないが、人間の気持ちは割り切れる。

 しかし、今回ばかりは「出来た」という嬉しい気持ちよりも残念な気持ちの方が大きかった。何年も前から定めているはずの運用ルールが簡単にひっくり返されてしまったこと、トラブルを避け安泰な方向になびく現場(ワシもか)・・・自分の考えに固執せず柔軟に対応出来たってことだけが収穫だったな。

 Accessでタックシールを作る案件が出てきて、今日作業をした。受注テーブルから品名などを引っ張ってきてシールに印刷するのだが、たとえば数量500で箱の入数が60だとしたら、「入数60」のシールが8枚と「入数20」のシールが1枚欲しいらしい。で、商品マスターにはまだ標準の入数のデータは入っていないし、歩留まりを考慮して数量の変更も出来るようにしなくてはならない。

 あと、シールは2列×4行で8枚並んでいるが、毎回8の倍数で出てくる訳じゃないので余りが生じる。これにも対応してあげたい(プリンターの故障のことを考えると、一度機械を通した紙、特にシール紙は使わない方がいいんだけど・・・)。

 両方とも以前やったことがある内容だが、2つを同時に処理したことはない。まあなんとかなるでしょうと思いながらスタート。

 まずはクエリを作成し、

「商品コード」「商品名」「数量」

を引っ張ってくる。次に商品マスターも見に行って標準入数を持ってくる。

商品コード,商品A,500,60

 次に割り算をし結果は切り捨てて、標準入数での箱数を計算。

商品コード,商品A,500,60,8

出てきた値×標準入数を数量から引くと、入数の端数が出てくる。端数の有り無しで0か1が入るようにし「箱数2」とした。

商品コード,商品A,500,60,8,20,1

 これらを作業テーブルに書き出すことにした。テストデータではうまく行くが、商品マスターに入数の登録がない商品では0除算でエラーが出るので、IIF関数などを使い回避した。

 作業テーブルをベースにしたフォームを作成し、

「商品コード」「品名」「入数1」「箱数1」「入数2」「箱数2」

を編集できるようにした。使いやすくなればと思い、横の方に数値の合計を表示するようにしておいた。

 指定した枚数分のシールが印刷出来るようにするにはネットで紹介されている技を使った。

----------------------------------

1)カウント用のテーブルを用意する(フィールドは1つ「count」だけ、データは1~n・・・nは最大印刷枚数)

  今回は「一度に印刷するのは最大200枚位」とのことだったので、念のために300までセットした。

2)カウント用のテーブルと上記の作業テーブルを元にクエリを作成。二つのテーブルはコードなどで結ばない。箱数1の列で抽出条件に「>=count」としておく。

----------------------------------

 簡単なシールだったらこのクエリを基に印刷すればいいのだが、今回はもう二ひねりする。

 上記のクエリを追加クエリに変更し、作業テーブル2に書き出す。抽出を「箱数1」でやるものと「箱数2」でやるものをそれぞれ作成。

 作業テーブル1に空データを仕込んでおき、他のデータと区別が出来るようフラグを立てておく。空データだけ開くフォームを作成し、1~8を指定するボタン(タックシールの並びと同じ配置)を設置する。ボタンを押すと空データの箱数1に「指定した数字-1」をセットする。出来上がった空データを処理する追加クエリを作成。

 これら3つの追加クエリを実行し、空データ判別フラグ→商品コード→入数でソートしたデータでタックシールを印刷。入数は降順にする。

 あとは作業データを消去するクエリを作成し、適切に流れるようボタンを配置したりしておしまい。比較的短時間で思っていた通りのものが出来た。出張の限られた時間の中で即興演奏のような作業は非常にいい刺激になる。悔しい思いをすることも多いが、今回はまあうまく行った。

               
Powered by Movable Type 4.22-ja