Trabalho com tabelas relacionadas > Utilização de dados relacionados em portais
 

Utilização de dados relacionados em portais

Quando você exibe dados relacionados em um portal, os valores de todos os registros relacionados são exibidos, estando sujeitos aos privilégios de acesso de um usuário. Por outro lado, quando um campo relacionado está fora de um portal, o valor somente do primeiro registro relacionado é exibido.

Classificar registros de portal

Para classificar registros relacionados em um portal, use a caixa de diálogo Editar relacionamento. Consulte Criação e alteração de relacionamentos. Quando a opção Classificar registros for selecionada e os dados em um campo relacionado em um portal forem alterados, os registros do portal serão classificados novamente sempre que os registros relacionados forem reavaliados. Por exemplo, os registros são classificados novamente quando você sai do registro e retorna a ele, ou quando você altera o valor no campo de correspondência. (Para controlar melhor quando a ordem de classificação é atualizada, use a Etapa de script Atualizar portal.)

A ordem de classificação especificada na caixa de diálogo Configurar portal tem precedência sobre a ordem de classificação especificada na caixa de diálogo Editar relacionamento. Se você não especificar uma ordem de classificação para o portal ou para o relacionamento, os registros relacionados são exibidos no portal na ordem em que foram criados. Consulte Criação de portais para exibir registros relacionados.

Filtro de registros nos portais

Você pode filtrar os registros para exibir diferentes conjuntos de registros relacionados em um portal.

1. No Modo de layout, clique duas vezes no portal.

2. Selecione Filtrar registros de portal.

3. Defina um cálculo cujo resultado de avaliação seja True para que os registros do portal sejam exibidos.

Por exemplo, se você estiver em um layout de Faturas, em um portal que mostra os registros de produtos de uma tabela de Itens de linha. Para exibir os produtos com quantidades maiores ou iguais a um, use a fórmula If (ItensdeLinha::Quantidade < 1; 0; 1).

Importante  Os resultados dos campos de resumo, dos cálculos e das solicitações de busca baseiam-se no conjunto total de registros relacionados, não apenas nos registros filtrados de um portal. Por exemplo, se um portal estiver exibindo um subconjunto filtrado de registros e houver um campo de resumo Total de fora do portal resumindo esses registros, o campo de resumo totalizará todos os registros relacionados, e não apenas os registros exibidos. Para usar os dados dos registros filtrados do portal para um campo de resumo, cálculo ou solicitação de busca, crie um novo relacionamento usando os mesmos critérios dos registros filtrados do portal, então use os campos relacionados desse relacionamento para o campo de resumo, cálculo ou solicitação de busca.

Resumo de dados nos portais

É possível resumir dados em um campo relacionado exibido em um portal. Por exemplo, você pode obter o total de todos os registros relacionados.

Para fazer isso, coloque um campo de resumo na tabela a partir da qual os registros relacionados são exibidos (a tabela exibida na caixa de diálogo Configurar portal). Depois, coloque o campo de resumo no layout que contém o portal.

Suponha que um layout use um portal para exibir todas as vendas por vendedor e você deseja incluir um campo de resumo que exibe a quantia de vendas total.

Para resumir os dados em um portal usando esse exemplo simples:

1. Crie duas tabelas com os seguintes campos:

 

Nome da tabela

Nome do campo

Tipo de campo

Comentário

Vendas

ID da transação

Texto

Chave primária

 

ID do vendedor

Texto

Chave externa

 

Quantia

Número

 

 

Total de vendas

Resumo

Calcula o total do campo Quantia; consulte Definição de campos de resumo

Vendedor

ID do vendedor

Texto

Chave primária

 

Nome

Texto

 

2. No gráfico de relacionamentos, crie um relacionamento entre os dois campos ID do vendedor.

3. No Modo de layout, adicione os quatro campos da tabela Vendas ao layout Vendas (se não tiverem sido adicionados automaticamente). Adicione os dois campos da tabela Vendedor ao layout Vendedor.

4. No layout Vendedor, crie um portal que mostre os registros relacionados da tabela Vendas. Inclua os campos relacionados a seguir da tabela Vendas no portal: ID da transação, Quantia, Total de vendas.

Você também pode posicionar o campo de resumo (Vendas::Total de vendas) em qualquer lugar do layout Vendedor. Consulte Inserção e remoção de campos em um layout.

5. Mude para o Modo de navegação, adicione os registros a seguir à tabela Vendas:

 

Número de registro

Campo

Dados

1

ID da transação

T1

 

ID do vendedor

S1

 

Quantia

246,00

2

ID da transação

T2

 

ID do vendedor

S2

 

Quantia

52,75

3

ID da transação

T3

 

ID do vendedor

S1

 

Quantia

10,50

4

ID da transação

T4

 

ID do vendedor

S2

 

Quantia

150,00

5

ID da transação

T5

 

ID do vendedor

S1

 

Quantia

17,80

O FileMaker Pro Advanced preenche o valor do campo Total de vendas.

6. Mude para o layout Vendedor e adicione os dados a seguir:

 

Número de registro

Campo

Dados

1

ID do vendedor

S1

 

Nome

Andre Common

2

ID do vendedor

S2

 

Nome

Sophie Tang

O FileMaker Pro Advanced insere os valores relacionados da tabela Vendas nas linhas do portal e calcula o total de todas as vendas desse vendedor no campo de resumo Total de vendas.

Notas 

As opções de classificação e filtragem de portal na caixa de diálogo Configuração de portal não estão disponíveis para portais que exibem registros da tabela atual. Consulte Criação de portais para layouts mestre de detalhes.

Você pode exibir dados de um único relacionamento em vários portais na mesma página e usar uma ordem de classificação diferente para cada portal.

A filtragem de registros é apenas para fins de exibição, e não para fins de segurança.

O resultado de um cálculo de filtro do portal seria igual ao resultado de um campo de cálculo na tabela relacionada.

Embora os campos dos registros de portais sejam atualizados à medida que os dados são alterados, um filtro do portal é avaliado somente quando o registro é carregado. Para atualizar a filtragem do portal depois que o registro é carregado, use a Etapa de script Atualizar portal.

Para obter um resumo mais complexo dos dados, use um campo de cálculo para definir uma fórmula. Consulte Definição de campos de cálculo.

Tópicos relacionados 

Criação de portais para exibir registros relacionados