|
Postada em 01/05/2008 19:25 hs
Olá, não estou conseguindo salvar os dados de um listview em uma tabela do access. O nome da tabela é: ItensPedidosDeVenda e os campos são: ChavePedido(Número); CodigoItem(Texto); Quantidade(Número); Valor(Número); Desconto(Número); ChaveRomaneio(Número); ChaveNota(Número); Caida(Número); Acrescimo(Número). A instrução para salvar os dados é a seguinte: 66 For Each Item In lstwItens.ListItems 67 QSQL = "INSERT INTO ITENSPEDIDOSDEVENDA(CHAVEPEDIDO,CODIGOITEM,QUANTIDADE,Valor,Desconto,caida,Acrescimo)VALUES " 68 QSQL = QSQL & "(" & Chave & ",'" & Item.Text & "'," & Item.SubItems(5) & "," & ValorBanco(Item.SubItems(7)) & _ "," & Item.SubItems(8) & "," & Item.SubItems(6) & "," & Item.SubItems(9) & ")" 69 DB.Execute QSQL
Quando clico no botão para salvar os dados, gera a seguinte mensagem de erro: 'Exceção 3346 'Number of query values and destination fields aren't the same.'
Onde será que está o erro na minha instrução? Agradeço a quem puder me ajudar. Obrigado e abraços.
|
|
|
|
Macaubal
não registrado
|
|
ENUNCIADA !
|
|
|
Postada em 02/05/2008 09:34 hs
Coloque 3 aspas duplas nos campos das variaveis Ex.
insert into Tabela (Campo1, Campo2, Campon) Values (""" & Var1 & """, """ & Var2 & """, """ & VarN & """)
|
|
|
|
Postada em 02/05/2008 11:56 hs
Oi Macaubal, fiz e deu certo, está salvando os dados, obrigado. Mas por curiosidade, por que colocando 3 aspas funciona? O único problema é que agora ele está multiplicando o valor por 100. Por exemplo, se o valor unitário é R$ 600,00 ele salva na tabela como sendo R$ 60.000,00. Isso poderia ser em função das aspas? Valeuuu.
|
|
|
Macaubal
|
MACAUBAL SP - BRASIL
|
|
ENUNCIADA !
|
|
|
Postada em 03/05/2008 17:06 hs
oi Luciano, o fato das tres aspas é que o SQL faz a tratativa dos campos como se fossem TEXTO, logo ira funfar legal pra todos os tipos de campo. Ja o esquema de multiplicação, como te disse no e-mail, acho que vai ser algo relativo a ValorDefinido no banco de dados, ou entao verifique se a variavel nao esta sofrendo nenhum processo de multiplicacao antes de passar pelo procedimento de inserção. Abraços
|
|
|
|