Automatização de tarefas com scripts > Exemplos de script
 
Exemplos de script
Você pode usar os exemplos de script fornecidos na Ajuda como ponto de partida para os seus próprios scripts. Vários scripts estão incluídos também nas Soluções iniciais do FileMaker Pro.
Para visualizar um script no FileMaker Pro:
1. Escolha o menu Scripts > Espaço de trabalho de script. Ou escolha o menu Arquivo > Gerenciar > Scripts.
2. No painel de scripts, clique duas vezes em cada script que você deseja visualizar.
O script é aberto em uma nova guia no painel de edição de scripts.
Exemplos da estrutura If
As etapas de script If, Else If, Else e End If definem uma estrutura que controla se as etapas de script são realizadas ou não. Esse controle depende do resultado de uma condição testável ou de um cálculo booleano.
Quando o resultado do cálculo for qualquer número exceto zero, a condição é avaliada como True (verdadeiro) e as etapas de script subsequentes são realizadas.
Quando o resultado do cálculo for zero, em branco ou um conteúdo que não seja resolvido em um número, a condição é avaliada como False (falso) e as etapas de script subsequentes não são realizadas.
As etapas Else If fornecem testes booleanos adicionais. As etapas Else fornecem etapas alternativas para serem realizadas se todas as condições forem avaliadas como False.
Exemplo 1
Realiza uma busca. Se nenhum registro for encontrado, exibirá uma caixa de diálogo personalizada. Se nenhum registro for encontrado, classificará o conjunto encontrado.
Realizar busca [Restaurar]
If [Get ( FoundCount ) = 0]
Mostrar caixa de diálogo personalizada ["Buscar registros"; "Nenhum registro foi encontrado."]
Else
Classificar registros [Restaurar; Com diálogo: Desativado]
End If
Exemplo 2
Realiza uma busca. Se nenhum registro for encontrado, exibirá uma caixa de diálogo personalizada. Se um registro for encontrado, irá para o layout Detalhes da fatura. Se mais de um registro for encontrado, irá para o layout Faturas.
Realizar busca [Restaurar]
If [Get (FoundCount) = 0]
Mostrar caixa de diálogo personalizada ["Buscar registros"; "Nenhum registro foi encontrado."]
Else If [Get (FoundCount) = 1]
Ir para layout ["Detalhes da fatura"]
Else
Ir para layout ["Faturas"]
End If
Exemplos da estrutura Loop
As etapas de script Loop, Exit Loop If e End Loop definem uma estrutura que permite que etapas de script sejam repetidas. As etapas de script entre um Loop e um End Loop são executadas continuamente, até que uma condição Exit Loop If ou uma condição Sair depois do último for atingida para uma etapa Ir para registro/solicitação/página ou Ir para portal.
Use a etapa de script Exit Loop If para especificar um cálculo para ser avaliado. Quando o resultado do cálculo não for zero, será avaliado como True (verdadeiro) e o loop será encerrado. Quando o resultado do cálculo for zero, será avaliado como False (falso) e o loop continuará.
Exemplo 1
Copia o conteúdo de Clientes::Telefone comercial para Cliente::Dia contato em todos os registros.
Ir para registro/solicitação/página [Primeiro]
Loop
Definir campo [Clientes::Dia contato; Clientes::Telefone comercial]
Ir para registro/solicitação/página [Próximo; Sair depois do último: Ativado]
End Loop
Exemplo 2
Faz loop através de registros para exportar arquivos que estão nos campos de container. Sairá do loop se um registro tiver um campo Container vazio.
Definir variável [$PATH; Valor: Get ( DocumentsPath ) & Produtos::Container]
Ir para registro/solicitação/página [Primeiro]
Loop
Exit Loop If [IsEmpty ( Produtos::Container )]
Exportar conteúdo do campo [Produtos::Container; "$PATH"]
Ir para registro/solicitação/página [Próximo; Sair depois do último: Ativado]
End Loop
Exemplos de script de inicialização
Um script de inicialização pode personalizar a exibição de um banco de dados do usuário ou realizar outras ações quando um banco de dados for aberto. Os scripts de inicialização são executados pelo AoAbrirPrimeiraJanela gatilho de script. Para obter informações sobre como configurar um script de inicialização, consulte Configuração das opções de arquivo.
Exemplo 1
Vai para o layout Administração se a conta estiver atribuída ao conjunto de privilégios de Acesso total. Caso contrário, vai para o layout Entrada de dados.
If [Get ( AccountPrivilegeSetName ) = "[Acesso total]"]
Ir para layout ["Administração"]
Else
Ir para layout ["Entrada de dados"]
End If
Exemplo 2
Verifica qual versão do FileMaker Pro ou do FileMaker Go abriu o banco de dados e vai para o layout Clientes apropriado.
If [Get ( Device ) = 3]
Ir para layout ["iPad clientes"]
Else If [Get ( Device ) = 4]
Ir para layout ["iPhone clientes"]
Else
Ir para layout ["Clientes"]
End If
Exemplos de Realizar script e parâmetro de script
Realizar script executa um script que está definido no arquivo atual ou em outro arquivo do FileMaker Pro.
Parâmetros de script opcionais podem passar texto para um script. Por exemplo, você pode usar um parâmetro de script para armazenar o número do registro ativo quando um script é iniciado, facilitando o retorno a esse registro ao final do script. Ou você pode chamar o mesmo script a partir de diferentes botões no mesmo layout e facilmente determinar qual botão chamou o script usando um parâmetro de script diferente para cada botão.
Quando você especifica um parâmetro, pode acessá-lo dentro de um script ou passá-lo para outros scripts usando a Get ( ScriptParameter ) função.
Parâmetros complexos, como uma lista de nomes ou outros valores, também podem ser usados. Os parâmetros complexos que forem separados por retornos de carro podem ser analisados usando a LeftValues função, MiddleValues função e RightValues função. Essa funções retornam os valores inicial, do meio e final das listas separadas por retornos de carro. Os parâmetros complexos separados por outros caracteres podem ser analisados como texto usando funções como a Left função, Middle função e Right função.
Exemplo 1
Executa o script "Imprimir relatório de fatura" sem nenhum parâmetro.
Ir para layout ["Relatório de fatura"]
Realizar script ["Imprimir relatório de fatura"]
Exemplo 2
Usa um campo, Nome do cliente, como o parâmetro. Faturas do cliente atual são retornadas em uma nova janela com o layout Relatório da fatura.
Script principal: faturas do cliente atual
Buscar registros correspondentes [Substituir; Faturas::ID do cliente]
#Chama o subscript "Exibir faturas do cliente" definido abaixo
Realizar script ["Exibir faturas do cliente"; Parâmetro: Faturas::Nome do cliente]
Subscript: exibir faturas do cliente
Nova janela [Nome: "Cliente: " & Get ( ScriptParameter ); Estilo: Documento]
Ir para layout ["Relatório de fatura"]
Classificar registros [Restaurar; Com diálogo: Desativado]
Notas
Um parâmetro de script existe somente pela duração do script. Os parâmetros de script são redefinidos sempre que um script é realizado. Se desejar que um parâmetro de script persista enquanto um arquivo estiver aberto, você pode usar uma variável global como o parâmetro de script.
Um parâmetro de script existe somente dentro do script pai, a menos que seja explicitamente passado para outro script usando a função Get (ParâmetroScript).
Um parâmetro de script pode ser usado (mas não modificado) dentro de um script e pode ser passado para subscripts usando a função Get (ParâmetroScript) como o parâmetro para o subscript. Você também pode especificar parâmetros diferentes sempre que um subscript for acionado usando Realizar script. Alterar os parâmetros passados para um subscript não modifica o valor dos parâmetros retornados de Get (ScriptParameter) no script pai.