Clique abaixo para nos ajudar
Conectar-se

Esqueci minha senha

Estamos no Facebook
Buscar
 
 

Resultados por:
 


Rechercher Busca avançada

Quem está conectado
17 usuários online :: Nenhum usuário registrado, Nenhum Invisível e 17 Visitantes :: 2 Motores de busca

Nenhum

[ Ver toda a lista ]


O recorde de usuários online foi de 468 em 1/3/2012, 10:43
TRY BEGIN E FLOCK()

17/4/2017, 10:32 por AJC

Pessoal estou tendo alguns problemas de gravação em rede, estou usando
try begin, mas vi algo na …

Comentários: 0

Exportar Dados Campo Memo Tabela DBF

10/4/2017, 10:28 por fcampos

Olá bom dia.

Estou tentando exportar os dados de algumas tabelas em formato dbf pelo foxpro.
O …

Comentários: 2

Função EVL()

8/4/2017, 12:18 por Clebervfp

Bom dia a todos.
Vim compartilhar de uma Função do próprio VFP que me benefício muito.
Função …

Comentários: 0

COMO BLOQUEAR REGISTRO OU TABELA NO VISUAL FOXPRO PARA GRAVAÇÃO EM REDE

3/4/2017, 10:29 por AJC

Pessoal estou tendo um problema que acontece sempre busco na minha tabela de clientes o ultimo …

Comentários: 2

Controlar Scanner Twain

31/3/2017, 17:31 por Kleber R Bento

Estou usando o EZTW32.DLL para criar uma ferramenta que escaneia e gera PDF. Porém com esses …

Comentários: 0

Estatísticas
Temos 7066 usuários registrados
O último usuário registrado atende pelo nome de Seabra86

Os nossos membros postaram um total de 48 mensagens em 25 assuntos

Comando Insert into com erro

Ver o tópico anterior Ver o tópico seguinte Ir em baixo

Resolvido Comando Insert into com erro

Mensagem por Julio em 7/4/2010, 17:38

Pessoal Boa Tarde!

Ao gravar com o comando INSERT INTO esta dando erro de variavel nao existente.

Para eu entender melhor e o codigo nao ficar muito grande criei um metodo chamado alimenta variavel. Que contem o seguinte:

Código:
m.var1 = Thisform.txtid_cliente.value
m.var2 = Thisform.txtnumero_.value
m.var3 = Thisform.txtcpf_cnpj.value
m.var4 = Thisform.txtinsc_est.value
m.var5 = Thisform.txtnome_razao.value
m.var6 = Thisform.txtendereco.value
m.var7 = Thisform.txtnumero.value
m.var8 = Thisform.txtbairro.value
m.var9 = Thisform.txtcidade.value
m.var10 = Thisform.txtestado.value
m.var11 = Thisform.txtcep.value
m.var12 = Thisform.txtddd.value
m.var13 = Thisform.txttelefone.value
m.var14 = Thisform.txttelefoner.value
m.var15 = Thisform.txttelefonef.value
m.var16 = Thisform.txttelefone.value
m.var17 = Thisform.txtemail1.value
m.var18 = Thisform.txtemail2.value

No click do botão gravar tenho:

Código:
Thisform.alimentavariavel

INSERT INTO clientes (id_cliente,numero,cpf_cnpj,insc_est,;
        nome_razao,endereco,numero,bairro,cidade,estado,cep,;
        ddd,telefone,telefoner,telefonef,telefonec,email1,email2);
       VALUES (m.var1,m.var2,m.var3,m.var4,m.var5,m.var6,m.var7,m.var8,;
       m.var9,m.var10,m.var11,m.var12,m.var13,m.var14,m.var15,m.var16,;
       m.var17)

Da erro (Variable "VAR1" is not found)


Julio

Julio
Usuário 5 Estrelas
Usuário 5 Estrelas


Voltar ao Topo Ir em baixo

Resolvido Re: Comando Insert into com erro

Mensagem por alceu11 em 7/4/2010, 17:45

antes de ir para o "GRAVAR" COM insert gravar

FACA VALIDACOES DE CADA TEXTBOX ESTA VAZIO Very Happy

verifICANDO o conteudo se esta vazio de cada variavel !!!!

Código:
if empty(var1)
 wait window ' o text id esta vazio' time 3
 return .f.
