+5 votos
48 visitas

No cenário abaixo, precisamos criar um campo traduzido que retorne o perfil do cliente.

Este campo deve estar na tabela GLFT_FATURAS e deve resultar o campo PERFIL da tabela GLGL_PESSOACONFIGURACOES.

A tabela GLGL_PESSSOACONFIGURACOES possui uma relação 1 x 1 (Registro Único) com a tabela GLGL_PESSOAS.

A tabela GLFT_FATURAS também possuí relação com GLGL_PESSOAS pelo campo CLIENTE, porém não tem um relacionamento direto com GLGL_PESSOACONFIGURACOES.

Estamos procurando uma solução com uso de campo traduzido para exibição em carga do Runner. 

 

por (107 pontos)
editado por | 48 visitas

2 Respostas

+2 votos
Melhor resposta

Encontramos uma forma alternativa de criar tal campo sem uso de Campo Traduzido.

Utilizamos o campo Expressao (Expr) do Builder acrescentando o SQL abaixo e funcionou corretamente. 

SIT^SELECT GLCM_PERFILSITCLIENTE.NOME SIT
  FROM GLFT_FATURAS
       INNER JOIN GLGL_PESSOACONFIGURACOES ON GLGL_PESSOACONFIGURACOES.PESSOALOGISTICA = GLFT_FATURAS.CLIENTEPAGADOR
       INNER JOIN GLCM_PERFILSITCLIENTE ON GLCM_PERFILSITCLIENTE.HANDLE = GLGL_PESSOACONFIGURACOES.PERFILSITUACAOCLIENTE
 WHERE GLFT_FATURAS.HANDLE = :HANDLE 

Assim evitamos que a informação fique redundante e possivelmente incorreta devido a mudança no perfil em GLGL_PESSOASCONFIGURACOES e não seja aplicado na GLFT_FATURAS.

por (107 pontos)
selecionada por
Campo expressão não pode ser exibido na árvore do Runner, apenas no formulário.
+1 voto
Por campo traduzido não é possível resolver esta situação. O campo traduzido permite mostrar um outro campo de resultado a partir de um campo de relacionamento. Tem que haver um caminho onde eu só vou encontrar um registro.

Para mostrar o Perfil na árvore da tabela GLFT_FATURAS, ou você replica o perfil em GLGL_PESSOAS, ou cria um lookup em GLGL_PESSOAS para GLGL_PESSOACONFIGURACOES. Não escapa de fazer alguma redundância.
por (148 pontos)
Redundância era justamente a situação que queríamos evitar. Mas já suspeitávamos que não seria possível. Um pouco é culpa do relacionamento de tabela que criamos. Valeu.

Perguntas relacionadas

Melhores Jan 2020
  1. diuari.molinari

    38 Pontos

  2. juliano.pezzini

    36 Pontos

  3. Gregory

    15 Pontos

  4. leandro.piscke

    15 Pontos

  5. willian.metalsystem

    12 Pontos

  6. alan.jantz

    12 Pontos

  7. regina.silva

    9 Pontos

  8. Cesar.Albuquerque

    8 Pontos

  9. wilson.junior

    8 Pontos

  10. maicon.pereira

    6 Pontos

200 pontos
Melhores 2020 Jan 13 - 19
  1. Cesar.Albuquerque

    8 Pontos

  2. diuari.molinari

    7 Pontos

  3. metalsystem.gustavo

    4 Pontos

  4. willian.metalsystem

    4 Pontos

  5. leandro.piscke

    4 Pontos

  6. bruno.reis

    2 Pontos

  7. charles.sima

    2 Pontos

395 perguntas
447 respostas
329 comentários
491 usuários