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 denominadacount
, que faz referência à coluna na sua tabela. Por predefinição, o Looker também cria uma medida denominadacount
(que é a única medida predefinida que o Looker cria). Uma vez que os dois campos têm o nomecount
, 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
.