« May 2010 | Main | July 2010 »

June 2010

2010.06.24

Trac/同一項目の複数条件指定(or指定)でエラー

カスタムクエリ画面で更新日を条件に抽出したい(2) の適用の影響で、ある項目に対し「に含まれる」で複数条件を指定するとエラーが発生するという現象が出ていました。

1年半以上放置していた不具合ですが、実はすごくつまらないミスだったことが発覚(^^;

上記リンク先の対応を行った際に、

args += [item[1] for item in constraint_sql]

の部分をコメントアウトしたのですが、それが原因でした。

LIKE検索を行うためのSQLを構築するのに、必要となるパラメータをセットしていなければ、そりゃエラーになってしまいます(笑)。

ただ、 get_constraint_sql 関数修正に伴い、そのまま処理を書いただけではNGで、

args += [item[1][0] for item in constraint_sql]

と書くことで、問題なく動作するようです(戻り値がリストになってしまっているため、先頭の要素を取得するように[0]を書く必要がある)。

#まぁ、元々がかなりのやっつけ仕事だったので、思わぬところ(?)に影響が出てしまっていますねぇ・・・。

| | Comments (0) | TrackBack (0)

2010.06.23

Trac/カスタムクエリでテキスト入力項目でグループ化を可能にする

Trac0.12がリリースされましたが、相変わらずTrac0.11.1を使い続けている今日この頃。カスタマイズしすぎて、逆にそうそうアップデートできない状況というか何というか。そのうち、0.12ベースに乗り換えたいなぁ、とも思いつつ、多分当分先になるんでしょうねぇ。

閑話休題。

Tracのカスタムクエリは、基本的にコンボボックスとかラジオボタンの項目でしかグループ化できません。しかしながら、報告者および担当者(テキスト入力)に関してもグループ化できることから、改造すれば任意のテキスト入力項目でグループ化できるのではないかと推測。

で、調べてみると、すごく単純。

ticket/templates/query.html ファイル内の、

py:if="field.type in ('select', 'radio') or field_name in ('owner', 'reporter')"

の部分で項目を絞り込んでいるだけなので、極端な話、この行を削除してしまえば全ての項目を利用可能に。
ただ、この状態だと、概要とか説明とか、グループ化してもまず意味がないと思われる項目に関してもグループ化できてしまうことに。また、時刻なんかでグループ化しても、多分意味がないですよねぇ。

対応方法としては、

1.上記の行を削除して、運用で回避してもらう。
2.グループ化できる項目に関して、上記の条件文に追記する。
3.任意の項目を追加できるようなプラグインを作成する。

といった案が考えられますが・・・可能であれば「3.」で対応したいところではあるのですが、今はちょっとそれだけの時間が取れないため、「2.」で誤魔化すこととしますかね・・・。

| | Comments (0) | TrackBack (0)

2010.06.19

Googleドキュメントのフォーム

何となくGoogleドキュメントのフォーム機能を使ってみたかったので、無理矢理理由をこじつけて(?)使ってみました。

ブラウザから結構さくさくとフォームを作成して保存し、公開。
長いURLを他の人に案内して入力してもらうわけですが・・・いくつか難点が。

1.URLがわかれば誰でも回答できてしまう
2.誰が回答したのかわからない

メンバーに出欠確認を取る時にちょっと困るなぁ(とりあえず、名前の入力欄を作って凌ぎましたが)と思っていたのですが、Google Appsの方では対応しているんですね。

フォーム: Google Apps でのフォームの使用印刷 によると、

1.ログインを要求することが出来る
2.ログインしているユーザー名の情報を収集できる

とのこと。ただし、この機能を使えるのは、相手が同じドメインの場合のみで、違うドメインの場合、そもそもログインの時点ではじかれてしまうとのこと。

なので、社内アンケートには問題ありませんが、一部社外の人が混じってしまうような場合は無理、って感じですね。他の機能みたいに「共有」って感じで招待できれば、「一部社外の人」の場合でも対応できるような気もしますが・・・。

| | Comments (0) | TrackBack (0)

2010.06.16

vmrun.exeで稼働中の仮想マシンを終了する

VMware Workstationには、コマンドラインからいろいろと操作することが出来る vmrun.exe というものが付いてきます(Windows版)。

試しに、稼働中の仮想マシンを全て終了するバッチファイルなんてものを作ってみました。


for /F %%I IN ('vmrun.exe list ^| find "vmx"') DO vmrun.exe stop "%%I" soft

vmrun.exeで仮想マシンを停止する場合、停止対象とする仮想マシンの名前を指定する必要があるのですが、どんな名前でも対応できるように、稼働中の仮想マシン名の一覧を取得し、それを順番に停止します。

shutdown.exeと組み合わせれば、ゲストOSとホストOSとをまとめて終了することが可能ですね(^^;

| | Comments (0) | TrackBack (0)

2010.06.04

撮影枚数

昨年の12月に、D70sを使い始めた時の撮影回数が25000ほど(元々兄が使っていたやつなので)。
今年の5月末の時点で約38500。

・・・半年間で13000回以上?? 1ヶ月平均2000枚以上撮影しているんですね(^^;
まぁ、毎週のようにふらりと散歩したり遠出したり。練習も兼ねて、1日に数百枚撮影することも多々。週1回500枚撮影したとすると、1ヶ月で2000枚ですからねぇ。

肝心のシャッターユニットの寿命ですが、結構個体差があるようで数万程度の場合もあれば、十万近くいくものもあるようで(もっとも、十万近く行くのは上位機種などになりますが)。D70sだと、設計上の耐久回数としては3万回程度のようですが、軽く超えてしまっていますね~。

とりあえず、レンズ買ったばっかり(=お金がない)なので、まだまだD70sで引っ張るつもり。頑張ってくれよ~(笑

| | Comments (0) | TrackBack (0)

« May 2010 | Main | July 2010 »