- - PR -
アクティブレポートのVIEWERのレポートをクリアする
1
投稿者 | 投稿内容 | ||||
---|---|---|---|---|---|
|
投稿日時: 2006-10-27 11:19
こんにちは。
VB.NET2003、ACTIVE REPORT2.0Jで開発しています。 ある条件を入力して、一致するデータをVIEWERに一覧表示する、というプログラムを開発しています。 この時、VIEWERは条件指定するフォームに配置されており、常に表示されている状態です。 ある条件で一覧表をプレビュー表示し、そのまま次の条件を指定したところ その条件に一致するデータが存在しない場合、VIEWERはクリアされず 前回指定した条件の一覧表が表示されたままになっています。 これをクリアしたいのですが、できるでしょうか? ちなみに、データがない場合はレポートのNoDataイベントでレポートの生成をキャンセルし(ME.Cancel())、フォーム側で pt.Run() If (rpt.CurrentPage Is Nothing) Then '出力対象データがない Call MsgBox("データがありません", MsgBoxStyle.Information) Else ARV_Viewer.Document = rpt.Document End If という処理をしています。 よろしくお願いいたします。 | ||||
|
投稿日時: 2006-10-27 11:38
NAL-6295です。
ビューワを非表示にでもしておけばよいのではないでしょうか? _________________ 「伝える」とは「人に云う」と書く。 http://d.hatena.ne.jp/NAL-6295/ | ||||
|
投稿日時: 2006-10-27 12:04
おそらく、Windows アプリケーションですよね。 非表示にするのがイヤで、白紙を表示しておきたいのであれば、 空の ReportDocument をインスタンス化しておけば良いでしょう。 Windows 標準のお作法としては、非表示にして 「無効な領域」 を使用することをお勧めします。 面倒であれば、PictureBox コントロールか溝がある Panel コントロールにすり替えます。 _________________ C# と VB.NET の入門サイト じゃんぬねっと日誌 | ||||
|
投稿日時: 2006-10-27 12:37
回答ありがとうございます。
すみません、書き方が悪かったです。 VIEWER自体は表示されているのが望ましいのです。 VIEWERに表示されるレポートをクリアしたいだけで。 じゃんぬさんがおっしゃっているからのレポートを作る、というのが 私が目指している仕様に近いかもしれないですね。 | ||||
|
投稿日時: 2006-10-27 13:47
saki1208です。 提示されているバージョンでも同じかどうかはわかりませんが... ActiveReportsの過去のバージョンでは、ビューアに渡すレポート の宣言の仕方により、次に実行した際のレポートの内容が変わら ないという障害がありましたが、それとは異なりますか? ※rpt.Run()の前に、必ず「New」することでそれは回避できました | ||||
|
投稿日時: 2006-10-27 13:55
こんにちは。回答ありがとうございます!
rpt = New Acr_ITA020P ←これを追加する、ということですよね? rpt.Run() それとは違うと思います。 viewerに9月分のデータの帳票が表示されている。 抽出条件を変更して、それに一致するデータがない場合は form起動時のように、viewerには何も表示されていない状態にしたいのです。 (今回の条件では何も出力されなかった、ということをユーザーに明示したい) | ||||
|
投稿日時: 2006-10-27 14:09
saki1208です。 明日付けでグレープシティの良くあるQ&Aに以下の情報が掲載されていました。 Viewer1.Document.Pages.Clear() でクリアできると記載されています。 ※未確認です。 | ||||
|
投稿日時: 2006-10-27 14:19
ありがとうございます!
確認しました。 仕様どおりの動きをしてくれました。 実はここに来る前にグレープシティのサイトでチェックしたんですが その時にはまだ出てませんでした。 こういうことは知ってて当然の内容なんでしょうか。 とにかくありがとうございました! |
1