Página 1 de 1

Múltiplas telas de consulta

Enviado: 08 Mai 2009 22:27
por Netavin
Boa noite honoráveis amigos ...

Acredito que. como eu, muitos dos colegas já viram em algum estabelecimento comercial, um operador/vendedor consultando determinado produto na tela do terminal; e enquanto digita o nome do produto, outras telas estão mostrando ao mesmo tempo, sua descrição numa tela, o fornecedor noutra tela, categoria a que pertence o produto etc. Aqui na minha cidade tenho um exemplo disto.
Então eu pergunto aos amigos: será possível este artifício através do xHarbour ?
Eu ainda não perguntei aos funcionários em que linguagem foi feita tal aplicação, até mesmo porque 99% deles não sabem. Porém, acredito que possa ser em COBOL ou xBase/DOS. Pois não são telas gráficas.
Fico imaginando uma montagem/codificação de um módulo deste tipo, em Tbrowse. Será possível ?

Um abraço a todos e um ótimo final-de-semana!!

Netavin

Re: Múltiplas telas de consulta

Enviado: 09 Mai 2009 00:05
por sygecom
Desculpa colega mas eu não entendi o que você deseja fazer, se for possivel da mais detalhes do que você esta querendo, se tiver imagens tambem mostrando acredito que tambem pode ajudar a explicar melhor o que você quer.

Re: Múltiplas telas de consulta

Enviado: 09 Mai 2009 13:54
por rubens
Não sei se em xHarbou você vai conseguir fazer isso, mas no clipper é perfeitamente normal.. eu tenho no sistema um consulta de contas a receber que conforme voce vai mudando o cliente vai aparecendo em outra janela as contas a receber daquele cliente.. é feito no tbrowse, quando voce pressiona tecla para cima ou para baixo.. o problema é que quando se tem muitos dados fica um pouco lento.

Rubens

Re: Múltiplas telas de consulta

Enviado: 10 Mai 2009 14:17
por Netavin
Olá amigos !
Caro colega Syge , a idéia foi exatamente esta captada pelo amigo Rubens.

Um abraço!

Netavin

Re: Múltiplas telas de consulta

Enviado: 11 Mai 2009 10:04
por alaminojunior
E então meu caro Netavin. Lembra daquele exemplo de tbrowse que lhe mandei ? Veja só o que fazer:

Código: Selecionar todos

...
bsu4:defcolor:= {5}
bsu4:colorblock:= {|bsu3| iif(preest <= 0 , {3,4},{1,2})}
bsu3:addcolumn(bsu4)
do while .t.
   Do while !bsu3:stabilize()
   Enddo // ponto A
   @ 21,10 say subs(preobs, 1,40) colo "b+/w"
   @ 22,10 say subs(preobs,41,40) colo "b+/w"// ponto B
   tempo:= inkey(3)
   do case
      case tempo = 0
           bsu3:RefreshAll()
           loop
...
Entre o ponto A e o ponto B, você pode instruir o programa a fazer outras coisas. Neste exemplo em questão, eu estou exibindo produtos no tbrowse, e o que está entre o ponto A e B são dados do produto, que no caso fica inviável incluir no tbrowse. Você pode implementar por exemplo, ir mostrando numa região diferente da tela, os clientes que compraram aquele produto, as compras daquele produto, etc... Use a imaginação. Tudo isso de acordo com algum campo do dbf que se relacione de alguma forma com outras tabelas.
Só não pode se perder nos ponteiros, se não vira bagunça. E também como observado pelo colega acima, se a rotina tiver que trabalhar com muitos dados, pode tornar lenta a navegação pelo tbrowse. Mas faça o teste.
Abraços.

Re: Múltiplas telas de consulta

Enviado: 11 Mai 2009 18:49
por Netavin
Valeu caríssimos Cliperianos !!
Vamos aos testes ...

Gracias ! []´s

Netavin

Múltiplas telas de consulta

Enviado: 19 Mai 2009 09:13
por Pablo César
Rubens escreveu:conforme voce vai mudando o cliente vai aparecendo em outra janela as contas a receber daquele cliente.. é feito no tbrowse, quando voce pressiona tecla para cima ou para baixo.. o problema é que quando se tem muitos dados fica um pouco lento.
Fica lento ?. Tentou utilizar TBROWSE de vetores ?. Quando você navega (de cima para baixo entre clientes) você precisa dar um enter para editar ou dar baixa nos registros de determinado cliente ?. Se for assim, aconselho mesmo exibir a quantidade necessária só para exibição em tela conforme cada cliente, assim não precisará trazer todos os registros de cada cliente. Somente após o enter para edição aí sim pega novamente todos os registros daquele cliente selecionado. Lembre que dá para usar TBROWSE direto do BD e de vetores ao mesmo tempo.