Jump to content
nando4

Ciclo for num SqlDataReader

Recommended Posts

nando4

Boas...

Eu estou a fazer um programa em c# e queria que ao apresentar os dados de um certo cliente, os campos que na BD estivessem vazios(ex:telefone,fax,etc...) em vez da textBox ficar vazia queria que aparecesse "-------". Eu pensei em usar o ciclo for para percorrer o SqlDataReader e ver os campo que estão vazios mas não sei como o fazer.

Alguém me pode ajudar?

Cumps

Share this post


Link to post
Share on other sites
Andrepereira9

Boas

Mais ou menos assim

While SQLDataReader.read '-> Onde esta SQLDataReader, alteras para o nome da variavel que contem os dados

if (valoraver == "")
            {
               textbox1.text = "-------";
            }
            else
            {
                   textbox1.text = valoraapresentar;
            }


A informática chegou para resolver problemas que antes não existiam

Quem ri por último é porque está conectado a 52 Kbs.

Share this post


Link to post
Share on other sites
nando4

Pois isso foi o que eu tentei ao inicio mas tenho que fazer um if para cada um dos campos e isso da muito trabalho  :) por isso é que queria ver se nao havia uma maneira mais facil.

Cumps

Share this post


Link to post
Share on other sites
Andrepereira9

Podem existir outras maneiras de se fazer, mas os ifs, tens que os lá ter sempre


A informática chegou para resolver problemas que antes não existiam

Quem ri por último é porque está conectado a 52 Kbs.

Share this post


Link to post
Share on other sites
nando4

Pois, estou a ver que sim, eu tentei assim:

if (Convert.ToString(dr["telefone_p"]) == "")
                    {
                        tb_telefonep.Text = "- - - - - - - - -";
                        tb_nome.Text = Convert.ToString(dr["nome"]);
                        tb_telefonet.Text = Convert.ToString(dr["telefone_t"]);
                        tb_telemovelp.Text = Convert.ToString(dr["telemovel_p"]);
                        tb_telemovelt.Text = Convert.ToString(dr["telemovel_t"]);
                        tb_email.Text = Convert.ToString(dr["email"]);
                        tb_fax.Text = Convert.ToString(dr["fax"]);
                        tb_bi.Text = Convert.ToString(dr["bi"]);
                        tb_nib.Text = Convert.ToString(dr["nib"]);
                        tb_nif.Text = Convert.ToString(dr["nif"]);
                        tb_localidade.Text = local;
                        tb_codpostal.Text = cod_postal;
                        tb_criado_em.Text = Convert.ToString(dr["criado_em"]);
                        tb_notas.Text = Convert.ToString(dr["notas_cliente"]);
                        tb_tipo_cliente.Text = tipo_cliente;
                    }
                    else if (Convert.ToString(dr["telefone_t"]) == "")
                    {
                        tb_telefonep.Text = "- - - - - - - - -";
                        tb_nome.Text = Convert.ToString(dr["nome"]);
                        tb_telefonet.Text = "- - - - - - - - -";
                        tb_telemovelp.Text = Convert.ToString(dr["telemovel_p"]);
                        tb_telemovelt.Text = Convert.ToString(dr["telemovel_t"]);
                        tb_email.Text = Convert.ToString(dr["email"]);
                        tb_fax.Text = Convert.ToString(dr["fax"]);
                        tb_bi.Text = Convert.ToString(dr["bi"]);
                        tb_nib.Text = Convert.ToString(dr["nib"]);
                        tb_nif.Text = Convert.ToString(dr["nif"]);
                        tb_localidade.Text = local;
                        tb_codpostal.Text = cod_postal;
                        tb_criado_em.Text = Convert.ToString(dr["criado_em"]);
                        tb_notas.Text = Convert.ToString(dr["notas_cliente"]);
                        tb_tipo_cliente.Text = tipo_cliente;
                    }
                    else
                {
                        tb_nome.Text = Convert.ToString(dr["nome"]);
                        tb_telefonep.Text = Convert.ToString(dr["telefone_p"]);
                        tb_telefonet.Text = Convert.ToString(dr["telefone_t"]);
                        tb_telemovelp.Text = Convert.ToString(dr["telemovel_p"]);
                        tb_telemovelt.Text = Convert.ToString(dr["telemovel_t"]);
                        tb_email.Text = Convert.ToString(dr["email"]);
                        tb_fax.Text = Convert.ToString(dr["fax"]);
                        tb_bi.Text = Convert.ToString(dr["bi"]);
                        tb_nib.Text = Convert.ToString(dr["nib"]);
                        tb_nif.Text = Convert.ToString(dr["nif"]);
                        tb_localidade.Text = local;
                        tb_codpostal.Text = cod_postal;
                        tb_criado_em.Text = Convert.ToString(dr["criado_em"]);
                        tb_notas.Text = Convert.ToString(dr["notas_cliente"]);
                        tb_tipo_cliente.Text = tipo_cliente;
                }

