1. This site uses cookies. By continuing to use this site, you are agreeing to our use of cookies. Learn More.

  2. Anuncie Aqui ! Entre em contato fdantas@4each.com.br

Duvida Tabela sem relacionamento em SmartBrowser

Discussão em 'Progress 4GL' iniciado por brunoowr, Junho 29, 2018.

  1. brunoowr

    brunoowr Membro Participativo

    Tenho um SmartBrowser de ordens de produção e preciso exibir um campo da tabela carac-tecn.
    Porém a tabela carac-tecn não possui relacionamento com nenhuma tabela que já esta no Browser, e há situações em que não ira existir relacionamento nenhum mesmo, nesses casos eu deixaria o campo em branco.

    na tela abaixo estou com dificuldades para incluir a carac-tecn, visto que não existe esse relacionamento.
    upload_2018-6-29_14-17-54.png
  2. bootstrapmaster

    bootstrapmaster Moderator Moderador Equipe de Suporte

    tem 2 caminhos, ou vc usa a opção where e monta na mão, ou usa a opção JOIN, apontando os campos que se relacionam
  3. brunoowr

    brunoowr Membro Participativo

    @bootstrapmaster fiz das duas formas, porém ao passar de um registro para outro lá da grup-maquina, quando o browse é carregado, demora muito. Alguma sugestão?
  4. bootstrapmaster

    bootstrapmaster Moderator Moderador Equipe de Suporte

    ai é questão de chave, indice, tem que achar um indice, como em um browser desse tipo, vc não consegue usar a clausula use-index, vc tem que no join ou no where preencher todos os campos que compoe um indice que vc conclui que seja o melhor, deixa eu tentar explicar melhor:
    vamos supor que eu queira ler todas as notas de um estabelecimento, sabendo que existem varios indices na tabela que usam o campo cod-estabel, mas tem um deles que é o ideal pra mim, cod-estabel, serie, nr-nota-fis, como forçar o progress a usar esse indice ? sendo que eu não tenho as informações pra preencher serie e nr-nota-fis, um for each pra isso seria:
    Código:
    for each nota-fiscal no-lock
        where nota-fiscal.cod-estabel = '101'
          and nota-fiscal.serie       = nota-fiscal.serie
          and nota-fiscal.nr-nota-fis = nota-fiscal.nr-nota-fis:
    
    end.
    
    isso é uma forma de forçar o progress a usar um indice sem declarar com a clausula use-index.

    Se vc não conseguir se achar no wizard do browser, vc pode clicar naquele botão ali Freeform Query, que dai vc pode acessar via appbuilder, os metodos do browser e dai vc faz do jeito que vc quiser, usando clausulas use-index e tudo mais.
  5. brunoowr

    brunoowr Membro Participativo

    Exatamente isso que eu desconfiava porém eu não conhecia essa forma de forçar o progress a utilizar tal índice. Muito obrigado.

Compartilhe esta Página