protected override Colosoft.Reports.IReportDocument LoadReport(ref LocalReport report, ref List <ReportParameter> lstParam, HttpRequest PageRequest, System.Collections.Specialized.NameValueCollection Request, object[] outrosParametros, LoginUsuario login, string diretorioLogotipos) { // Verifica qual relatório será chamado switch (Request["rel"]) { case "GraficoProducaoPerdaDiaria": report.ReportPath = (Request["tipoGrafico"] == "1") ? "Relatorios/Producao/rptGraficoProdPerdaDiaria.rdlc" : "Relatorios/Producao/rptGraficoProdPerdaProduto.rdlc"; RecebimentoImagem imgGrafico; if (Request["tipoGrafico"] == "1") { imgGrafico = new RecebimentoImagem(); imgGrafico.Buffer = Glass.Conversoes.DecodificaPara64(Request["grfProdAcumulada"]); report.DataSources.Add(new ReportDataSource("grafProdAcumulada", new RecebimentoImagem[1] { imgGrafico })); imgGrafico = new RecebimentoImagem(); imgGrafico.Buffer = Glass.Conversoes.DecodificaPara64(Request["grfIndicePerda"]); report.DataSources.Add(new ReportDataSource("grafIndicePerda", new RecebimentoImagem[1] { imgGrafico })); imgGrafico = new RecebimentoImagem(); imgGrafico.Buffer = Glass.Conversoes.DecodificaPara64(Request["grfProdDiaria"]); report.DataSources.Add(new ReportDataSource("grafProdDiaria", new RecebimentoImagem[1] { imgGrafico })); imgGrafico = new RecebimentoImagem(); imgGrafico.Buffer = Glass.Conversoes.DecodificaPara64(Request["grfPerdaMensal"]); report.DataSources.Add(new ReportDataSource("grafPerdaMensal", new RecebimentoImagem[1] { imgGrafico })); imgGrafico = new RecebimentoImagem(); imgGrafico.Buffer = Glass.Conversoes.DecodificaPara64(Request["grfPerdaSetores"]); report.DataSources.Add(new ReportDataSource("grafPerdaSetores", new RecebimentoImagem[1] { imgGrafico })); } else if (Request["tipoGrafico"] == "2") { imgGrafico = new RecebimentoImagem(); imgGrafico.Buffer = Glass.Conversoes.DecodificaPara64(Request["grf10mm"]); report.DataSources.Add(new ReportDataSource("graf10mm", new RecebimentoImagem[1] { imgGrafico })); imgGrafico = new RecebimentoImagem(); imgGrafico.Buffer = Glass.Conversoes.DecodificaPara64(Request["grf8mm"]); report.DataSources.Add(new ReportDataSource("graf8mm", new RecebimentoImagem[1] { imgGrafico })); imgGrafico = new RecebimentoImagem(); imgGrafico.Buffer = Glass.Conversoes.DecodificaPara64(Request["grf6mm"]); report.DataSources.Add(new ReportDataSource("graf6mm", new RecebimentoImagem[1] { imgGrafico })); report.DataSources.Add(new ReportDataSource("GraficoProdPerdaDiaria", GraficoProdPerdaDiariaDAO.Instance.GetPerdaProduto(Convert.ToInt32(Request["setor"]), Request["incluirTrocaDevolucao"] != null && Request["incluirTrocaDevolucao"].ToLower() == "true", Request["mes"], Request["ano"]))); } break; case "PlanilhaMetragem": var agruparPecas = Request["agruparPecas"] == "true"; report.ReportPath = agruparPecas ? "Relatorios/Producao/rptPlanilhaMetragemAgrupada.rdlc" : "Relatorios/Producao/rptPlanilhaMetragem.rdlc"; var PlanilhaMetragem_idPedido = !String.IsNullOrEmpty(Request["idPedido"]) ? Glass.Conversoes.StrParaUint(Request["idPedido"]) : 0; var PlanilhaMetragem_idFunc = !String.IsNullOrEmpty(Request["idFunc"]) ? Glass.Conversoes.StrParaUint(Request["idFunc"]) : 0; var PlanilhaMetragem_idCliente = !String.IsNullOrEmpty(Request["idCliente"]) ? Glass.Conversoes.StrParaUint(Request["idCliente"]) : 0; var PlanilhaMetragem_idImpressao = !String.IsNullOrEmpty(Request["idImpressao"]) ? Glass.Conversoes.StrParaUint(Request["idImpressao"]) : 0; report.DataSources.Add(new ReportDataSource("Metragem", MetragemDAO.Instance.GetForRpt(PlanilhaMetragem_idPedido, PlanilhaMetragem_idImpressao, PlanilhaMetragem_idFunc, Request["codCliente"], PlanilhaMetragem_idCliente, Request["nomeCliente"], Request["dataIni"], Request["dataFim"], Request["dataIniEnt"], Request["dataFimEnt"], Glass.Conversoes.StrParaInt(Request["situacao"]), Glass.Conversoes.StrParaUint(Request["idSetor"]), Request["setoresPosteriores"] == "true", Request["idsRotas"], Glass.Conversoes.StrParaUint(Request["idTurno"])))); break; case "ProducaoForno": report.ReportPath = "Relatorios/Producao/rptProducaoForno.rdlc"; report.DataSources.Add(new ReportDataSource("ProducaoForno", ProducaoFornoDAO.Instance.GetForRpt(Request["dataIni"], Request["dataFim"]))); break; case "ProducaoSituacao": report.ReportPath = "Relatorios/Producao/rptProducaoSituacao.rdlc"; uint ProducaoSituacao_idFunc = Glass.Conversoes.StrParaUint(Request["idFunc"]); uint ProducaoSituacao_idPedido = !String.IsNullOrEmpty(Request["idPedido"]) ? Glass.Conversoes.StrParaUint(Request["idPedido"]) : 0; report.DataSources.Add(new ReportDataSource("ProducaoSituacao", ProducaoSituacaoDAO.Instance.GetForRpt(ProducaoSituacao_idFunc, ProducaoSituacao_idPedido, Request["dataIni"], Request["dataFim"]))); lstParam.Add(new ReportParameter("LiberarPedido", PedidoConfig.LiberarPedido.ToString())); lstParam.Add(new ReportParameter("Agrupar", !String.IsNullOrEmpty(Request["agrupar"]) ? (Request["agrupar"].ToLower() == "true").ToString() : "false")); break; case "ProducaoSituacaoData": report.ReportPath = "Relatorios/Producao/rptProducaoSituacaoData.rdlc"; uint ProducaoSituacaoData_idPedido = !String.IsNullOrEmpty(Request["idPedido"]) ? Glass.Conversoes.StrParaUint(Request["idPedido"]) : 0; uint ProducaoSituacaoData_idCliente = !String.IsNullOrEmpty(Request["idCliente"]) ? Glass.Conversoes.StrParaUint(Request["idCliente"]) : 0; report.DataSources.Add(new ReportDataSource("ProducaoSituacaoData", ProducaoSituacaoDataDAO.Instance.GetForRpt(Request["dataIni"], Request["dataFim"], ProducaoSituacaoData_idPedido, ProducaoSituacaoData_idCliente, Request["nomeCliente"]))); lstParam.Add(new ReportParameter("LiberarPedido", PedidoConfig.LiberarPedido.ToString())); lstParam.Add(new ReportParameter("ExportarExcel", (Request["exportarExcel"] == "true").ToString().ToLower())); break; case "ProducaoFornoResumo": report.ReportPath = "Relatorios/Producao/rptProducaoFornoResumo.rdlc"; report.DataSources.Add(new ReportDataSource("ProducaoFornoResumo", ProducaoFornoResumoDAO.Instance.GetForRpt(Glass.Conversoes.StrParaInt(Request["setor"]), DateTime.Parse(Request["dtIni"]), DateTime.Parse(Request["dtFim"]), Request["idTurno"].StrParaInt()))); break; case "RelacaoBoxProducao": report.ReportPath = "Relatorios/Producao/rptRelacaoBoxProducao.rdlc"; report.DataSources.Add(new ReportDataSource("RelacaoBoxProducao", RelacaoBoxProducaoDAO.Instance.GetForRpt(Request["data"]))); break; case "Perdas": { report.ReportPath = "Relatorios/Producao/rptPerdas.rdlc"; var idFuncPerda = !string.IsNullOrEmpty(Request["idFuncPerda"]) ? Request["idFuncPerda"].StrParaUint() : 0; var idPedido = !string.IsNullOrEmpty(Request["idPedido"]) ? Request["idPedido"].StrParaUint() : 0; var idCliente = !string.IsNullOrEmpty(Request["idCliente"]) ? Request["idCliente"].StrParaUint() : 0; lstParam.Add(new ReportParameter("Agrupar", Request["agrupar"].StrParaInt().ToString())); report.DataSources.Add(new ReportDataSource("ProdutoPedidoProducao", ProdutoPedidoProducaoDAO.Instance.GetForRptPerda(idFuncPerda, idPedido, idCliente, Request["nomeCliente"], Request["dataIni"], Request["dataFim"], Request["idsSetor"]))); break; } case "PerdasRepos": { report.ReportPath = Data.Helper.Utils.CaminhoRelatorio("Relatorios/Producao/rptPerdasRepos{0}.rdlc"); var idFuncPerda = !string.IsNullOrEmpty(Request["idFuncPerda"]) ? Request["idFuncPerda"].StrParaUint() : 0; var idLoja = !string.IsNullOrEmpty(Request["idLoja"]) ? Request["idLoja"].StrParaUint() : 0; var idPedido = !string.IsNullOrEmpty(Request["idPedido"]) ? Request["idPedido"].StrParaUint() : 0; var idCliente = !string.IsNullOrEmpty(Request["idCliente"]) ? Request["idCliente"].StrParaUint() : 0; lstParam.Add(new ReportParameter("ExibirValorCustoVenda", PCPConfig.ExibirCustoVendaRelatoriosProducao.ToString())); report.DataSources.Add(new ReportDataSource("ProdutoPedidoProducao", ProdutoPedidoProducaoDAO.Instance.GetForRptPerdaReposPeca(idFuncPerda, idPedido, idLoja, idCliente, Request["nomeCliente"], Request["codInterno"], Request["descrProd"], Request["dataIni"], Request["dataFim"], Request["idSetor"], Glass.Conversoes.StrParaUint(Request["turno"]), Request["idTipoPerda"], Glass.Conversoes.StrParaInt(Request["idCorVidro"]), Glass.Conversoes.StrParaFloat(Request["espessura"]), Glass.Conversoes.StrParaUint(Request["numeroNFe"])))); break; } case "ProducaoContagem": { #region Declaração de variáveis report.ReportPath = "Relatorios/Producao/rptProducaoContagem.rdlc"; var aguardandoEntradaEstoque = Request["aguardEntrEstoque"] == "true"; var aguardandoExpedicao = Request["aguardExpedicao"] == "true"; var altura = Request["altura"].StrParaInt(); var codigoEtiqueta = Request["numEtiqueta"]; var codigoPedidoCliente = Request["codCliente"]; var dataConfirmacaoPedidoFim = Request["dataFimConfPed"].StrParaDate(); var dataConfirmacaoPedidoInicio = Request["dataIniConfPed"].StrParaDate(); var dataEntregaFim = Request["dataFimEnt"].StrParaDate(); var dataEntregaInicio = Request["dataIniEnt"].StrParaDate(); var dataFabricaFim = Request["dataFimFabr"].StrParaDate(); var dataFabricaInicio = Request["dataIniFabr"].StrParaDate(); var dataLeituraFim = Request["dataFim"].StrParaDate(); var dataLeituraInicio = Request["dataIni"].StrParaDate(); var espessura = Request["espessura"].StrParaInt(); var fastDelivery = Request["fastDelivery"].StrParaInt(); var idCarregamento = Request["idCarregamento"].StrParaInt(); var idCliente = Request["idCliente"].StrParaInt(); var idFuncionario = Request["idFunc"].StrParaInt(); var idImpressao = Request["idImpressao"].StrParaInt(); var idPedido = Request["idPedido"].StrParaInt(); var idsAplicacao = Request["idsApl"]?.Split(',')?.Select(f => f.StrParaInt()) ?? new List <int>(); var idSetor = Request["idSetor"].StrParaInt(); var idsProcesso = Request["idsProc"]?.Split(',')?.Select(f => f.StrParaInt()) ?? new List <int>(); var idsRota = Request["codRota"]?.Split(',')?.Select(f => f.StrParaInt()) ?? new List <int>(); var idsSubgrupo = Request["idsSubgrupos"]?.Split(',')?.Select(f => f.StrParaInt()) ?? new List <int>(); var largura = Request["largura"].StrParaInt(); var nomeCliente = Request["nomeCliente"]; var pecasProducaoCanceladas = Request["pecasProdCanc"]?.Split(',')?.Select(f => f.StrParaInt()) ?? new List <int>(); var situacoes = Request["situacao"]?.Split(',')?.Select(f => f.StrParaInt()) ?? new List <int>(); var situacaoPedido = Request["situacaoPedido"].StrParaInt(); var tipoEntrega = Request["tipoEntrega"].StrParaInt(); var tipoSituacao = Request["tiposSituacoes"].StrParaInt(); var tiposPedido = Request["tipoPedido"]?.Split(',')?.Select(f => f.StrParaInt()) ?? new List <int>(); #endregion var producoesContagem = ProducaoContagemDAO.Instance.PesquisarProducaoContagemRelatorio(aguardandoEntradaEstoque, aguardandoExpedicao, altura, codigoEtiqueta, codigoPedidoCliente, dataConfirmacaoPedidoFim, dataConfirmacaoPedidoInicio, dataEntregaFim, dataEntregaInicio, dataFabricaFim, dataFabricaInicio, dataLeituraFim, dataLeituraInicio, espessura, fastDelivery, idCarregamento, idCliente, idFuncionario, idImpressao, idPedido, idsAplicacao, idSetor, idsProcesso, idsRota, idsSubgrupo, largura, nomeCliente, pecasProducaoCanceladas, situacaoPedido, situacoes, tipoEntrega, tipoSituacao, tiposPedido); report.DataSources.Add(new ReportDataSource("ProducaoContagem", producoesContagem)); break; } case "ProducaoData": report.ReportPath = "Relatorios/Producao/rptProducaoData.rdlc"; report.DataSources.Add(new ReportDataSource("ProducaoData", ProducaoDataDAO.Instance.GetForRpt(Glass.Conversoes.StrParaInt(Request["tipoData"]), Request["dataIni"], Request["dataFim"], Glass.Conversoes.StrParaUint(Request["idProcesso"]), Glass.Conversoes.StrParaUint(Request["idAplicacao"]), Request["tipo"], Request["situacao"], Request["naoCortados"] == "true", Request["codInternoMP"], Request["descrMP"]))); break; case "PecasPendentes": report.ReportPath = "Relatorios/Producao/rptPecasPendentes.rdlc"; var dtIni = Request["dataIni"].ConverteData().GetValueOrDefault(DateTime.Now); var dtFim = Request["dataFim"].ConverteData().GetValueOrDefault(DateTime.Now); bool usarProximoSetor = false; bool.TryParse(Request["usarProximoSetor"], out usarProximoSetor); // Recupera a relação da peças pendentes var lstPcaPend = PecasPendentesDAO.Instance.GetListForRpt (Request["tipoPeriodo"], usarProximoSetor, dtIni, dtFim); string descricaoPeriodo = null; switch (Request["tipoPeriodo"]) { case "PeriodoEntrega": descricaoPeriodo = "Período (Entrega)"; break; case "PeriodoFabrica": descricaoPeriodo = "Período (Fábrica)"; break; } lstParam.Add(new ReportParameter("UsarProximoSetor", usarProximoSetor ? "Próximo Setor a ser efetuado a peça" : "")); lstParam.Add(new ReportParameter("Periodo", descricaoPeriodo + " de " + Request["dataIni"] + " à " + Request["dataFim"])); report.DataSources.Add(new ReportDataSource("PecasPendentes", lstPcaPend)); break; case "ProducaoDiaria": report.ReportPath = "Relatorios/Producao/rptProducaoDiaria.rdlc"; lstParam.Add(new ReportParameter("Data", Request["data"])); var dados = WebGlass.Business.ProducaoDiariaRealizada.Fluxo.BuscarEValidar.Instance.ObtemDadosProducao(DateTime.Parse(Request["data"])); if (dados.Count > 0) { dados[0].AlteraImagemGrafico(Request["imagem"]); } report.DataSources.Add(new ReportDataSource("ProducaoDiariaRealizada", dados)); break; case "CapacidadeProducaoPedido": report.ReportPath = "Relatorios/Producao/rptPedidosCapacidadeProducao.rdlc"; report.DataSources.Add(new ReportDataSource("CapacidadeProducaoPedido", CapacidadeProducaoPedidoDAO.Instance.ObtemRelatorioPedidosCapacidadeProducao( Request["data"].StrParaDate().GetValueOrDefault(), Request["horaInicial"], Request["horaFinal"], Request["idSetor"].StrParaUint()))); break; case "RoteiroProducao": report.ReportPath = "Relatorios/Producao/rptRoteiroProducao.rdlc"; report.DataSources.Add(new ReportDataSource("RoteiroProducao", RoteiroProducaoDAO.Instance.ObtemParaRelatorio(0, Glass.Conversoes.StrParaUint(Request["grupoProd"]), Glass.Conversoes.StrParaUint(Request["subgrupoProd"]), Glass.Conversoes.StrParaUint(Request["processo"])))); break; default: Response.Write("Nenhum relatório especificado."); return(null); } // Atribui parâmetros ao relatório lstParam.Add(new ReportParameter("Logotipo", Logotipo.GetReportLogo(PageRequest))); lstParam.Add(new ReportParameter("TextoRodape", Geral.TextoRodapeRelatorio(login.Nome))); lstParam.Add(new ReportParameter("CorRodape", "DimGray")); return(null); }
protected override Colosoft.Reports.IReportDocument LoadReport(ref LocalReport report, ref List <ReportParameter> lstParam, HttpRequest PageRequest, System.Collections.Specialized.NameValueCollection Request, object[] outrosParametros, LoginUsuario login, string diretorioLogotipos) { // Verifica qual relatório será chamado switch (Request["rel"]) { case "LucroAproximado": report.ReportPath = "Relatorios/Administrativos/rptLucroAproximado.rdlc"; var lucro = LucroAproximadoDAO.Instance.GetLucroAproximado(Request["dataIni"], Request["dataFim"]); report.DataSources.Add(new ReportDataSource("LucroAproximado", lucro)); break; case "RecebimentosTipo": { report.ReportPath = "Relatorios/Administrativos/rptRecebimentosTipo.rdlc"; var lstReceb = RecebimentoDAO.Instance.GetRecebimentosTipo(Request["dataIni"], Request["dataFim"], Glass.Conversoes.StrParaUint(Request["idLoja"]), 0); report.DataSources.Add(new ReportDataSource("Recebimento", lstReceb)); break; } case "RecebimentosTipoGrafico": report.ReportPath = "Relatorios/Administrativos/rptRecebimentosTipoGrafico.rdlc"; var rt = RecebimentoDAO.Instance.GetRecebimentosTipo(Request["dataIni"], Request["dataFim"], Glass.Conversoes.StrParaUint(Request["idLoja"]), Glass.Conversoes.StrParaUint(Request["idFunc"])); report.DataSources.Add(new ReportDataSource("Recebimento", rt)); var recebimentoImagem = new RecebimentoImagem(); recebimentoImagem.Buffer = Glass.Conversoes.DecodificaPara64(Request["tempFile"]); report.DataSources.Add(new ReportDataSource("RecebimentoImagem", new RecebimentoImagem[1] { recebimentoImagem })); break; case "GraficoVendas": report.ReportPath = "Relatorios/Administrativos/rptGraficoVendas.rdlc"; var criterio = string.Empty; var chartVendasLista = new List <ChartVendas>(); var chartVendasImagem = new ChartVendasImagem(); var chartVendasDict = ChartVendasDAO.Instance.GetForRpt(Request["idLoja"].StrParaUint(), Request["idVendedor"].StrParaUint(), Request["tipoFunc"].StrParaInt(), Request["idCliente"].StrParaUint(), Request["nomeCliente"], Request["tipoPedido"], Request["idRota"].StrParaUint(), Request["dataIni"], Request["dataFim"], Request["agrupar"].StrParaInt(), out criterio); foreach (var entry in chartVendasDict) { foreach (var c in entry.Value) { chartVendasLista.Add(c); } } chartVendasImagem.Buffer = Glass.Conversoes.DecodificaPara64(Request["tempFile"]); lstParam.Add(new ReportParameter("Criterio", criterio)); report.DataSources.Add(new ReportDataSource("ChartVendas", chartVendasLista.ToArray())); report.DataSources.Add(new ReportDataSource("ChartVendasImagem", new ChartVendasImagem[1] { chartVendasImagem })); break; case "GraficoOrcaVendas": { report.ReportPath = "Relatorios/Administrativos/rptGraficoOrcaVendas.rdlc"; var situacao = !string.IsNullOrEmpty(Request["situacao"]) ? Request["situacao"].Split(',').Select(f => f.StrParaInt()) : null; var chartOrcaVendas = ChartOrcaVendasDAO.Instance.GetOrcaVendas(Glass.Conversoes.StrParaUint(Request["idLoja"]), Glass.Conversoes.StrParaUint(Request["idVendedor"]), situacao, Glass.Conversoes.StrParaInt(Request["tipoFunc"]), Request["dataIni"], Request["dataFim"]); report.DataSources.Add(new ReportDataSource("ChartOrcaVendas", chartOrcaVendas)); var chartOrcaVendasImagem = new ChartOrcaVendasImagem(); chartOrcaVendasImagem.Buffer = Glass.Conversoes.DecodificaPara64(Request["tempFile"]); report.DataSources.Add(new ReportDataSource("ChartOrcaVendasImagem", new ChartOrcaVendasImagem[1] { chartOrcaVendasImagem })); break; } case "GraficoOrcamentos": { var idLoja = Request["idLoja"].StrParaUint(); var idVendedor = string.IsNullOrEmpty(Request["idVendedor"]) ? 0 : Request["idVendedor"].StrParaUint(); var agrupar = string.IsNullOrEmpty(Request["agrupar"]) ? 0 : Request["agrupar"].StrParaInt(); var situacao = string.IsNullOrEmpty(Request["situacao"]) ? 0 : Request["situacao"].StrParaInt(); report.ReportPath = "Relatorios/Administrativos/rptGraficoOrcamento.rdlc"; var v = GraficoOrcamentosDAO.Instance.GetOrcamentos(idLoja, idVendedor, new int[] { situacao }, Request["dtIni"], Request["dtFim"], agrupar, false); report.DataSources.Add(new ReportDataSource("GraficoOrcamentos", v)); var graficoOrcamentosImagem = new GraficoOrcamentosImagem { Buffer = Glass.Conversoes.DecodificaPara64(Request["tempFile"]) }; report.DataSources.Add(new ReportDataSource("GraficoOrcamentosImagem", new GraficoOrcamentosImagem[1] { graficoOrcamentosImagem })); break; } case "GraficoProdutos": { var idLoja = Request["idLoja"].StrParaUint(); var idVendedor = string.IsNullOrEmpty(Request["idVend"]) ? 0 : Request["idVend"].StrParaUint(); var idCliente = string.IsNullOrEmpty(Request["idCliente"]) ? 0 : Request["idCliente"].StrParaInt(); var nomeCliente = Request["nomeCliente"]; var grupo = !string.IsNullOrEmpty(Request["grupo"]) ? Request["grupo"].StrParaUint() : 0; var subGrupo = !string.IsNullOrEmpty(Request["subGrupo"]) ? Request["subGrupo"].StrParaUint() : 0; var quantidade = !string.IsNullOrEmpty(Request["quantidade"]) ? Request["quantidade"].StrParaInt() : 0; var tipo = !string.IsNullOrEmpty(Request["tipo"]) ? Request["tipo"].StrParaInt() : 0; var dataIni = Request["dtIni"]; var dataFim = Request["dtFim"]; var codProduto = Request["codProduto"]; var descricaoProduto = Request["descProduto"]; var apenasMS = Convert.ToBoolean(Request["apenasMS"]); report.ReportPath = "Relatorios/Administrativos/rptGraficoProduto.rdlc"; //Busca os dados que servirão para preencher as séries do gráfico var p = GraficoProdutosDAO.Instance.GetMaisVendidos(idLoja, idVendedor, idCliente, nomeCliente, grupo, subGrupo, quantidade, tipo, dataIni, dataFim, codProduto, descricaoProduto, apenasMS); report.DataSources.Add(new ReportDataSource("GraficoProdutos", p)); var graficoProdutosImagem = new GraficoProdutosImagem(); graficoProdutosImagem.Buffer = Glass.Conversoes.DecodificaPara64(Request["tempFile"]); report.DataSources.Add(new ReportDataSource("GraficoProdutosImagem", new GraficoProdutosImagem[1] { graficoProdutosImagem })); break; } case "ListaBenef": report.ReportPath = "Relatorios/Administrativos/rptBeneficiamentos.rdlc"; uint Benef_IdFunc = Glass.Conversoes.StrParaUint(Request["idFunc"]); var lstBenef = BenefConfigDAO.Instance.GetForRpt(Request["dataIni"], Request["dataFim"], Glass.Conversoes.StrParaUint(Request["idLoja"]), Glass.Conversoes.StrParaUint(Request["idFunc"])); if (lstBenef.Count > 0) { lstBenef[0].Criterio = "Loja: " + LojaDAO.Instance.GetNome(Glass.Conversoes.StrParaUint(Request["idLoja"])) + " "; if (Benef_IdFunc > 0) { lstBenef[0].Criterio += "Vendedor: " + FuncionarioDAO.Instance.GetNome(Benef_IdFunc) + " "; } lstBenef[0].Criterio += "Data início: " + Request["dataIni"] + " "; lstBenef[0].Criterio += "Data fim: " + Request["dataFim"]; } report.DataSources.Add(new ReportDataSource("BenefConfig", lstBenef)); break; case "FluxoCaixa": report.ReportPath = "Relatorios/Administrativos/rptFluxoCaixa.rdlc"; var lstFluxoCaixa = FluxoCaixaDAO.Instance.GetForRpt(Request["dataIni"], Request["dataFim"], Request["prevCustoFixo"] == "1", Request["tipoConta"]); report.DataSources.Add(new ReportDataSource("FluxoCaixa", lstFluxoCaixa)); break; case "FluxoCaixaSintetico": report.ReportPath = "Relatorios/Administrativos/rptFluxoCaixaSintetico.rdlc"; var lstFluxoCaixaSintetico = FluxoCaixaSinteticoDAO.Instance.GetForRpt(Request["dataIni"], Request["dataFim"], Request["prevCustoFixo"] == "1", Request["tipoConta"]); report.DataSources.Add(new ReportDataSource("FluxoCaixaSintetico", lstFluxoCaixaSintetico)); break; case "PrevisaoFinanceira": report.ReportPath = "Relatorios/Administrativos/rptPrevisaoFinanceira.rdlc"; report.DataSources.Add(new ReportDataSource("PrevisaoFinanceira_Receber", new Data.RelModel.PrevisaoFinanceira[] { PrevisaoFinanceiraDAO.Instance.GetReceber(Glass.Conversoes.StrParaUint(Request["idLoja"]), Request["data"], Request["prevPedidos"] == "true") })); report.DataSources.Add(new ReportDataSource("PrevisaoFinanceira_Pagar", new Data.RelModel.PrevisaoFinanceira[] { PrevisaoFinanceiraDAO.Instance.GetPagar(Glass.Conversoes.StrParaUint(Request["idLoja"]), Request["data"], Request["previsaoCustoFixo"] == "true") })); lstParam.Add(new ReportParameter("Tipo", Request["tipo"])); lstParam.Add(new ReportParameter("ExibirPrevisaoCustoFixo", Request["previsaoCustoFixo"])); lstParam.Add(new ReportParameter("prevPedidos", (Request["prevPedidos"] == "true").ToString())); break; case "DescParc": report.ReportPath = "Relatorios/Administrativos/rptDescParc.rdlc"; var contasRec = Glass.Data.DAL.ContasReceberDAO.Instance.GetListContaComDescontoRpt(Glass.Conversoes.StrParaUint(Request["idPedido"]), Glass.Conversoes.StrParaUint(Request["idLiberarPedido"]), Glass.Conversoes.StrParaUint(Request["idLoja"]), Glass.Conversoes.StrParaUint(Request["idCliente"]), Request["nomeCli"], Glass.Conversoes.StrParaUint(Request["idFunc"]), Glass.Conversoes.StrParaDecimal(Request["valorIniAcres"]), Glass.Conversoes.StrParaDecimal(Request["valorFimAcres"]), Glass.Conversoes.StrParaDecimal(Request["valorIniDesc"]), Glass.Conversoes.StrParaDecimal(Request["valorFimDesc"]), Request["dataIni"], Request["dataFim"], Request["dataDescIni"], Request["dataDescFim"], Glass.Conversoes.StrParaUint(Request["idOrigemDesconto"])); report.DataSources.Add(new ReportDataSource("ContasReceber", contasRec)); lstParam.Add(new ReportParameter("LiberarPedido", PedidoConfig.LiberarPedido.ToString())); break; case "DescParcPag": report.ReportPath = "Relatorios/Administrativos/rptDescParcPag.rdlc"; report.DataSources.Add(new ReportDataSource("ContasPagar", Glass.Data.DAL.ContasPagarDAO.Instance.GetListContaComDescontoRpt(Glass.Conversoes.StrParaUint(Request["idCompra"]), Glass.Conversoes.StrParaUint(Request["numeroNf"]), Request["dataIni"], Request["dataFim"], Request["dataDescIni"], Request["dataDescFim"]))); break; case "RelacaoVendas": report.ReportPath = "Relatorios/Administrativos/rptRelacaoVendas.rdlc"; report.DataSources.Add(new ReportDataSource("RelacaoVendas", RelacaoVendasDAO.Instance.GetForRpt(Request["dataIni"], Request["dataFim"], Glass.Conversoes.StrParaInt(Request["situacao"]), Glass.Conversoes.StrParaInt(Request["agrupar"]), Glass.Conversoes.StrParaInt(Request["ordenar"]), login))); break; case "MovimentacoesFinanceiras": bool MovimentacoesFinanceiras_detalhado = bool.Parse(Request["detalhado"]); report.ReportPath = "Relatorios/Administrativos/rptMovimentacoesFinanceiras" + (MovimentacoesFinanceiras_detalhado ? "Det" : "") + ".rdlc"; report.DataSources.Add(new ReportDataSource("MovimentacoesFinanceiras", MovimentacoesFinanceirasDAO.Instance.GetForRpt(Request["dataIni"], Request["dataFim"], MovimentacoesFinanceiras_detalhado))); break; case "IFD": report.ReportPath = "Relatorios/Administrativos/rptIFD.rdlc"; lstParam.Add(new ReportParameter("Data", Request["data"])); report.DataSources.Add(new ReportDataSource("MovimentacoesFinanceiras", MovimentacoesFinanceirasDAO.Instance.GetForRpt(Request["data"], Request["data"], false))); report.DataSources.Add(new ReportDataSource("PrevisaoFinanceira_Receber", new Data.RelModel.PrevisaoFinanceira[] { PrevisaoFinanceiraDAO.Instance.GetReceber(0, Request["data"], false) })); report.DataSources.Add(new ReportDataSource("PrevisaoFinanceira_Pagar", new Data.RelModel.PrevisaoFinanceira[] { PrevisaoFinanceiraDAO.Instance.GetPagar(0, Request["data"], false) })); report.DataSources.Add(new ReportDataSource("FluxoCaixaIFD", FluxoCaixaIFDDAO.Instance.GetForRpt(Request["data"]))); report.DataSources.Add(new ReportDataSource("EstoqueIFD", EstoqueIFDDAO.Instance.GetForRpt(Request["data"]))); report.DataSources.Add(new ReportDataSource("MovimentacaoDiaIFD", MovimentacaoDiaIFDDAO.Instance.GetForRpt(Request["data"]))); report.DataSources.Add(new ReportDataSource("TitulosIFD", TitulosIFDDAO.Instance.GetForRpt(Request["data"]))); break; case "AlteracoesSistema": report.ReportPath = "Relatorios/Administrativos/rptAlteracoesSistema.rdlc"; report.DataSources.Add(new ReportDataSource("AlteracoesSistema", AlteracoesSistemaDAO.Instance.GetForRpt(Request["tipo"], Request["dataIni"], Request["dataFim"], Request["tabela"].StrParaInt(), Request["campo"], Request["idFunc"].StrParaUint()))); break; case "GraficoDRE": { uint trocador = 0; report.ReportPath = "Relatorios/Administrativos/rptGraficoDRE.rdlc"; var idCategoriaConta = Request["idCategoriaConta"].StrParaUint(); var idGrupoConta = Request["idGrupoConta"].StrParaUint(); var idsPlanoConta = (Request["idsPlanoConta"].Split(',')).Select(f => uint.TryParse(f, out trocador)).Select(f => trocador).Where(f => f > 0).ToArray(); var idLoja = Request["idLoja"].StrParaInt(); var dataIni = Request["dataIni"]; var dataFim = Request["dataFim"]; var grupos = Request["grupos"]; var tipoMov = Request["tipoMov"].StrParaInt(); var tipoConta = Request["tipoConta"].StrParaInt(); var ajustado = !string.IsNullOrEmpty(Request["ajustado"]) && Request["ajustado"].ToLower() == "true"; var ids = new List <uint>(); var lojas = idLoja == 0 ? LojaDAO.Instance.GetAll() : new [] { LojaDAO.Instance.GetElementByPrimaryKey(idLoja) }; foreach (var l in lojas) { ids.Add((uint)l.IdLoja); } var dados = ChartDREDAO.Instance.ObterDados(idCategoriaConta, idGrupoConta, idsPlanoConta, dataIni, dataFim, tipoMov, tipoConta, ajustado, ids); var data = new List <ChartDRE>(); foreach (var entry in dados) { foreach (var c in entry.Value) { data.Add(c); } } report.DataSources.Add(new ReportDataSource("ChartDRE", data.ToArray())); var chartDREImagem = new ChartDREImagem { Buffer = Glass.Conversoes.DecodificaPara64(Request["tempFile"]) }; report.DataSources.Add(new ReportDataSource("ChartDREImagem", new ChartDREImagem[1] { chartDREImagem })); break; } case "PrevFinanRecebPedido": report.ReportPath = "Relatorios/Administrativos/rptPrevisaoFinanRecebPedidos.rdlc"; var pedidos = PrevFinanPedidosDAO.Instance.GetPrevFinanPedidosRpt(Glass.Conversoes.StrParaUint(Request["idLoja"]), Request["dataIni"], Request["dataFim"]); report.DataSources.Add(new ReportDataSource("PrevFinanPedidos", pedidos)); break; case "ContasPagarReceber": report.ReportPath = "Relatorios/Administrativos/rptContasPagarReceber.rdlc"; var contasPagRec = ContasPagarReceberDAO.Instance.GetContasPagarReceberRpt(Glass.Conversoes.StrParaUint(Request["idCli"]), Request["nomeCli"], Glass.Conversoes.StrParaUint(Request["idFornec"]), Request["nomeFornec"], Request["dtIni"], Request["dtFim"], Glass.Conversoes.StrParaFloat(Request["valorIni"]), Glass.Conversoes.StrParaFloat(Request["valorFim"])); report.DataSources.Add(new ReportDataSource("ContasPagarReceber", contasPagRec)); break; case "RecebimentosDetalhados": { report.ReportPath = "Relatorios/Administrativos/rptRecebimentosDetalhados.rdlc"; var lstReceb = RecebimentoDAO.Instance.GetRecebimentosDetalhados(Request["dataIni"], Request["dataFim"], Glass.Conversoes.StrParaUint(Request["idLoja"]), 0); report.DataSources.Add(new ReportDataSource("Recebimento", lstReceb)); break; } case "CentroCustosMes": { report.ReportPath = "Relatorios/Administrativos/rptCentroCustosMes.rdlc"; var idLojaCentroCustoMes = Glass.Conversoes.StrParaInt(Request["idLoja"]); var valorEstoque = MovEstoqueCentroCustoDAO.Instance.ObtemSaldoEstoque(idLojaCentroCustoMes); lstParam.Add(new ReportParameter("Ano", Request["ano"])); lstParam.Add(new ReportParameter("ValorEstoque", valorEstoque.ToString())); var lstCentroCustos = CentroCustoDAO.Instance.GetForRelCentroCustoMes(idLojaCentroCustoMes, Glass.Conversoes.StrParaInt(Request["ano"])); report.DataSources.Add(new ReportDataSource("CentroCustos", lstCentroCustos)); break; } case "CentroCustosPlanoContas": { report.ReportPath = "Relatorios/Administrativos/rptCentroCustosPlanoConta.rdlc"; var idLojaCentroCustoPlanoConta = Glass.Conversoes.StrParaInt(Request["idLoja"]); var valorEstoque = MovEstoqueCentroCustoDAO.Instance.ObtemSaldoEstoque(idLojaCentroCustoPlanoConta); lstParam.Add(new ReportParameter("Periodo", Request["dataIni"] + " à " + Request["dataFim"])); lstParam.Add(new ReportParameter("ValorEstoque", valorEstoque.ToString())); var lstCentroCustos = CentroCustoDAO.Instance.GetForRelCentroCustoPlanoConta(idLojaCentroCustoPlanoConta, Request["dataIni"], Request["dataFim"]); report.DataSources.Add(new ReportDataSource("CentroCustos", lstCentroCustos)); break; } default: Response.Write("Nenhum relatório especificado."); return(null); } // Atribui parâmetros ao relatório lstParam.Add(new ReportParameter("Logotipo", Logotipo.GetReportLogo(PageRequest))); lstParam.Add(new ReportParameter("TextoRodape", Geral.TextoRodapeRelatorio(login.Nome))); lstParam.Add(new ReportParameter("CorRodape", "DimGray")); return(null); }