tosumalog~ IT的備忘とパパ的備忘を書き綴ります ~

tosumalog

~ IT的備忘とパパ的備忘を書き綴ります ~

「オブジェクトを指定して下さい」の呪い

こんにちは、tosumaです。



こちら2011年の記事のアーカイブです。

シンプルなライン素材(直線) 
 

 

昨日、既存のシステム(.net)の画面から、別ASP画面にパラメータ渡して、

SQL投げてCSVファイルを出力してダウンロードの機能を作った。

 

その際、まず「オブジェクトを指定して下さい」の呪いにかかった。

 

20110910_01

 

ページ遷移しねぇ。。。

調べると、下記が原因らしい。。。

 

(1)構文ミス:ソースの確認

(2)文字コードが間違っている:charsetの指定

(3)指定順序が間違っている:HTMLロード未完了状態でgetElementById等を呼出

(onClickで指定された関数は、ロードが完了した後に定義)

 

 

 

結局、javascriptを外部と内部で定義していたのが原因だった。

できる時はできるのに?よくわからん。

まぁ分ける必要もないので、外部で統一。

 

 

次に、「HTTP エラー 405.0 - Method Not Allowed」エラーが発生。

 

20110910_03

 

うげ。。。これなんだ。。。

 

POSTすると発生?ハンドラマッピングで対応?

何してもダメ。。。というかFORMでACTIONを定義すると発生する。

 

というわけで、パラメータ渡しはjavascriptでURL渡しに実装

そうするとページ移動可能になった。

 

 

結局原因は何?

 

 

 

そして最後に、CSV出力時にエラが発生。

 

どうもDBから取ってきたレコードが5000件を超えるとエラーになるようだ。

どうもASPのバッファのデフォルト値は400KBになっているようでそれを超えると

死亡するみたい。

 

IIS7からはGUIで設定いじれます。

 

 

あぁ、これでいいのかと思い5000件の出力。

おぉ、いったいった。

 

じゃあ10000件。。。エラー。

 

 

次はなんだ。。。

 

まぁタイムアウトでした。

 

同じく時間増やして解決。

 

20110910_02

 

とりあえず動いたけど。。。すげぇ遅い。

まぁ検証だしいいのかな。

時間あればチューニングしてみよう。

 

シンプルなライン素材(直線) 




f:id:tay_tosuma:20200219062206p:plain

お読み頂き有難うございました。