Jump to content

Reportviewer + c#.net + mysql


Recommended Posts

Posted

Olá

Tenho o dataset criado e configurei o reportview,

Na pagina do browser onde tenho o reportviewer, aparece este: Não foi fornecida nenhuma instância de origem de dados para a origem de dados 'DataSet1'.

conn = new MySqlConnection("Database=" + BANCO + ";Data Source=" + SERVIDOR + ";User Id=" + USUARIO + ";Password=" + SENHA + "; ");
		    conn.Open();
		    cmd = conn.CreateCommand();
		    cmd.CommandText = "SELECT * FROM fichacli";
		    adap = new MySqlDataAdapter();
		    adap.SelectCommand = cmd;
		    DataSet custDB = new DataSet("DataSet1");
		    custDB.Clear();
		    adap.Fill(custDB, "fichacli");
		    DataTable aaa = null;
		    aaa = custDB.Tables[0];
		    ReportViewer1.ProcessingMode = ProcessingMode.Local;
		    ReportViewer1.LocalReport.ReportPath = "C:\\Users\\Diogo\\Documents\\Visual Studio 2012\\Projects\\mediproject\\mediproject\\Report4.rdlc";
		    ReportViewer1.LocalReport.DataSources.Clear();
		    ReportViewer1.LocalReport.DataSources.Add(new ReportDataSource("fichacli", aaa));
		    ReportViewer1.DocumentMapCollapsed = true;
		    ReportViewer1.LocalReport.Refresh();
Posted

Tens aí coisas desnecessárias. Se estás a criar um novo dataset, para quê limpá-lo, por exemplo?


DataSet custDB = new DataSet();
adap.Fill(custDB, "fichacli");

Já tinha experimentado sem o clear e, não dá na mm.

Posted

E substituíste o código que te dei pelo que tens?

Agora aparece isto:

  • Não é possível estabelecer ligação com o servidor remoto
    • Nenhuma ligação pôde ser feita porque o computador de destino as recusou ativamente 127.0.0.1:80

Posted

O quê rapaz? Lê lá o que eu disse.

Já está a fazer a conecção À bd. Mas aparece sempre este erro: Não foi fornecida nenhuma instância de origem de dados para a origem de dados 'DataSet1'.

È a primeira vez que estou a usar o reportviewer e não estou a perceber o erro.

Posted

Mostra o teu código actual.

No page loud tenho o codio assim

	    MySqlConnection conn = default(MySqlConnection);
	    MySqlCommand cmd = default(MySqlCommand);
	    MySqlDataAdapter adap = default(MySqlDataAdapter);
	    conn = new MySqlConnection("Database=" + BANCO + ";Data Source=" + SERVIDOR + ";User Id=" + USUARIO + ";Password=" + SENHA + "; ");
	    conn.open();
	    cmd = conn.CreateCommand();
	    cmd.CommandText = "SELECT * FROM fichacli";
	    adap = new MySqlDataAdapter();
	    adap.SelectCommand = cmd;
	    DataSet custDB = new DataSet();
	    //custDB.Clear();
	    adap.Fill(custDB, "fichacli");
	    DataTable aaa = null;
	    aaa = custDB.Tables[0];
	    ReportViewer1.ProcessingMode = ProcessingMode.Local;
	    ReportViewer1.LocalReport.ReportPath = "C:\\Users\\Diogo\\Documents\\Visual Studio 2012\\Projects\\mediproject\\mediproject\\Report1.rdlc";
	    ReportViewer1.LocalReport.DataSources.Clear();
	    ReportViewer1.LocalReport.DataSources.Add(new ReportDataSource("fichacli", aaa));
	    ReportViewer1.DocumentMapCollapsed = true;
	    ReportViewer1.LocalReport.Refresh();
Posted (edited)

É impossível te estar a dar esse erro quando tu não tens nenhuma referência ao DataSet1.

Pois. Mas está.

Meta dataset ou dataset1.

Edited by diogom
Posted

Não te estás a explicar direito. Vou repetir: com o teu código actual (o que mostraste no penúltimo post) é impossível dar erro com referência a DataSet1. Enganaste e querias dizer que dava erro aqui:

DataSet custDB = new DataSet();

?

Posted (edited)

Não te estás a explicar direito. Vou repetir: com o teu código actual (o que mostraste no penúltimo post) é impossível dar erro com referência a DataSet1. Enganaste e querias dizer que dava erro aqui:

DataSet custDB = new DataSet();

?

Eu não sei onde dá erro porque compila sem erros. Quando carrega para o browser, aparece esta linha( Não foi fornecida nenhuma instância de origem de dados para a origem de dados 'DataSet1'.) na pagina.

Edited by diogom
Posted

Compila para o browser? Isto é Web ou WinForms?

Vamos lá melhorar esse teu código e torná-lo mais perceptível e simples. Basicamente tu só precisas disto:

MySqlConnection conn = new MySqlConnection("Database=" + BANCO + ";Data Source=" + SERVIDOR + ";User Id=" + USUARIO + ";Password=" + SENHA + "; ")

string query = "SELECT * FROM fichacli";
conn.Open();

MySqlDataAdapter adapt = new MySqlDataAdapter(query, conn);
DataSet custDB = new DataSet();
adapt.Fill(custDB, "fichacli");

ReportViewer1.ProcessingMode = ProcessingMode.Local;
ReportViewer1.LocalReport.ReportPath = "C:\\Users\\Diogo\\Documents\\Visual Studio 2012\\Projects\\mediproject\\mediproject\\Report1.rdlc";
ReportViewer1.LocalReport.DataSources.Add(new ReportDataSource("fichacli", custDB));
ReportViewer1.DocumentMapCollapsed = true;
ReportViewer1.LocalReport.Refresh();

Se ele te der erro, diz-me em que linha é.

Posted

Compila para o browser? Isto é Web ou WinForms?

Vamos lá melhorar esse teu código e torná-lo mais perceptível e simples. Basicamente tu só precisas disto:

MySqlConnection conn = new MySqlConnection("Database=" + BANCO + ";Data Source=" + SERVIDOR + ";User Id=" + USUARIO + ";Password=" + SENHA + "; ")

string query = "SELECT * FROM fichacli";
conn.Open();

MySqlDataAdapter adapt = new MySqlDataAdapter(query, conn);
DataSet custDB = new DataSet();
adapt.Fill(custDB, "fichacli");

ReportViewer1.ProcessingMode = ProcessingMode.Local;
ReportViewer1.LocalReport.ReportPath = "C:\\Users\\Diogo\\Documents\\Visual Studio 2012\\Projects\\mediproject\\mediproject\\Report1.rdlc";
ReportViewer1.LocalReport.DataSources.Add(new ReportDataSource("fichacli", custDB));
ReportViewer1.DocumentMapCollapsed = true;
ReportViewer1.LocalReport.Refresh();

Se ele te der erro, diz-me em que linha é.

Estou a usar webform.

Está a dar erro na compilação:

O objeto de fonte de dados do relatório deve ser do tipo System.Data.DataTable, System.Collections.IEnumerable ou System.Web.UI.IDataSource.

Nesta linha (ReportViewer1.LocalReport.DataSources.Add(new ReportDataSource())😉 tenho que usar datatable

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.