Array
(
)

Erro Parâmetro

Chayene Carmo
   - 08 jan 2015

Bom dia, estou desenvolvendo uma aplicação em WPF que estou com o seguinte problema: Parâmetro.
Caso utilize parâmetro em uma consulta não me retorna nada mesmo havendo dados naquela tabela, alguém pode me ajudar?

Joel Rodrigues
   - 08 jan 2015

Qual banco você está utilizando? Pois você marcou as tags Oracle e PostegreSQL.

Chayene Carmo
   - 08 jan 2015

Oi, estou utilizando o access.

Alex Lekao
   - 08 jan 2015

Nao conheco access, mas acredito que se vc postar o codigo ficara mais facil para ajudarmos.

Chayene Carmo
   - 08 jan 2015

#Códigopublic ArrayList ListarEmpenho(int id_centro_custo)
{
ArrayList listarEmpenhos = new ArrayList();
Nota_Empenho_BO neBO;

using (_minhaConexao = new Conexao_DAO(true))
{
string select = "Select NotaEmpenho.AnoNota, NotaEmpenho.IdNota, NotaEmpenho.IdTipoEmpenho, NotaEmpenho.TotalNota, NotaEmpenho.ValorLiquidado, NotaEmpenho.ValorPago, NotaEmpenho.ValorAnulado, NotaEmpenho.CGC, NotaEmpenho.Tradutora, PlanoConta.IdProjetoOuATividade from NotaEmpenho inner join PlanoConta on NotaEmpenho.Tradutora = PlanoConta.IdTradutora "; /* where (PlanoConta.IdProjetoOuAtividade ='" + id_centro_custo + "') */

OleDbDataReader reader = _minhaConexao.ExecutaLeitura_Access(select);
while (reader.Read())
{
neBO = new Nota_Empenho_BO();
neBO.Ano_Nota = Convert.ToInt32(reader[0]);
neBO.Id_Nota = Convert.ToInt32(reader[1]);
if (Convert.ToInt16(reader[2]) == 00)
{
neBO.Tipo_Empenho = Tipo_Empenho.N_existe;
}
else if (Convert.ToInt16(reader[2]) == 01)
{
neBO.Tipo_Empenho = Tipo_Empenho.Ordinaria;
}
else if (Convert.ToInt16(reader[2]) == 02) if (reader[9].ToString() == id_centro_custo.ToString())
{
neBO.Tipo_Empenho = Tipo_Empenho.Estimativa;
}
else
{
neBO.Tipo_Empenho = Tipo_Empenho.Global;
}
neBO.Total_Nota = Convert.ToDecimal(reader[3]);
neBO.ValorLiquidado = Convert.ToDecimal(reader[4]);
neBO.ValorPago = Convert.ToDecimal(reader[5]);
neBO.ValorAnulado = Convert.ToDecimal(reader[6]);
neBO.CGC = Convert.ToString(reader[7]);
neBO.Tradutora = Convert.ToString(reader[8]);

listarEmpenhos.Add(neBO);
}
reader.Dispose();
return listarEmpenhos;
}
}

Alex Lekao
   - 08 jan 2015

Ola,

Vou me ater ao codigo SQL.

No script vc esta usando inner, ele apresenta apenas o que existir nas duas tabelas.

Acredito que o parametro que esteja se referindo seja em relacao ao codigo que vc esta usando.

nao terei como ajudar mais.

Marisiana
   - 10 jan 2015

Quando você executa o SELECT direto no banco, ele retorna dados?