Laboratory of Mobile Agricultural Chemicals Searcher
携帯農薬検索実験室

研究会

  ツリー表示 ┃スレッド表示 ┃一覧表示 ┃トピック表示 ┃番号順表示 ┃検索  
17 / 54 ページ <前へ | 次へ>

〔743〕Re:ACFinder 071120test版
 kabe WEB  (07/11/21 9:13)

引用なし
   kabe です。

CSVデータを極力変換しなくても済むよう、全角アルファベット、数字、記号は半角のままでいきます。
http://www.acis.famic.go.jp/toroku/dokusei.htm から取得した毒性データについても、同様の変換を行ってデータベースに取り込むよう修正しています。

で、spec.db が更新されない場合、薬剤タブでDDVP や MEP などのASCII文字列の毒性、魚毒性が表示されない不具合があります。
そのような場合は、データ更新ダイアログから拡張機能>毒性テーブル(spec.m_dokusei)更新を実行してください。
あるいは spec.db を削除してから acfinder を再起動してください。
・ツリー全体表示

〔742〕Re:ACFinder 071119test版
 Hidemi Oya WEB  (07/11/21 1:05)

引用なし
   kabe さん、こん**は。Hidemi Oya です。

>テーブルに入れる時にカラム数を25に揃える必要があるので、不足している行(有効成分2〜5の有無により異なる)
 プログラムは、フィールド数固定になるように作ってあるつもりだったんですが…。実は、xls を xdoc2txt で TAB 区切りテキストに変換し、それを perl で CSV に変換しています。で、xdoc2txt が余分な行末 TAB を削除してしまうのをすっかり忘れてました(^_^;)。

>括弧記号の半角変換のチェックが不要になったので、あとはカラム数が25になるようにカンマを付加していただければ、そのまま読み込むことも可能です。
 CSV データをフィールド数固定にしました。
 なお、「u」は「m2」ではなく、「m^2」になっているので、ご注意ください。Delphi で1行読み込んだら、下記の方法で変換すれば、それほど時間はかからないと思います。
line := AnsiReplaceStr(line, 'm^2', 'u');

>ただ現状では、適用部の実テーブルである m_tekiyo には登録番号をキーにして登録基本部から参照できる農薬名などのカラムは入れていません。別にこれはあってもかまわないのですが、その分データベースのファイルサイズは増えます。
 INSERT INTO のフィールドとしては指定できるけど、実際には保存されないダミーフィールドがあれば話は簡単なんですけどね。
 とりあえずは、最初に CSV ファイルをそのまま INSERT INTO したテンポラリテーブルを作成し、そこから必要フィールドだけにした実テーブルにするって手もありますね。Delphi 側で処理するのとどっちが速いだろう?
・ツリー全体表示

〔741〕ACFinder 071120test版
 kabe WEB  (07/11/20 23:08)

引用なし
   kabe です。

071120test版です。
http://acfinder.kabe.info/acfinder071120.exe

zip書庫の解凍時に上書き確認ダイアログが出ないよう修正しました。
ExepressCX フリー版でインストーラーを作成してみました。
デフォルトインストール先がProgram Files で今のところインストール先を記憶しません。次回からレジストリに記録するようにします。
余力があればアンインストーラも作成します。
・ツリー全体表示

〔740〕Re:ACFinder 071119test版
 [名前なし] WEB  (07/11/20 9:53)

引用なし
   >Hidemi Oyaさん

kabe です。

