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

研究会

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

〔583〕Re:ACFinder 070311版
 Hidemi Oya WEB  (07/03/19 12:55)

引用なし
   自己レスです。

> というのは、ちょっと試したところ、接続時タイムアウトは、グローバルな設定ではなく、現在のセッションのみに限定して変更できたからです。オフライン状態についても同様の設定ができそうです。このため、HttpDownload は、Execute を実行するたびにこれらの設定変更をする仕様で書き換え中です。HttpDownload がこの仕様になると、IE のオフライン状態を利用したオフラインモードというのは意味をなしません。
 その後いろいろ試してみた結果、WindowsXp では、
(1) 接続タイムアウトはセッションごとの設定を変更しなければ、プロクシが見つからない場合のタイムアウトが変更されない(グローバル設定を変更しても意味はない)
(2) オフライン状態はセッションごとの設定を変更するだけで、グローバル設定も変更される
ということが判明しました。
 (1) については、HINTERNET ハンドルを自分で作成する HttpDownload コンポーネント(InternetReadFile API を使用)についてはコンポーネント側で制御できるが、UrlDownload コンポーネント(UrlDownloadToFile API を使用) は使用している HINTERNET ハンドルが分からないので制御できないということになります。(2) については、HttpDownload, UrlDownload 両コンポーネントで制御可能ですが、グローバル設定まで変更されるという副作用が発生します。

>kabe さん
 今のところいずれも回避策は見つからないので、上記仕様で InetUtil.pas を更新してメールします。
・ツリー全体表示

〔582〕Re:ACFinder 070318版
 kabe  (07/03/19 9:22)

引用なし
   kabe です。

>070318版をアップしました。
すいません、FTPしたと思ったのですがされてませんでした。
昨晩 Not Found に遭遇した方には失礼しました。
今朝、再アップしましたので、ダウンロード可能になっています。
・ツリー全体表示

〔581〕ACFinder 070318版
 kabe  (07/03/18 22:36)

引用なし
   kabe です。

070318版をアップしました。
http://acfinder.kabe.info/

/fオプションで起動した場合、オフライン作業の設定値を保存しないよう変更しました。
なお/fオプションで起動した場合でもメニューからオフライン作業の切り替え操作を行った場合には保存されます。

薬剤タブの操作方法を一部変更しました。
従来の名称タブを通称タブに変更し、薬剤名、作物名での絞り込み結果を、通称タブ、登録番号タブで切り替えて参照できます。
作物名の絞り込みは、作物タブと同様に複数作物の指定を行えるよう修正しました。
作物選択ダイアログから上位分類を含めた作物名を指定できます。
ただし作物タブと同様に regexp演算子を使用しているため、作物名を指定すると以前より検索に時間がかかります。

070312付け特定作物系テンプレート改訂版を添付しました。
・ツリー全体表示

〔580〕Re:ACFinder 070311版
 Hidemi Oya WEB  (07/03/15 2:08)

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

>とりあえず、/fで起動した場合は設定値を保存しないよう修正は終わっています。
 ありがとうございます。ACFinder のオフラインモードは、やはりこの仕様が一番良さそうです。
 というのは、ちょっと試したところ、接続時タイムアウトは、グローバルな設定ではなく、現在のセッションのみに限定して変更できたからです。オフライン状態についても同様の設定ができそうです。このため、HttpDownload は、Execute を実行するたびにこれらの設定変更をする仕様で書き換え中です。HttpDownload がこの仕様になると、IE のオフライン状態を利用したオフラインモードというのは意味をなしません。

>ACFinderサイトの方も、sqlite3 regexp などで来る人がかなりいます。
>今時だとWebアプリケーションの情報を探しているのかもしれませんが、Delphi で SQLite を扱うには最強だと思います。公開されたら、けっこうヒット作になりそうです。regexp とか match まで対応しているクラスだと世界中で需要がありそうですね。
 ビジュアルコンポーネントじゃないので、やや分かりづらいってのが難点ではありますけどね(^_^;)。
 それと、sqlite 3.3.8 以降から FTS1 モジュールが公開され、match 演算子がフルテキストサーチとして実装されています。現在の match は regexp でも代用可能ですし、ACFinder 用にも FTS1 モジュールの match 演算子のようなものがあると便利そうなので、仕様変更するかどうかを現在思案中です(仕様変更しても現在の SQL は変更しなくても良さそうですし)。
・ツリー全体表示

〔579〕Re:ACFinder 070311版
 kabe  (07/03/14 23:59)

引用なし
   >Hidemi Oyaさん

kabe です。

InetUtilの方は、新版が出たら、反映させます。
とりあえず、/fで起動した場合は設定値を保存しないよう修正は終わっています。

