TWBROWSE

Discussão sobre a biblioteca Fivewin - O Clipper para Windows.

Moderador: Moderadores

Zeca Roque
Usuário Nível 2
Usuário Nível 2
Mensagens: 59
Registrado em: 11 Jul 2006 15:40
Localização: SÃO PAULO-CAPITAL

TWBROWSE

Mensagem por Zeca Roque »

Boa tarde !!!

Estou iniciando no FIVEWIN e tentando mudar meu sistema que é em CLIPPER e estou tendo alguns problemas. por exemplo:

tenho uma rotina que formata retorna o numero do CEP formatado e gera um BROWSE com todos os clientes que tem este CEP.
faço da seguinte forma

DIGITO 02176040 (SOMENTE OS NUMEROS)
O SISTEMA ME RETORNA 02176-040(FORMATADO) E LOGO ABAIXO UM BROWSE
COM TODOS OS CLIENTES QUE TEM O CEP 02176-040.

A parte de retorno FORMATADO -> 02176040 -> 02176-040 consegui fazer o problema é retornar o BROWSE(no caso TWBROWSE) com todos os clientes com CEP 02176-040

Esclarecimentos: No meu sistema CNPJ/CIC, CEP e TELEFONE são formatados desta maneira para evitar que haja divergencias no arquivo e facilitar a consulta.

Gostaria de ter um retalho de PRG que me explicasse como fazer isto.


Grato
Saudacoes

José Carlos
Fw/Fwh - Clipper 52e - Blinker 7.0 - WS 4.50 - SIX - xHarbour110
Avatar do usuário
rochinha
Administrador
Administrador
Mensagens: 4664
Registrado em: 18 Ago 2003 20:43
Localização: São Paulo - Brasil
Contato:

Mensagem por rochinha »

Amiguinho

Fiquei muito tempo sem internet e confesso que passei batido em muita coisa, vc recebeu resposta sobre o solicitado?
OPS! LINK QUEBRADO? Veja ESTE TOPICO antes e caso não encontre ENVIE seu email com link do tópico para [url=mailto://fivolution@hotmail.com]fivolution@hotmail.com[/url]. Agradecido.

@braços : ? )

A justiça divina tarda mas não falha, enquanto que a justiça dos homens falha porque tarda.
Zeca Roque
Usuário Nível 2
Usuário Nível 2
Mensagens: 59
Registrado em: 11 Jul 2006 15:40
Localização: SÃO PAULO-CAPITAL

Mensagem por Zeca Roque »

rochinha escreveu:Amiguinho

Fiquei muito tempo sem internet e confesso que passei batido em muita coisa, vc recebeu resposta sobre o solicitado?
Bom dia ROCHINHA !!!

Até o presente momento não recebi nenhuma resposta. :(Neg
Saudacoes

José Carlos
Fw/Fwh - Clipper 52e - Blinker 7.0 - WS 4.50 - SIX - xHarbour110
Avatar do usuário
rochinha
Administrador
Administrador
Mensagens: 4664
Registrado em: 18 Ago 2003 20:43
Localização: São Paulo - Brasil
Contato:

Mensagem por rochinha »

Amiguinho

Em primeiro lugar faça o seguinte:

1 - Crie um indice pelo campo CEP pois voce passará a usa-lo.
2 - Pegue o CEP em um GET formatado com a picture 99999-999
3 - Filtre os dados usando o seguinte escopo:

M->CEP2 := IIF( EMPTY(M->CEP2), M->CEP1, M->CEP2 )
dbSelextArea( "CLIENTES" )
OrdSetFocus( 2 ) // Ordem pelo cep
OrdScope( 0, M->CEP1 ) // inicio do range
OrdScope( 1, M->CEP2 ) // final do range pode ser o mesmo cep ou outro
dbGoTop()

No browse mude a linha assim:

@ 0,0 LISTBOX oLbx FIELDS ..., FormataCEP( CLIENTES->CEP ), ... HEADERS ..., "CEP", ... OF ...

...
Function FormataCEP( cep )
return substr(str(cep,8),1,5)+"-"+substr(str(cep,8),6,3)

Se voce colocou a pesquisa dentro do browse acionada via menu de contexto coloque após o OrdScope( 1, M->CEP2 )

oLbx:Refresh()
oLbx:UpStable()

Se voce colocou um segundo GET para pegar o CEP2 a rotina irá filtrar do CEP1 até o CEP2.

O fato de voce usar indice pelo CEP torna mais rapida sua filtragem e pode permitir que voce coloque o CEP como uma critica para o endereco, ou seja, no momento que seu usuario cadastrar o cliente o mesmo precisará apenas do CEP e numero da residencia e voce fara uma rotina que verifique o cep em um cadastro de CEP( pode ser adquirido no Correio ) e traz o endereco completo.
OPS! LINK QUEBRADO? Veja ESTE TOPICO antes e caso não encontre ENVIE seu email com link do tópico para [url=mailto://fivolution@hotmail.com]fivolution@hotmail.com[/url]. Agradecido.

@braços : ? )

A justiça divina tarda mas não falha, enquanto que a justiça dos homens falha porque tarda.
Responder