Usuário com melhor resposta
reportViewer no mvc 3

Pergunta
-
Estou fazendo um projeto em mvc 3 e estou tendo dificuldade em gerar relatórios, tenho algumas dúvidas :
1 - O melhor de usar reportviewer ou Crystal, o crystal ainda tem a limitação de qtos usuários podem ver o mesmo relatório simultaneamente ?
2 - Atualizei o meu VS2010 com o sp1 e para usar o razor e acho que isso tb atualizou o reportViewer onde encontro tutoriais sobre report viewer ?
Junior
Respostas
-
Dá uma olhada nesse post do Laércio (MUITO BOM):
“Caso esta resposta tenha ajudado a solucionar sua dúvida, favor clicar em “Marcar como Resposta” para beneficiar outros membros da comunidade que estejam lendo este thread”.- Sugerido como Resposta AndreAlvesLimaModerator quarta-feira, 25 de maio de 2011 16:50
- Marcado como Resposta AndreAlvesLimaModerator sexta-feira, 17 de junho de 2011 12:00
Todas as Respostas
-
Dá uma olhada nesse post do Laércio (MUITO BOM):
“Caso esta resposta tenha ajudado a solucionar sua dúvida, favor clicar em “Marcar como Resposta” para beneficiar outros membros da comunidade que estejam lendo este thread”.- Sugerido como Resposta AndreAlvesLimaModerator quarta-feira, 25 de maio de 2011 16:50
- Marcado como Resposta AndreAlvesLimaModerator sexta-feira, 17 de junho de 2011 12:00
-
estou usando MVC3 mas para os relatorios criei views em aspx e adicionei o reportviewer.
Criei uma base de dados chamada SampleDB no Microsoft SQL server 2008.
criei uma tabela chamada Customer_Orders
Codigo da minha view:
<%@ Page Language="C#" Inherits="System.Web.Mvc.ViewPage" %>
<%@ Register assembly="CrystalDecisions.Web, Version=13.0.2000.0, Culture=neutral, PublicKeyToken=692fbea5521e1304" namespace="CrystalDecisions.Web" tagprefix="CR" %>
<!DOCTYPE html>
<script runat="server">
protected void Page_Load(object sender, EventArgs e)
{
string caminho = Server.MapPath("~/Reports/CrystalReport1.rpt");
CrystalDecisions.CrystalReports.Engine.ReportDocument rptDoc = new CrystalDecisions.CrystalReports.Engine.ReportDocument();
System.Data.DataTable dt = new System.Data.DataTable();
// Just set the name of data table
dt.TableName = "Crystal Report Example";
dt = getAllOrders(); //This function is located below this function
// Your .rpt file path will be below
rptDoc.Load(caminho);
//set dataset to the report viewer.
rptDoc.SetDataSource(dt);
CrystalReportViewer1.ReportSource = rptDoc;
}
public System.Data.DataTable getAllOrders()
{
string sql = "select * from Customer_Orders where Cust_ord_id <= 10";
//Connection string replcae 'databaseservername' with your db server name
string sqlCon = "data source = 10.10.10.250\\SQLEXPRESS;Initial Catalog=SampleDB;User ID=sa;Password=""";
System.Data.SqlClient.SqlConnection Con = new System.Data.SqlClient.SqlConnection(sqlCon);
System.Data.SqlClient.SqlCommand cmd = new System.Data.SqlClient.SqlCommand(sql, Con);
System.Data.DataSet ds = null;
System.Data.SqlClient.SqlDataAdapter adapter;
try
{
Con.Open();
//Stored procedure calling. It is already in sample db.
//cmd.CommandText = "getAllOrders";
//cmd.CommandType = System.Data.CommandType.StoredProcedure;
cmd.Connection = Con;
ds = new System.Data.DataSet();
adapter = new System.Data.SqlClient.SqlDataAdapter(cmd);
adapter.Fill(ds, "Users");
}
catch (Exception ex)
{
throw new Exception(ex.Message);
}
finally
{
cmd.Dispose();
if (Con.State != System.Data.ConnectionState.Closed)
Con.Close();
}
return ds.Tables[0];
}
</script>
<html>
<head runat="server">
<title>ViewPage1</title>
</head>
<body style="height: 680px">
<form id="form1" runat="server">
<CR:CrystalReportViewer ID="CrystalReportViewer1" runat="server"
AutoDataBind="true" />
</form>
</body>
</html>do HomeController:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
namespace MvcApplication3.Controllers
{
public class HomeController : Controller
{
public ActionResult Index()
{
ViewBag.Message = "Welcome to ASP.NET MVC!";
return View();
}
public ActionResult About()
{
return View();
}
public ActionResult ViewPage1()
{
return View();
}
}
}e tenho o report criado com crystal report.
inseri um form no index.cshtml que contem um botao para visualizar o report. O report sai na tela sem nenhum proble mas os botoes no toolbar nao funcionam. o botao de imprimir ao ser clicado faz o refresh da pagina, o de export mostra as opcoes mas nao export o relatorio para nenhum outro formato.
Entrei para a url acima postado por Tiago_F mas as paginas dos vidoes nao estao ativas.
por favor me ajudem Urgente se tem alguma solucao para o meu problema. ou alguma outra forma de fazer um relatorio usando crystal reports em MVC3.
Agradeco antecipadamente pela ajuda
Banucho Cassamo
contacto: banucho.cassamo@gmail.com ou banucho.cassamo@database.co.mz ou ainda banucho_cassamo@hotmail.com
-
- Editado Banucho Cassamo sábado, 8 de outubro de 2011 09:28