[RESOLVIDO] Too Many Indexes

Discussão em 'EMS , HCM e Totvs 11' iniciado por kikofr, Outubro 25, 2010.

Status do Tópico:
Não esta aberto para novas mensagens.
  1. MFerreira

    MFerreira Membro Participativo

    Bom Dia Christiano!

    Tudo beleza?

    Um outro caso que pode ocasionar este erro é a questão de chamar várias vezes o mesmo programa (e isso tem relação com o no-undo) sem este programa estar persistente.

    Veja um exemplo:
    prog-a.p:
    for each <tabela>:
    run prog-b.p
    end.


    prog-b.p
    define temp-table tt-teste
    field c-teste as char.


    Neste caso acima, pode ocorrer o erro de too many-index em algum momento.
    Tente substituir o código acima, chamando o prog-b de forma persistente, desta forma, chamando apenas uma única vez.
    Neste caso abaixo, deve-se adequar também o prog-b.

    Ex:
    run prog-b.p persistent set h-prog.
    for each <tabela>:
    run pi-principal in h-prog.
    end.



    OBS: Em muitos casos do EMS pode ocorrer o seguinte: Você chama o prog-b (EMS) e dentro deste há chamada de outros programas persistentes sem a eliminação do handle dentro deste. É necessário eliminar os handles no prog-b.

    Espero ter ajudado.
  2. SAC

    SAC Membro Participativo

    A área seis do progress tem um "limite", algumas coisas podem ser feitas para que isso seja evitado. Exemplo: Não ter tabelas criadas nesta área (distribuir suas tabelas na área 7 em diante, separando índices de dados), diminuir o escopo de transação do programa para levar menos "lixo" para lá, usar a cláusula fields nos acessos a tabelas, diminuir quantidade de registros em temp-tables e até a quantidade de temp-tables (peguei certa vez um programa de MRP com 35 temp-tables). E ainda para ajudar algumas coisas não "nos pertencem" que são BOs e/ou API´s que não limpam os handles. O fato é que tem centenas de programas mal escritos, e ao "crescer" das bases de dados vão aparecendo coisas como estas, lentidão, etc...
Status do Tópico:
Não esta aberto para novas mensagens.

Compartilhe esta Página