
はじめまして
仕事でクリスタルレポート使うことになったのですが、
初心者のためわからないことが多々あり教えていただきたいのです。
レコード数に関係なく空行を出力したいのですが
どうすれば実現できるのでしょうか?
たとえば、10行明細を出力するとしたら
レコード件数が1件でも残りの9行は空行で出力するという感じです。
クリスタルレポートのバージョンは
8.5.0.217です。
データベースはOracle9を使用しています。
なにぶん初心者なので具体的な手順を教えていただけると
ありがたいです。
お手数をおかけしますが、どうぞ何か良いアドバイスを
よろしくお願いします。
No.3ベストアンサー
- 回答日時:
それじゃ、ヒントだけ書いておきます。
Private Sub ActiveReport_Initialize()
レポートが呼び出された時の処理を記述します。
Private Sub ActiveReport_ReportStart()
レポートが起動したときの処理を記述します。
Private Sub ActiveReport_FetchData(eof as Boolean)
レポートにデータを貼り付ける時の処理を記述します。
まあ、これくらいでご容赦ください。もし、ヘルプ等がインストールされていないとの事ですが必要なものですからインストールされてください。また、メールのでのやり取りでこれ以上の細かなやり取りは出来ないと思いますので、書店で関連書籍をお求めになることをお勧めします。
PAPA0427さん
回答及びヒントありがとうございます。
わかりました、
後は自分でなんかとかがんばってみます。
どうもありがとうございました。
No.2
- 回答日時:
う~~~ん。
ちょっとそっけなかったですね。m(__)m方法1
ボディ部に全部カラムを作成します。いまは多分一行分作成されていると思いますが。必要なライン数分をボディ部に貼付けいきます。
また、レポート中にページ単位で表示させるコードを埋め込んで表示させることになります。
方法2
例えば、1ページに20行表示するとして、データの総数が112行あったとします。
すると、8行足りませんよね。DB上の表示にかかわる項目を、全部Nullか空白で埋めてからインサート文でレコードを8行追加します。
別ファイルにするのは、ワーク的な使い方をするのと、原本データに不要なレコードを追加しないためです。
この回答への補足
PAPA0427さん
回答ありがとうございます。
検討した結果、方法1でやってみようと思います。
そこで再び質問です。
詳細セクションに必要なライン数だけ作成しましたが、
こうなると、表示されるデータは1件目に限られてしまいませんか?
そうならないように
レポート中にページ単位で表示させるコードを埋め込んで表示させるということと認識してよいでしょうか?
またページ単位でコードを埋め込んで表示とはどのようにしたら良いでしょう?
自分で調べろと思われるかもしれませんが、
PCにヘルプがインストールされておらず
八方塞な状態なのです。
お手数をおかけしますがどうぞよろしくお願いします。
No.1
- 回答日時:
はじめまして。
クリスタルレポートでの空行の処理ですね。
よくやる方法としては、2つあります。
行を繰り返しでは、なくページで作成する。つまり、レポート上に10行なら10行分の表示カラムを設定する。
データの方を10行分用意する。つまり、印刷するときに印刷したい元データを別ファイルへコピーして件数の判定をし、必要な空行の行数を求め、コピーしたファイルへ空行をインサート。
こんなもんで、いかがでしょう?
この回答への補足
PAPA0427さん
回答ありがとうございます。
改めて質問させてください。
前者の方法について。
ページで印刷するというのはページヘッダ又はページフッタに行を作成してしまうということでしょうか?
その場合に詳細にセットされているデータをページヘッダ又はページフッタに表示するにはどうしたらよいのでしょうか?
後者の方法について
別ファイルではなくレポート上で件数の判定をすることは不可能なのでしょうか?また、コピーしたファイルへ空行をインサートというのは、どのようにすれば実現できるのでしょうか?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
VBAコンボボックスの内容が反映...
-
「Nullの使い方が不正です」の...
-
VB2010で、選択した系列を最前...
-
【C#】textBoxの指定行のデータ...
-
C# DataTableに最後に追加した...
-
Excel VBAでフォルダ内の全テキ...
-
エクセルのCSV読み込みについて
-
【ExcelVBA】値を変更しながら...
-
VBAでアクセスDBからデータの取...
-
【VB.NET】Excelの最終行までの...
-
SQLを発行とは?クエリの作成と...
-
動的配列VBAについて
-
VB.NETの配列にExcelから読み込...
-
vba フィルター 複数条件 3つ以...
-
★クリスタルレポートの元になる...
-
VB6のメモリ解放に関して
-
AccessからExcelへエクスポート...
-
エクセルでメールヘッダーを解...
-
INT64対応のprintf系関数はあり...
-
ASP.NET 2.0(C#) GridViewのソ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
C# DataTableに最後に追加した...
-
【VB.NET】Excelの最終行までの...
-
【ExcelVBA】値を変更しながら...
-
VBAコンボボックスの内容が反映...
-
COBOL数値転記の仕様
-
XMLでデータとして画像を指定す...
-
VBAでアクセスDBからデータの取...
-
アクセスでウェブ上のデータを...
-
「Nullの使い方が不正です」の...
-
エクセルのCSV読み込みについて
-
【C#】textBoxの指定行のデータ...
-
Excel VBAで1週間毎にカテゴリ...
-
クリスタルレポートでレコード...
-
非同期のプロセス間通信(パイプ...
-
VB2010で、選択した系列を最前...
-
Excel VBAでフォルダ内の全テキ...
-
VB.Net ResetBindings リクエリ
-
エクセル・グラフの 横軸に値を...
-
ListViewで表示されたデータの...
-
フォームからのデータの受け渡...
おすすめ情報