> CSV の場合、csv->acis.db変換が 11.4 秒、データベース更新が 20.8 秒でした。薬検のデータを使うと、xls->acis.db 変換が 15.2秒、データベース更新が 24.9 秒なので、トータルで8秒弱短縮できたことになります。もうちょっと速いかと思ったんですが、データベースの書込にそれなりに時間がかかってるってことですかね。
CSVファイルを読みながら、1行をそのままINSERT INTO すると、おそらくかなり早いのではないかと思います。
登録基本部の方は屋号を取りながら通称名を加える作業をしていますが、これはデータ数も少ないのでそれほど時間はかからない思います。
適用部の方はデータ数が多いので、何らかの変換作業を加えると、その分時間がかかります。
現在のところ次のような処理をしています。
テキストモードで開いて readln
1行を TStringList.DelimitedText にセット(QuoteChar を ' にするため)
(CommaTextだと 2,4PA などが別のカラムになってしまう)
テーブルに入れる時にカラム数を25に揃える必要があるので、不足している行(有効成分2〜5の有無により異なる)
は、カラム数を増やす。(StringListに空文字を Add)
テーブルに INSERT INTO
その際、再度各カラムを ' でくくる処理をする。
(その他、m2 の u変換なども行う)
という感じです。

括弧記号の半角変換のチェックが不要になったので、あとはカラム数が25になるようにカンマを付加していただければ、そのまま読み込むことも可能です。
ただ現状では、適用部の実テーブルである m_tekiyo には登録番号をキーにして登録基本部から参照できる農薬名などのカラムは入れていません。別にこれはあってもかまわないのですが、その分データベースのファイルサイズは増えます。
・ツリー全体表示

〔739〕Re:ACFinder 071119test版
 Hidemi Oya WEB  (07/11/20 3:40)

引用なし
   kabe さん、こん**は。Hidemi Oya です。

 071119test 版ですが、ZIP ファイル解凍の際に、すでにファイルが存在すると、処理確認ダイアログが表示されます。'-aoa' スイッチを付けて、強制上書きするようにしてください。
・ツリー全体表示

〔738〕Re:CSV データメモ
 Hidemi Oya WEB  (07/11/20 3:29)

引用なし
   > あるかどうかは分かりませんが、kihon.csv, tekiyo.csv ともに、全角英数字は全て半角に変換するようにしました。
 これだと全角「〜」が半角「~」になってしまうことと、処理時間短縮のために、全角「()[]」を半角「()[]」に変換するだけにしました。
・ツリー全体表示

〔737〕Re:ACFinder 071119test版
 Hidemi Oya WEB  (07/11/19 23:59)

引用なし
   kabe さん、こん**は。Hidemi Oya です。

>CSVデータ対応版を作成しました。
 素早い対応、誠にありがとうございます。

 CSV の場合、csv->acis.db変換が 11.4 秒、データベース更新が 20.8 秒でした。薬検のデータを使うと、xls->acis.db 変換が 15.2秒、データベース更新が 24.9 秒なので、トータルで8秒弱短縮できたことになります。もうちょっと速いかと思ったんですが、データベースの書込にそれなりに時間がかかってるってことですかね。
 しかし、何でデータベース更新まで短縮できるんでしょう? 農薬名等の英数字が半角になったので、データ量が若干減ったからでしょうかね?
・ツリー全体表示

〔736〕Re:CSV データメモ
 Hidemi Oya WEB  (07/11/19 23:00)

引用なし
   kabe さん、こん**は。Hidemi Oya です。

>tekiyo.csvを作成する際に括弧記号の半角変換もしていただけるとありがたいです。
 あるかどうかは分かりませんが、kihon.csv, tekiyo.csv ともに、全角英数字は全て半角に変換するようにしました。今まで 130 秒強で変換できてたんですが、一気に 230 秒弱かかるようになりました(^_^;)。
 ついでに、いろいろ試している間に tekiyo.csv 先頭のフィールド名レコードがおかしくなっていたので、修正しました。
・ツリー全体表示

〔735〕ACFinder 071119test版
 kabe WEB  (07/11/19 21:59)

引用なし
   kabe です。

CSVデータ対応版を作成しました。
http://acfinder.kabe.info/acfinder071119test.zip

けっこう手直ししているので、動作確認お願いします。

CSVデータを利用するには、設定>基本設定>接続タブ から
ダウンロードサイトを携帯農薬検索実験室に設定してください。
デフォルトは薬検からダウンロードします。

データベースに作成した ACFinder のバージョンを記録し、ACFinder が更新された場合、データベース更新の必要があればダイアログを出すようにしました。

CSVデータから ACFinder のデータベース作成時の変換は
登録基本部は変換時に農薬通称名を作成する以外はそのまま取り込みます。
登録適用部は作物名、病害虫名の記号を半角変換、使用方法の m2 を u に変換しています。
・ツリー全体表示

〔734〕CSV データメモ
 kabe WEB  (07/11/19 13:26)

引用なし
   >Hidemi Oyaさん

kabe です。

tekiyo.csv に部分的に全角の()[]が残っています。
というか元のExcelデータがそうなってるようです。
tekiyo.csvを作成する際に括弧記号の半角変換もしていただけるとありがたいです。

作物名
かき(西条)[熟柿栽培]
かき(太秋)
ぶどう(巨峰系4倍体品種)[巨峰を除く]
ぶどう(2倍体米国系品種)[デラウエアを除く]
病害虫名
一年生イネ科雑草(スズメノカタビラを除く)

作物と病害虫IDを摘要テーブルに作成する際に、検索システムから取得した名称と同じでないとIDが空になります。摘要データ側と検索システム側の両方を変換処理するとその分時間がかかるので、検索システム側の名称をtekiyo.csv に合わせるように変換しようと思います。上記のような例外があると結局、摘要側もチェックしないといけないので。
・ツリー全体表示

〔733〕Re:CSV データを利用した ACFinder 開発の...
 Hidemi Oya WEB  (07/11/18 22:36)

引用なし
   kabe さん、こん**は。Hidemi Oya です。

>toroku.zip が 正しい zip 書庫かどうか確認お願いします。
 自宅サーバからレンタルサーバに自動転送する際に、ascii モードで転送しちゃってたようです。
 現在は修正してありますが、ブラウザのキャッシュを消去しないと新しいデータがダウンロードできない場合があるかもしれません。新ファイルのサイズは、1,277,019 バイトなので、ファイルサイズが異なる場合は、ブラウザのキャッシュをクリアしてください。
・ツリー全体表示

〔732〕Re:CSV データを利用した ACFinder 開発の...
 kabe WEB  (07/11/18 20:51)

引用なし
   >Hidemi Oyaさん

kabe です。
修正版の作成に取りかかり始めたのですが、ZIP の解凍ができません。
toroku.zip が 正しい zip 書庫かどうか確認お願いします。
・ツリー全体表示

〔731〕CSV データを利用した ACFinder 開発のお願...
 Hidemi Oya WEB  (07/11/17 23:01)

引用なし
   kabe さん、こん**は。Hidemi Oya です。

 [#730] の CSV データは、ファイルサイズが薬検 Excel データの 1/4 程度なので、ISDN のようなナローバンドでもなんとか実用になります。また、Excel データの読み込みが不要になるので、データベース更新時間も短縮できるはずです。
 ということで、ACFinder がこちらのデータも使えるようにしていただけると、大変ありがたいです。

 なお、ZIP ファイルは、統合アーカイバプロジェクトの 7-zip32.dll でも解凍可能です。7-zip32.dll は LGPL ライセンスで、DLL 単体を ACFinder に同梱することが可能です(ドキュメントに 7-zip32.dll を使用していることと、ソースの入手先を記述しておく必要はありますが)。
 現在の ACFinder は、unlha32.dll を別途導入しなければならない点が敷居を高くしています。CSV データ対応版では、ぜひ 7-zip32.dll を同梱してください。

 さらに、フリーのインストーラの「EXEpress CX for free software Licensed Edition」か「簡単インストーラ」あたりを使えば、ユーザがもっと ACFinder を利用しやすくなります。ぜひ、インストーラパッケージの提供もご検討ください。
・ツリー全体表示

〔730〕CSV 形式の農薬登録情報ダウンロードサービ...
 Hidemi Oya WEB  (07/11/17 22:46)

引用なし
    独立行政法人農林水産消費安全技術センターの許可を得て、CSV 形式の農薬登録情報のダウンロードサービスを開始しました。個人的な利用の範囲なら、誰でも自由にお使いいただけます。ただし、本サービスで提供しているデータを利用して、ウェブ検索システムを公開するような場合は、それぞれで安全技術センターの許諾を得る必要があります。
 詳細は、「データ」ページをご覧ください。
・ツリー全体表示

〔729〕静かだが…
 Hidemi Oya WEB  (07/11/13 23:36)

引用なし
   > 音もかなり静かです。何でこんなに静かなのかと思ったら、起動の時に少し CPU ファンが回るだけで、WindowsXp の起動画面に切り替わる頃には CPU ファンが止まってしまいます。
 CPU ファンは回ったり止まったりしますが、もうひとつのファンであるケースファンは常に一定回転で回っているようです(電源はファンレス)。で、自分の PC が立ち上がってたり、TV がついてたりするとケースファンの音は全く気になりませんが、他の物音がしない深夜や早朝は、ケースファンの音が結構気になります。
 ケースファンの静音化に取り組まねば…。
・ツリー全体表示

〔728〕Re:自前サーバ中間報告
 Hidemi Oya WEB  (07/11/09 1:09)

引用なし
   >あと SQLite を入れれば、LAMP (Linux Apache MySQL Perl|PHP)環境ならぬ、WASP 環境のできあがりです。
 PHP も perl も、SQLite ドライバが RDBMS を兼ねてるようで、特に sqlite3.dll 等を設定する必要はないようですね。逆に言うと、sqlite3.dll が新しくなっても、ドライバが更新されない限り使用可能な SQLite のバージョンは変わらないようです。
 う〜ん、便利なようで不便な仕様だ…。

 ようやく、apache が思った通りに動作する設定になりました。kabe さんのおかげで データベース自動更新のメドもついたので、いよいよ本格的なシステム開発です。
・ツリー全体表示

〔727〕自前サーバ中間報告
 Hidemi Oya WEB  (07/11/08 0:52)

引用なし
   >当面は手動で acis.db を更新するとして、本格的に新システムが稼働するようになったら、自前サーバで acis.db を自動更新しようと思います。
 新システムを作る前に、とりあえず自前サーバを立ち上げてしまいました。マシンは、中古の NetVista M42 Slim 6920-62J です。サイズ的には AcerPower くらいのものが良かったんですが、中古だとほとんどありません。スリム PC の中でもなるべく小型のもので、静かで省電力マシンということで、これになりました。価格は、増設メモリ 128MB と WindowsXp Professional (SP2 アップデート済み)付きで、DSP 版の WindowsXp Professional よりやや高いってことろでした。


 メモリは付いてきたものを外して、余りパーツで 1GB にしています。この状態で、ワットチェッカーで消費電力を確認したところ、起動時に 60W 前後(最大 68W)になるものの、起動完了後は 34W で安定してました。なかなかの省エネマシンです。
 音もかなり静かです。何でこんなに静かなのかと思ったら、起動の時に少し CPU ファンが回るだけで、WindowsXp の起動画面に切り替わる頃には CPU ファンが止まってしまいます。こんなんで大丈夫なのかなと思いましたが、CPU ファンが止まっていてもヒートシンクはぬるいままでした。Celeron 2.0GHz の特別仕様版はダテじゃないようです。とはいえ、熱伝導シートの劣化で CPU の熱が伝わらなくてヒートシンクがぬるいままということもあり、これで痛い目に遭ってますので、ちょっと心配(^_^;)。

 ELECOM のパソコン切替器が 2,980 円と安かったので、これでサーバと常日頃使うマシンを切り替えながら使っています。パソコン切替器は、昔は高くて 1024x768 くらいまでにしか対応していなかったりしましたが、今はこんな安くても 2048x1536 まで対応してるんですね。いや〜、時代は変わった…。
 ルータの LAN ポートが足りなかったので5ポートのスイッチングハブも購入しましたが、CATV 時代に使っていたルータが余っているので、DMZ にサーバ、DMZ の内側に家庭内 LAN という形にすることも検討中です。

 サーバソフトは、全てフリーソフトです。HTTP サーバは AnHttpd が設定が楽ですが、モジュール版 PHP を使えるようにしたかったので、Apache 2.2.6 にしました。これに、ActivePerl 5.8.8 と PHP 5.2.4 を入れています。あと SQLite を入れれば、LAMP (Linux Apache MySQL Perl|PHP)環境ならぬ、WASP 環境のできあがりです。
 DMZ にサーバを置くなら、FTP サーバも入れなきゃですね。
・ツリー全体表示

〔726〕ERRORLEVEL は OK でした
 Hidemi Oya WEB  (07/11/07 23:44)

引用なし
   kabe さん、こん**は。Hidemi Oya です。

> ありがとうございます。が、更新有りでも無しでもゼロが返って来てしまいました。
 すみません。再確認したらバッチリ OK でした。もしかしたら、ACFinder が立ち上がっている状態で別の ACFinder で更新してしまったのかも(^_^;)。
・ツリー全体表示

〔725〕Re:ACFinder071107test版
 Hidemi Oya WEB  (07/11/07 23:31)

引用なし
   kabe さん、こん**は。Hidemi Oya です。

>以前はあったんですが、いつからか、どちらも「はなやさい」が消えています。
 本当だ、両方消えてますね。私の HDD に古い sakumotu50on.htm が残っていただけでした(^_^;)。

>すいません。テストした時は動いたのですが、どうも、AllowMultiStatement を true にするのを忘れていたことが原因のようです。
 今回はバッチリテーブルが作成できました。製剤の毒性と登録の有効期限が表示されるのは良いですね。
 毒性と有効期限の2つを一括登録するにはこの方法しかなさそうですが、JPP-NET が使えないとダメってのがちょっと…。それと、JPP-NET が使えたとしても、農薬が増えるたびに JPP-NET からダウンロードして ACFinder に登録するのを毎回手動でやるのも面倒です。
 薬検だと vtllg204.do で人畜毒性と魚毒性が出ます。毒性データは別データベースにして ATTACH し、薬剤タブで表示したときにデータが無かったら vtllg204.do を読みに行ってテーブルに保存するってのはどうでしょう? 個人的にアクセスしたものを保存するのなら、ブラウザのキャッシュと同じようなものと考えられるのではないかと…。
 有効期限も表示するには、vtllg304.do にもアクセスする必要がありますが、2つにアクセスしてもナローバンドでもそれほど時間はかからないのではないかと思います。ただし、有効期限の場合は、現在の日付よりも有効期限が古い場合は再取得するようにしておく必要がありますが…。

>終了時に halt を実行すればいいんでしょうか。
>一応、修正してみました。
 ありがとうございます。が、更新有りでも無しでもゼロが返って来てしまいました。
・ツリー全体表示

〔724〕ACFinder071107test版
 kabe WEB  (07/11/07 21:31)

引用なし
   >Hidemi Oyaさん

kabe です。
071107test版です。
http://acfinder.kabe.info/acfinder071107test.zip

> sakumotu50on.htm の方には存在して、0201001201 になってますね。
以前はあったんですが、いつからか、どちらも「はなやさい」が消えています。
検索システムの方は作物名入力で「はなやさい」を入力すると「カリフラワー」が出てきます。

>m_sakumotsu には 0201001201 という ID はないので、こちらを使った方が良さそうです。
0201001201 にしました。

> すみません、剤の概要の CSV ファイルを読むと、「no such table: tJppSeizai」というエラーになります。
すいません。テストした時は動いたのですが、どうも、AllowMultiStatement を true にするのを忘れていたことが原因のようです。
修正しました。

> ついでにお願いで申し訳ありませんが、/U オプションでデータベース更新をしたときに、実際に更新したかどうかが ERRORLEVEL で分かるようにしていただけませんか?
終了時に halt を実行すればいいんでしょうか。
一応、修正してみました。
更新がなければ 0
更新があれば 1
を返します。
・ツリー全体表示

  ツリー表示 ┃スレッド表示 ┃一覧表示 ┃トピック表示 ┃番号順表示 ┃検索  
17 / 54 ページ <前へ | 次へ>
ページ:  ┃  記事番号:   
(SS)C-BOARD vv3.8 is Free.