崖っぷちの男

たぶん技術っぽいネタ。ブログ名が決められない

設備予約のCSVをダウンロードするには

はい、びっくりするぐらいニッチな話です。
グループウェアの「desknet's」の話です。さらにいうと以下のバージョンでの話なので、最新版だと違うかもしれません。

  • desknet's V7.0J R1.4

設備予約のCSVのダウンロード、とは

desknet's の「スケジュール」には、CSVのエクスポート機能があります。うちの会社だとこの機能は普通に使えるのですが、「設備予約」の方は設備一覧の方に何も出てこないので結果的に設備予約のCSVがダウンロードできません。今回はこれをダウンロードできるようにします。

設備のグループIDを調べる

「設備予約」画面を見て、設備名のリンクにカーソルをあわせるか、あるいは右クリックでURLをコピー、どこかにペーストします。

URLの中に &gid=[数字] という記述を見つけたらそれが設備のグループIDです。

調べたグループIDを使ってそのグループの設備を一覧する

「設備予約」画面から「CSVファイルへエクスポート」をクリックしてエクスポート画面を開きます。

「設備グループ一覧」の「↓表示」ボタンをクリックします。

するとブラウザの上のURL欄が変化しますが、その中で &assigngroup= を探して、イコールの後ろに先ほど調べた ID を入力します。

http:// (略) /dnet.exe?page=plantpsetschexport&selectid=&gid=
&assigngroup=[グループID]
&imexfld=&sdate=20110421&edate=20110521&tmpm=

入力できたらURL欄で Enter を押せば、設備一覧に正しく設備が表示されます。

あとはCSVエクスポートしたい設備を選んで、「OK」を押します。これでCSVがダウンロードできます。

だから何なの?

バッドノウハウ的ですが、このバージョンの desknet's にはプログラムから設備予約等のデータを取得するためのAPIが用意されていません。

ということは設備予約のデータをプログラムで取得したいときは「設備予約」の画面、つまりHTMLをパースするか、CSVとしてダウンロードするしかありません。HTMLをパースよりCSVを加工する方が遥かに楽なので、CSVエクスポートをどうしても使いたい、という訳です。

そのデータを何に使うのか

各会議室の空き状況がリアルタイムに分かったりするといいなーと思ってるんですが、とりあえずはスクリプト実行→現在の状況出力というところまで作っています。


おしまい。最近はブログでよく薦められている本を読んでいます。『人月の神話』をとりあえず読み終わりました。
割と最近出た新組新装版を読んだのですが、エピローグからちょっと引用:

あふれる情熱から、人が何ら報酬を受けることなく、ただでも喜んで追求するようなことを職業とする特権を、神はほんの一握りの人間にしか与えてくれないものだ。

おもしろいと思うことを仕事にできるのって、恵まれてるんですかね。