Uso da sintaxe correta ao publicar macros do Access em bancos de dados da Web
Artigo original publicado na segunda-feira, dia 25 de abril de 2011
As macros têm uma função muito maior no Access 2010 do que em versões anteriores. Na verdade, o uso de uma macro é a única maneira de automatizar tarefas em objetos da Web e em aplicativos publicados nos Serviços do Access.
Uma área que causou confusão envolve o uso da sintaxe correta em uma macro.
Primeiro, existem duas classes de argumentos de macro, e cada uma requer uma sintaxe muito diferente.
A primeira classe de argumento de macro é uma cadeia de caracteres. Um exemplo é o argumento Mensagem (Message) da ação de macro MessageBox. Para especificar uma mensagem, digite uma cadeia de caracteres no argumento, sem aspas:
Entretanto, você também pode digitar uma expressão nesse argumento ao inserir um sinal de igual e depois inserir uma expressão. Assim como todas as expressões, as cadeias de caracteres precisam estar entre aspas:
A outra classe de argumento é declarada na forma de uma expressão. Um exemplo desse tipo é o argumento WhereCondition da ação de macroSetFilter. No Designer de Macros, esses argumentos exibem um sinal de mais antes e fora da caixa de texto do argumento para realçar para o usuário que o argumento deve ser expresso no formato de uma expressão.
Considerações importantes ao usar argumentos de expressão
O que é "expressão dupla" e por que devo me preocupar com ela?
A "expressão dupla", ou "avaliação dupla", ocorre sempre que uma expressão é aninhada em outra. Em um argumento de expressão, se você digitar um sinal de igual (+) na caixa de texto, a expressão será avaliada duas vezes -- uma para o seu sinal de igual e outra para o sinal de igual que aparece antes e fora da caixa de texto do argumento.
Por que você deve se preocupar? Como você está usando um argumento de expressão em uma macro de banco de dados da Web, a sintaxe deve estar correta ou você obterá um erro em tempo real sempre que a macro for executada. A expressão dupla não tem suporte em aplicativos dos Serviços do Access. Se você tiver um argumento de macro que resulte em uma expressão dupla, ocorrerá um erro em tempo de execução sempre que a macro for executada.
Resultado: se você estiver usando um argumento de expressão em uma macro de banco de dados da Web, não digite um sinal de mais no início da expressão.
Em geral...
Se você estiver usando um argumento de expressão em uma macro de banco de dados de cliente, não digite um sinal de mais no início da expressão, a menos que tenha uma necessidade específica para isso. Observação: A avaliação dupla resulta em uma ligeira queda de desempenho sempre que a macro é executada.
Independentemente do tipo de banco de dados, todas as cadeias de caracteres em argumentos de expressão devem ser escritas entre aspas.
Esta é uma postagem de blog traduzida. Encontre o artigo original em Using the right syntax when publishing Access macros to Web databases