RESULTADO DA CONSULTA SQL NO TEXBOX
Boa tarde galera!!!
Travei mais uma vez na minha aplicação, o pessoal aqui do fórum deve estar de saco cheio dos meus Posts
Galera, eu tinha pulado essa etapa para pedir ajuda somente quando eu realmente descobrisse o problema. Descobri!
Estou usando o seguinte código para escrever na TEXBOX o resultado de um select.
O problema que encontrei foi o seguinte, a aplicação tem um select com parametros, esses parametros alterna 9 bancos de dados diferentes, caso um dos bancos não tenha resultado em um dos texbox acima, a aplicação apresenta erro e não preenche os dados.
Por exemplo eu escolho o banco 1 e clico em atualizar, como pode ser visto na imagem em anexo. Se nesse banco tem todas as informações, todas as TEXBOX são preenchidas corretamente, ao trocar para um outro banco, e não tiver por exemplo serviços, os texbox abaixo de serviço não são preenchidos.
Eu tentei a solução abaixo, mas aparentemente não deu resultado Coloquei um else para tentar colocar zero e o código seguir mesmo que não haja resultado.
Mas não solucionou o problema. Desde já agradeço a ajuda.
Travei mais uma vez na minha aplicação, o pessoal aqui do fórum deve estar de saco cheio dos meus Posts
Galera, eu tinha pulado essa etapa para pedir ajuda somente quando eu realmente descobrisse o problema. Descobri!
Estou usando o seguinte código para escrever na TEXBOX o resultado de um select.
//####################################################################################
//////////////////////////////////////// TEXBOX VENDAS ///////////////////////////////
//####################################################################################
//Cria adaptador
SqlDataReader objReader1 = cmd1.ExecuteReader();
//se existir dados mostra no textbox TextBoxNome
if (objReader1.Read())
this.txbVendas.Text = objReader1[[Ô]Vendas[Ô]].ToString();
//Fecha adaptador
objReader1.Close();
txbVendas.Text = Convert.ToDouble(txbVendas.Text).ToString([Ô]C[Ô]);
//####################################################################################
////////////////////////////////////// TEXBOX SERVIÇOS ///////////////////////////////
//####################################################################################
//Cria adaptador
SqlDataReader objReader2 = cmd2.ExecuteReader();
//se existir dados mostra no textbox TextBoxNome
if (objReader2.Read())
//Fecha adaptador
objReader2.Close();
txbServs.Text = Convert.ToDouble(txbServs.Text).ToString([Ô]C[Ô]);
//####################################################################################
//////////////////////////////////////// DEVOLUÇÕES /////////////////////////////////
//####################################################################################
//Cria adaptador
SqlDataReader objReader3 = cmd3.ExecuteReader();
//se existir dados mostra no textbox TextBoxNome
if (objReader3.Read())
this.txbDevol.Text = objReader3[[Ô]Vendas[Ô]].ToString();
//Fecha adaptador
objReader3.Close();
txbDevol.Text = Convert.ToDouble(txbDevol.Text).ToString([Ô]C[Ô]);
O problema que encontrei foi o seguinte, a aplicação tem um select com parametros, esses parametros alterna 9 bancos de dados diferentes, caso um dos bancos não tenha resultado em um dos texbox acima, a aplicação apresenta erro e não preenche os dados.
Por exemplo eu escolho o banco 1 e clico em atualizar, como pode ser visto na imagem em anexo. Se nesse banco tem todas as informações, todas as TEXBOX são preenchidas corretamente, ao trocar para um outro banco, e não tiver por exemplo serviços, os texbox abaixo de serviço não são preenchidos.
Eu tentei a solução abaixo, mas aparentemente não deu resultado Coloquei um else para tentar colocar zero e o código seguir mesmo que não haja resultado.
//Cria adaptador
SqlDataReader objReader3 = cmd3.ExecuteReader();
//se existir dados mostra no textbox TextBoxNome
if (objReader3.Read())
this.txbDevol.Text = objReader3[[Ô]Vendas[Ô]].ToString();
else
this.txbDevol.Text = [Ô]0[Ô];
//Fecha adaptador
objReader3.Close();
txbDevol.Text = Convert.ToDouble(txbDevol.Text).ToString([Ô]C[Ô]);
Mas não solucionou o problema. Desde já agradeço a ajuda.
Alguem???
Acho que encontrei a solução, não sei se é a melhor solução, mas aparentemente resolveu o problema.
Isolei cada bloco dentro de um novo try como abaixo.
Isolei cada bloco dentro de um novo try como abaixo.
//####################################################################################
//////////////////////////////////////// TEXBOX VENDAS ///////////////////////////////
//####################################################################################
try
{
//Cria adaptador
SqlDataReader objReader1 = cmd1.ExecuteReader();
//se existir dados mostra no textbox TextBoxNome
if (objReader1.Read())
this.txbVendas.Text = objReader1[[Ô]Vendas[Ô]].ToString();
//Fecha adaptador
objReader1.Close();
txbVendas.Text = Convert.ToDouble(txbVendas.Text).ToString([Ô]C[Ô]);
}
catch
{
this.txbVendas.Text = [Ô]0[Ô];
txbVendas.Text = Convert.ToDouble(txbVendas.Text).ToString([Ô]C[Ô]);
}
Tópico encerrado , respostas não são mais permitidas