スキップしてメイン コンテンツに移動

システム管理者が設定したレポート処理ジョブの最大数に達しました

 会社で、後輩が、私が開発した、asp.net のプログラムを使用していた時の事。

 

 

急に、エラーが発生して動かなくなったとの事。

 

 

直前にどんな事をやっていたか聞いてみると、商品ごとに集計を行っていたのだか、それを連続して、数十回やっていたとのこと。

 

 

 

 

表示されるメッセージを見ても詳細はわからないので、Webサーバーのイベントビューワーでログを見てみると、以下のようなメッセージが記録されている。

 

 

 

 

システム管理者が設定したレポート処理ジョブの最大数に達しました。

 

 

 

   場所 CrystalDecisions.ReportAppServer.ClientDoc.ReportClientDocumentClass.Open(Object& DocumentPath, Int32 Options)

 

   場所 CrystalDecisions.ReportAppServer.ReportClientDocumentWrapper.Open(Object& DocumentPath, Int32 Options)

 

   場所 CrystalDecisions.ReportAppServer.ReportClientDocumentWrapper.EnsureDocumentIsOpened()

 

 

 

 

 

このプログラムはCrystalReportsを使って集計と表示をしているので、どうも CrystalReports絡みのエラーのようである。

 

 

 

 

 

そこで、いろいろ調べて見ると、どうもCrystalReportsを使ったあとで、ちゃんと Close とか Dispose とかで、ちゃんと後始末をしなくてはいけないらしい。


そこで、以下のように Unload のイベントで、Close の処理を追加した。

 

 

 

 

Partial Public Class WebFrmHoge

 

Inherits System.Web.UI.Page

 

 

 

 

Dim Rpt As New CR_Hoge     ' ← CrystalReports のファイル名

 

 

 

Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load

 

 

 

  
'   Load イベントの処理

 

 

 

End Sub

 

 

 

 

 

' その他のイベントでの処理

 

 

 

 

 

' 以下、追加した Unload イベントでの処理

 

 

 

Private Sub Page_Unload(sender As Object, e As EventArgs) Handles Me.Unload

 

 

 

      Rpt.Close()

 

 

 

End Sub

上記の変更をした後、商品毎の集計を120回くらいやってみたけれど、とりあえずエラーにはならず表示するようにはなった。

 

コメント

このブログの人気の投稿

KVK混合水栓【KF770】の切替弁【PZ669】の交換 

 前の記事にも書いたけれど、家を買ってから10年も経つと、いろいろとガタがくるもので風呂場のKVK混合水栓の切替ハンドルを停止の位置にしてもポタポタと水が止まらなくなりました。       それより、一年前くらいから(もっと前だったかも)、切替ハンドルがスムースではなくなり妙に重くなってきてはいました。これはまあ、実害がなかったのでそのままにしておいたのですが、水漏れとなると話は違います。多分、一晩くらい出続けたら結構な流失量になるはず・・・・。       これは、放置しておけないということで、早速ネットで情報を集めて見ます。   まず、混合水栓の名称と型番は       サーモスタット式シャワー  KF770TN       その結果、切替弁という部品を交換すれば直ると書いてあります。   その部品の名称と型番は       サーモスタットシャワー切替弁ユニット  PZ669 でも、公式よりAmazonのほうが送料無料で安いです。       そして、交換方法はおおまかに こちら に書いてあります。 でも、そこに書いてあるようにすんなりとはいかないので、それを以下に書いておきます。     まず、絶対忘れていけないのは、止水弁をお湯側、水側しっかり締めておきます。さもないと、ずぶ濡れになって、制御不能になるかもしれません。 1.次に、キャップと切替ハンドルの隙間にドライバーを差し込んで、キャップと切替ハンドルを外します。             2.次に切替カラーを外すのですが、これを外すのに結構苦労しました。写真の様にカラーの後ろの部分に切り欠きがあってそれを外すように本体の後ろのプレートを手前側に押しながら外します。私はこれがわからなくてドライバーなどで無理やり外そうとして手こずりました。私は幸運にも割らずに済みましたが、もう少し無理にやったら割っていたかもしれません。   ...

Crystal 構文 if文 の 入れ子の例

 Crystal 構文 で if 文は、構造がわかりにくくネスト(入れ子)はできないのか   と思っていましたができるようです。     と言いながらもよく書き方を忘れるので備忘録的に以下に書いておくので   参考にしてください。           if   [条件1] then             // [条件1]が真の時、以下の条件式を判断する                 if [条件2] then                          // ここに [条件1]かつ[条件2]が真の時処理を書く               else                         //   ここに [条件1]が真で[条件2]が偽の時処理を書く         else                  // ここに[条件1]が偽の時の処理を書く