- - PR -
ActiveReportの宣言について
投稿者 | 投稿内容 | ||||||||
---|---|---|---|---|---|---|---|---|---|
|
投稿日時: 2006-03-02 10:13
どちらにしても、インスタンスは必要になります。 型のコンパイル解決を図れる New [型] 構文は使えませんので、 CreateObject 関数を使うことになると思います。 ただ、試したことがないので、動くかどうかは保証できません。 _________________ C# と VB.NET の入門サイト じゃんぬねっと日誌 | ||||||||
|
投稿日時: 2006-03-02 10:46
はじめまして。
私も以前ActiveReportsでレポート名を動的に渡せないかと試した事があります。 確か、下記のコードで動いたと思います。 Dim asm As Reflection.Assembly = Reflection.Assembly.GetExecutingAssembly() Dim t As Type Dim obj As Object Dim rpt As DataDynamics.ActiveReports.ActiveReport t = asm.GetType(asm.GetName().Name + "." + レポート名) obj = t.InvokeMember(Nothing, System.Reflection.BindingFlags.CreateInstance, Nothing, Nothing, Nothing) rpt = CType(obj, DataDynamics.ActiveReports.ActiveReport) rpt.DataSource = データソースの設定 rpt.PageSettings.PaperWidth = ページ幅の設定 rpt.Run() | ||||||||
|
投稿日時: 2006-03-02 11:14
レスありがとうございます。
トミーさんに教えて頂いた例は.netかと思うのですが、 VB6でもうまくできないかと試してみましたがだめでした。 CreateObjectを使用して試してもみたのですが、やはりうまくいきませんでした。 やはり無理なのでしょうか・・ | ||||||||
|
投稿日時: 2006-03-02 11:23
それは、VB7 以降ですよね。 よくよく考えてみたら、今のままの構成では CreateObject してもダメですね。(多分) _________________ C# と VB.NET の入門サイト じゃんぬねっと日誌 | ||||||||
|
投稿日時: 2006-03-02 11:48
DDActiveReport2.ActiveReport 型のインスタンスを作成して、LoadLayout でレポートファイルを読み込めばいいんじゃないの?
| ||||||||
|
投稿日時: 2006-03-02 12:15
今手元にないので確認ができないのですが、内部レポートも可能なんでしたっけ?
内部レポートでも可能であれば、仰るように LoadLayout メソッドで一発解決ですね。 # 内部レポートで帳票 (型) があったりなかったりという構成が、そもそもまずい気がしますが、 # 型が存在しないとコンパイル エラーになるというのは、内部レポートのことだと思っています。 _________________ C# と VB.NET の入門サイト じゃんぬねっと日誌 | ||||||||
|
投稿日時: 2006-03-03 09:37
やはりVB6ではオブジェクト名で制御と言うのは難しそうですね。
レスありがとうございました!! |