Automatização de tarefas com scripts
 

Automatização de tarefas com scripts

Scripts podem realizar tarefas simples, como definir a orientação de impressão, ou tarefas complexas, como preparar correspondência personalizada para cada cliente.

Por exemplo, você poderia definir um conjunto complexo de tarefas para criar um e-mail de agradecimento para os clientes no seu banco de dados Clientes que tivessem feito compras na semana anterior. O script compõe um e-mail adaptado para cada cliente. O script alterna para o Modo de visualização e pausa para que você veja como ficará a mensagem antes de enviá-la. A tarefa completa é iniciada clicando em um botão no layout Entrada de vendas.

Você cria scripts fazendo seleções de uma lista de comandos do FileMaker Pro Advanced, chamados etapas de script, especificando opções (se necessário) e organizando as etapas na ordem correta para realizar a tarefa.

Normalmente, scripts são executados no cliente, mas você pode executar alguns scripts no FileMaker Server ou no FileMaker Cloud para melhorar o desempenho ou para que sejam executados automaticamente em uma programação. Consulte Sobre a execução de scripts no FileMaker Server e no FileMaker Cloud.

Planejamento de scripts

Quanto mais tempo você dedicar ao planejamento do seu script, maior a chance de ele realizar o que você deseja. Durante o planejamento, faça estas perguntas:

É possível separar a tarefa em tarefas menores? Você pode definir subscripts para cada tarefa pequena e, em seguida, definir um script que realize os subscripts. É mais fácil criar e testar vários scripts pequenos do que um complexo. Você também pode reutilizar subscripts em outras áreas. (Use a Realizar script etapa de script para realizar um subscript dentro de outro script.)

Quais etapas de script devem ser executadas sob que condições? Cada etapa de script deve ser sempre executada? Algumas devem ser executadas uma quantidade de vezes até uma determinada condição ser atendida? O script deve chamar outros scripts e subscripts? Você pode controlar o andamento do script de diversas formas diferentes. Consulte Etapas de script de controle para obter mais informações sobre como criar scripts com etapas condicionais.

O script deve ser executado em um layout específico? Como os scripts são definidos no nível do arquivo e podem ser acionados a partir de qualquer layout, você deve certificar-se de que ele operará no(s) layout(s) esperado(s). Use a Ir para layout etapa de script para alterar layouts.

O script deve funcionar em todos os registros no banco de dados, no conjunto encontrado atual ou em um conjunto de registros? (Use as Etapas de script de conjuntos encontrados para incluir somente os registros com os quais você deseja trabalhar no conjunto encontrado.)

Todos os dados necessários estão em um arquivo de banco de dados ou o script irá operar em mais de um arquivo? Se estiver usando vários arquivos, quais arquivos o script deve abrir? Em quais arquivos o(s) script(s) deve(m) ser definido(s)? Na maioria dos casos, um script deve ser definido no mesmo arquivo do que os dados que ele está processando. As soluções de banco de dados com mais de um arquivo podem precisar de scripts separados em cada arquivo, dependendo da complexidade da tarefa que você está tentando realizar com o script.

Com qual registro o script deve iniciar? Por exemplo, ao usar a Loop etapa de script, você deve decidir se o loop iniciará no primeiro ou último registro, em um registro específico ou no registro atual no conjunto encontrado. (Use a Ir para registro/solicitação/página etapa de script, Ir para registro relacionado etapa de script ou Ir para linha de portal etapa de script para especificar um registro de início. Se você não incluir uma etapa de script de navegação para determinar o registro atual, o loop iniciará com o registro atual quando o script for realizado.)

Que janela você deseja usar? Um script é anexado inicialmente a uma janela específica, que pode estar em segundo plano. O script permanecerá nessa janela até uma ação de script alternar para outra janela. Por exemplo, use a Selecionar janela etapa de script para especificar uma janela diferente. Se você tiver especificado uma janela que não está disponível, o script alternará para a janela em primeiro plano do arquivo. Quando você pausa um script, a janela associada passa para o primeiro plano, caso esteja disponível. Consulte Etapas de script de janelas.