endif
avatar
alceu11
Usuário 5 Estrelas
Usuário 5 Estrelas


Voltar ao Topo Ir em baixo

Resolvido Re: Comando Insert into com erro

Mensagem por Julio em 7/4/2010, 17:50

Alceu

Mesmo alimentado todos os textbox com alguma dado na hora de gravar da erro.

Este "VAR1" nao existe ja olhei tudo no formulario e em nenhum momento declaro esta variavel "VAR1"

Julio

Julio
Usuário 5 Estrelas
Usuário 5 Estrelas


Voltar ao Topo Ir em baixo

Resolvido Re: Comando Insert into com erro

Mensagem por alceu11 em 7/4/2010, 18:07

JULIO
Em todo formulario que existir, gravacoes de dados,, havera sempre validacoes..!!! Very Happy

ISTO É , E SEMPRE SERA UM PRINCIPIO BASICO DE PROGRAMACAO!!

No clipper vc usava apos o get m.var1 o comando valid !empty(var1) e outras coisitas mas,,,,,,,lembra disto....?

No Visual Fox pro voce usar o metodo valid deste text box, ou, o metodo lostfocus, no qual vc, determinara que tipo de dado é valido ou nao ,

Mesmo pq,,,,ha situacoes que vc tera que verficar duplicidade para nao quebrar a chave primaria ou candidate....

Pense sempre em valdicoes antes de gravar....!!!

Agora se voce nao declarou como pode querer gravar, se o preecimento, da var1 nao foi completado com com a id....?
ja que id deve ser automatico nao é isto nao?

Na sua reposta anterior nao consegui entender se tu dectou o problema?
avatar
alceu11
Usuário 5 Estrelas
Usuário 5 Estrelas


Voltar ao Topo Ir em baixo

Resolvido Re: Comando Insert into com erro

Mensagem por Marcos Guedes em 7/4/2010, 21:29

[Você precisa estar registrado e conectado para ver este link.] escreveu:Pessoal Boa Tarde!

Ao gravar com o comando INSERT INTO esta dando erro de variavel nao existente.

Para eu entender melhor e o codigo nao ficar muito grande criei um metodo chamado alimenta variavel. Que contem o seguinte:

Código:
m.var1 = Thisform.txtid_cliente.value
m.var2 = Thisform.txtnumero_.value
m.var3 = Thisform.txtcpf_cnpj.value
m.var4 = Thisform.txtinsc_est.value
m.var5 = Thisform.txtnome_razao.value
m.var6 = Thisform.txtendereco.value
m.var7 = Thisform.txtnumero.value
m.var8 = Thisform.txtbairro.value
m.var9 = Thisform.txtcidade.value
m.var10 = Thisform.txtestado.value
m.var11 = Thisform.txtcep.value
m.var12 = Thisform.txtddd.value
m.var13 = Thisform.txttelefone.value
m.var14 = Thisform.txttelefoner.value
m.var15 = Thisform.txttelefonef.value
m.var16 = Thisform.txttelefone.value
m.var17 = Thisform.txtemail1.value
m.var18 = Thisform.txtemail2.value

No click do botão gravar tenho:

Código:
Thisform.alimentavariavel

INSERT INTO clientes (id_cliente,numero,cpf_cnpj,insc_est,;
        nome_razao,endereco,numero,bairro,cidade,estado,cep,;
        ddd,telefone,telefoner,telefonef,telefonec,email1,email2);
       VALUES (m.var1,m.var2,m.var3,m.var4,m.var5,m.var6,m.var7,m.var8,;
       m.var9,m.var10,m.var11,m.var12,m.var13,m.var14,m.var15,m.var16,;
       m.var17)

Da erro (Variable "VAR1" is not found)


Julio
Julio, o erro está informando que a variável "var1" não foi encontrada no método click do botão.

No fox, as variáveis, por padrão, são locais. Por isto você está tendo este erro.
Se no método "alimentavariavel", as variáveis tivessem sido declaradas públicas, isto não ocorreria, mas isto não é aconselhável.


As alternativas que sugiro, conforme a sua necessidade é.

  1. Se as variáveis serão utilizadas apenas dentro do método click do botão, então declare as variáveis dentro do próprio método click.
  2. Se pretendes utilizar as variáveis em outros métodos existentes no form, ou em controles do form, então deixe as variáveis como sendo propriedades de seu formulário. Então ao invés de se referir a elas como m.nomeDaVariavel, você utilizará thisform.nomeDaVariavel




