出来るのだASP Q&A掲示板(過去LOG)  訪問数 52046 昨日 889 今日 776
    【PR】 パソコン入門からIT専門書まで幅広く取り揃えています。セブン-イレブン受取り手数料無料のセブンアンドワイ。
Topに戻る 掲示板に戻る 検索 削除 管理者

一覧からCSVをダウンロード&一覧ページリロード。   いと〜さん [2004/12/07 11:45:13] [4822]
  Re:一覧からCSVをダウンロード&一覧ページリロード。   暇人さん [2004/12/07 18:22:42] [4835]
    Re:一覧からCSVをダウンロード&一覧ページリロード。   いと〜さん [2004/12/08 16:45:37] [4839]

[4822] 一覧からCSVをダウンロード&一覧ページリロード。
投稿者:いと〜さん 2004/12/07 11:45:13
初めまして。
ちょっと挫折気味なので教えてください。

CSVの一覧ページから
取得ボタンを押すと、サーバーのあるCSVをダウンロードするページがあって、
ダウンロードと同時にDBを更新していて、更新結果を一覧に反映させるという処理があります。

実現したいことは
1.一覧から取得ボタンをクリック
2.CSVファイルダウンロード
3.DB更新処理(CSVファイル取得日時更新)
4.一覧のページの最終取得日時を表示
てな感じです。

現在のロジックは、
1.一覧のページの取得ボタンクリックで
  CSV取得ページにSubmit。
  と同時にJavaScriptのSetTimeout('location.reload();', 3000)でリロード。
2.CSV取得ページにてDB更新処理。
を行っています。

2の処理でファイルダウンロードのダイアログが出るのですが、
保存ボタンを押す前にリロード処理が行われると保存先を指定するExplorerも表示されず、ダウンロード出来ません。
リロードの時間を長くしてしまうと、一覧ページの反映までが
遅くなってしまうので避けたいです。

これをうまく実現させるためにはどうしたらよいでしょうか?
長々と書きましたがわかりにくくてすいません。

[4835] Re:一覧からCSVをダウンロード&一覧ページリロード。
投稿者:暇人さん 2004/12/07 18:22:42
> CSVの一覧ページから
> 取得ボタンを押すと、サーバーのあるCSVをダウンロードするページがあって、
> ダウンロードと同時にDBを更新していて、更新結果を一覧に反映させるという処理があります。
>
> 実現したいことは
> 1.一覧から取得ボタンをクリック
> 2.CSVファイルダウンロード
> 3.DB更新処理(CSVファイル取得日時更新)
> 4.一覧のページの最終取得日時を表示
> てな感じです。

ASPの場合、上記処理を行う際にサーバーとクライアントの同期が取れません。
そのため通常の手段では実現不可能です。
非常手段としましては。
1、そのページは見た目上1枚だが。フレーム分けされている(隠しフレーム)。そこにダウンロードをし、メインの画面を遷移させる。
問題:フレーム切ができないブラウザが対象の場合は実現不可能となる。
2、ダウンロード処理用の画面を別に立ち上げる。
問題:立ち上げた画面をどうやって消すかが問題。
3、自分で同期をとるAceiveXオブジェクトを作る。
問題:一番手間ひまがかかる上、クライアントのブラウザがActiveXの使用不可に設定されていると使えない。

[4839] Re:一覧からCSVをダウンロード&一覧ページリロード。
投稿者:いと〜さん 2004/12/08 16:45:37
> 1、そのページは見た目上1枚だが。フレーム分けされている(隠しフレーム)。そこにダウンロードをし、メインの画面を遷移させる。
> 問題:フレーム切ができないブラウザが対象の場合は実現不可能となる。

1の方法で、期待通りの動作が実現することが出来ました。
ありがとうございますm(_ _)m
管理用ページのためフレーム切りが出来ないブラウザは使わないっていう決め打ちやってもらうので、問題はないです。



TreeBBS For ASP V.0.1.3
Program By YasNet