O que eu venho comentando... pense no lado humano
nDesconto menor ou igual a nDescontoBanana
Se alguém falar isso.... não faz sentido.
É pra decidir alguma coisa, está afirmando ou negando alguma coisa, está perguntando alguma coisa... está incompleto.
Ajuda com Código [Iniciante]
Moderador: Moderadores
- JoséQuintas
- Administrador

- Mensagens: 20267
- Registrado em: 26 Fev 2007 11:59
- Localização: São Paulo-SP
Ajuda com Código [Iniciante]
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/
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/
Ajuda com Código [Iniciante]
Sim, está incompleto, não postei o código todo, o que eu quero saber é se eu posso, dentro do If dizer que uma variável é menor (ou maior) que uma outra (sendo que ambas já foram declaradas anteriormente), e se for possível, quero saber porque está dando esse erro. O que eu postei foi só um exemplo para ilustrar.JoséQuintas escreveu:O que eu venho comentando... pense no lado humano
nDesconto menor ou igual a nDescontoBanana
Se alguém falar isso.... não faz sentido.
É pra decidir alguma coisa, está afirmando ou negando alguma coisa, está perguntando alguma coisa... está incompleto.
No caso o nDesconto seria um get, porém eu quero limitar ele para cada situação (dependendo do produto, por isso o nDescontoBanana) até certo valor, achei que no If eu conseguiria, mas obtive um erro.
Erros só provam que você está tentando. - Luxana Crownguard
Ajuda com Código [Iniciante]
Sim, conheço, no começo dos anos 2000 eu morei em Maringá, conheci minha esposa inclusive em Maringá, e na época eu conversei com o dono da empresa sobre uma vaga de emprego, lembro que a empresa utilizava Clipper 5.3 com a biblioteca gráfica LightLibGraphics para fazer o PDV, não me recordo se já usava Harbour, mas lembro que ainda estavam decidindo o que usar para gerar aplicativos "for Windows", na época existia o Fivewin e logo em seguida apareceu a xHarbour.com com um ambiente integrado de programação e possibilidade de criar sistemas GUI, infelizmente por uma questão de tempo não deu certo meu ingresso na empresa, mas sempre acompanho o site e vejo as novidades, eles fazem um trabalho muito bom, são referência no mercado, caso vc seja efetivada, estará em uma ótima empresa, sucesso !
Marcelo Neves
https://produto.mercadolivre.com.br/MLB ... 0067609615
whatsapp (41) 99786-3995
http://harbourdeveloper.blogspot.com
marcelo.souza.das.neves@gmail.com
https://produto.mercadolivre.com.br/MLB ... 0067609615
whatsapp (41) 99786-3995
http://harbourdeveloper.blogspot.com
marcelo.souza.das.neves@gmail.com
- Jairo Maia
- Moderador
- Mensagens: 2785
- Registrado em: 16 Ago 2010 13:46
- Localização: Campinas-SP
Ajuda com Código [Iniciante]
Sim, você pode, mas em seu exemplo realmente há um erro de sintaxe.didzao escreveu:o que eu quero saber é se eu posso, dentro do If dizer que uma variável é menor (ou maior) que uma outra (sendo que ambas já foram declaradas anteriormente), e se for possível, quero saber porque está dando esse erro. O que eu postei foi só um exemplo para ilustrar.
Ambas variáveis são numéricas, e você quer saber se o desconto atribuído é menor ou igual ao desconto permitido para o produto banana. Porém, você tem que atribuir esse valor lógico (.T. ou .F.) a uma outra variável. Exemplo:
Código: Selecionar todos
lDescontoOk := ( nDesconto <= nDescontoBanana )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)
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)
- JoséQuintas
- Administrador

- Mensagens: 20267
- Registrado em: 26 Fev 2007 11:59
- Localização: São Paulo-SP
Ajuda com Código [Iniciante]
Pequeno ajuste na resposta: pode ou não atribuir a uma variável, depende da necessidade/gosto pessoal.Jairo Maia escreveu:Porém, você tem que atribuir esse valor lógico (.T. ou .F.) a uma outra variável.
Igual colocou pra sair do sistema, pode colocar direto no IF.
Código: Selecionar todos
IF nDesconto <= nDescontoBanana
// alguma coisa
ENDIF
por exemplo a saída do aplicativo:
Código: Selecionar todos
IF Alert( "Sair do aplicativo", { "Sim", "Não" } ) = 1
QUIT
ENDIF
Código: Selecionar todos
nOpc := Alert( "Sair do aplicativo", { "Sim", "Não", "Na dúvida" }
IF nOpc == 3
Alert( "Endoidou? É sim ou não!" )
LOOP
ELSEIF nOpc == 2
Alert( "ok, vamos resolver mais coisas" )
LOOP
ELSE
Alert( "Ok, já estou com saudades... eu amo escravos trabalhando" )
EXIT
ENDIF
- vai no mercado...desconto menor ou igual desconto da banana.... - isto seria o que colocou, sem sentido
- Vai no mercado e veja se o desconto é menor ou igual ao desconto da banana. - isto seria a atribuição a variável, pra uso posterior
- Vai no mercado e... se o desconto for menor ou igual ao desconto da banana... - isto seria o IF direto
Então, não é que escreveu palavras inválidas no fonte, é que não fez sentido do jeito que colocou.
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/
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/
- Jairo Maia
- Moderador
- Mensagens: 2785
- Registrado em: 16 Ago 2010 13:46
- Localização: Campinas-SP
Ajuda com Código [Iniciante]
Eu entendi que se o código é o 3500, entre outras coisas ele quer mesmo saber se houve desconto, e se houve, se está dentro do permitido.
Como se trata de iniciante, procurei não entrar em detalhes, mas apenas responder a dúvida. Veja o código postado:Veja que no futuro esse código nem será usado. Ele vai descobrir que primeiro verifica se o produto existe, então irá ler os dados diretamente do banco de dados. Mas como ele deixou claro, está iniciando, ainda está na fase de exercícios.
Como se trata de iniciante, procurei não entrar em detalhes, mas apenas responder a dúvida. Veja o código postado:
Código: Selecionar todos
If nCodigo = 3500
cProduto := "Banana Prata"
nPrecoUnitario := 3.50
nEstoqueProduto := nEstoqueBanana
nQuantidadeBanana := nQuantidade
nDesconto <= nDescontoBanana
EndifAbraç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)
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)