> 検索でこのサイトに来るといえば、ここ半年ばかりは「sqlite delphi」とかで来る人がかなり多いです。
ACFinderサイトの方も、sqlite3 regexp などで来る人がかなりいます。
今時だとWebアプリケーションの情報を探しているのかもしれませんが、Delphi で SQLite を扱うには最強だと思います。公開されたら、けっこうヒット作になりそうです。regexp とか match まで対応しているクラスだと世界中で需要がありそうですね。
・ツリー全体表示

〔578〕Re:ACFinder 070311版
 Hidemi Oya WEB  (07/03/13 23:27)

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

>了解しました。
>これに変更します。
 要望しておいて申し訳ありませんが、もしかすると InternetSetOption でプロクシが見つからない場合のタイムアウトが変更できるかも…。
 ついでに、ついさっき判明したんですが、HttpDownload で使用している InternetReadFile は、IE が「オフライン作業」状態になっているとインターネットに接続しないため、更新判定が正常にできなくなります。これも、InternetSetOption で強制的にオンライン状態にできそうですので、対応版を検討します。
 逆に言うと、/f オプションで一時的にオフライン状態にするという手もありそうです。この辺の使い方を整理してから、再度仕様を考えた方が良いかもしれません。

 ここ数か月、「URLDownloadToFile キャッシュ 削除」とかで検索してこのサイトに来る人が結構います。上記の設定も含めて、InetUtil を更新して公開すれば、ACFinder 以外にも貢献できそうです。

 検索でこのサイトに来るといえば、ここ半年ばかりは「sqlite delphi」とかで来る人がかなり多いです。ドキュメントとサンプルを書くのが面倒で「Simple Sqlite 上位互換 UTF-8/16 対応 SQLite クラス」が未公開のままですが、そろそろ本格的に公開の準備を始めねば(^_^;)。
・ツリー全体表示

〔577〕Re:ACFinder 070311版
 kabe  (07/03/12 21:26)

引用なし
   >Hidemi Oyaさん

kabe です。

> できれば、/f オプションで起動した場合は ini ファイルの OffLine を変更しないようにしていただけるとベストですが、
了解しました。
これに変更します。
・ツリー全体表示

〔576〕Re:ACFinder 070311版
 Hidemi Oya WEB  (07/03/12 16:41)

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

> オフラインモードも、
>>また起動パラメータに /f を指定するとオフラインモードで起動します。
>が付いたので、研修会などの際はショートカットアイコンを修正するだけですみますね。ありがたい機能です。
 現状では、一時的にショートカットに /f オプションを付加して使用し、終了後にショートカットの /f オプションを削除しても、次回起動時はオフラインになってしまいます。これはちょっと分かりづらいので、改善していただけるとありがたいです。
 できれば、/f オプションで起動した場合は ini ファイルの OffLine を変更しないようにしていただけるとベストですが、手っ取り早く強制オンラインオプション /n を追加していただけるだけでも十分です。
・ツリー全体表示

〔575〕特定作物系テンプレート改訂版公開
 Hidemi Oya WEB  (07/03/12 12:58)

引用なし
   > 行削除は、同一種類の農薬を1つに絞るときに使うことが多いでしょうから、特定作物系のテンプレートは、農薬の種類を表示するようにして、農薬の種類でソートした方が良いですね。
 ということで、改訂版を ACFinder オフィシャルサイトのダウンロードページに公開しました。詳細もそちらをご覧ください。
http://acfinder.kabe.info/?%A5%C0%A5%A6%A5%F3%A5%ED%A1%BC%A5%C9
・ツリー全体表示

