Página 1 de 1

Dúvida para criar os browsers - Iniciante

Enviado: 06 Out 2016 13:32
por Tomaz Edson Linhares
Olá amigos, estou com a seguinte dúvida

Para exercitar meu aprendizado, estou criando um sistema tipo loja de materiais de
construção.

mas agora me deparei com a seguinte dúvida:

Fiz um sistema que abre 03 DBFs: Produtos.dbf , Pedidos.dbf e itens.dbf.

"Produtos.dbf" que recebe o cadastro dos produtos (codprod e nomeprod)

"Pedidos.dbf" que recebe o numero do pedido e nome do cliente (numped e nomecli)

"Itens.dbf" que recebe os produtos do pedido (numped,codprod, quantprod,valorunit)

O que o sistema tem que fazer é exibir os dois browsers um ao lado do outro
(tipo no exemplo \basic\dualbrowse), e :

Abrir o primeiro browse com os dados dos pedidos:

(Isso eu já consegui fazer e está funcionando perfeito, inclusive buscando pelas iniciais do nome)

exemplo:

PED NOME CLIENTE

0001 João silva
0002 Pedro Ferreira
...

Até aqui tudo bem, mas no segundo browse é que fiquei travado.

Nesse segundo browse conforme eu for movimentando as seta no primeiro browse, seja exibido
a lista dos produtos desse pedido, usando 'codprod' como chave para busca, pois cada pedido
poderá ter diversos produtos. Imagino que usando "label' não vai dar certo, pois preciso ver
a lista de produtos desse pedido.

exemplo do segundo browse :

--cod prod--Nome do Prod.--quant-----valor unitário-- soma---

123 cimento 10 1,00 10,00
456 areia lavada 5 3,00 15,00
543 Tijolos 20x30 100 0,80 80,00

Tentei adaptar no exemplo de \basic\dualbrowse mas sem sucesso.

No Clipper faço isso fácil, mas no minigui tentei e não consegui.

Dúvida para criar os browsers - Iniciante

Enviado: 06 Out 2016 13:52
por rubens
Você vai fazer do jeito que faz no clipper.
Só que no evento onchange do primeiro browse vai colocar a rotina de atualizar o segundo browse, através do componente browse ou grid...
Cria o segundo browse (itens) e toda vez que mudar o pedido no primeiro browse, faz um filtro do segundo browse(itens) e manda atualizar.
Só vai ter que ver como está filtrando isso... uma boa idéia seria usar o ordscope se usa cdx.

Era bom postar um código compilável do que tá fazendo e a tela, para ficar mais fácil de receber uma ajuda...

Rubens