Mas ele so funcionou no primeiro if, no segundo o campo tambem estava vazio mas ele deixou a textBox vazia...

Cumps

Share this post


Link to post
Share on other sites
Andrepereira9

Porque dá maneira como tens, se o 'telefone_p' estiver vazio, ele já não entra no segundo if,

Podes fazer assim

1º Preenches tudo, antes de fazer a verificação, e depois é só verificares se está algum campo vazio. Se estiver, alteras para tracinhos.

tb_telefonep.Text = Convert.ToString(dr["telefonep"]);
tb_nome.Text = Convert.ToString(dr["nome"]);
tb_telefonet.Text = Convert.ToString(dr["telefone_t"]);
tb_telemovelp.Text = Convert.ToString(dr["telemovel_p"]);
tb_telemovelt.Text = Convert.ToString(dr["telemovel_t"]);
tb_email.Text = Convert.ToString(dr["email"]);
tb_fax.Text = Convert.ToString(dr["fax"]);
tb_bi.Text = Convert.ToString(dr["bi"]);
tb_nib.Text = Convert.ToString(dr["nib"]);
tb_nif.Text = Convert.ToString(dr["nif"]);
tb_localidade.Text = local;
tb_codpostal.Text = cod_postal;
tb_criado_em.Text = Convert.ToString(dr["criado_em"]);
tb_notas.Text = Convert.ToString(dr["notas_cliente"]);
tb_tipo_cliente.Text = tipo_cliente;

2º Fazes a verificação

if (Convert.ToString(dr["telefone_p"]) == "")
{
     tb_telefonep.Text = "- - - - - - - - -";
}

if (Convert.ToString(dr["nome"]) == "")
{
     tb_nome.Text = "- - - - - - - - -";
}

if (Convert.ToString(dr["telefonet"]) == "")
{
     tb_telefonet.Text = "- - - - - - - - -";
}

if (Convert.ToString(dr["telemovelp"]) == "")
{
     tb_telemovelp.Text = "- - - - - - - - -";
}

if (Convert.ToString(dr["telemovelt"]) == "")
{
     tb_telemovelt.Text = "- - - - - - - - -";
}

if (Convert.ToString(dr["email"]) == "")
{
     tb_email.Text = "- - - - - - - - -";
}

if (Convert.ToString(dr["fax"]) == "")
{
     tb_fax.Text = "- - - - - - - - -";
}

if (Convert.ToString(dr["bi"]) == "")
{
     tb_bi.Text = "- - - - - - - - -";
}

if (Convert.ToString(dr["nif"]) == "")
{
     tb_nif.Text = "- - - - - - - - -";
}

if (Convert.ToString(dr["localidade"]) == "")
{
     tb_localidade.Text = "- - - - - - - - -";
}

if (Convert.ToString(dr["codpostal"]) == "")
{
     tb_codpostal.Text = "- - - - - - - - -";
}

if (Convert.ToString(dr["criado_em"]) == "")
{
     tb_criado_em.Text = "- - - - - - - - -";
}

if (Convert.ToString(dr["notas"]) == "")
{
     tb_notas.Text = "- - - - - - - - -";
}

if (Convert.ToString(dr["tipo_cliente"]) == "")
{
     tb_tipo_cliente.Text = "- - - - - - - - -";
}

Se preferires, também podes fazer a verificação, e se tiver dados, preenches com os dados, senão metes traços. Se fizeres assim, não precisas de preencher logo no inicio.

Fica é um código mais extenso, por causa do espaço para meter os elses extra :)

EX:

if (Convert.ToString(dr["tipo_cliente"]) == "")
{
     tb_tipo_cliente.Text = "- - - - - - - - -";
}
else
{
     tb_tipo_cliente.Text = Convert.ToString(dr["tipo_cliente"])
}


A informática chegou para resolver problemas que antes não existiam

Quem ri por último é porque está conectado a 52 Kbs.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.