Clipper On Line • Ver Tópico - Pesquisa com looop em array

Pesquisa com looop em array

Projeto MiniGui - Biblioteca visual para Harbour/xHarbour

Moderador: Moderadores

 

Pesquisa com looop em array

Mensagempor gilsonpaulo » 14 Mar 2014 20:15

Boa noite a todos, tenho uma simples duvida com relação a pesquisa em array. Verificar se um código existe, se não existir, uso ele.

Com dbf faço assim:
        bus := 0
        DO WHILE .T.
                bus++
                SELECT CLI
                GO TOP
                SEEK STRZERO(bus,4,0)
                IF .NOT. FOUND()
                        EXIT
                ENDIF
        ENDDO


Mas preciso fazer isto em array

Desde ja agradeço a compreensão e ajuda de todos.
gilsonpaulo
Usuário Nível 3

Usuário Nível 3
 
Mensagens: 135
Data de registro: 02 Fev 2008 10:30
Cidade/Estado: Quatro Barras
Curtiu: 0 vez
Mens.Curtidas: 0 vez

Pesquisa com looop em array

Mensagempor asimoes » 15 Mar 2014 11:52

Acho que é isso.

aCli:={}
FOR I:=1 TO 10
    AADD(aCli,StrZero(i,4,0)
NEXT

bus := 0
 
DO WHILE .T.
    bus++
    IF ASCAN(aCli,STRZERO(bus,4,0)) = 0
       EXIT
    ENDIF
ENDDO       
►Harbour 3.x | Minigui xx-x | HwGui◄
Pense nas possibilidades abstraia as dificuldades.
Não corrigir nossas falhas é o mesmo que cometer novos erros.
A imaginação é mais importante que o conhecimento. (Albert Einstein)
Avatar de usuário

asimoes
Colaborador

Colaborador
 
Mensagens: 4919
Data de registro: 26 Abr 2007 16:48
Cidade/Estado: RIO DE JANEIRO-RJ
Curtiu: 341 vezes
Mens.Curtidas: 258 vezes

Pesquisa com looop em array

Mensagempor fladimir » 15 Mar 2014 14:55

Poderia ser feito talvez com AEVAL tb ou não?
Sun Tzu há mais de três mil anos cita nas epígrafes de seu livro “A Arte da Guerra“:

“Concentre-se nos pontos fortes, reconheça as fraquezas, agarre as oportunidades e proteja-se contra as ameaças”.
“Se não é vantajoso, nunca envie suas tropas; se não lhe rende ganhos, nunca utilize seus homens; se não é uma situação perigosa, nunca lute uma batalha precipitada”
.


Até 2017    Desktop Console [ Legado ] Harbour | MinGW | DBF | CDX | FastReport | MySQL


Novos Projetos:

   Desktop Visual           Windev Desktop
   Celular Android/iOS   Windev Mobile
   WEB                            Windev Web


Sejamos gratos a Deus.
Avatar de usuário

fladimir
Colaborador

Colaborador
 
Mensagens: 2434
Data de registro: 15 Nov 2006 19:21
Curtiu: 28 vezes
Mens.Curtidas: 157 vezes

Pesquisa com looop em array

Mensagempor asimoes » 15 Mar 2014 20:30

Com AEval dá pra fazer assim:

 
  lAchou:=.F.
  cNumero:=StrZero(10,4,0)
 
  AEval(aCli, {|| lAchou:=IF(ASCAN(aCli,cNumero)=0,.F.,.T.)})

►Harbour 3.x | Minigui xx-x | HwGui◄
Pense nas possibilidades abstraia as dificuldades.
Não corrigir nossas falhas é o mesmo que cometer novos erros.
A imaginação é mais importante que o conhecimento. (Albert Einstein)
Avatar de usuário

asimoes
Colaborador

Colaborador
 
Mensagens: 4919
Data de registro: 26 Abr 2007 16:48
Cidade/Estado: RIO DE JANEIRO-RJ
Curtiu: 341 vezes
Mens.Curtidas: 258 vezes

Pesquisa com looop em array

Mensagempor asimoes » 16 Mar 2014 09:36

Pode fazer também desta forma.

nBus:=1
DO WHILE ASCAN(aCli,STRZERO(nBus,4,0)) # 0
   nBus++
ENDDO
►Harbour 3.x | Minigui xx-x | HwGui◄
Pense nas possibilidades abstraia as dificuldades.
Não corrigir nossas falhas é o mesmo que cometer novos erros.
A imaginação é mais importante que o conhecimento. (Albert Einstein)
Avatar de usuário

asimoes
Colaborador

Colaborador
 
Mensagens: 4919
Data de registro: 26 Abr 2007 16:48
Cidade/Estado: RIO DE JANEIRO-RJ
Curtiu: 341 vezes
Mens.Curtidas: 258 vezes

Pesquisa com looop em array

Mensagempor gilsonpaulo » 17 Mar 2014 19:31

Vou testar aqui, e já posto o resultado.

Obrigado pela ajuda.
gilsonpaulo
Usuário Nível 3

Usuário Nível 3
 
Mensagens: 135
Data de registro: 02 Fev 2008 10:30
Cidade/Estado: Quatro Barras
Curtiu: 0 vez
Mens.Curtidas: 0 vez




Retornar para MiniGui

Quem está online

Usuários vendo este fórum: Google [Bot] e 3 visitantes


Ola Amigo, espero que meu site e forum tem lhe beneficiado, com exemplos e dicas de programacao.
Entao divulgue o link da Doacao abaixo para seus amigos e redes sociais ou faça uma doacao para o site forum...
MUITO OBRIGADO PELA SUA DOACAO!
Faça uma doação para o forum
cron
v
Olá visitante, seja bem-vindo ao Fórum Clipper On Line!
Efetue o seu login ou faça o seu Registro