0

Active Reports Subreport ツールを使用しています。Oracle に接続して ActiveReport_ReportStart のデータ ソースをスクリプトとしてバインドしたいと考えています。以下のスクリプトを使用していますが、次のエラーが発生します: エラー メッセージ:[DBNETLIB][接続を開く (Connect())。]SQL Server が存在しないか、アクセスが拒否されました。接続文字列属性が無効です。

public void ActiveReport_ReportStart()
{
string connString = "Provider=SQLOleDB;User Id=XXX;Password=XX;Server=XXX;Service      Name=XX;Direct=True;Persist Security Info=True";
string sqlString = @"sql query";
DataDynamics.ActiveReports.DataSources.OleDBDataSource ds = new     DataDynamics.ActiveReports.DataSources.OleDBDataSource();
ds.ConnectionString = connString;
ds.SQL = sqlString;
rpt.DataSource = ds;
}

前もって感謝します...

4

1 に答える 1

2

ActiveReports に関する限り、何も問題はありません。これについて詳しく調べる時間はありませんでしたが、おそらく接続文字列です。エラー メッセージは SQLServer/OLEDB からのもので、ActiveReports を介して発生しています。

System.Data.OleDB.OleDBConnection オブジェクトで同じ接続文字列を使用してみて、それが機能するかどうかを確認してください。そこでもエラーが発生した場合、それは間違いなく接続文字列です。そうでない場合はお知らせください。詳しく調べます。

また、ActieReports Designer に組み込まれている接続文字列ビルダーを使用して動作させ、スクリプトにコピーすることもできます。

于 2012-08-08T07:38:34.543 に答える