Saltar navegação

S04 - SEARCH ALL

Conceitos

A instrução SEARCH também é utilizada para pesquisas binárias em toda a tabela indexada.

Formato 2 - pesquisa binária

SEARCH ALL nome-da-variável-1

AT END declaração-imperativa-1

WHEN expressão-condicional declaração-imperativa-2.


Considerações

Na pesquisa binária a tabela deve ser definida com a cláusula ASCENDING ou DESCENDING KEY, que definirá os campos que serão usados na pesquisa.

A clausula WHEN deverá testar necessariamente os campos definidos na cláusula ASCENDING ou DESCENDING KEY da tabela.

A opção ALL da sintaxe do SEARCH é a opção que indica pesquisa binária.

O comando SEARCH não tem a opção VARYING.

Todas as ocorrências da tabela serão tratadas até que a expressão condicional seja satisfeita.

Por exemplo, na tabela;

01 VENDAS-MES OCCURS 12 TIMES INDEXED BY IND-VENDAS ASCENDING KEY MES-VENDA.
    03 MES-VENDA PIC 99.
    03 VALOR-VENDA PIC 9(6)V99.

 

a instrução SEARCH no Formato 2 será;

SEARCH ALL VENDAS-MES

    AT END DISPLAY “MES NAO LOCALIZADO”

    WHEN MES-VENDA (IND-VENDAS) = MES-PESQUISADO

    MOVE VALOR-VENDA (IND-VENDAS) TO ......

Licença: licença proprietária