【ActiveReports】「インデックスが配列の境界外です。」

ActiveReports
記事内に広告が含まれています。
GrapeCity.ActiveReports.ReportException: 予期しないエラーが発生しました。
追加情報: インデックスが配列の境界外です。

Tableデータ領域のヘッダー/フッターにフィールドの値を出力する式を設定している場合に発生することがあります。

その発生条件としては、Table上に出力するデータ(レコード)が0行の時に例外が発生します。

プログラムの問題だと思って調べていたら、ActiveReportのサービスパックで対処済みであることが分かったので適用していきます。

私のところでは、11.0Jを使用しています。
他のバージョンでもほぼ変わりないと思いますが、公式ページを併せて確認した上で作業するようにしてください。

製品のバージョンを調べる方法

公式のナレッジベースを参考にしました。

まずは、現在のバージョンを確認しましょう。

Security check

現在のバージョンを確認する

リリースノート

スタートメニューから「PowerTools ActiveReports~~~」を探しましょう。

フォルダーを開くと最後の方にリリースノートがあるので選択します。

ブラウザにリリースノートが開くので、左上にある「Version:」を確認します。

デザイナ

「ヘルプ」⇒「デザイナについて」を開くとバージョン情報画面が開きます。

バージョンの見方

バージョンの見方は、以下の通りです。

上記の例だと、初版で止まっていることが分かりました。

サービスパックを取得する

サービスパックは下記より取得することが出来ます。各バージョンが揃っているので間違えないように気を付けてください。

アップデート版 - ダウンロード | Developer Tools〈開発支援ツール〉 - グレープシティ株式会社
グレープシティ株式会社のDeveloper Tools〈開発支援ツール〉の製品の修正版(アップデート)を公開しています。

サービスパックを適用する

取得したファイルを展開すると以下のファイルが入っていました。

さっそくexeファイルを実行します。
(Visual Studioなど開いていたら閉じてください。)

下のような画面が開きますので、「使用許諾契約書に同意する」にチェックを付けて、インストールボタンをクリックしてください。

以下確認画面が出る場合は、「はい」をクリックしてください。

インストールが始まるので、しばらくお待ちください。

インストールが完了すると下記画面が表示されます。

ライセンス認証に関して書かれていますが、認証済みの場合は手続きは必要ありませんので、画面を閉じてください。
認証がまだの場合は、チェックを付けると「ライセンス認証マネージャー」が起動するので手続きを行ってください。

サービスパックの適用は以上で完了です。

念のため、バージョンが新しくなっていることを確認しておきましょう。

最後に

Visual Studioのソリューション(プロジェクト)を開いて、「ソリューションのリビルド」を実行してください。

以上、参考になれば幸いです。

コメント

タイトルとURLをコピーしました