Quantcast
Channel: SCN : Popular Discussions - SAP Crystal Reports & BI Dashboards (日本語) [Read-only]
Viewing all articles
Browse latest Browse all 2234

CrystalReportsにて、16000枚印刷を行うとメモリ不足エラーとなる。

$
0
0

Crystal Reports for VisualStudio2010 SP1をインストールした環境にて、

 

1.レポートファイルの読み込み

 

2.レポートファイル上にある、TEXTオブジェクトにプログラムにてアタッチして、編集

 

3.印刷

 

を繰り返し、16000回を過ぎたあたりからメモリ不足にて、レポートファイルの読み込みに

失敗します。

メモリリークなどを調べた結果、CrystalReportsが内部で確保したかもしれない、Mutex

オブジェクトが1回の処理で3~5ぐらいずつ、増えていっています。

 

        Try

            csReport.Load(m_acRPTFiles(nID), OpenReportMethod.OpenReportByDefault)

        Catch ex As Exception

            AddLog(ex.Message)

            Exit Function

        End Try

 

        If csReport.IsLoaded = False Then

            AddLog("読み込みチェックにて、失敗を検出!!")

            Exit Function

        End If

 

        nFNo = 1

 

        For nI = My.Settings.STARTDATAPOS To nDCount - 1

 

            acFieldName = "P" & Format(nFNo, "000")

 

            Try

                CrTxt = CType(csReport.ReportDefinition.ReportObjects(acFieldName),  _

                              CrystalDecisions.CrystalReports.Engine.TextObject)

                CrTxt.Text = asData(nI)

                CrTxt.Dispose()

            Catch ex As Exception

                AddLog(ex.Message)

            End Try

 

            nFNo = nFNo + 1

 

        Next nI

 

        Try

            csReport.PrintOptions.PrinterName = My.Settings.PRINTERNAME

            csReport.PrintToPrinter(1, False, 0, 0)

            csReport.Close()

        Catch ex As Exception

            AddLog(ex.Message)

            csReport.Dispose()

            Exit Function

        End Try

 

というようなコーディングです。

CrystalReportsの問題ではないかもしれませんが、メモリの解放を行いたいので

オブジェクトの整理の方法を教えていただけないでしょうか。

よろしくお願いいたします。


Viewing all articles
Browse latest Browse all 2234

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>