- ベストアンサー
クリスタルレポート8でのFormulaとは?
- クリスタルレポート8を使用してアクセスのMDBのテーブルの中身を出力する際、特定のグループ(Aグループ)だけを出力する方法について教えてください。
- Formulaという言葉を耳にしたことがありますが、その詳細について理解できません。どのような機能なのでしょうか?
- ワークテーブルに対象のレコードだけを入れて全件出力する方法は今の状態ではできません。別の方法でAグループだけを出力することは可能でしょうか?
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
他の質問を見ました。 APIを使用して、帳票を出力されているのですね。 私の場合、ビューワーコントロールやオブジェクトを宣言することにより出力してますので、以下の私の回答とはそもそも出力の方法が違うようですね。 少なからず、出力方法は違いますが、私の場合、以下の方法で問題なく目的を達成しております。 他の方からの回答をご期待下さい。
その他の回答 (3)
- mfuku
- ベストアンサー率50% (173/345)
CRViewer1 とは Crystal ReportsのReport Viewerコントロールのことです。 ここでは、Report Viewerのプレビュー出力を例としてます。 また、オブジェクトの認識のためには、Ctystal Reportsのライブラリを使用するわけですので、参照設定で、 Crystal Report 8 ActiveX Designer Run Time Library Crystal Report 8 ActiveX Designer Design Time Library(Internal) 等をチェックしてください。 また、StarFaxについては、残念ながらわかりません。 いずれにせよ、レコード選択式への条件設定でしたらReportオブジェクトのRecordSelectionFormulaプロパティを介して設定することができます。
お礼
Declare Function PESetSelectionFormula Lib "crpe32.dll" (ByVal printJob%, ByVal formulaString$) As Integer で解決することができました!!!! ありがとうございました。
- mfuku
- ベストアンサー率50% (173/345)
#1の者です。 すみません、先ほど下記の宣言が抜けてましたね。 追加します。 Dim objApplication As New craxdrt.Application
補足
ユーザー定義型が宣言されていません・・と出ます。
- mfuku
- ベストアンサー率50% (173/345)
クリスタルレポートのレコード選択式に設定する内容をそのままVBからRecordSelectionFormulaプロパティを通して渡してあげれば可能です。 具体的にはこんな感じです。 Dim objReport As craxdrt.Report Set objReport = objApplication.OpenReport("レポートファイル名.RPT", 1) objReport.RecordSelectionFormula = "{テーブル名.フィールド名} = 'Aグループ'" CRViewer1.ReportSource = objReport CRViewer1.ViewReport 他にも、ソート順や、DBの接続先など、同様の方法(それぞれ専用のプロパティ)で、色々なものを変更することができますので応用してみてください。
お礼
おぉぉ!?SelectionFormulaというのに 条件を書くとうまく抽出できました。 ありがとうございます。 これで第一段階はクリア・・・。 今この抽出してできたクリスタルレポートを StarFaxの機能を使ってTIFファイルにして それをFAX送信させたいのです。 単純にワークテーブルの中身をすべてクリスタル レポートに表示させてできたレポートをTIFファイル にはできたのですが、 この抽出条件を渡す方法が分からず困ってます。
補足
CRViewer1 とは何でしょうか・・
お礼
何度も回答ありがとうございます!!! ビューワーコントロールを使用しての帳票出力は 行ったことがあったのですが、Starfaxの関連で APIを使わざるをえない状況です。 丁寧な回答に感謝致します。
補足
http://www.int21.co.jp/pcdn/vb/noriolib/vbmag/0003/api/hyo8.html ここの表にはない SelectionFormulaに対応するAPIが分かれば何とかなりそうですが。。。 どなたか知らないでしょうか。