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

FasterProgm

[Resolvido] [Ajuda] Adicionar dados numa Datagridview

Mensagens Recomendadas

FasterProgm

Boas tardes,

Vinha novamente chatear os programadores daqui, mas estou com uma dúvida que não me deixa progredir no meu projecto, é o seguinte:

Tenho uma DGV (datagridview) preenchida através de uma bd onde vou buscar 2 dados:

- Nome;

- Validade.

Pois bem tudo bem até agora, mas queria fazer uma tabela para saber quando tempo falta para acabar a validade de cada um. O meu problema não é calcular isso, pois isso já eu fiz, o meu problema mesmo é conseguir com que meta o tempo que falta de cada um na sua linha, isto é como insiro dados à parte na DGV.

Estou a usar PostgreSQL e VS 2010 tendo em ATENÇÃO que o que quero fazer da validade é um algoritmo sem ser em query, o algoritmo é este:

       data_atual = Date.Today
           validade = "23/03/2013"
           tempo_restante = DateDiff("d", data_atual, validade)
           MsgBox(tempo_restante)
       Next

Obrigado desde já a todos

P.S - Caso não percebam bem a minha dúvida mas acham que conseguem fazer, digam na mesma alguma coisa sff

Editado por ribeiro55

“Algo só é impossível até que alguém duvide e resolva provar ao contrário.” Albert Einstein

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
Leonardo Pereira

Boas,

Cria um novo campo na data grid ou numa outra acessoria, consegues ?

Depois crias um ciclo for por exemplo que percorra a tabela, por exemplo:

For i as Integer = 0
     datagridview.rows(i).cells(0).value = tempo_restante.
Next

espero ter ajudado , qualquer coisa diz ...

cumps,

Leonardo Pereira

Editado por ribeiro55

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
FasterProgm

Boas,

Cria um novo campo na data grid ou numa outra acessoria, consegues ?

Depois crias um ciclo for por exemplo que percorra a tabela, por exemplo:

For i as Integer = 0

datagridview.rows(i).cells(0).value = tempo_restante.

Next

espero ter ajudado , qualquer coisa diz ...

cumps,

Leonardo Pereira

Obrigado desde já pela ajuda mas,

O meu problema não reside bem aí, é que eu vou buscar dados a uma bd externa que esta alojada numa rede e tenho depois de calcular através de um dado de lá. Sabes alguma maneira de fazer isso e ir inserindo na dgv o resultado numa nova coluna?

Obrigado e Cumprimentos


“Algo só é impossível até que alguém duvide e resolva provar ao contrário.” Albert Einstein

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
FasterProgm

Nunca trabalhei com base de dados externa por isso não sei como fazer a conexão ...

A conexão é fácil, apenas queria saber como hei de fazer a parte de na mesma datagridview adicionar dados de uma bd em certas colunas e noutras adicionar dados à "unha"

Obrigado pela atenção,

Cumprimentos


“Algo só é impossível até que alguém duvide e resolva provar ao contrário.” Albert Einstein

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
Leonardo Pereira

A conexão é fácil, apenas queria saber como hei de fazer a parte de na mesma datagridview adicionar dados de uma bd em certas colunas e noutras adicionar dados à "unha"

Obrigado pela atenção,

Cumprimentos

Também podes criar uma tabela mesmo ao lado de maneira a que se pareça a mesma tabela :)

cumps

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
FasterProgm

Também podes criar uma tabela mesmo ao lado de maneira a que se pareça a mesma tabela :)

cumps

obrigado pela resposta mas vou tentando fazer de outras maneiras até solucionar o caso, de qualquer maneira em último caso que seja isso ;)

cumprimentos


“Algo só é impossível até que alguém duvide e resolva provar ao contrário.” Albert Einstein

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
FasterProgm

tens a datagrid no form ou crias atraves de codigo?

Já consegui, através do seguinte código

Sub validade_software()
 ligacao.Open()
 dgvValidades.AllowUserToAddRows = True
 daVS = New NpgsqlDataAdapter("Select nome, validade, key as ""Expira dentro de"" from software", ligacao)
 taVS = New DataTable
 daVS.Fill(taVS)
 dgvValidades.DataSource = taVS
 data_atual = Format(Now, "dd/MM/yyyy").ToString
 For i As Integer = 0 To dgvValidades.Rows.Count - 1
	 validade = dgvValidades.Rows(i).Cells(1).Value
	 tempo_restante = DateDiff("d", data_atual, validade)
	 If tempo_restante <= 0 Then
		 Me.dgvValidades.Rows(i).Cells(2).Value = "A validade já expirou"
	 Else
		 Me.dgvValidades.Rows(i).Cells(2).Value = tempo_restante + " dias"
	 End If
 Next
 dgvValidades.AllowUserToAddRows = False
 ligacao.Close()
End Sub

simplesmente inseri uma coluna com dados que nem o menino jesus quer saber neste caso e substitui pelos valores que queria

Obrigado pela atenção,

Cumprimentos

Editado por FasterProgm

“Algo só é impossível até que alguém duvide e resolva provar ao contrário.” Albert Einstein

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
Leonardo Pereira

Já consegui, através do seguinte código

Sub validade_software()
 ligacao.Open()
 dgvValidades.AllowUserToAddRows = True
 daVS = New NpgsqlDataAdapter("Select nome, validade, key as ""Expira dentro de"" from software", ligacao)
 taVS = New DataTable
 daVS.Fill(taVS)
 dgvValidades.DataSource = taVS
 data_atual = Format(Now, "dd/MM/yyyy").ToString
 For i As Integer = 0 To dgvValidades.Rows.Count - 1
	 validade = dgvValidades.Rows(i).Cells(1).Value
	 tempo_restante = DateDiff("d", data_atual, validade)
	 If tempo_restante <= 0 Then
		 Me.dgvValidades.Rows(i).Cells(2).Value = "A validade já expirou"
	 Else
		 Me.dgvValidades.Rows(i).Cells(2).Value = tempo_restante + " dias"
	 End If
 Next
 dgvValidades.AllowUserToAddRows = False
 ligacao.Close()
End Sub

simplesmente inseri uma coluna com dados que nem o menino jesus quer saber neste caso e substitui pelos valores que queria

Obrigado pela atenção,

Cumprimentos

era fácil ;)

de nda

cumps,

Leonardo Pereira

Partilhar esta mensagem


Ligação 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 os nossos Termos de Uso e Política de Privacidade. Este site usa cookies para disponibilizar funcionalidades personalizadas. Para mais informações visite esta página.