〔574〕Re:ACFinder 070311版
 Hidemi Oya WEB  (07/03/12 12:54)

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

 事務所の FMV-C8210 でも xls->acis.db 変換時間を確認してみました。1回のみですですが、061231TEST 版の 44.7 秒に対し、070311 版では 35.8 秒と約9秒短縮しました。これも約 20 %短縮です。
 [#570] の結果も合わせると、xls->acis.db 変換が 15〜20 %短縮できるとみて良さそうです。

 ところで、ポップアップメニューの列削除にショートカットキーが設定されていないと思ったら、設定可能なショートカットキーコンビネーションに Shift + Ctrl + 英数字キーがなかったんですね。これには全く気がついていませんでした(^_^;)。
 列削除を Ctrl + Alt + X と提案しておけば、余計なイベント処理を書かずに済んだんですけどね。申し訳ありませんでした。
・ツリー全体表示

〔573〕Re:ACFinder 070311版
 Hidemi Oya WEB  (07/03/12 0:31)

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

 ACFinder のバージョンアップありがとうございました。
 1回限りの計測ですが、xls->acis.db 変換が、061231TEST 版の 28.8 秒に対し、070311 版では 22.7 秒と約6秒(20 %)短縮しました。

 ショートカットキーによる行列削除だけでもかなり便利になりましたが、
>行選択モードの場合、連続する複数の行を選択して複数行を削除することができます。
が付いたのが実にありがたいです。複数行一括削除はやっぱり便利ですし、ショートカットキーより万人に分かりやすくて良いです。とりあえず、連続複数行一括削除と1行削除があれば、
>ただし一般的なアプリケーションでよくある Ctrlキーを押しながら不連続に選択することはできません。
でも全然問題ありません。
 行削除は、同一種類の農薬を1つに絞るときに使うことが多いでしょうから、特定作物系のテンプレートは、農薬の種類を表示するようにして、農薬の種類でソートした方が良いですね。これについては、私の方もなるべく早めに対応したいと思います。

 オフラインモードも、
>また起動パラメータに /f を指定するとオフラインモードで起動します。
が付いたので、研修会などの際はショートカットアイコンを修正するだけですみますね。ありがたい機能です。
・ツリー全体表示

〔572〕Re:ACFinder 070311版
 kabe  (07/03/11 22:38)

引用なし
   kabe です。

[#566]
データベースの更新時のプログレスバーの更新間隔も変更しました。
データベース更新時間がいくらか短縮されているはずです。
・ツリー全体表示

〔571〕ACFinder 070311版
 kabe  (07/03/11 21:19)

引用なし
   kabe です。

070311版をアップしました。
http://acfinder.kabe.info/

[#559]
ホットキーによる行削除、列削除機能を追加しました。
Ctrl+Xで行削除、Crtl+Shift+X で列削除できます。
合わせて、右クリックで選択セルを変更するよう修正しました。
選択セルのある行を削除します。

関連して行選択モードを追加しました。
メニューの 設定(C)->行選択モード(R)か Ctrl+R で行選択状態と1セル選択状態を相互に切り替えます。
行選択モードの場合、連続する複数の行を選択して複数行を削除することができます。ただし一般的なアプリケーションでよくある Ctrlキーを押しながら不連続に選択することはできません。
なお、行選択モード時は Crtl+Shift+Xによる列削除はできません。

[#569]
>選択セルがスクロールアウトして現在の画面上で見えない状態だと、意図しない行を削除してしまう可能性がありますね。
とりあえず、この場合は削除しないようにしました。
行削除は、選択セルが見えている状態の時のみ実行します。

[#562]
簡易なオフラインモードを追加しました。
メニューの ファイル(F)->オフライン作業(W)を選択するとオフラインモードとなりインターネットに接続する機能は使用しません。
また起動パラメータに /f を指定するとオフラインモードで起動します。

登録番号、農薬の名称を薬剤タブに送り検索する場合、薬剤タブの登録番号タブで固有の農薬をダイレクトに検索するよう修正しました。

[#558]
070226付け複数作物農薬一覧テンプレートを添付しました。

sqlite3.dll をVer3.3.13に更新しました。
・ツリー全体表示

〔570〕Re:ACFinder ファイル変換速度の改善
 kabe  (07/03/08 23:19)

引用なし
   >Hidemi Oyaさん

kabe です。

> 「20 回に1回」という表現は適切でなかったですね。プログレスバーを 20 分割したときの切れ目だけ表示するということです。
了解です。こちらの方は修正済みです。
私の環境でxls->acis.db 変換が60秒くらいかかりますが(5つのファイル)、10秒前後は短くなるようです。

> StringGrid の PopupMenu プロパティを空にして、OnMouseUp イベントでセル選択とメニューのポップアップを実行するってのじゃダメでしょうか?
これで試してみます。
・ツリー全体表示

〔569〕Re:ACFinder への要望
 Hidemi Oya WEB  (07/03/08 23:07)

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

 [#568] の動作確認をしている時にふと思ったんですが、選択セルが存在する行を削除するようにした場合、選択セルがスクロールアウトして現在の画面上で見えない状態だと、意図しない行を削除してしまう可能性がありますね。選択セルがスクロールアウトしている場合は、行データを表示して削除するかどうかを確認するダイアログボックスを出すようにした方が良さそうです。
 選択セルが表示画面内に存在するかどうかは、TStringGrid の TopRow, LeftCol, VisibleRowCount, VisibleColCont プロパティで簡単に判定できます。
・ツリー全体表示

〔568〕Re:ACFinder ファイル変換速度の改善
 Hidemi Oya WEB  (07/03/08 0:38)

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

 「20 回に1回」という表現は適切でなかったですね。プログレスバーを 20 分割したときの切れ目だけ表示するということです。
>kabe です。

>右クリックでのカレントセルの変更がうまくいかず、まだ修正版をアップできない状態です。(ポップアップメニューが出るタイミングによるのかカレントセルを変更できない場合がある)
 StringGrid の PopupMenu プロパティを空にして、OnMouseUp イベントでセル選択とメニューのポップアップを実行するってのじゃダメでしょうか? ついでに、OnKeyUp イベントでコンテキストメニューキーも処理する必要がありますが…。

procedure TForm1.StringGrid1MouseUp(Sender: TObject; Button: TMouseButton;
 Shift: TShiftState; X, Y: Integer);
var
 c, r:longint;
 p: TPoint;
begin
 if Button <> mbRight then Exit; // 右ボタン以外は無視
 StringGrid1.MouseToCell(X, Y, c, r); // マウスカーソル下のセル位置取得
 StringGrid1.Col := c; // 選択セル桁位置設定
 StringGrid1.Row := r; // 選択セル行位置設定
 // 選択セル右下位置をスクリーン座標に変換
 p := StringGrid1.ClientToScreen(StringGrid1.CellRect(c, r).BottomRight);
 PopupMenu1.Popup(p.X, p.Y); // マウス位置にメニューをポップアップ
end;

procedure TForm1.StringGrid1KeyUp(Sender: TObject; var Key: Word;
 Shift: TShiftState);
var
 p: TPoint;
begin
 if Key <> VK_APPS then Exit; // コンテキストメニューキー以外は無視
 // 選択セル右下位置をスクリーン座標に変換
 p := StringGrid1.ClientToScreen(StringGrid1.CellRect(StringGrid1.Col, StringGrid1.Row).BottomRight);
 PopupMenu1.Popup(p.X, p.Y); // マウス位置にメニューをポップアップ
end;
・ツリー全体表示

〔567〕Re:ACFinder ファイル変換速度の改善
 kabe  (07/03/07 23:38)

引用なし
   >Hidemi Oyaさん

kabe です。
ありがとうございます。
次回に反映させます。

右クリックでのカレントセルの変更がうまくいかず、まだ修正版をアップできない状態です。(ポップアップメニューが出るタイミングによるのかカレントセルを変更できない場合がある)
なんとか今週末には修正版をアップしたいと思います。
・ツリー全体表示

〔566〕ACFinder ファイル変換速度の改善
 Hidemi Oya WEB  (07/03/05 22:52)

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

 Excel ファイルの読み込みとデータベース変換ですが、プログレスバーへの表示を 20 回に1回くらいに限定すると、かなり高速になりますね。私の xls2db で試してみたところ、26 秒前後かかっていたのが、18 秒前後になりました。
 登録適用部は行数が多いので、20 回に1回程度なら、プログレスバーを表示しないときと大差ない時間で読み込み/変換が完了するようです。具体的には下記のような感じです。

(1) XBiff の OnProgress イベント
 if Progress mod 5 = 0 then ProgressBar1.Position := Progress;

(2) データベース変換ルーチン
var
 i, d: integer
begin
 // ここまで前処理部分
 ProgressBar1.Max := Rows; // Rows は読み込んだ Excel シートの行数
 d := Rows div 20;
 for i := 1 to Rows do begin
  // ここに変換処理
  if i mod d = 0 then ProgressBar1.Position := i;
 end;
・ツリー全体表示

〔565〕Re:ACFinder への要望2
 Hidemi Oya WEB  (07/03/01 0:19)

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

>オフラインモードは付けようと思っていましたので、これも修正候補とします。
 よろしくお願いします。

>ただ、そんなに起動に時間がかかりますか?。
>試しに今LANケーブルを抜いて起動してみましたが、体感的にあまり変わらないのですが。
 自宅マシンで試してみたら、確かに全然変わりませんでした。LAN に接続されててもされていなくても、ほんの数秒で起動します。研修会に持って行った事務所マシンとの違いは DHCP サーバを使うか否か(事務所マシンは静的 IP アドレス)なので、自宅マシンを静的 IP アドレスにして試してみましたが、やはり変わりません。
 となると、あとの違いはインターネット接続に proxy を経由するかどうかなので、自宅マシンの proxy 設定に存在しない IP アドレスを指定してみたところ、LAN 接続されてても起動に 20 秒少々かかりました。どうも、WindowsXp は proxy 接続のタイムアウトが 20 秒程度に設定されてるようですね。

 とりあえず、proxy を使用しない設定にすることで対処できますが、研修会のたびに proxy 設定の変更/復帰をするのは結構面倒かも…。来年度は、JA各支店でインターネットにつなげるようにして(今はまだ支店はインターネットが使えません^^;)、窓口担当に ACFinder の操作研修会を実施する予定なので、オフラインモード(ステータスバーにその旨表示されるとなお良いですね)があると便利そうです。
・ツリー全体表示

〔564〕Re:ACFinder への要望2
 kabe  (07/02/28 22:41)

引用なし
   >Hidemi Oyaさん

kabe です。

オフラインモードは付けようと思っていましたので、これも修正候補とします。
ただ、そんなに起動に時間がかかりますか?。
試しに今LANケーブルを抜いて起動してみましたが、体感的にあまり変わらないのですが。
・ツリー全体表示

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