Bom dia, pessoal,
Preciso da judade vocês mais uma vez.
O meu projeto está caminhando, agora preciso criar o seguinte:
Preciso fazer consulta no BD por Nome do produto e por Código do produto, poderiam postar um código de pesquisa por favor?
Visual Studio 2008
Banco de Dados Access
Nome da Tabela - tb_Estoque
Um radio group para selecionar entre Nome do Produto e Código produto
Desde já agradeço
FREITAS
Consulta emBanco de Dados Visual Studio 2008
Criado por FREITAS, Nov 01 2011 08:08 AM
4 respostas neste tópico
#1
Postado 01 November 2011 - 08:08 AM
#2
Postado 12 November 2011 - 12:46 PM
Boa tarde,
Coloquei no meu BD Access uma máscara para o Campo Cod_materias_produtos assim: 000.000.000
(mas tive que colocar como texto) no Acces porque se colocar como número na tabela do BD Access
ele não aceita a máscara. Acontece que quando o DBGrid mosta a coluna cod_materiais_produtos ele
vem sem máscara, mas se eu abro o Access na tabela ele está com máscara. Tem como fazer no DataGridView
aparecer essa coluna com a máscara. Porque quando estava sem máscra a compração que fiz em um código funcionava.
Agora com máscara no BD não funciona mais. O código diz:
SE O CÓDIGO DIGITADO FOR IGUAL AO JÁ CADASTRADO NO BD ACCESS DAR MENSAGEM CÓDIGO JÁ CADASTRADO, FUNCIONAVA SEM MÁSCARA
MAS COM MÁSCARA NÃO FUNCIONA MAIS.
Grato
Jose de Freitas
Coloquei no meu BD Access uma máscara para o Campo Cod_materias_produtos assim: 000.000.000
(mas tive que colocar como texto) no Acces porque se colocar como número na tabela do BD Access
ele não aceita a máscara. Acontece que quando o DBGrid mosta a coluna cod_materiais_produtos ele
vem sem máscara, mas se eu abro o Access na tabela ele está com máscara. Tem como fazer no DataGridView
aparecer essa coluna com a máscara. Porque quando estava sem máscra a compração que fiz em um código funcionava.
Agora com máscara no BD não funciona mais. O código diz:
SE O CÓDIGO DIGITADO FOR IGUAL AO JÁ CADASTRADO NO BD ACCESS DAR MENSAGEM CÓDIGO JÁ CADASTRADO, FUNCIONAVA SEM MÁSCARA
MAS COM MÁSCARA NÃO FUNCIONA MAIS.
Grato
Jose de Freitas
#3
Postado 14 November 2011 - 01:32 AM
Boa noite,
Pessoal ajuda por favor,
até hoje não consegui nehuma resposta pra que desse certo meu programa.
Vou tentar mais uma:
O erro que está dando é o seguinte: fica marcado de AMARELO a linha de código: DR = CMD.ExecuteReader (onde marquei de vermelho negrito no código aqui abaixo postado) e a Mensagem de erro: TIPO DE DADOS INCOMPATÍVEL NA EXPRESSÃO DE CRITÉRIO
Uso o Visual Studio 2008
É no Form de estoque atual onde clico no botão BUSCAR e quero busque no Banco de Dados Access a tela onde está cadastrado o Material referente ao código que digito no txtPesquisa.Text.
Os campos do Form que deverão ser preenchidos na Pesquisa (BUSCA) são:
cod_materiais_produtos
materiais_produtos
unidade
estoque_atual
estoque_mínimo
Onde pode estar errado no código abaixo:
Public Class Estoque_Atual
Dim acodigo(1) As String
Dim acod_materiais_produtos(1) As Integer
Dim amateriais_produtos(1) As String
Dim aunidade(1) As String
Dim aestoque_atual(1) As Integer
Dim aestoque_minimo(1) As Integer
Dim vmodo As String = "X"
Private Sub Estoque_atualLoad(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
carrega_Estoque_atual()
End Sub
Private Sub carrega_Estoque_atual()
Dim cs As String = My.Settings.EstoqueConnectionString
Dim conect As New OleDb.OleDbConnection
conect.ConnectionString = cs
conect.Open()
Dim selcom As New OleDb.OleDbCommand
selcom.Connection = conect
selcom.CommandText = " SELECT * FROM tb_estoque_atual ORDER BY materiais_produtos"
Dim vleitor As OleDb.OleDbDataReader
vleitor = selcom.ExecuteReader()
Dim c As Integer = 0
dgvestoque_atual.Rows.Clear()
Do While vleitor.Read
c = c + 1
ReDim Preserve acodigo©
ReDim Preserve acod_materiais_produtos©
ReDim Preserve amateriais_produtos©
ReDim Preserve aunidade©
ReDim Preserve aestoque_atual©
ReDim Preserve aestoque_minimo©
acodigo© = vleitor("codigo")
acod_materiais_produtos© = vleitor("cod_materiais_produtos")
amateriais_produtos© = vleitor("materiais_produtos")
aunidade© = vleitor("unidade")
aestoque_atual© = vleitor("estoque_atual")
aestoque_minimo© = vleitor("estoque_minimo")
If IsDBNull(vleitor("estoque_minimo")) Then
aestoque_minimo© = 0
Else
aestoque_minimo© = vleitor("estoque_minimo")
End If
If IsDBNull(vleitor("estoque_atual")) Then
aestoque_atual© = 0
Else
aestoque_atual© = vleitor("estoque_atual")
End If
dgvestoque_atual.Rows.Add(acodigo©, acod_materiais_produtos©, amateriais_produtos©, aunidade©, aestoque_atual©, aestoque_minimo©)
Loop
conect.Close()
End Sub
Private Sub carrega_campos()
Dim ind As Integer = dgvestoque_atual.CurrentRow.Index + 1
txtCodigo.Text = acodigo(ind)
txtcod_materiais_produtos.Text = acod_materiais_produtos(ind)
txtMateriais_produtos.Text = amateriais_produtos(ind)
txtUnidade.Text = aunidade(ind)
txtEstoque_atual.Text = aestoque_atual(ind)
txtEstoque_minimo.Text = aestoque_minimo(ind)
End Sub
Private Sub DgvEstoque_atualSelectionChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles dgvestoque_atual.SelectionChanged
carrega_campos()
End Sub
Private Sub btnAlterar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnAlterar.Click
vmodo = "A"
hab_campos()
End Sub
Private Sub hab_campos()
btnIncluir.Enabled = False
btnAlterar.Enabled = False
btnExcluir.Enabled = False
btnCancelar.Enabled = True
btnConfirmar.Enabled = True
txtcod_materiais_produtos.Enabled = True
txtMateriais_produtos.Enabled = True
txtUnidade.Enabled = True
txtEstoque_atual.Enabled = False
txtEstoque_minimo.Enabled = True
End Sub
Private Sub desab_campos()
btnIncluir.Enabled = True
btnAlterar.Enabled = True
btnExcluir.Enabled = True
btnCancelar.Enabled = False
btnConfirmar.Enabled = False
txtcod_materiais_produtos.Enabled = False
txtMateriais_produtos.Enabled = False
txtUnidade.Enabled = False
txtEstoque_atual.Enabled = False
txtEstoque_minimo.Enabled = False
End Sub
Private Sub btnCancelar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnCancelar.Click
desab_campos()
carrega_campos()
End Sub
Private Sub btnConfirmar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnConfirmar.Click
If vmodo = "A" Then
Dim cs As String = My.Settings.EstoqueConnectionString
Dim conect As New OleDb.OleDbConnection
conect.ConnectionString = cs
Try
conect.Open()
Dim selcom As New OleDb.OleDbCommand
selcom.Connection = conect
selcom.CommandText = "UPDATE tb_Estoque_atual SET cod_materiais_produtos=" & txtcod_materiais_produtos.Text _
& " , materiais_produtos='" & txtMateriais_produtos.Text & "', unidade='" & txtUnidade.Text _
& "', estoque_minimo='" & txtEstoque_minimo.Text & "' " _
& "WHERE cod_ordem = " & acodigo(dgvestoque_atual.CurrentRow.Index + 1)
selcom.ExecuteNonQuery()
conect.Close()
Catch ex As Exception
MessageBox.Show("Erro de gravao de dados" & vbCrLf & ex.Message, "ERRO", MessageBoxButtons.OK, MessageBoxIcon.Error)
End Try
desab_campos()
carrega_Estoque_atual()
End If
If vmodo = "I" Then
Dim cs As String = My.Settings.EstoqueConnectionString
Dim conect As New OleDb.OleDbConnection
conect.ConnectionString = cs
Try
conect.Open()
Dim selcom As New OleDb.OleDbCommand
selcom.Connection = conect
selcom.CommandText = "INSERT INTO tb_Estoque_atual ( cod_materiais_produtos, materiais_produtos, unidade, estoque_minimo)" & _
"VALUES (" & txtcod_materiais_produtos.Text & ", '" & (txtMateriais_produtos.Text & Space(120)).Substring(0, 120) & ", " & txtUnidade.Text & " ','" & txtEstoque_minimo.Text & " )"
If selcom.ExecuteNonQuery() Then
MsgBox("tem includo com sucesso")
Else
MsgBox("Erro tem no includo")
End If
conect.Close()
Catch ex As Exception
MessageBox.Show("Erro de gravao de dados" & vbCrLf & ex.Message, "ERRO", MessageBoxButtons.OK, MessageBoxIcon.Error)
End Try
desab_campos()
carrega_Estoque_atual()
End If
If vmodo = "E" Then
Dim cs As String = My.Settings.EstoqueConnectionString
Dim conect As New OleDb.OleDbConnection
conect.ConnectionString = cs
Try
conect.Open()
Dim selcom As New OleDb.OleDbCommand
selcom.Connection = conect
selcom.CommandText = " DELETE FROM tb_Estoque_atual WHERE cod_ordem = " & acodigo(dgvestoque_atual.CurrentRow.Index + 1)
If selcom.ExecuteNonQuery() Then
MsgBox("tem excludo com sucesso")
Else
MsgBox("Erro tem no excludo")
End If
conect.Close()
Catch ex As Exception
MessageBox.Show("Erro de gravao de dados" & vbCrLf & ex.Message, "ERRO", MessageBoxButtons.OK, MessageBoxIcon.Exclamation)
End Try
desab_campos()
carrega_Estoque_atual()
End If
End Sub
Private Sub btnIncluir_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnIncluir.Click
hab_campos()
vmodo = "I"
txtcod_materiais_produtos.Text = ""
txtMateriais_produtos.Text = ""
txtUnidade.Text = ""
txtEstoque_atual.Text = ""
txtEstoque_minimo.Text = ""
txtcod_materiais_produtos.Focus()
End Sub
Private Sub txtMateriais_produtos_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtMateriais_produtos.TextChanged
If txtMateriais_produtos.Text.Length > 120 Then
MessageBox.Show("Digite no mximo 120 caracteres", "ERRO", MessageBoxButtons.OK, MessageBoxIcon.Exclamation)
End If
End Sub
Private Sub btnExcluir_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnExcluir.Click
MsgBox("Para excluir o Usurio, clique em confirmar")
hab_campos()
vmodo = "E"
End Sub
Sub buscar_cod_materiais_produtos()
Dim cs As String = My.Settings.EstoqueConnectionString
Dim conect As New OleDb.OleDbConnection
conect.ConnectionString = cs
conect.Open()
Dim CMD As New OleDb.OleDbCommand("select * from tb_estoque_atual where codigo = '" & txtPesquisa.Text & "'", conect)
Dim DR As OleDb.OleDbDataReader
DR = CMD.ExecuteReader
If DR.Read Then
txtcod_materiais_produtos.Text = DR(2)
txtMateriais_produtos.Text = DR(3)
txtUnidade.Text = DR(4)
txtEstoque_atual.Text = DR(5)
txtEstoque_minimo.Text = DR(6)
Else
MsgBox("ERRO")
End If
conect.Close()
End Sub
Private Sub btnBuscar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnBuscar.Click
buscar_cod_materiais_produtos()
End Sub
End Class
Obrigadão
Freitas
Pessoal ajuda por favor,
até hoje não consegui nehuma resposta pra que desse certo meu programa.
Vou tentar mais uma:
O erro que está dando é o seguinte: fica marcado de AMARELO a linha de código: DR = CMD.ExecuteReader (onde marquei de vermelho negrito no código aqui abaixo postado) e a Mensagem de erro: TIPO DE DADOS INCOMPATÍVEL NA EXPRESSÃO DE CRITÉRIO
Uso o Visual Studio 2008
É no Form de estoque atual onde clico no botão BUSCAR e quero busque no Banco de Dados Access a tela onde está cadastrado o Material referente ao código que digito no txtPesquisa.Text.
Os campos do Form que deverão ser preenchidos na Pesquisa (BUSCA) são:
cod_materiais_produtos
materiais_produtos
unidade
estoque_atual
estoque_mínimo
Onde pode estar errado no código abaixo:
Public Class Estoque_Atual
Dim acodigo(1) As String
Dim acod_materiais_produtos(1) As Integer
Dim amateriais_produtos(1) As String
Dim aunidade(1) As String
Dim aestoque_atual(1) As Integer
Dim aestoque_minimo(1) As Integer
Dim vmodo As String = "X"
Private Sub Estoque_atualLoad(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
carrega_Estoque_atual()
End Sub
Private Sub carrega_Estoque_atual()
Dim cs As String = My.Settings.EstoqueConnectionString
Dim conect As New OleDb.OleDbConnection
conect.ConnectionString = cs
conect.Open()
Dim selcom As New OleDb.OleDbCommand
selcom.Connection = conect
selcom.CommandText = " SELECT * FROM tb_estoque_atual ORDER BY materiais_produtos"
Dim vleitor As OleDb.OleDbDataReader
vleitor = selcom.ExecuteReader()
Dim c As Integer = 0
dgvestoque_atual.Rows.Clear()
Do While vleitor.Read
c = c + 1
ReDim Preserve acodigo©
ReDim Preserve acod_materiais_produtos©
ReDim Preserve amateriais_produtos©
ReDim Preserve aunidade©
ReDim Preserve aestoque_atual©
ReDim Preserve aestoque_minimo©
acodigo© = vleitor("codigo")
acod_materiais_produtos© = vleitor("cod_materiais_produtos")
amateriais_produtos© = vleitor("materiais_produtos")
aunidade© = vleitor("unidade")
aestoque_atual© = vleitor("estoque_atual")
aestoque_minimo© = vleitor("estoque_minimo")
If IsDBNull(vleitor("estoque_minimo")) Then
aestoque_minimo© = 0
Else
aestoque_minimo© = vleitor("estoque_minimo")
End If
If IsDBNull(vleitor("estoque_atual")) Then
aestoque_atual© = 0
Else
aestoque_atual© = vleitor("estoque_atual")
End If
dgvestoque_atual.Rows.Add(acodigo©, acod_materiais_produtos©, amateriais_produtos©, aunidade©, aestoque_atual©, aestoque_minimo©)
Loop
conect.Close()
End Sub
Private Sub carrega_campos()
Dim ind As Integer = dgvestoque_atual.CurrentRow.Index + 1
txtCodigo.Text = acodigo(ind)
txtcod_materiais_produtos.Text = acod_materiais_produtos(ind)
txtMateriais_produtos.Text = amateriais_produtos(ind)
txtUnidade.Text = aunidade(ind)
txtEstoque_atual.Text = aestoque_atual(ind)
txtEstoque_minimo.Text = aestoque_minimo(ind)
End Sub
Private Sub DgvEstoque_atualSelectionChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles dgvestoque_atual.SelectionChanged
carrega_campos()
End Sub
Private Sub btnAlterar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnAlterar.Click
vmodo = "A"
hab_campos()
End Sub
Private Sub hab_campos()
btnIncluir.Enabled = False
btnAlterar.Enabled = False
btnExcluir.Enabled = False
btnCancelar.Enabled = True
btnConfirmar.Enabled = True
txtcod_materiais_produtos.Enabled = True
txtMateriais_produtos.Enabled = True
txtUnidade.Enabled = True
txtEstoque_atual.Enabled = False
txtEstoque_minimo.Enabled = True
End Sub
Private Sub desab_campos()
btnIncluir.Enabled = True
btnAlterar.Enabled = True
btnExcluir.Enabled = True
btnCancelar.Enabled = False
btnConfirmar.Enabled = False
txtcod_materiais_produtos.Enabled = False
txtMateriais_produtos.Enabled = False
txtUnidade.Enabled = False
txtEstoque_atual.Enabled = False
txtEstoque_minimo.Enabled = False
End Sub
Private Sub btnCancelar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnCancelar.Click
desab_campos()
carrega_campos()
End Sub
Private Sub btnConfirmar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnConfirmar.Click
If vmodo = "A" Then
Dim cs As String = My.Settings.EstoqueConnectionString
Dim conect As New OleDb.OleDbConnection
conect.ConnectionString = cs
Try
conect.Open()
Dim selcom As New OleDb.OleDbCommand
selcom.Connection = conect
selcom.CommandText = "UPDATE tb_Estoque_atual SET cod_materiais_produtos=" & txtcod_materiais_produtos.Text _
& " , materiais_produtos='" & txtMateriais_produtos.Text & "', unidade='" & txtUnidade.Text _
& "', estoque_minimo='" & txtEstoque_minimo.Text & "' " _
& "WHERE cod_ordem = " & acodigo(dgvestoque_atual.CurrentRow.Index + 1)
selcom.ExecuteNonQuery()
conect.Close()
Catch ex As Exception
MessageBox.Show("Erro de gravao de dados" & vbCrLf & ex.Message, "ERRO", MessageBoxButtons.OK, MessageBoxIcon.Error)
End Try
desab_campos()
carrega_Estoque_atual()
End If
If vmodo = "I" Then
Dim cs As String = My.Settings.EstoqueConnectionString
Dim conect As New OleDb.OleDbConnection
conect.ConnectionString = cs
Try
conect.Open()
Dim selcom As New OleDb.OleDbCommand
selcom.Connection = conect
selcom.CommandText = "INSERT INTO tb_Estoque_atual ( cod_materiais_produtos, materiais_produtos, unidade, estoque_minimo)" & _
"VALUES (" & txtcod_materiais_produtos.Text & ", '" & (txtMateriais_produtos.Text & Space(120)).Substring(0, 120) & ", " & txtUnidade.Text & " ','" & txtEstoque_minimo.Text & " )"
If selcom.ExecuteNonQuery() Then
MsgBox("tem includo com sucesso")
Else
MsgBox("Erro tem no includo")
End If
conect.Close()
Catch ex As Exception
MessageBox.Show("Erro de gravao de dados" & vbCrLf & ex.Message, "ERRO", MessageBoxButtons.OK, MessageBoxIcon.Error)
End Try
desab_campos()
carrega_Estoque_atual()
End If
If vmodo = "E" Then
Dim cs As String = My.Settings.EstoqueConnectionString
Dim conect As New OleDb.OleDbConnection
conect.ConnectionString = cs
Try
conect.Open()
Dim selcom As New OleDb.OleDbCommand
selcom.Connection = conect
selcom.CommandText = " DELETE FROM tb_Estoque_atual WHERE cod_ordem = " & acodigo(dgvestoque_atual.CurrentRow.Index + 1)
If selcom.ExecuteNonQuery() Then
MsgBox("tem excludo com sucesso")
Else
MsgBox("Erro tem no excludo")
End If
conect.Close()
Catch ex As Exception
MessageBox.Show("Erro de gravao de dados" & vbCrLf & ex.Message, "ERRO", MessageBoxButtons.OK, MessageBoxIcon.Exclamation)
End Try
desab_campos()
carrega_Estoque_atual()
End If
End Sub
Private Sub btnIncluir_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnIncluir.Click
hab_campos()
vmodo = "I"
txtcod_materiais_produtos.Text = ""
txtMateriais_produtos.Text = ""
txtUnidade.Text = ""
txtEstoque_atual.Text = ""
txtEstoque_minimo.Text = ""
txtcod_materiais_produtos.Focus()
End Sub
Private Sub txtMateriais_produtos_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtMateriais_produtos.TextChanged
If txtMateriais_produtos.Text.Length > 120 Then
MessageBox.Show("Digite no mximo 120 caracteres", "ERRO", MessageBoxButtons.OK, MessageBoxIcon.Exclamation)
End If
End Sub
Private Sub btnExcluir_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnExcluir.Click
MsgBox("Para excluir o Usurio, clique em confirmar")
hab_campos()
vmodo = "E"
End Sub
Sub buscar_cod_materiais_produtos()
Dim cs As String = My.Settings.EstoqueConnectionString
Dim conect As New OleDb.OleDbConnection
conect.ConnectionString = cs
conect.Open()
Dim CMD As New OleDb.OleDbCommand("select * from tb_estoque_atual where codigo = '" & txtPesquisa.Text & "'", conect)
Dim DR As OleDb.OleDbDataReader
DR = CMD.ExecuteReader
If DR.Read Then
txtcod_materiais_produtos.Text = DR(2)
txtMateriais_produtos.Text = DR(3)
txtUnidade.Text = DR(4)
txtEstoque_atual.Text = DR(5)
txtEstoque_minimo.Text = DR(6)
Else
MsgBox("ERRO")
End If
conect.Close()
End Sub
Private Sub btnBuscar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnBuscar.Click
buscar_cod_materiais_produtos()
End Sub
End Class
Obrigadão
Freitas
#4
Postado 15 November 2011 - 02:45 AM
Você está fazendo uma consulta procurando por uma string aonde, provavelmente, no Banco de Dados o campo é numérico...
na linha
Dim CMD As New OleDb.OleDbCommand("select * from tb_estoque_atual where codigo = '" & txtPesquisa.Text & "'", conect)
o campo codigo no banco de dados é que tipo? se for numérico você terá que converter o txtPesquisa.Text com um CInt(txtPesquisa.Text) - é importante garantir que o campo será mesmo um número...
depois disso feito o código ficaria
Dim CMD As New OleDb.OleDbCommand("select * from tb_estoque_atual where codigo = " & txtPesquisa.Text & "", conect)
perceba que removi as aspas...
com CERTEZA funcionará
na linha
Dim CMD As New OleDb.OleDbCommand("select * from tb_estoque_atual where codigo = '" & txtPesquisa.Text & "'", conect)
o campo codigo no banco de dados é que tipo? se for numérico você terá que converter o txtPesquisa.Text com um CInt(txtPesquisa.Text) - é importante garantir que o campo será mesmo um número...
depois disso feito o código ficaria
Dim CMD As New OleDb.OleDbCommand("select * from tb_estoque_atual where codigo = " & txtPesquisa.Text & "", conect)
perceba que removi as aspas...
com CERTEZA funcionará
[]'s
Thyago Trajano
"se você viver todos os dias como se fosse o último, provavelmente um dia você acertará..."
Thyago Trajano
"se você viver todos os dias como se fosse o último, provavelmente um dia você acertará..."
#5
Postado 15 November 2011 - 09:59 AM
Thyago, valeu obrigado pela força.
Problema resolvido
E já que você se prontificou nessa ajuda e resolveu, poderia me ajudar no outro tópico que acabo de postar?
É sobre uma busca por nome e código.
O post tem o título de Pesquisa por nome do Produto com %
Se puder me ajudar, desde já meu muito obrigado.
Um abraço
Freitas
Problema resolvido
E já que você se prontificou nessa ajuda e resolveu, poderia me ajudar no outro tópico que acabo de postar?
É sobre uma busca por nome e código.
O post tem o título de Pesquisa por nome do Produto com %
Se puder me ajudar, desde já meu muito obrigado.
Um abraço
Freitas
0 usuário(s) está(ão) lendo este tópico
0 membro(s), 0 visitante(s) e 0 membros anônimo(s)











