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

研究会

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

〔185〕ACFinder LocalDB版 kabe (06/05/31 22:51)

〔270〕ACFinder 060611版 kabe (06/06/11 21:07)
〔271〕Re:ACFinder 060611版 kabe (06/06/11 21:09)
〔273〕Re:ACFinder 060611版 Hidemi Oya (06/06/11 22:45)
〔277〕Re:ACFinder 060611版 kabe (06/06/12 19:59)
〔278〕Re:ACFinder 060611版 Hidemi Oya (06/06/12 22:51)
〔279〕Re:ACFinder 060611版 Hidemi Oya (06/06/12 23:02)
〔280〕日本語フィールドが使えないのは sqlite3.dl... Hidemi Oya (06/06/13 2:27)
〔281〕Re:日本語フィールドが使えないのは sqlite3... Hidemi Oya (06/06/13 20:34)
〔286〕成分ごとの総使用回数 Hidemi Oya (06/06/16 13:06)
〔291〕Re:成分ごとの総使用回数 kabe (06/06/17 21:15)
〔295〕Re:成分ごとの総使用回数 Hidemi Oya (06/06/18 2:32)
〔300〕Re:成分ごとの総使用回数 Hidemi Oya (06/06/19 9:17)
〔306〕Re:成分ごとの総使用回数 s_kobayashi (06/06/19 21:08)
〔312〕Re:成分ごとの総使用回数 Hidemi Oya (06/06/19 22:25)
〔288〕「にがうり」が「ニガうり」に Hidemi Oya (06/06/16 14:35)
〔289〕データベース共有 Hidemi Oya (06/06/16 15:21)
〔292〕Re:データベース共有 kabe (06/06/17 21:28)
〔296〕Re:データベース共有 Hidemi Oya (06/06/18 2:41)

〔270〕ACFinder 060611版
 kabe WEB  (06/06/11 21:07)

引用なし
   kabe です

060611版です。
http://acfinder.kabe.info/

>#260
データベースファイルの設置場所を自由に設定できるようにしてみました。
ただ。全く初めての起動の場合には少しダイアログが多くてとまどうかもしれません。
一応 LAN内の共有フォルダに置いた場合も検索できるようですが、パフォーマンスは不明です。

>#262
>ワイルドカードの自動付与は一律末尾のみにし、頭に付けたい場合はユーザが自分で付けるってのでどうでしょう?
に対応しました。
が、一部そうでないものがあるかもしれません。
(道路とか公園とか?)

作物名を自動変換して欲しくない場合にはダブルクオーツで囲って入力してください。

屋号について昨日から指摘のあったものを修正しました。
(したつもり)

フィールド名は
テーブル tekiyo
bango,yoto,shurui,meisho,tsusho,ryakusho,sakumotsu,basho,byochu,mokuteki,
baisu,ekiryo,jiki,kaisu,hoho,jikan,ondo,dojo,chitai,tekiyaku,kongo,
kaisu1,kaisu2,kaisu3,kaisu4,kaisu5
です。
noyaku を tekiyaku に変更しました。

〔271〕Re:ACFinder 060611版
 kabe WEB  (06/06/11 21:09)

引用なし
   kabe です

CSV保存時に列名も付けるようにしました。

〔273〕Re:ACFinder 060611版
 Hidemi Oya WEB  (06/06/11 22:45)

引用なし
   kabe さん、こん**は。Hidemi Oya です。
連日のアップデートご苦労様です。

>一応 LAN内の共有フォルダに置いた場合も検索できるようですが、パフォーマンスは不明です。
 これは、後日試してみます。

>が、一部そうでないものがあるかもしれません。
>(道路とか公園とか?)
 道路とか公園も大丈夫でした。

>作物名を自動変換して欲しくない場合にはダブルクオーツで囲って入力してください。
 ダブルクォートなしだと「%4倍体品種」が「%4倍体品種%」になり、ダブルクォートで括った場合は「%4倍体品種」が全く変換されませんでした。シングルクォートも同様の動作にしてもらった方が使いやすいかもしれません。

>屋号について昨日から指摘のあったものを修正しました。
>(したつもり)
 う〜ん、直ってないようです。下記のような SQL で、条件を変えてチェックしています。
select meisho, tsusho from tekiyo where tsusho like "%サイアナミッド%" group by meisho
select meisho, tsusho from tekiyo where meisho like "%シンジェンタ%" group by meisho

