Luis Marques Posted April 15, 2009 at 07:46 PM Report #256972 Posted April 15, 2009 at 07:46 PM boas, pessoal fiz um select para ir ver as encomendas atraves de uma data, mas esta a darme problema, e nao sei do que será. É assim se eu fizer uma pesquisa colocando uma data do mês março ou maio tudo bem, as encomendas referentes a estes a data colocada, aparece, agora se colocar uma data no mês de abril já não mostra as encomendas. Alguem sabe do que será? Deixo aqui o código que estou a usar... DataGridView1.Visible = True Dim db As New OleDbConnection(pap.My.Settings.ligacaoBD) ' LIGAR A BD db.Open() ' ACESSO AOS DADOS Dim comandosql = "Select id_encomenda, id_cliente, data,descricao,responsavel_pd,total from encomenda where data = #" + DataDateTimePicker.Value & "#" Dim cmd As New OleDbCommand(comandosql, db) Dim dtr As OleDbDataReader = cmd.ExecuteReader(CommandBehavior.CloseConnection) ' CRIAÇÃO DE COLUNAS NO DATAGRIDVIEW Dim num_campos As Integer Dim campo As String DataGridView1.Columns.Clear() num_campos = dtr.FieldCount For idx = 0 To num_campos - 1 campo = dtr.GetName(idx) DataGridView1.Columns.Add(campo, campo) Next ' CARREGAR OS DADOS Dim idx_linha As Integer idx_linha = 0 While dtr.Read() Dim linha As New DataGridViewRow() DataGridView1.Rows.Add(linha) DataGridView1.Rows(idx_linha).Cells(0).Value = dtr.Item(0) DataGridView1.Rows(idx_linha).Cells(1).Value = RTrim(dtr.Item(1)) DataGridView1.Rows(idx_linha).Cells(2).Value = RTrim(dtr.Item(2)) DataGridView1.Rows(idx_linha).Cells(3).Value = RTrim(dtr.Item(3)) DataGridView1.Rows(idx_linha).Cells(4).Value = RTrim(dtr.Item(4)) DataGridView1.Rows(idx_linha).Cells(5).Value = RTrim(dtr.Item(5)) idx_linha = idx_linha + 1 End While ' AJUSTE DAS COLUNAS DO DATAGRIDVIEW DataGridView1.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.AllCells ' FECHAR A BD dtr.Close() LM
nokPT Posted April 17, 2009 at 09:40 AM Report #257227 Posted April 17, 2009 at 09:40 AM Já verificaste se tens dados para Abril e se os dados estão válidos? Ricardo Timóteo
Luis Marques Posted April 17, 2009 at 09:33 PM Author Report #257378 Posted April 17, 2009 at 09:33 PM Sim, tenho varios dados para abril e estao todos Ok LM
nokPT Posted April 17, 2009 at 10:01 PM Report #257381 Posted April 17, 2009 at 10:01 PM Pode não ser, mas não é a primeira vez que pequenos erros como este lixam-nos horas e Tens assim: ' ACESSO AOS DADOS Dim comandosql = "Select id_encomenda, id_cliente, data,descricao,responsavel_pd,total from encomenda where data = #" + DataDateTimePicker.Value & "#" Substitui por: ' ACESSO AOS DADOS Dim comandosql = "Select id_encomenda, id_cliente, data,descricao,responsavel_pd,total from encomenda where data = #" & DataDateTimePicker.Value & "#" A diferença está no caracter antes de DataDateTimePicker.Value, quando se usa o & fazemos concatenação, quando usamos o + somamos, no caso de string também faz concatenação DataDateTimePicker.Value não é uma string é uma data, string seria:DataDateTimePicker.Value.ToString (nesse caso podes usar na mesma o +) Ricardo Timóteo
Luis Marques Posted April 18, 2009 at 06:57 PM Author Report #257542 Posted April 18, 2009 at 06:57 PM Já substitui mas continua a dar mal! 😄 LM
José Lopes Posted April 19, 2009 at 01:45 AM Report #257588 Posted April 19, 2009 at 01:45 AM eu ja te disse qual e o problema...tens que formatar a data do lado da query ( string sql - numa instrução entendida pelo SQL) e fazeres o mesmo do lado onde apanhas a data no VB. Só assim vais resolver o problema! Quando te pedirem peixe.... ensina-os a Pescar!!Hum..lálálálá!!
Recommended Posts
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 accountSign in
Already have an account? Sign in here.
Sign In Now