duvida com if endif na mesma linha

Fórum sobre a linguagem CA-Clipper.

Moderador: Moderadores

porter
Usuário Nível 5
Usuário Nível 5
Mensagens: 1057
Registrado em: 10 Dez 2009 16:44
Localização: OLIMPIA-SP

duvida com if endif na mesma linha

Mensagem por porter »

ola pessoal, quero executar um comando em apenas uma linha, da maneira como estou fazendo nao esta dando certo, estou fazendo assim:

?? if( empty(cupom), CHR(15), ? CHR(15) + CHR(27) + "E" )

como fazer esse comando em apenas uma linha, observando que eu preciso usar o ?? senao somente o ?

obrigado.
alxsts
Colaborador
Colaborador
Mensagens: 3092
Registrado em: 12 Ago 2008 15:50
Localização: São Paulo-SP-Brasil

duvida com if endif na mesma linha

Mensagem por alxsts »

Olá!

É simples. No teu código existe um ? a mais. O correto é:

Código: Selecionar todos

?? If( Empty(cupom), CHR(15), CHR(15) + CHR(27) + "E" )
Se preferir usar função:

Código: Selecionar todos

QQOut( If( Empty(cupom), CHR(15),  CHR(15) + CHR(27) + "E" ))
ou necessitar usar dentro de um codeblock poderá fazer

Código: Selecionar todos

? Eval( { || QQOut(  If( Empty(cupom), CHR(15), CHR(15) + CHR(27) + "E" ) ) } )
[]´s
Alexandre Santos (AlxSts)
porter
Usuário Nível 5
Usuário Nível 5
Mensagens: 1057
Registrado em: 10 Dez 2009 16:44
Localização: OLIMPIA-SP

duvida com if endif na mesma linha

Mensagem por porter »

ola alxsts, na primeira condicao quero imprimir na mesma linha com ??, senao quero usar somente o ? para saltar para a proxima linha, entendeu ?
Da forma como voce passou vai ser sempre (??)
obrigado

?? If( Empty(cupom), CHR(15), CHR(15) + CHR(27) + "E" )
sambomb
Usuário Nível 3
Usuário Nível 3
Mensagens: 250
Registrado em: 24 Out 2008 17:02
Localização: Itaocara - RJ - Brasil

duvida com if endif na mesma linha

Mensagem por sambomb »

Tentou assim?
If( Empty(cupom), ?CHR(15), ??CHR(15) + CHR(27) + "E" )
Imagem

Rca Sistemas - Itaocara - RJ
alxsts
Colaborador
Colaborador
Mensagens: 3092
Registrado em: 12 Ago 2008 15:50
Localização: São Paulo-SP-Brasil

duvida com if endif na mesma linha

Mensagem por alxsts »

Olá!

Agora entendi. Acho que o exemplo do Samir vai funcionar.
[]´s
Alexandre Santos (AlxSts)
porter
Usuário Nível 5
Usuário Nível 5
Mensagens: 1057
Registrado em: 10 Dez 2009 16:44
Localização: OLIMPIA-SP

duvida com if endif na mesma linha

Mensagem por porter »

dessa forma da Error C2001 Systax error: '?'
Acho que do que eu preciso somente usando mais que uma linha.
alxsts
Colaborador
Colaborador
Mensagens: 3092
Registrado em: 12 Ago 2008 15:50
Localização: São Paulo-SP-Brasil

duvida com if endif na mesma linha

Mensagem por alxsts »

Olá!

Utilize as funções correspondentes aos comandos ? e ??:

Código: Selecionar todos

If( Empty(cupom), QOut( CHR(15) ), QQOut( CHR(15) + CHR(27) + "E" ) )
[]´s
Alexandre Santos (AlxSts)
porter
Usuário Nível 5
Usuário Nível 5
Mensagens: 1057
Registrado em: 10 Dez 2009 16:44
Localização: OLIMPIA-SP

duvida com if endif na mesma linha[Resolvido]

Mensagem por porter »

valeu pessoal, agora deu certo, obrigado pela atençäo.
Responder