O script deve alternar entre modos? Um script pode ser executado nos modos de navegação, busca, layout ou visualização. Certifique-se de que o script esteja no modo apropriado antes de agir em algo. Por exemplo, use a Entrar em Modo de navegação etapa de script para modificar dados em campos e registros e use a Entrar em Modo de busca etapa de script para configurar ou realizar uma solicitação de busca.

Nota  Os scripts realizados no Modo de layout alternam automaticamente para o Modo de navegação antes de serem executados.

De quais campos e layouts o script precisará? Algumas etapas (como a Ir para campo etapa de script e a Inserir texto etapa de script) necessitam que um campo esteja no layout atual, enquanto outras (como a Definir campo etapa de script), não. Use a Ir para layout etapa de script para alternar para um layout que tenha os campos exigidos pelo seu script ou coloque os campos na área cinza à direita do layout a fim de tornar os campos disponíveis para as etapas de script, mas não para os usuários.

Os registros devem ser processados em uma determinada ordem ? Escolha entre a ordem de classificação atual, uma ordem de classificação especificada ou nenhuma classificação (a ordem na qual os registros foram criados). Use a Classificar registros etapa de script ou a Não classificar registros etapa de script antes de inserir um loop para ordenar os registros de forma apropriada antes de processá-los.

Como o script deve avançar pelos vários campos e registros? (Use a Ir para registro/solicitação/página etapa de script, a Loop etapa de script, a Exit Loop If etapa de script e a End Loop etapa de script para controlar o processamento de vários campos ou registros.)

Quando o script deve ser encerrado? Após todas as etapas de script terem sido executadas? Após uma condição especificada ser atendida? (Use a If etapa de script, a Else If etapa de script e a Else etapa de script para realizar uma tarefa como a Sair do script etapa de script quando o script atingir uma condição especificada.)

Os usuários devem poder parar o script durante sua execução? O script contém um processo que poderia resultar em dados incompletos ou incorretos, se o script for encerrado cedo demais? Use a Permitir anulação pelo usuário etapa de script para controlar se os usuários podem parar um script.

Como você testará o script? Use a Pausar/continuar script etapa de script para pausar em pontos predefinidos no script. Salve uma cópia do seu banco de dados e, em seguida, defina e teste o script nela para preservar os dados originais.

Nota  Você pode usar o Depurador de scripts para testar e solucionar problemas em seus scripts. Consulte Depuração de scripts.

Como você manipulará as condições de erro (como um conjunto encontrado vazio)? Você pode capturar a última condição de erro relatada pelo FileMaker Pro Advanced usando a Get ( LastError ) função. Use essa função e a If etapa de script, a Else If etapa de script e a Else etapa de script para criar scripts que reajam a erros do usuário ou resultados inesperados. Para ter um controle ainda maior, use a Definir captura de erro etapa de script para suprimir os alertas de erro normalmente exibidos nessas situações e os substitua pelos seus próprios alertas usando a Mostrar caixa de diálogo personalizada etapa de script.

Todos os usuários devem ter permissão para realizar todos os scripts? Use conjuntos de privilégios para controlar o acesso dos usuários aos scripts. Com o uso de conjuntos de privilégios, usuários podem ter permissão para executar ou modificar scripts individuais, nenhum scripts ou todos os scripts. Você também pode definir a permissão padrão para cada conjunto de privilégios para quaisquer scripts futuros que forem definidos no arquivo. A definição de um script para ser executado com privilégios de acesso total permite que o script realize ações em nome do usuário que possam não ser permitidas normalmente pelos seus privilégios atribuídos. Consulte Criação e edição de conjuntos de privilégios.

Como os usuários realizarão o script? Você deve criar um botão para realizar o script ou especificar que o script seja adicionado ao menu Script. Os scripts também podem ser executados a partir do Espaço de trabalho de script ou quando um gatilho de script for ativado. Por exemplo, você pode usar o AoAbrirPrimeiraJanela gatilho de script para executar um script quando o banco de dados for aberto.

Após responder a essas perguntas, você estará pronto para gerenciar scripts no seu banco de dados. Consulte Criação e edição de scripts.

Tópicos relacionados 

Referência de etapas de script (lista em ordem alfabética)

Referência de etapas de script (lista de categorias)