Outdated documentation

The latest documentation was moved to docs.qfield.org

Configuração do Formulário do Atributo

QField cria formulários semelhantes, mas não é igual ao QGIS.

Suprimir Formulário do Atributo

A configuração «suprimir formulário do atributo» é aplicada diretamente no formulário QField.

Widget de Campo

Os widgets de campo a partir do QGIS são suportados no melhor esforço básico.

Tipo de widget Suporte Notas
Editar Texto
  • HTML não é suportado
  • Os inputs numéricos é forçado baseando-se no seu tipo.
Caixa de Seleção  
Mapa de Valores  
Escondido  
Anexo Este campo é combinado com a integração da câmera. É também possível abrir outros ficheiros como pdf e doc (se o utilizador tiver o visualizador apropriado) Anexar (configurações da foto)
Data Tempo  
Referência de Relações  
Widget de Relação  
Relação de Valor  
Outros Financiamento

Widget de Relação

Para obter mais informações, consulte o capítulo de relações da documentação oficial QGIS.

../_images/relation_editor_widget_list.png

O widget de relação mostra todos os elementos fihos de referência numa lista. É possível adicionar, excluir e abri-las.

A identificação visual das entradas da lista é feita com uma «Exibir Expressão» na camada filha.

Manuseamento de chaves

Como as chaves primárias dos pais são usadas como chaves estrangeiras nos elementos filhos de referência, essas chaves primárias devem ser guardadas para uso mesmo após a sincronização com os dados originais. Portanto, recomendamos o uso de valores estáveis, como UUIDs, para chaves primárias.

É possível adicionar ligações filhas de uma referência pai que está prestes a ser adicionado. Essa possibilidade será bloqueada se não houver chave primária válida no pai ou as restrições forem violadas. Caso a adição do elemento pai seja cancelada depois de alguns elementos filhos já tiverem sido adicionados, os filhos também serão excluídos.

Relações muitos-para-muitos

Nas relações de muitos para muitos, de acordo com a configuração de cardinalidade nas Propriedades da camada vetorial QGIS, a adição, exclusão ou abertura de uma entrada na lista afeta diretamente a camada filho (na cardinalidade direta) ou a tabela de vinculação (em muitas para uma cardinalidade).

O segundo caso é geralmente usado quando há informações adicionais de relação (por exemplo, porcentagem) na tabela de vinculação.

../_images/relation_widget_cardinality.png

No caso da cardinalidade muitos-para-um nas relações muitos-para-muitos, a Expressão de exibição precisa ser definida na tabela de vinculação.

Anexar (configurações da foto)

O tipo de widget «Anexo» é usado com campos para armazenar o caminho dos ficheiros.

Pode ser usado para:

  • Mostrar e tirar fotos
  • mostrar ligações para ficheiros externos como pdfs ou documentos
Attachement field settings

O caminho deve ser definido como relativo. Significa que as imagens são armazenadas num subdiretório do projeto, para onde o link armazenado no campo de texto está a encaminhar.

No QField, a imagem é exibida. Ao clicar no símbolo da câmera, a câmera é iniciada para atualizar a imagem com uma nova foto.

Picture in QField

Na sincronização, o subdiretório com as imagens, pdf e documentos também deve ser copiado.

A opção «hiperligação» no widget de Anexo será desativada na funcionalidade da câmera e ativa na hiperligação para abrir o documento (pdf, doc, …).

hyperlink_option

Relação de Valor

O widget «Relação de Valor» oferece valores de uma tabela relacionada de uma lista de opções. Pode selecionar a camada, chave da coluna e valor da coluna. Várias opções estão disponíveis para mudar os comportamentos padrão: permitir valores nulos, ordernar por valor, permitir múltipla escolha. O widget irá exibir uma lista simples ou ums lista de múltipla seleção com os elementos referenciados.

value_relation_widget

Design de formulários arrastar e largar

Grupos e separadores a partir do designer de formulários Arrastar e Largar são suportados.

Visibilidade condicionada

Grupos podem ser ocultos com base numa expressão. Isso é útil quando determinados atributos são necessários apenas sob determinadas condições. Como por exemplo, o mapeamento de árvores. Algumas delas podem ter uma doença e tem uma lista de possíveis doenças. Para não desorganizar o formulário com muitos campos, crie um grupo e configure uma expressão de visibilidade para um grupo «doenças». Adicione um campo «doença» com uma caixa de selecção. Somente quando a caixa de selecção estiver marcada, a lista de doenças estará disponível para o utilizador.

Conditional visibility configuration

A configuração de uma caixa de grupo que será mostrada apenas se a caixa de selecção «measures_taken» estiver marcada.

Vamos ver o que temos no campo:

Restrições

Os campos dos atributos podem ter restrições anexadas. Restrições são expressões que precisam ser avaliadas para: code: Verdadeiro (ou: code:` 1`) para poder guardar o formulário. As restrições são configuradas numa pré-definição por campo e uma descrição pode ser adicionada e que será mostrada ao utilizador se uma restrição não for satisfeita.

Constraint configuration

Configuração de uma restrição dentro de um intervalo

Casos de uso comuns

Não pode introduzir um valor de elevação maior que a montanha mais alta deste país.

"elevation" < 5000

É necessário preenchê-lo com um identificador.

"identifier" IS NOT NULL

Valores pré-definidos

Os campos podem ter valores pré-definidos configurados. Os valores pré-definidos são inseridos no formulário do atributo quando se digitaliza um novo elemento. Eles são visíveis ao utilizador e podem ser modificados desde que o campo possa ser editado. Eles podem basear-se na geometria ou nas variáveis de expressão.

Default value configuration

Configuração de uma data formatada como valor pré-definido

Variáveis adicionais

Para obter mais informações sobre o armazenamento de informações relacionadas à sua posição nos atributos do objeto, consulte a Documentação GNSS.

Casos de uso comuns

Inserir informação de posicionamento como variável:

@position_horizontal_accuracy

Iserir a data e hora actual:

now()

Inserir o comprimento da linha digitalizada:

length($geometry)

Configurar as variáveis globais no dispositivo e inseri-las.

@operator_name

Se quer atribuir um código de região baseado na localização onde o novo elemento é inserido, pode-o fazer usando a expressão de agregação:

aggregate( layer:='regions', aggregate:='max', expression:="code", filter:=intersects( $geometry, geometry( @parent ) ) )

Para transformar as coordenadas recebidas da variável @position_coordinate para o sistema de coordenadas do seu projeto:

x(transform(@position_coordinate, 'EPSG:4326', @project_crs ))
y(transform(@position_coordinate, 'EPSG:4326', @project_crs ))

Se deseja usar os resultados de snapping após desenhar uma linha, pode usar a variável @snapping_results. O seguinte código extrai o valor do atributo ìd` de snapping coincidente com o primeiro ponto da linha.

with_variable(
  'first_snapped_point',
  array_first( @snapping_results ),
  attribute(
    get_feature_by_id(
      @first_snapped_point['layer'],
      @first_snapped_point['feature_id']
    ),
    'id'
  )

)

Editável

O parâmetro editável dos campos é respeitado.

Lembrar os últimos valores

QField oferece um controlo muito mais minucioso sobre os últimos valores usados e ignora a definição do QGIS.

Valor de auto-preenchimento

Para «Usar auto-preenchimento», a caixa de verificação tem de estar ativa para ser possível o auto-preenchimento na relação de valor.

../_images/autocomplet_form.png

Aqui está um vídeo demonstrando como funciona no QField Pesquisar na lista de valores.