- PR -

エクセルのダウンロードについて

投稿者投稿内容
かるあ
ぬし
会議室デビュー日: 2003/11/16
投稿数: 1190
お住まい・勤務地: センガワ→ムサシノ
投稿日時: 2007-05-01 18:05
引用:

ニックさんの書き込み (2007-05-01 17:52) より:

>HTMLの内容は何ですか?
あるweb画面より検索条件を元にボタンを押下するとエクセルファイルを出力するwebページ(aspx)があるのですが、そのaspxファイルのソースコードです。

>また、それは意図している結果なのですか?
意図していません、単純にエクセル形式でファイル出力したいだけです。

>取得されるファイルは静的ファイルですか?
動的ファイルです。


動的にファイルを作るけれどダウンロードするときは静的なファイルになっているんですよね?
サーバに作成したエクセルファイルは正常に出来上がっていますか?
_________________
かるあ のメモスニペット
AMD286
常連さん
会議室デビュー日: 2007/04/27
投稿数: 23
お住まい・勤務地: 兵庫県
投稿日時: 2007-05-01 18:06
そういえば、サーバ上にあるファイル(Response.WriteFileの対象)とダウンロードされるファイルは一致していますか?これが一致していないとおかしいわけですが…。

動的ファイルということなので、その生成時点で問題があるという可能性も否定できませんね。
ニック
会議室デビュー日: 2007/05/01
投稿数: 12
投稿日時: 2007-05-01 18:48
>どのような条件で「ファイルが読込めません」になったり「無理にエクセルに読込み表示され」るのかはわかりませんが。

ランダムと言う言い方も変かもしれませんが自分自身いろいろと試してみたのですが
分かっていません(自分でもどういった時になるのか今後も調べていきます)
ただ、始めの1回はちゃんと意図した通りにエクセル出力されます


またResponse.WriteFileするファイルとダウンロードするファイルは一致しており間違えていません。

生成時点での問題ですが問題ないと思います。
エクセルもちゃんと作れていますので。 ただダウンロードしクライアントでそのエクセルを参照するとおかしくなっているのです。

ただ生成から含めて自分でも再度見直してみるつもりですが他注意することなど
あればアドバイスお願いいたします。
AMD286
常連さん
会議室デビュー日: 2007/04/27
投稿数: 23
お住まい・勤務地: 兵庫県
投稿日時: 2007-05-01 18:56
引用:

生成時点での問題ですが問題ないと思います。
エクセルもちゃんと作れていますので。


つまり、サーバ上にあるxlsファイルは問題ないということですね。
であれば
引用:

 ただダウンロードしクライアントでそのエクセルを参照するとおかしくなっているのです。


ダウンロードは「確実に」行われていますか?つまり、サーバ上にあるファイルと完全に一致していますか?
そうでなければダウンロード自体が失敗していることになります。

もちろん、提示されていない部分のコードに問題があったとしても、こちらではわかりませんが。
渋木宏明(ひどり)
ぬし
会議室デビュー日: 2004/01/14
投稿数: 1155
お住まい・勤務地: 東京
投稿日時: 2007-05-02 00:23
引用:

>HTMLの内容は何ですか?
あるweb画面より検索条件を元にボタンを押下するとエクセルファイルを出力するwebページ(aspx)があるのですが、そのaspxファイルのソースコードです。



IIS でアプリケーション設定してます?
Jitta
ぬし
会議室デビュー日: 2002/07/05
投稿数: 6267
お住まい・勤務地: 兵庫県・海手
投稿日時: 2007-05-02 07:34
本当にHTMLファイルですか?最後までちゃんと読めてます?先頭の数バイトがHTMLぽいだけじゃないかなぁ?

writefileの前は、flash(バッファの内容を出力)じゃなくてclear(バッファの内容を消す)だと思います。
_________________
ニック
会議室デビュー日: 2007/05/01
投稿数: 12
投稿日時: 2007-05-02 09:49
意見ありがとうございます。

>ダウンロードは「確実に」行われていますか?つまり、サーバ上にあるファイルと完全に一致していますか?
エクセルはちゃんと作れています。 サーバー上にあるファイルと完全に一致しています

>IIS でアプリケーション設定してます?
どのような設定が必要でしょうか? よろしければ詳しく教えてもらえればと思います。 
現状は[実行アクセス権]:スクリプトおよび実行可能ファイル
[アプリケーション保護]:低

>本当にHTMLファイルですか?最後までちゃんと読めてます?先頭の数バイトがHTMLぽいだけじゃないかなぁ?
いえいえ、最初だけでなく最後までです。 ですのでバッファに残っている思いアドバイスにもあるclearも試したのですが変化ありませんでしたが入れた場所が悪かったのでしょうか?
→Response.Clear
Response.ContentType = "application/vnd.ms-excel"
Response.AddHeader(---)
Response.WriteFile(---)
Response.End()

AMD286
常連さん
会議室デビュー日: 2007/04/27
投稿数: 23
お住まい・勤務地: 兵庫県
投稿日時: 2007-05-02 11:26
引用:

エクセルはちゃんと作れています。 サーバー上にあるファイルと完全に一致しています


その「ちゃんと作れて」、「完全に一致」したファイルは、当然Excelで正しく開けますよね?

ダウンロードしたファイルがサーバ上のものと完全に一致しているのに正常に開けないのであれば、
1.クライアント側のエクセル(アプリケーション)が壊れている
2.サーバ上のファイルが正しく作成されていない
のどちらかになると思いますが

ところで、
・エクセルとはMicrosoft Excelの事ですか?
・そのバージョンは?(クライアント側、サーバ側)
このあたりが抜けていますね…

スキルアップ/キャリアアップ(JOB@IT)