rotina de entrada de dados

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

Moderador: Moderadores

lapinhazzz
Usuário Nível 3
Usuário Nível 3
Mensagens: 130
Registrado em: 20 Abr 2009 10:52
Localização: LAGOA

rotina de entrada de dados

Mensagem por lapinhazzz »

Bom Dia,
Há já algum tempo que estou afastado deste forum.
Porém hoje estou novamente aqui.
Gostaria de perguntar se alguém tem um prg já feito de rotina de entrada de dados para substituir o GET desta linguagem.
Fico a aguardar.
Muito Obrigado.

Carlos Lapa
Avatar do usuário
sygecom
Administrador
Administrador
Mensagens: 7131
Registrado em: 21 Jul 2006 10:12
Localização: Alvorada-RS
Contato:

Re: rotina de entrada de dados

Mensagem por sygecom »

Olá Carlos,
Que tipo de alteração você quer no GET ?
Você mesmo pode pegar os source do xHarbour e fazer suas devidas alterações. A um tempo atrás, fiz algumas alterações para ficar compatível com o GET do The Club do Clipper e me lembro que não tinha muito mistério.
Leonardo Machado
xHarbour.org + Hwgui + PostgreSql
lapinhazzz
Usuário Nível 3
Usuário Nível 3
Mensagens: 130
Registrado em: 20 Abr 2009 10:52
Localização: LAGOA

Re: rotina de entrada de dados

Mensagem por lapinhazzz »

Quero filtrar os dados para vários tipos como Alfanuméricos, Númericos, Data etc.
Obrigado
Carlos Lapa
lapinhazzz
Usuário Nível 3
Usuário Nível 3
Mensagens: 130
Registrado em: 20 Abr 2009 10:52
Localização: LAGOA

Re: rotina de entrada de dados

Mensagem por lapinhazzz »

Por exemplo eu tenho um get para uma variavel código que pesquisa o valor código na base de dados. Depois eu faço o
@ Linha,Coluna say codigo e depois
@ Linha,Coluna say produto
depois vem outro get
@ Linha,Coluna say "qual a quantidade?" get quant
e neste momento eu estou no get quant
se quiser ir para o get código carregando na seta para a esquerda para inserir novamente o codigo como faço?????


Codigo quantidade
1111 2

Obrigado
Carlos Lapa
Avatar do usuário
gvc
Colaborador
Colaborador
Mensagens: 1270
Registrado em: 23 Ago 2005 10:57

Re: rotina de entrada de dados

Mensagem por gvc »

Código: Selecionar todos

@ Linha,Coluna get codigo
@ Linha,Coluna say produto
@ Linha,Coluna say "qual a quantidade?" get quant

read
Vc coloca todos os get´s com um só read. Assim vc pode navegar por entre os get´s.
O que vc não colocou foram as validações.

Código: Selecionar todos

@ Linha,Coluna get codigo valid ver_codigo(codigo)
@ Linha,Coluna say produto
@ Linha,Coluna say "qual a quantidade?" get quant valid ver_qtd(codigo, quant)

read
( ver_codigo ) Vc teria uma função para verificar se o produto existe e tb para exibir o nome do mesmo.
( ver_qtd ) Aqui vc teria uma função para verificar se a quantidade é zero ou se tem a quantidade solicitado em estoque, por exemplo.
"TRS-80/Sincler/Apple/PC - Clipper Winter 85, tlink 1.0 [pc 10 MHz - 640K] {NEZ 8000 2Kb RAM}"
{POG - Programação Orientada a Gambiarra}
lapinhazzz
Usuário Nível 3
Usuário Nível 3
Mensagens: 130
Registrado em: 20 Abr 2009 10:52
Localização: LAGOA

Re: rotina de entrada de dados

Mensagem por lapinhazzz »

while .t.
sele 1
use clientes index icodigo
@ Linha,Coluna get codigo valid ver_codigo(codigo)
read
sele 2
use produtos
seek codigo
if found()
@ Linha,Coluna say produto
exit
else
loop
endd
@ Linha,Coluna say "qual a quantidade?" get quant valid ver_qtd(codigo, quant)
read


function ver_codigo()
para x
....
.....
....
return x

Se por exemplo eu vou buscar o código na área 1 depois pesquiso o código na área 2 pelo código de cliente
Depois eu apresento na tela o produto
Depois vou para o segundo get
mas se eu quiser voltar ao primeiro get como faço
obrigado

Carlos Lapa
Avatar do usuário
gvc
Colaborador
Colaborador
Mensagens: 1270
Registrado em: 23 Ago 2005 10:57

Re: rotina de entrada de dados

Mensagem por gvc »

Código: Selecionar todos

/* Abra todos os arquivo só uma vez */
select 1
use clientes index icodigo

sele 2
use produtos (FALTA OS INDICES)

while <condição>

   ...

   @ Linha++,Coluna get codigo picture '9999999999' valid ver_codigo(codigo)
   @ Linha,Coluna say "qual a quantidade?" get quant valid ver_qtd(codigo, quant)
   read

   ...

end

return(Nil)

***
***
***
function ver_codigo(q_prod)

if empty(q_prod) // Código vazio
   alert('Codigo do Produto eh Obrigatorio!')
   return(.F.)
end

 // procura pelo código do produto.
if produtos->(dbseek(q_prod)) // Encontrou
   @ linha,coluna + 15 say produtos->produto
   return(.T.)
end
// Não encontrou.
@ linha,coluna + 15 say 'Produto nao Cadastrado!'
return(.F.)
"TRS-80/Sincler/Apple/PC - Clipper Winter 85, tlink 1.0 [pc 10 MHz - 640K] {NEZ 8000 2Kb RAM}"
{POG - Programação Orientada a Gambiarra}
Responder