>CSV保存時に列名も付けるようにしました。
 ありがとうございます。列名が付くようになりました。自宅マシンには Excel を入れてないので試してませんが、「Excel 出力」でも同様でしょうか?

 [#255] で、
>フィールドエリアスに日本語を使ってもエラーにならなくなりましたが
と書きましたが、'病' という文字が入るとエラーになりますね。「べと」だとちゃんと列名が表示されたりしますので、ShiftJIS -> UTF-8 変換がうまく動作していないのかも?

 それと、前から書こうと思ってていつも忘れてた(^_^;)んですが、SQL エラーを表示する際に、エラーメッセージを UTF-8 -> ShiftJIS 変換していただけるとうれしいです。

〔277〕Re:ACFinder 060611版
 kabe WEB  (06/06/12 19:59)

引用なし
   >Hidemi Oyaさん

kabe です。

>>一応 LAN内の共有フォルダに置いた場合も検索できるようですが、パフォーマンスは不明です。
> これは、後日試してみます。
まだ不完全でした。データベースが開けない場合があり、その後制御不能になります。(;_;
おそらくアクセス制限のかかっている共有フォルダの場合ではないかと思いますが、どう対応したらよいのかわかりません。(^^;

>>作物名を自動変換して欲しくない場合にはダブルクオーツで囲って入力してください。
> ダブルクォートなしだと「%4倍体品種」が「%4倍体品種%」になり、ダブルクォートで括った場合は「%4倍体品種」が全く変換されませんでした。シングルクォートも同様の動作にしてもらった方が使いやすいかもしれません。
了解しました。

>>屋号について昨日から指摘のあったものを修正しました。
>>(したつもり)
> う〜ん、直ってないようです。下記のような SQL で、条件を変えてチェックしています。
説明不足でした。データベース更新時に屋号を抜きながら tsusho フィールドを作成しますので、1回手動で更新してもらわないと直りません。

>>CSV保存時に列名も付けるようにしました。
> ありがとうございます。列名が付くようになりました。自宅マシンには Excel を入れてないので試してませんが、「Excel 出力」でも同様でしょうか?
のはずですが…

>>フィールドエリアスに日本語を使ってもエラーにならなくなりましたが
>と書きましたが、'病' という文字が入るとエラーになりますね。「べと」だとちゃんと列名が表示されたりしますので、ShiftJIS -> UTF-8 変換がうまく動作していないのかも?
ちょっと、ここは原因不明です。
グリッドに表示する前に Utf8ToAnsi しているのですが、AS の後の文字列によっては SQL エラーとなることもあり、それ以前の問題かもしれません。

>SQL エラーを表示する際に、エラーメッセージを UTF-8 -> ShiftJIS 変換していただけるとうれしいです。
ここは修正します。

〔278〕Re:ACFinder 060611版
 Hidemi Oya WEB  (06/06/12 22:51)

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

>まだ不完全でした。データベースが開けない場合があり、その後制御不能になります。(;_;
>おそらくアクセス制限のかかっている共有フォルダの場合ではないかと思いますが、どう対応したらよいのかわかりません。(^^;
 アクセス制限って、使用するユーザがフルコントロールになっていないということでしょうか? という話であれば、everyone フルコントロールのフォルダを使ってくださいと謳っておくしかなさそうです。

>説明不足でした。データベース更新時に屋号を抜きながら tsusho フィールドを作成しますので、1回手動で更新してもらわないと直りません。
 そうですよね。追加フィールドの中にデータ持ってんですもんね。ついつい、macs for acis のつもりで試してしまいました(^_^;)。
 ということで、手動更新したら、判明している屋号についてはきれいに取れていることが判明しました。

>ちょっと、ここは原因不明です。
>グリッドに表示する前に Utf8ToAnsi しているのですが、AS の後の文字列によっては SQL エラーとなることもあり、それ以前の問題かもしれません。
 '病' が入ると 'misuse of aggregate' になるので、集約関数の一部として認識されてしまっているということですかねえ? いずれにしても、表示する際の UTF8 -> ShiftJIS 変換ではなく、クエリを SQLite に渡す際の ShiftJIS -> UTF8 変換の際に問題が発生している可能性が高いと思われます。現在は、クエリを丸ごと変換してるんですよね? だとすると、文字コード変換ライブラリのバグかな?
 ちなみに、[#259] の集約関数のエリアスを下記のようにするとちゃんと列に表示されます。'か', 'ビ', 'う', '菌' が入っているとダメですね。これらの文字が入ると、たいていは列が表示されなくなるだけですが、'うど' と続くと列表示は 'ぁEi' と化けます。ひらがなは、'ぁ' (SJIS:829F)から 'た' (SJIS:82BD)まではダメぽいです。'病' と同じ症状になる文字は見つけられませんでした。

max(case byochu when "べと病" then "●" else "" end) as べと,
max(case byochu when "灰色かび病" then "●" else "" end) as 灰色カび,
max(case byochu when "うどんこ病" then "●" else "" end) as ウどんこ,
max(case byochu when "斑点細菌病" then "●" else "" end) as 斑点細キン,
max(case byochu when "褐斑病" then "●" else "" end) as 褐斑,
max(case byochu when "菌核病" then "●" else "" end) as キン核

〔279〕Re:ACFinder 060611版
 Hidemi Oya WEB  (06/06/12 23:02)

引用なし
   > '病' が入ると 'misuse of aggregate' になるので、集約関数の一部として認識されてしまっているということですかねえ?
 '病' の後ろに '病1' のように何か文字を付けるとエラーが出なくなります。どんな文字を付加しても、列表示は '?E' となります。やはり、ShiftJIS -> UTF-8 変換の際に化けているようです。

〔280〕日本語フィールドが使えないのは sqlite3....
 Hidemi Oya WEB  (06/06/13 2:27)

引用なし
   > '病' の後ろに '病1' のように何か文字を付けるとエラーが出なくなります。どんな文字を付加しても、列表示は '?E' となります。やはり、ShiftJIS -> UTF-8 変換の際に化けているようです。
 違いますね。AnsiToUTF8 変換の際に問題があれば、検索語としての「べと病」でも問題が出なければなりません。したがって、AnsiToUTF8 及び Delphi 側の問題ではないということになります。
 ということは、残るは SQLite エンジンである sqlite3.dll ですね。ステートメント、関数、フィールド等はケース非依存なので、エンジン内で大文字か小文字に変換されているはずです。この際、フィールド名は UTF-8 であっても大文字/小文字変換をしてしまっているというのが、文字化けの原因だと考えられます。
 UTF-8 文字列を URL エンコードすると、%xx の中に英小文字が散見されるので、恐らく sqlite3.dll はフィールド名を大文字に変換しちゃってるんでしょうね。

 ってことで、これを回避するには、
(1) 日本語フィールド名を使う場合は、ユーザはフィールド名の先頭に 'JP_' などの識別子を付ける。
(2) ACFinder は、識別子直後の文字列を 16 進文字列などにエンコードして SQLite に渡す
(3) SQLite からの結果を受け取った際に、ACFinder は識別子直後のエンコード文字列をデコードして表示する
といった作業が必要ですね。

〔281〕Re:日本語フィールドが使えないのは sqlit...
 Hidemi Oya WEB  (06/06/13 20:34)

引用なし
   >フィールド名は UTF-8 であっても大文字/小文字変換をしてしまっているというのが、文字化けの原因だと考えられます。
 ってことは、フィールド名をケース依存にする
PRAGAM case_sensitive_column_name = 1;
なんてプラグマがあれば簡単に対応できるなと思ったんですが、残念ながらありませんでした(;_;)。やはり、Delphi 側で処理するしかなさそうです。

〔286〕成分ごとの総使用回数
 Hidemi Oya WEB  (06/06/16 13:06)

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

 現在「作物・病害虫」タブなどで表示される検索結果は、成分ごとの総使用回数の成分名が分かりません。たとえば、リドミルMZ水和剤は、名称から考えると成分1がメタラキシル、成分2がマンゼブのように思えますが、実は逆になっています。これでは、有効成分ごとの総使用回数遵守は困難です。
 ってことで、標準タブの検索結果については、kihon テーブルから seibun フィールドの値を参照してきて、'有効成分名1', '総使用回数1', '有効成分名2', '総使用回数2' のように表示するようにしてもらえると助かります。kihon テーブルに成分番号がないので、どうやって参照するかちょっと頭を捻る必要がありそうですが…。

〔288〕「にがうり」が「ニガうり」に
 Hidemi Oya WEB  (06/06/16 14:35)

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

 「作物・病害虫」タブの作物名テキストボックスに「にがうり」と入力すると、「ニガうり」と変換されてしまいます。作物名ボタンをクリックして選択した場合は OK です。

〔289〕データベース共有
 Hidemi Oya WEB  (06/06/16 15:21)

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

>データベースファイルの設置場所を自由に設定できるようにしてみました。
 ドライブ割り当てした共有フォルダはもちろん、UNC でも使えました。ただ、共有フォルダを指定する際に、時々ゼロ除算エラーが表示されることがあります。
 あと、ふと思ったんですが、データベースを共有する場合、2重更新対策はされているでしょうか? 先に使っている誰かが新データに更新中(更新完了はしていない状態)なら、後から使おうとした人は更新しないようになってないと無駄が出ますね。

>一応 LAN内の共有フォルダに置いた場合も検索できるようですが、パフォーマンスは不明です。
 パフォーマンスは、100Mbps ならそれほど問題はなさそうですが、ローカル使用時の速さになれているとかなり遅く感じます。100Mbps でこれだと、11Mbps の無線 LAN を利用している人はちょっと辛いかもしれません。
 データベース更新時間の短縮と検索速度の低下防止を両立させるには、単純にデータベースファイルを共有するのではなく、下記のようにファイルサーバでデータベース更新だけをしておき、使用する際はそれをローカルディスクにコピーして使うようにするのが良いかもしれません。この方式の方が農薬検査所サーバに対する負荷がさらに軽減されますし、proxy 設定や UNLHA32.DLL の設置もサーバだけですみ、さらアクセス権が Read Only の共有フォルダでも使えると色々メリットがあります。す。

1-1 ACFinder にデータ更新のみ実行するオプションを付けるか、データ更新専用ソフトを用意する
1-2 ファイルサーバのタスクスケジューラに登録するかスタートアップに入れて、定期的にデータベース更新チェックと必要なら更新を行う
2-1 データベース更新チェックとデータ取得を農薬検査所サイトから直接行うか、LAN 内のデータベースで行うかを選択できるようにする
2-2 LAN 内データベース利用の場合は、更新されていたらローカルディスクにコピーする

〔291〕Re:成分ごとの総使用回数
 kabe WEB  (06/06/17 21:15)

引用なし
   >Hidemi Oyaさん
kabe です。

> 現在「作物・病害虫」タブなどで表示される検索結果は、成分ごとの総使用回数の成分名が分かりません。たとえば、リドミルMZ水和剤は、名称から考えると成分1がメタラキシル、成分2がマンゼブのように思えますが、実は逆になっています。
元のExcelファイルの説明書きをみると「農薬の種類」で示される有効成分の順番というルールになっています。
リドミルMZだと、マンゼブ・メタラキシルなので、このルールからすると成分1がマンゼブ、成分2をメタラシルと解釈しろという意味なのでしょう。

> 標準タブの検索結果については、kihon テーブルから seibun フィールドの値を参照してきて、'有効成分名1', '総使用回数1', '有効成分名2', '総使用回数2' のように表示するようにしてもらえると助かります。
上記のルールどおりだとすると、shurui フィールドから有効成分を抜き出してくる方が簡単ですね。追加機能候補とします。

〔292〕Re:データベース共有
 kabe WEB  (06/06/17 21:28)

引用なし
   >Hidemi Oyaさん
kabe です。

> あと、ふと思ったんですが、データベースを共有する場合、2重更新対策はされているでしょうか? 先に使っている誰かが新データに更新中(更新完了はしていない状態)なら、後から使おうとした人は更新しないようになってないと無駄が出ますね。
今のところ、これは全く対策はされていません。(^^;
ただ、共有を想定すると、必須の機能ですね。

>1-1 ACFinder にデータ更新のみ実行するオプションを付けるか、データ更新専用ソフトを用意する
>1-2 ファイルサーバのタスクスケジューラに登録するかスタートアップに入れて、定期的にデータベース更新チェックと必要なら更新を行う
当面、ACFinder に起動オプションを付けて、更新チェックを行う機能を付けたいと思います。別ソフトにするかどうかは ACFinder の更新機能がある程度、完成した段階で考えたいと思います。

>2-1 データベース更新チェックとデータ取得を農薬検査所サイトから直接行うか、LAN 内のデータベースで行うかを選択できるようにする
>2-2 LAN 内データベース利用の場合は、更新されていたらローカルディスクにコピーする
修正候補としますが、検索機能をある程度完成させてからになるかと思います。

〔295〕Re:成分ごとの総使用回数
 Hidemi Oya WEB  (06/06/18 2:32)

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

>元のExcelファイルの説明書きをみると「農薬の種類」で示される有効成分の順番というルールになっています。
 書き込んだ後に気が付きました(^_^;)。ただ、知ってなきゃ分からないし、農薬の種類と成分ごとの総使用回数は離れた位置に表示されるので、やはり使用回数の近くに成分名が表示された方が使いやすいですね。

>上記のルールどおりだとすると、shurui フィールドから有効成分を抜き出してくる方が簡単ですね。追加機能候補とします。
 shurui フィールドから抜き出してくるとなると、データベース作成時にフィールドを追加する形でしょうか? kihon テーブルから持ってくる場合も、成分ごとの連番を追加しないと join やサブクエリで持って来にくいし、現在のままで表示だけ追加するのは、ちょっと面倒ですよね。
 いずれにしても、実装方法はお任せしますのでよろしくお願いします。

〔296〕Re:データベース共有
 Hidemi Oya WEB  (06/06/18 2:41)

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

>ただ、共有を想定すると、必須の機能ですね。
 データフォルダに ini ファイルをおくか、データベースの中にシステムステータステーブルを作って、更新中フラッグを設定するくらいですみそうですから、是非よろしくお願いします。

>当面、ACFinder に起動オプションを付けて、更新チェックを行う機能を付けたいと思います。別ソフトにするかどうかは ACFinder の更新機能がある程度、完成した段階で考えたいと思います。
 とりあえず、起動オプションだけで十分です。サーバ側で自動的に更新してしまえば、個々のユーザは更新時の待ち時間がいらなくなるので、かなり助かります。

>修正候補としますが、検索機能をある程度完成させてからになるかと思います。
 もちろんそちらが先ですね。100Mbps ならそんなに遅いわけでもありませんし。

〔300〕Re:成分ごとの総使用回数
 Hidemi Oya WEB  (06/06/19 9:17)

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

 kihon テーブルのデータを見ると、三共ラブサイドベフラントレボン粉剤DL/ヤシマラブサイドベフラントレボン粉剤DLのように種類の順番と有効成分の順番が逆順になっていたり、ピーチガード水和剤は順番が正しいのに〔DIC〕ピーチガード水和剤は逆順になっていたりと、kihon テーブルの順番で使うのは無理ですね。
 また、農薬検査所のシステムではちゃんと成分ごとの総使用回数の成分名として、イミノクタジンアシベル酸塩もイミノクタジン酢酸塩も「イミノクタジン」として表示されるので、有効成分名がイミノクタジンになっているのかと思ったのですが、2種類に分かれてました。

 ってことで、有効成分名を表示するときは、やはり農薬の種類の順番を使った方が良いようです。さらに、イミノクタジンのように例外処理が必要な場合が若干あるので、テーブル作成時に有効成分フィールドを追加するのが最も使い勝手が良さそうです。
 ところで、イミノクタジン以外で複数の有効成分をまとめてカウントする有効成分をご存じの方は是非お教えください。

〔306〕Re:成分ごとの総使用回数
 s_kobayashi  (06/06/19 21:08)

引用なし
   >Hidemi Oyaさん

> ところで、イミノクタジン以外で複数の有効成分をまとめてカウントする有効成分をご存じの方は是非お教えください。

 ぱっと思いつくのはラウンドアップ系でしょうか。他は詳しく当たってみないと自信がありません。

〔312〕Re:成分ごとの総使用回数
 Hidemi Oya WEB  (06/06/19 22:25)

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

> ぱっと思いつくのはラウンドアップ系でしょうか。他は詳しく当たってみないと自信がありません。
 ありがとうございます。確かに、グリホサートもそうですね。2,4−PAと同様に、有効成分は「グリホサート○○」でも農薬の種類は「グリホサート」にまとめてくれれば何の問題もないんですけどね。あるいは、同一有効成分としてカウントする有効成分のリストを提供してくれるかね。
 現状の Excel データでは、使用基準省令でいう「含有する有効成分の『種類』ごとの総使用回数」を遵守するのは難しいですね。暗に「含有する有効成分ごとの総使用回数」を守れば良いと言ってくれてるのでしょうか?(誤解する人がいるといけないので、これは皮肉ですと補足しておきましょう^^;)

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