Erro: redefinição do campo

Quando trabalha num ficheiro LookML, pode encontrar um erro no formato Redefinition of field 'view_name.field_name' depois de validar o código com o validador de conteúdo.

O erro é apresentado em Erros do LookML no Painel de estado do projeto após a execução do validador do LookML.

Esta página ajuda a compreender o significado do erro, as causas comuns e como o resolver.

Causas comuns do erro: redefinição do campo

O erro Redefinition of field 'view_name.field_name' significa que o Looker identificou dois campos com exatamente a mesma combinação de nomes de vistas e campos.

Existem várias causas comuns para o erro:

  • Atribuiu acidentalmente o mesmo nome a dois campos na mesma visualização. Pode ser:
    • Duas dimensões com o mesmo nome
    • Duas medidas com o mesmo nome
    • Uma dimensão e uma medida com o mesmo nome
  • Copiar e colar um campo numa vista e esquecer-se de alterar o nome.
  • Associou uma vista à funcionalidade Explorar pela segunda vez, mas esqueceu-se de dar um nome diferente à associação.
  • Usou o gerador de LookML para criar o seu projeto de LookML e criou campos duplicados.

    Por exemplo, usa o gerador do LookML e a sua tabela de dados tem uma coluna denominada count. Neste caso, o Looker cria uma dimensão denominada count, que faz referência à coluna na sua tabela. Por predefinição, o Looker também cria uma medida denominada count (que é a única medida predefinida que o Looker cria). Uma vez que os dois campos têm o nome count, ocorre o erro.

A secção seguinte desta página ajuda a identificar a vista no seu projeto LookML que é a origem do erro.

Encontrar a vista mencionada no erro

Tenha em atenção que o nome da vista mencionado no erro será o nome da vista tal como está definido no parâmetro explore onde a vista está unida.

No caso típico, o nome da vista é fácil de compreender. Por exemplo, pode ter a seguinte junção:

join: address
foreign_key: order.billing_id

Neste exemplo, o nome da visualização de propriedade mencionado no erro é address, conforme especificado no parâmetro join.

Encontrar a vista de origem quando o nome de uma vista tem um alias numa junção

Se estiver a usar um alias para alterar a forma como o nome de uma vista é apresentado numa junção, o nome do alias é mencionado na mensagem de erro. Por exemplo, suponhamos que tem uma junção através do parâmetro from. O parâmetro from permite atribuir à junção um nome diferente do da visualização subjacente, o que é útil quando quer juntar a mesma visualização uma segunda vez.

join: billing_address
from: address
foreign_key: order.billing_id

Neste exemplo, o nome da vista mencionado no erro do ficheiro de vista do LookML é billing_address e não address.