Resolve o teu problema?

_________________
Marcos Guedes - Programador e desenvolvedor Web.


Visite o nosso portal:
[Você precisa estar registrado e conectado para ver este link.]

Marcos Guedes
Webmaster
Webmaster


Voltar ao Topo Ir em baixo

Resolvido Re: Comando Insert into com erro

Mensagem por m@r<3|o em 8/4/2010, 01:03

Código:
WITH thisformset.form3
vCodigo= .txtcod_marca.value
vDescricao = .Txtmarca.value
= SQLEXEC(myconnect ,'Select * from marcas WHERE cod_marca =' + alltrim(STR(lnMARCA)) ,'Marcas' )

IF RECCOUNT("MARCAS")>0 &&JA EXISTE A MARCA CADASTRADA
    cString = "Update marcas SET cod_marca = ?vCodigo, marca = ?vDescricao Where cod_marca = ?vCodigo"
    =sqlexec(myconnect , cString)
ELSE
    =sqlexec(myconnect , [insert into marcas (cod_marca, marca) values (?vCodigo,?vDescricao)])
ENDIF
ENDWITH    


Abs
Marcelo Fazan

m@r<3|o
Participante Assíduo
Participante Assíduo


Voltar ao Topo Ir em baixo

Resolvido Re: Comando Insert into com erro

Mensagem por Julio em 8/4/2010, 09:04

Alceu

Tenho um form um metodo chamado ValidarDados, mas so que o cliente nao quer receber estes avisos ao clicar no botão gravar, por este motivo aboli as validações.

O compo txtID_Cliente é autoincremento, mas nao o gerado pelo Fox, eu tenho uma tabela que controla este campo dando os codigo.

Marcos

Tambem nao gosto muito de criar variaveis publicas.

Retirei o metodo alimentavariavel e coloquei no click do botão gravar.

Agora aparece outra mensagem de erro diferente (Must specify additional parameters.)

julio

Julio
Usuário 5 Estrelas
Usuário 5 Estrelas


Voltar ao Topo Ir em baixo

Resolvido Re: Comando Insert into com erro

Mensagem por Julio em 8/4/2010, 09:14

Pessoal

Me desculpem, ate fico envergonhado, de ter tomado o tempo de voces para este grande erro meu.

Se observarem bem as variaveis declaradas são 18, e no codigo do Insert no values esta faltando a variavel m.var18.


Obrigado a todos mais uma vez

julio

Julio
Usuário 5 Estrelas
Usuário 5 Estrelas


Voltar ao Topo Ir em baixo

Resolvido Re: Comando Insert into com erro

Mensagem por alceu11 em 8/4/2010, 09:19


Tenho um form um metodo chamado ValidarDados, mas so que o cliente nao quer receber estes avisos ao clicar no botão gravar, por este motivo aboli as validações.

O compo txtID_Cliente é autoincremento, mas nao o gerado pelo Fox, eu tenho uma tabela que controla este campo dando os codigo.


Primeiro
Se o cliente nao quer receber o aviso,,,,,que o campo nao foi preenchido,,,,
Código:
if empty(thisform.text1.value)
  messagebox('campo obrigatorio preechimento',48 'atencao')
  thisform.text1.setfocus
  return .f.
endif

Entao o cliente pede vamos abolir,,,,,,pode deixar em branco ou vazio,,,,,tudo certo.?

Segundo
Se o txtID_Cliente
Select suatabela de numeros
go bottom
thisform.txtID_Cliente.value=suatabeladenumero.numero
thisform.txtID_Cliente.refresh()
Sera que resolve?
avatar
alceu11
Usuário 5 Estrelas
Usuário 5 Estrelas


Voltar ao Topo Ir em baixo

Resolvido Re: Comando Insert into com erro

Mensagem por Julio em 8/4/2010, 10:25

Alceu

Beleza isso resolve.

julio

Julio
Usuário 5 Estrelas
Usuário 5 Estrelas


Voltar ao Topo Ir em baixo

Ver o tópico anterior Ver o tópico seguinte Voltar ao Topo


 
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum