Erro nos parâmetros do dbEdit

Projeto [x]Harbour - Compilador de código aberto compatível com o Clipper.

Moderador: Moderadores

cjp
Usuário Nível 6
Usuário Nível 6
Mensagens: 1563
Registrado em: 19 Nov 2010 22:29
Localização: paraná
Contato:

Erro nos parâmetros do dbEdit

Mensagem por cjp »

Alguém me ajuda, por favor!!!!
Inacio de Carvalho Neto
Avatar do usuário
Jairo Maia
Moderador
Moderador
Mensagens: 2785
Registrado em: 16 Ago 2010 13:46
Localização: Campinas-SP

Erro nos parâmetros do dbEdit

Mensagem por Jairo Maia »

Olá Inácio,

Tente alterar de pr+1 para pr += 1
Abraços, Jairo
Harbour / Clipper 5.2e - Blinker 7
(Não respondo dúvidas por MP ou E-mail. Por favor, não encaminhe via mensagem privada ou e-mail, dúvidas que podem ser compartilhadas com todos no fórum)
cjp
Usuário Nível 6
Usuário Nível 6
Mensagens: 1563
Registrado em: 19 Nov 2010 22:29
Localização: paraná
Contato:

Erro nos parâmetros do dbEdit

Mensagem por cjp »

Continua dando o mesmo erro, Jairo. Aliás, pra te ser sincero, eu não entendi a tua fórmula. Mas fiz como vc disse, só que ainda assim não funcionou.
Inacio de Carvalho Neto
Avatar do usuário
rochinha
Administrador
Administrador
Mensagens: 4664
Registrado em: 18 Ago 2003 20:43
Localização: São Paulo - Brasil
Contato:

Erro nos parâmetros do dbEdit

Mensagem por rochinha »

Amiguinho,

por acaso nao existe uma tabela aberta e com um campo pr sobrando ai? mesmo que estejamos vendo a variavel ser valorizada antes.

Os operadores += -= := não são reconhecidos por versões antigas do Clipper

teste+=1 é o mesmo que teste=teste+1.
OPS! LINK QUEBRADO? Veja ESTE TOPICO antes e caso não encontre ENVIE seu email com link do tópico para [url=mailto://fivolution@hotmail.com]fivolution@hotmail.com[/url]. Agradecido.

@braços : ? )

A justiça divina tarda mas não falha, enquanto que a justiça dos homens falha porque tarda.
Avatar do usuário
asimoes
Colaborador
Colaborador
Mensagens: 4919
Registrado em: 26 Abr 2007 16:48
Localização: RIO DE JANEIRO-RJ

Erro nos parâmetros do dbEdit

Mensagem por asimoes »

Este pr foi definido como "static pr" por um acaso.
Dá pra mostrar toda função e como ela é chamada.
►Harbour 3.x | Minigui xx-x | HwGui◄
Pense nas possibilidades abstraia as dificuldades.
Não corrigir nossas falhas é o mesmo que cometer novos erros.
A imaginação é mais importante que o conhecimento. (Albert Einstein)
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

Erro nos parâmetros do dbEdit

Mensagem por JoséQuintas »

Esse erro está claro, apesar de confundir.... rs

PR := "1"
? TYPE( PR )
? TYPE( "PR" )

O primeiro retorna "N" e o segundo retorna "C"
O correto pra testar é colocar entre aspas, ou usar ValType( var )

Ou seja, sua variável é caractere e não numérica.
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Avatar do usuário
asimoes
Colaborador
Colaborador
Mensagens: 4919
Registrado em: 26 Abr 2007 16:48
Localização: RIO DE JANEIRO-RJ

Erro nos parâmetros do dbEdit

Mensagem por asimoes »

José,
È isso mesmo, o correto é Type("pr") OU ValType(pr)

Que neste caso deve ser:

ValType(pr) ou Type("pr") = "U" ou qualquer outro tipo que não Númerico
►Harbour 3.x | Minigui xx-x | HwGui◄
Pense nas possibilidades abstraia as dificuldades.
Não corrigir nossas falhas é o mesmo que cometer novos erros.
A imaginação é mais importante que o conhecimento. (Albert Einstein)
Avatar do usuário
Jairo Maia
Moderador
Moderador
Mensagens: 2785
Registrado em: 16 Ago 2010 13:46
Localização: Campinas-SP

Erro nos parâmetros do dbEdit

Mensagem por Jairo Maia »

Olá Inácio,

Em Harbour, o que está estranho é que desta forma não compila, dá erro de sintaxe:

Código: Selecionar todos

Function Main()
 pr := 1  // declara e inia uma variável númérica
 pr+1     // Dá erro de sintaxe. Não compila
Return
Assim compila e funciona, considerando que o tipo da variável é numérica:

Código: Selecionar todos

Function Main()
 pr := 1  // declara e inia uma variável númérica
 pr += 1  // incrementa a variavel em 1
 pr++     // também poderia ser assim
 ++pr     // ou assim
Return
Também acho que o colega José está correto. Sua variável é alpha-numérica. Tente assim e veja se funciona:

Código: Selecionar todos

pr := Str( Val( pr ) + 1 )
Abraços, Jairo
Harbour / Clipper 5.2e - Blinker 7
(Não respondo dúvidas por MP ou E-mail. Por favor, não encaminhe via mensagem privada ou e-mail, dúvidas que podem ser compartilhadas com todos no fórum)
Avatar do usuário
asimoes
Colaborador
Colaborador
Mensagens: 4919
Registrado em: 26 Abr 2007 16:48
Localização: RIO DE JANEIRO-RJ

Erro nos parâmetros do dbEdit

Mensagem por asimoes »

Olá Jairo,

Essa sintaxe está mesmo errada pr+1

O ideal é testar o tipo que da variável pr e incrementar depois:

pr := if(ValType(pr)="C",Str( Val( pr ) + 1 ),pr+1)
►Harbour 3.x | Minigui xx-x | HwGui◄
Pense nas possibilidades abstraia as dificuldades.
Não corrigir nossas falhas é o mesmo que cometer novos erros.
A imaginação é mais importante que o conhecimento. (Albert Einstein)
Avatar do usuário
rochinha
Administrador
Administrador
Mensagens: 4664
Registrado em: 18 Ago 2003 20:43
Localização: São Paulo - Brasil
Contato:

Erro nos parâmetros do dbEdit

Mensagem por rochinha »

Amiguinhos,
Em Harbour, o que está estranho é que desta forma não compila, dá erro de sintaxe:

Código: Selecionar todos

Function Main()
 pr := 1  // declara e inia uma variável númérica
 pr+1     // Dá erro de sintaxe. Não compila
Return
Aqui não se trata de problema do Harbour mas sim na codificação. Ao colocar o trecho pr+1 não foi definido um meio de saida ou armazenamento:

Código: Selecionar todos

Function Main()
 pr := 1  // declara e inia uma variável númérica
 ? pr+1   // deverá apresentar o resultado
Return
Ou:

Código: Selecionar todos

Function Main()
 pr := 1  // declara e inia uma variável númérica
 resultado := pr+1   // deverá armazenar o resultado
Return
Uma variável declarada como static não terá seu conteudo modificado em runtime. Voce usa geralmente para definir um valor imutável durante o uso da aplicação.
OPS! LINK QUEBRADO? Veja ESTE TOPICO antes e caso não encontre ENVIE seu email com link do tópico para [url=mailto://fivolution@hotmail.com]fivolution@hotmail.com[/url]. Agradecido.

@braços : ? )

A justiça divina tarda mas não falha, enquanto que a justiça dos homens falha porque tarda.
Jeferson
Usuário Nível 1
Usuário Nível 1
Mensagens: 26
Registrado em: 06 Fev 2013 14:16
Localização: Niteroi/RJ

Erro nos parâmetros do dbEdit

Mensagem por Jeferson »

Bom dia a todos.

Pablo você teria como disponibilizar esse tutorial completo que tu pusseste acima mencionando só o DBEDIT?

Eu tenho ele em ingles e gostaria dele em portugues para facilitar a assimilação.

desde já agradeço.


Jeferson.
Avatar do usuário
Pablo César
Usuário Nível 7
Usuário Nível 7
Mensagens: 5312
Registrado em: 31 Mai 2006 10:22
Localização: Curitiba - Paraná

