I'm developing a screen that exports processed data from a Procedure
to PDF / Xls. Debugging it returns the following error:
Can not find table 0
From what I understand it can not read the class instantiated in an object. I would like to know what can cause this kind of error that I mentioned.
Following codes:
XLS Import Event (the type of report I am using is " balanceest "):
protected void btnImpListaXLS_Click(object sender, ImageClickEventArgs e)
{
try
{
Estoque objEstoque = new Estoque();
switch (ddlTipoRelatorio.SelectedValue)
{
case "saldo":
SetarFiltrosRptSaldoAtualEstoque();
break;
case "curva":
objEstoque.ProcessarProcRelCurvaABC(SetarFiltroCurvaABC());
break;
case "esgotados":
objEstoque.ProcessarProcEsgotados(SertarFiltroEsgostados());
break;
case "movimentacao":
switch (rdbMovimentacao.SelectedValue)
{
case "analitico":
SetarParametroMovimentacaoAnalitica();
break;
case "sintetico":
objEstoque.ProcessarRelatorioMovimentacaoSintetica(SetarParametroMovimentacaoSintetico(objEstoque));
break;
case "notasFiscais":
SetarParametroMovimentacaoNotasFiscais();
break;
}
break;
case "custoVendas":
objEstoque.ProcessarRelatorioCustoVendas(SetarFiltrosCustoVendas());
break;
case "valProd":
ProcessarValidadeProdutos(objEstoque, "xls");
return;
case "saldoest":
objEstoque.ProcessarSaldoAtualEstoqueEmpresa(SetarFiltrosEstoqueEmpresa());
break;
}
SetarFiltersEstoqueCompany ():
public SqlParameter[] SetarFiltrosEstoqueEmpresa()
{
try
{
SqlParameter[] param = new SqlParameter[]
{
new SqlParameter("@EmpInicial", txtEmpresaIni.Text),
new SqlParameter("@EmpFinal", txtEmpresaFim.Text),
new SqlParameter("@DataInicio", Convert.ToDateTime(txtDataIni.Text).ToString("yyyy-MM-dd")),
new SqlParameter("@DataTermino", Convert.ToDateTime(txtDataFinal.Text).ToString("yyyy-MM-dd")),
(string.IsNullOrEmpty(txtProdInicial.Text) ? new SqlParameter("@ProdInicial",DBNull.Value): new SqlParameter("@ProdInicial", txtProdInicial.Text)),
(string.IsNullOrEmpty(txtProdFinal.Text) ? new SqlParameter("@ProdFinal", DBNull.Value): new SqlParameter("@ProdFinal", txtProdFinal.Text))
};
metodos.rpt = "SaldoEstoqueEmpresa.rpt";
metodos.nomeFormula = new string[2];
metodos.valorFormula = new string[2];
metodos.nomeFormula[0] = "Empresa";
Empresa objEmpresa = new Empresa();
if (objEmpresa.ConsultarEmpresa((string)Session["empresa"]) > 0) { metodos.valorFormula[0] = objEmpresa.ParEmpresa; }
else { metodos.valorFormula[0] = string.Empty; }
metodos.nomeFormula[1] = "Filtro";
metodos.valorFormula[1] = "Produtos de " + txtProdInicial.Text + " à " + txtProdFinal.Text + " Periodo de " + txtDataIni.Text + " à " + txtDataFinal.Text;
return param;
}
catch (Exception)
{
throw;
}
}
Process CurrentStandardCompany ():
public void ProcessarSaldoAtualEstoqueEmpresa(SqlParameter[] param)
{
try
{
strSql = new StringBuilder();
strSql.Append("ProcSaldoEstoqueEmp");
SqlDAO.executarSQLProc(strSql, param);
}
catch (SqlException ex)
{
throw ex;
}
catch (Exception)
{
throw;
}
}
RunProcSql Method:
public static int executarSQLProc(StringBuilder strSql, params SqlParameter[] parametros)
{
SqlConnection con = null;
try
{
SqlCommand cmd;
con = abrirConexao();
cmd = new SqlCommand(strSql.ToString(), con);
using (cmd)
{
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.AddRange(parametros);
cmd.CommandTimeout = 300;
int nRegs = cmd.ExecuteNonQuery();
cmd.Dispose();
return nRegs;
}
}
catch (SqlException ex)
{
throw ex;
}
catch (Exception ex)
{
throw ex;
}
finally
{
fecharConexao(con);
}
}