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.
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 Atualizar portal etapa de script.)
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.
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 localização baseiam-se no conjunto completo de registros relacionados, e 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.
É 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 | |
| ID do vendedor | Texto | |
| 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.
•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 Atualizar portal etapa de script.
•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.