Erro nos parâmetros do dbEdit

Mensagem por Pablo César »

Jeferson, seja bem vindo ao fórum !
Jeferson escreveu:Pablo você teria como disponibilizar esse tutorial completo que tu pusseste acima mencionando só o DBEDIT?
Não entendi. este tutorial já está em português e é sobre dbEdit. Por isso não entendo o que você está pedindo.

Agora, quer um conselho ? Substitua o dbEdit pelo TBrowse que tem mais poder, mais flexibilidade. No fórum tem vários exemplos.
Um clip-abraço !

Pablo César Arrascaeta
Compartilhe suas dúvidas e soluções com todos os colegas aqui do fórum.
Evite enviar as dúvidas técnicas por MPs ou eMails, assim todos iremos beneficiar-nos.
alxsts
Colaborador
Colaborador
Mensagens: 3092
Registrado em: 12 Ago 2008 15:50
Localização: São Paulo-SP-Brasil

Erro nos parâmetros do dbEdit

Mensagem por alxsts »

Olá!
rochinha escreveu:Uma variável declarada como static não terá seu conteudo modificado em runtime. Voce usa geralmente para definir um valor imutável durante o uso da aplicação.
Só para esclarecer este ponto, onde creio que o Rochinha se distraiu: as variáveis estáticas (STATIC) podem ter seu conteúdo modificado normalmente durante o processamento, como qualquer outro tipo de variável. Se não fosse assim, não teria sentido elas existirem. Creio que o Rochinha se referiu às constantes manifestas, aquelas criadas com

Código: Selecionar todos

#define   K   1
Vejam um exemplo atribuindo valores a uma variável estática:

Código: Selecionar todos

FUNCTION Main()

   LOCAL cUF, GetList := {}

   CLS
   
   cUF := Space(2)
   
   @10,1 Say "Estado:" ;
         Get cUF ;
        Pict "!!" ;
       Valid { || ValidarUF( cUF ) } 
   READ
   
   ValidarUF()

RETURN NIL          
//--------------------------------------------------------------------------------------
FUNCTION ValidarUF( cUF )

   STATIC aUF
   LOCAL lRet := .F.
   
   IF Empty( aUF )
      // primeira vez... carrega vetor estático
      aUF := {"AC","AL","AP","AM","BA","CE","DF","ES","GO","MA","MT","MS","MG","PR", ;
              "PB","PA","PE","PI","RJ","RN","RS","RO","RR","SC","SE","SP","TO" }         
   ENDIF   

   IF ! Empty cUF
      lRet := Ascan( aUF, cUf ) > 0
   Else
      // última vez... limpa vetor estático liberando a memória ocupada
      aUF := NIL
   ENDIF
   
RETURN lRet
//--------------------------------------------------------------------------------------
[]´s
Alexandre Santos (AlxSts)
Jeferson
Usuário Nível 1
Usuário Nível 1
Mensagens: 26
Registrado em: 06 Fev 2013 14:16
Localização: Niteroi/RJ

Erro nos parâmetros do dbEdit

Mensagem por Jeferson »

Eu me referia ao Guia de referência da linguagem xHarbour. Eu tinha visto essa descrição do Dbedit nesse Guia em Inglês. Quanto a sua sugestão acho valida, porem eu estou afastado da area de programação a 14 anos. Estou reiniciando depois de ter cansado de brincar na area de infra, rede e servidores. A idade avançou e programar é mais relax. Por isso estou recomeçando. Abraço.

Jeferson.
Avatar do usuário
Pablo César
Usuário Nível 7
Usuário Nível 7
Mensagens: 5312
Registrado em: 31 Mai 2006 10:22
Localização: Curitiba - Paraná

Erro nos parâmetros do dbEdit

Mensagem por Pablo César »

Esteja a vontade Jeferson, poste as suas dúvidas que ajudaremos na medida do possível. :)
Um clip-abraço !

Pablo César Arrascaeta
Compartilhe suas dúvidas e soluções com todos os colegas aqui do fórum.
Evite enviar as dúvidas técnicas por MPs ou eMails, assim todos iremos beneficiar-nos.
Responder