よろずやネット

最近はLibreofficeにハマっています。

VB.NETプロジェクト内にRDLを埋め込む

外部RDLファイルに依存しないRDLレポートアプリケーションを試しに作ってみた。

 

前回までのフロー
(1)事前にRDLレポートファイルを作っておく
(2)VB.NETで印刷データをXML出力
(3)VB.NETで(1)のファイルを読み込み、必要な所を編集し保存する。
(4)(3)のファイルをVB.NETのウインドウズフォームに貼り付けたRdlViewerに表示させる。

 

今回のフロー
(1)VB.NETプロジェクト内にRDLソースファイル(MyRDL.xml)を作る。 <-- ここが違う
(2)VB.NETで印刷データをXML出力
(3)VB.NETで(1)のファイルを読み込み、必要な所を編集し保存する。
   ↑本当は保存したくないのだが、方法がわからない。
(4)(3)のファイルをVB.NETのウインドウズフォームに貼り付けたRdlViewerに表示させる。

 


f:id:yorozuyanet:20190730130943j:plain

img_0

 

プロジェクト内に埋め込んだリソースの取得には、
AssemblyオブジェクトのGetManifestResourceStreamメソッドを使用した。

 

しかし、
VB.NETプロジェクト内にRDLを埋め込んでも劇的に早くなるわけでもないし、メリットはあまり感じない。

 

今回作成したサンプルコード:
http://yorozuya.exeexe.net/vbdotnet_fyireporting/rdl0011.html