Duvida Campo calculado em query dinâmica

Discussão em 'Progress 4GL' iniciado por Eilleen, Abril 9, 2015.

  1. Eilleen

    Eilleen Membro Ativo

    Pessoal,

    Alguém sabe como colocar um campo calculado em query dinâmica?
    Meu campo é inteiro, mas conforme o valor quero colocar a descrição do que ele significa, só que isso é numa query dinâmica pois conforme os filtros selecionados em tela a query muda..

    No display, em uma free-form o campo calculado ficaria:

    Código:
    IF Itens.TipoMed = "0" THEN "0 - similar" ELSE IF Itens.TipoMed = "1" THEN "1 - genérico" ELSE IF Itens.TipoMed = "2" THEN "2 - ético ou de marca" ELSE "" FORMAT "X(20)":U COLUMN-LABEL "Tipo Med."
    Mas se tento fazer isso ao adicionar colunas numa query dá um erro monstruoso... :(
  2. bootstrapmaster

    bootstrapmaster Moderator Moderador Equipe de Suporte

    nao é só mudar o label do campo ?
  3. rafael.andrade

    rafael.andrade Membro Master Moderador Equipe de Suporte

    Aqui onde trabalho fazemos o seguinte:

    1. O Browse freeform é configurado como se não fosse usar query dinâmica, ou seja:
    a) No evento OPEN-QUERY digita a query default
    b) define os campos no DISPLAY
    c) desabilita no browse o OPEN-QUERY para não executar a query ao iniciar

    2. Fazemos a query dinâmica e tudo funciona maravilindo!

    Abraço

    Rafael
  4. Eilleen

    Eilleen Membro Ativo

    Eu tentei pelo label, tentei adicionar o IF como campo, já fiz dessa forma que o Rafael falou mas ela só funciona ao abrir o programa, o problema é que conforme os filtros informados em tela a minha query muda inteira, tenho que romontar as colunas/campos...
  5. rafael.andrade

    rafael.andrade Membro Master Moderador Equipe de Suporte

    Mas essa tabela itens deixa de existir na query? que tal mostrar as mensagens de erro?
  6. Eilleen

    Eilleen Membro Ativo

    Não tenho mais os erros... desfiz tudo... rsrsrs... Estou tentando fazer de outra forma, qq novidade eu posto.

    A tabela itens nunca deixa de existir, mas existem outras tabelas que entram/saem da query, então a cada filtro preciso recriar a query...

    OBS: eu não estou usando DEFINE QUERY, estou usando CREATE QUERY, portanto não tenho uma cláusula "FIELDS". Basicamente adiciono as colunas da query com ADD-LIKE-COLUMN...

Compartilhe esta Página