Como comparar dado de uma label em um SEECT?

27/10/2014

0

Ola galera esto com um problema.
Tenho que pegar um valor que esta em uma label e no meu select usar este valor na comparação e nao sei como fazer isso, pois meu select esta diretamente no meu HTML.

Alguém pode ajudar urgente:

Segue o código para analisarem:


Este é o código que tenho que utilizar na comparação do meu select
         <asp:Label ID="lblcodProf" runat="server" CssClass="coPro" Text='<%# Eval("codProfissional") %>' />


Aqui é meu select no exemplo e para testes coloque um valor direto como parâmetro de pesquisa, porem em execução não posso ter esse valor fixo pois ai ele vai sempre trazer os dados desse código 7 apenas, e tem que ser o código que estiver nessa label acima.

    <asp:SqlDataSource ID="SqlComentario" runat="server" 
            ConnectionString="<%$ ConnectionStrings:maosObraConnectionString %>" 
            SelectCommand = "SELECT codCliente, descComentario, dataComentario from COMENTARIO where codProfissional = 7" >
        </asp:SqlDataSource>



Grato Delivery-TI.
Celiol.

Celiol.

Responder

Posts

28/10/2014

Joel Rodrigues

Já tentou alterar o SelectCommand do SqlDataSource em tempo de execução, passando no SQL o Text da Label?
Responder

28/10/2014

Celiol.

vou dar uma olhada nisso porem essa consulta dos comentário é feita diretamente no html como como você me ensinou Joel
Responder

28/10/2014

Joel Rodrigues

vou dar uma olhada nisso porem essa consulta dos comentário é feita diretamente no html como como você me ensinou Joel
Sim, mas creio que terá de mudar esse SelectComand em tempo de execução para atender a essa situação.
Responder

29/10/2014

Celiol.

Joel mas isso é possível só no codBihind não? No HTML nunca fiz isso ? Como seria?

Eu estava pensando aqui em passar o código desse profissional na url quando ele clicar no link para abrir a modal e ai pegar ele atribuir a uma variável e ai utilizar ela para fazer a comparação, isso daria certo? É que fazendo uns teste parece que não consigo fazer uma comparação utilizando um valor armazenado na variável.
Responder

30/10/2014

Joel Rodrigues

Joel mas isso é possível só no codBihind não? No HTML nunca fiz isso ? Como seria?

Eu estava pensando aqui em passar o código desse profissional na url quando ele clicar no link para abrir a modal e ai pegar ele atribuir a uma variável e ai utilizar ela para fazer a comparação, isso daria certo? É que fazendo uns teste parece que não consigo fazer uma comparação utilizando um valor armazenado na variável.
Sim, isso é feito no code behind. Não se programa coisas dinâmicas no front-end da página.
Responder

30/10/2014

Celiol.

Então Joel estou vendo aqui como fazer esse esquema porem nunca fiz.
Responder

30/10/2014

Celiol.

Joel eu estava dando uma pesquisada aqui porem o que eu não entendi cara é a questão de como isso vai funcionar pois nunca fiz esse Código que altera em tempo de execução e não to entendo direito pois achei vários exemplos mas para criar labels, grid, tables etc...
Responder

30/10/2014

Joel Rodrigues

Rapaz, não tenho como testar aqui, mas deve ser algo como meuDataSource.SelectCommand = "select alguma coisa".
Isso provavelmente no Page_Load.
Responder

30/10/2014

Celiol.

Blz vou dar uma olhada mas agora comecei a pegar a ideia.
Responder

31/10/2014

Celiol.

Joel ainda estou quebrando a cabeça com isso, porem estou tentando da seguinte maneira cara vê se consegue entender.

Bem em primeiro momento o que falta pra eu testar meu código é conseguir passar o código do profissional pela url por um botão, porem esse botão não me direciona para nenhum lugar ele abre uma modal com os dados do cliente. Ja tentei todos médodos que ele tem la cara OnLoad, OnClick, OnClienteClick, PostBackUrl, NavigateUrl e nada faz com que o código vá para url é que na verdade ele nao renderiza a pagina ele apenas abre a modal sabe como devo fazer isso?

o botao é esse:

   <asp:Button ID="btnShowPopup" runat="server" CssClass="span" PostBackUrl ='<%#Eval("codProfissional", "avaliarProfissional.aspx?profissional=") %>'  ToolTip="Ver detalhes" Text="+"  />


Bem apos pegar esse código vou realizar a comparação no meu datalist comentário para pegar apenas os dados que o código seja igual desse profissional.

   protected void dtlComent_ItemDataBound(object sender, DataListItemEventArgs e)
        {
            if (Request.QueryString["codPro"] != null)
            {
                int codPro = int.Parse(Request.QueryString["codPro"]);

                SqlConnection con = new SqlConnection(@"Data Source=DEVALDO-PC\SQLDELIVERY;Initial Catalog=maosObra;Integrated Security=True");
                SqlCommand cmd = new SqlCommand();

                cmd.Connection = con;
                con.Open();
                cmd.CommandText = "SELECT COMENTARIO.codCliente, COMENTARIO.descComentario, COMENTARIO.dataComentario from COMENTARIO where codProfissional = @codPro";
                cmd.Parameters.AddWithValue("@codPro", codPro);
                cmd.ExecuteNonQuery();

                con.Close();
            }            
        }



Bem apesar de ainda não ter testado esse código Joel, para partir para ideia que você deu acredito que vai dar certo so preciso resolver essa questao de passar o codigo pela URL.
Bem vou tentar mais um pouco aqui ainda hoje se nao vou retirar essa parte e trabalhar nisso depois.
Responder

22/11/2014

Celiol.

Topico finalizado problema solucionado galera
Responder

Assista grátis a nossa aula inaugural

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar