Ir para o conteúdo
  • Revista PROGRAMAR: Já está disponível a edição #57 da revista programar. Faz já o download aqui!

tOSTAS

Como listar Apenas alguns item na ListView?

Mensagens Recomendadas

tOSTAS    0
tOSTAS

Boas !

Eu tou a trabalhar na minha PAP e estou a fazer a gestão de uma clinica médica, eu criei um listview para ver o histórico das consultas, mas eu gostava ver só as consultas de um certo utente?

Agradeço qualquer ajuda =)

Cumps!

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
ribeiro55    44
ribeiro55

Olá e bem-vindo.

Das duas uma:

Ou já trazes os dados filtrados, ou podes correr todos os itens da lista à procura dos nomes que não são os do filtro para eliminar.

Eu aconselho a já trazeres os dados filtrados.

O que estás a fazer para preencher a ListView ?

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
tOSTAS    0
tOSTAS

Eu estou a usar o dataset e o table adapter da Base de Dados e respectiva tabela e depois faço o seguinte:

Sub listarconsultas()


        frm_consultas.ListView1.Items.Clear()
        frm_consultas.ConsultasTableAdapter1.Fill(frm_consultas.PapDataSet1.consultas)



        For i = 0 To frm_consultas.PapDataSet1.Tables("consultas").Rows.Count - 1

            frm_consultas.ListView1.Items.Add(frm_consultas.PapDataSet1.Tables("consultas").Rows(i)("codconsulta"))
            frm_consultas.ListView1.Items(i).SubItems.Add(frm_consultas.PapDataSet1.Tables("consultas").Rows(i)("codutente"))
            frm_consultas.ListView1.Items(i).SubItems.Add(frm_consultas.PapDataSet1.Tables("consultas").Rows(i)("dataconsulta"))
            frm_consultas.ListView1.Items(i).SubItems.Add(frm_consultas.PapDataSet1.Tables("consultas").Rows(i)("dadosconsulta"))
            frm_consultas.ListView1.Items(i).SubItems.Add(frm_consultas.PapDataSet1.Tables("consultas").Rows(i)("prescricoes"))
            frm_consultas.ListView1.Items(i).SubItems.Add(frm_consultas.PapDataSet1.Tables("consultas").Rows(i)("peso"))
            frm_consultas.ListView1.Items(i).SubItems.Add(frm_consultas.PapDataSet1.Tables("consultas").Rows(i)("altura"))
            
        Next
        

Desta forma lista todos os dados presentes na tabela consultas.. gostava que mostrasse o utente que eu esta a consultar.

cumps

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
tOSTAS    0
tOSTAS

O que eu tinha pensado era

Dim procurar As String

        procurar = "SELECT * FROM consultas where nome  like '*" + TextBox1.Text + "*'"

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
Gooden    0
Gooden

Quais as colunas da tabela consultas?

ja agora o like não é assim ;)

convem fazers um replace ... para evitar erros nas pelicas

  procurar = "SELECT * FROM consultas where nome  like '%" + replace(TextBox1.Text,"'","''") + "%'"

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
tOSTAS    0
tOSTAS

ah bom obrigado, as colunas da tabela consultas são: codconsulta, codutente, dadosconsulta, dataconsuta, altura e peso..

O que é que preciso de fazer para mal carrege no OK e a listview actualizar para o nome ou outro campo que que filtrar ;) que dores de cabeça...

Cumps

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
tOSTAS    0
tOSTAS

o conteudo filtrado.. porque passar a tabela completa consigo com o codigo que postei em cima:

Eu estou a usar o dataset e o table adapter da Base de Dados e respectiva tabela e depois faço o seguinte:

Sub listarconsultas()


        frm_consultas.ListView1.Items.Clear()
        frm_consultas.ConsultasTableAdapter1.Fill(frm_consultas.PapDataSet1.consultas)



        For i = 0 To frm_consultas.PapDataSet1.Tables("consultas").Rows.Count - 1

            frm_consultas.ListView1.Items.Add(frm_consultas.PapDataSet1.Tables("consultas").Rows(i)("codconsulta"))
            frm_consultas.ListView1.Items(i).SubItems.Add(frm_consultas.PapDataSet1.Tables("consultas").Rows(i)("codutente"))
            frm_consultas.ListView1.Items(i).SubItems.Add(frm_consultas.PapDataSet1.Tables("consultas").Rows(i)("dataconsulta"))
            frm_consultas.ListView1.Items(i).SubItems.Add(frm_consultas.PapDataSet1.Tables("consultas").Rows(i)("dadosconsulta"))
            frm_consultas.ListView1.Items(i).SubItems.Add(frm_consultas.PapDataSet1.Tables("consultas").Rows(i)("prescricoes"))
            frm_consultas.ListView1.Items(i).SubItems.Add(frm_consultas.PapDataSet1.Tables("consultas").Rows(i)("peso"))
            frm_consultas.ListView1.Items(i).SubItems.Add(frm_consultas.PapDataSet1.Tables("consultas").Rows(i)("altura"))
            
        Next
        

Desta forma lista todos os dados presentes na tabela consultas.. gostava que mostrasse o utente que eu esta a consultar.

cumps

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
ribeiro55    44
ribeiro55

Depois de teres utilizado uma query como as que tens atrás

procurar = "SELECT * FROM consultas where nome  like '%" + replace(TextBox1.Text,"'","''") + "%'"

Não precisas de filtrar nada na ListView, porque o resultado da query já vem filtrado.

Tens é de listar os resultados da query.

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
jpaulino    106
jpaulino

tOstas Faz-me um favor e manda o código por PM para eu analisar melhor.

Por PM não!

Vê o exemplo do ribeiro55 e caso não consigas mostra o projecto (deixa o link para o ficheiro).

As ajudas no fórum são para ser públicas e não individuais. ;)

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
Gooden    0
Gooden

  Dim cnnP As New Data.SqlClient.SqlConnection("server=Database\sqlexpress;database=Database;Uid=User;pwd=password")
        Dim dap As New Data.SqlClient.SqlDataAdapter
        dap = New Data.SqlClient.SqlDataAdapter("Select * from clientes", cnnP)
        Dim dsp As New DataSet
        dap.Fill(dsp)
        For Each dr As DataRow In dsp.Tables(0).Rows
            Dim lvi As ListViewItem = New ListViewItem(dr("id_cliente").ToString())
            lvi.SubItems.Add(dr("nome").ToString())
            lvi.SubItems.Add(dr("idade").ToString())
            lvi.SubItems.Add(dr("Cidade").ToString())
            ListView1.Items.Add(lvi)
        Next

cria 4 colunas

e altera a view para details.

é isto que queres?

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
tOSTAS    0
tOSTAS

eu ja tenho tudo criado e a escrever.. os datasets e tableadpeters fiz com os wizards do VB..

eu so quero mesmo voltar a escrever a lista mas com os criterio que escolher, com o filtro que escrever.. nao sei se me faço entender :S

cumps

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!

Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.

Entrar Agora


×

Aviso Sobre Cookies

Ao usar este site você aceita a nossa Política de Privacidade