掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
DataTableとDataSetについて(クリレポ 2010) (ID:147482)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
お世話になります。 以下の環境で次の現場のための勉強をしています。 ・VB.NET 2010 ・クリスタルレポート2010 ・Oracle 10g (ODP接続) 実際、表示は出来るのですが、他にスマートな方法はあるのでしょうか。 問題の箇所は「本当かこれ??」の部分です。 .Netの経験が浅く、oracleのグリットの考え方やDataSet、DataTableに疎いです。 ご教授頂ければありがたいです。 宜しくお願い致します。 DataSet1.xsd(レポートに紐付けしているデータテーブル) は以下の通りです。 DataTable1(架空の表) ・DataColumn1 ・DataColumn2 ・DataColumn3 ・DataColumn4 ソースのURL(7日以内に削除されます。) http://firestorage.jp/download/2dc5f34811f3225ab357b7516b9c5a9fa907652b ソース Dim cnn As New OracleConnection("user id=test1;password=test1;data source=XE") Dim strSql As String = "SELECT * FROM SAMPLE1 ORDER BY ID" Dim cmd As New OracleCommand(strSql, cnn) Dim da As New OracleDataAdapter(cmd) Dim Obj_CrRpt As New CrystalReport2 Dim dsTemp As New DataSet1() Dim dt As New DataTable() Try 'A4サイズ Obj_CrRpt.PrintOptions.PaperSize = CrystalDecisions.Shared.PaperSize.PaperA4 '横帳票 Obj_CrRpt.PrintOptions.PaperOrientation = CrystalDecisions.Shared.PaperOrientation.Landscape '--------------------- ' ↓ 本当かこれ?? '--------------------- da.Fill(dt) dsTemp.DataTable1.Merge(dt) For intCount As Integer = 0 To dt.Rows.Count - 1 dsTemp.DataTable1.Rows(intCount).Item(0) = dt.Rows(intCount).Item(0) dsTemp.DataTable1.Rows(intCount).Item(1) = dt.Rows(intCount).Item(1) dsTemp.DataTable1.Rows(intCount).Item(2) = dt.Rows(intCount).Item(2) Next '--------------------- ' end '--------------------- '--------------------- ' ↓ なぜできない?? '--------------------- 'da.SafeMapping.Add("DataColumn1", GetType(System.String)) 'da.SafeMapping.Add("DataColumn2", GetType(System.String)) 'da.SafeMapping.Add("DataColumn3", GetType(System.String)) 'da.SafeMapping.Add("DataColumn4", GetType(System.String)) da.SafeMapping.Add("*", GetType(System.String)) da.Fill(dsTemp, "DataTable1") '--------------------- ' end '--------------------- Obj_CrRpt.SetDataSource(dsTemp) CrystalReportViewer1.ReportSource = Obj_CrRpt CrystalReportViewer1.Refresh() Catch ex As Exception 'エラーログ MessageBox.Show("正しい値を入力してください。", _ "エラー", _ MessageBoxButtons.OK, _ MessageBoxIcon.Error) ''Call grLib_Cls_Main.Lib_Cls_LogOutPut(grStr_ChekTrace & " OleDbDataReader", ex) Finally da.Dispose() cmd.Dispose() End Try
←解決時は質問者本人がここをチェックしてください。
戻る
掲示板システム
Copyright 2020 Takeshi Okamoto All Rights Reserved.