Evaluate
Propósito
Avalia uma expressão como um cálculo.
Formato
Evaluate ( expressão {; [campo1 ; campo2 ;...]} )
Parâmetros
expressão - qualquer
expressão de texto ou
campo de texto.
campos - uma lista dos campos de que esta função depende. Quando esses campos forem modificados, o cálculo atualizará seu resultado.
Os parâmetros entre chaves { } são opcionais. Observe que a lista de campos opcionais fica entre colchetes [ ].
Tipo de dados retornado
texto, número, data, hora, carimbo de data/hora, container
Originado em
FileMaker Pro 7.0
Descrição
O parâmetro campos opcional é uma lista de campos de que esse cálculo depende. Se um campo necessário não estiver listado, a modificação desse campo não atualizará o resultado do cálculo.
Notas
•Se o script no lado do servidor tiver a função Evaluate (Avaliar), use os nomes de função em inglês no cálculo de Avaliar. Avaliar não reconhece os nomes de função localizados quando é avaliada em um script no lado do servidor. Consulte
Sobre a execução de scripts no FileMaker Server.
Exemplos
Evaluate ( CampodeTexto ) retorna 4 quando CampodeTexto contém 2 + 2.
Evaluate ( "campodetexto" ) retorna 2 + 2 quando campodetexto contém 2 + 2.
Evaluate ( GetField ( "campodetexto" ) ) retorna 4 quando campodetexto contém 2 + 2.
Evaluate ( CampodeTexto ; [Valor] ) retorna ,80 quando CampodeTexto contém ,08 * Valor, e o campo Valor contém 10,00.
Evaluate ( "Let ( Alíquota=,05 ; "& Cálculo de alíquota &" )" ) retorna ,50 quando o campo Cálculo de alíquota contém SubTotal * Alíquota, em que SubTotal é um campo numérico que contém 10,00.
O seguinte exemplo mostra como passar parâmetros nomeados usando as funções Evaluate, Let e Get ( ScriptParameter ), permitindo o acesso somente à variável "a" (o exemplo retorna 6):
ScriptParameter = "a = 5 ; b = 10"
Evaluate ( "Let ( [" & Get ( ScriptParameter ) & "] ; a + 1 )" )
O seguinte exemplo mostra como passar parâmetros nomeados, permitindo o acesso às variáveis "a" e "b". O primeiro parâmetro simplificado torna o segundo parâmetro mais complexo (o exemplo retorna 6, 12):
ScriptParameter = "a = 5 ; b = 10"
Evaluate ( "Let ( [" & Get ( ScriptParameter ) & "] ; a + 1 & \", \" & b + 2 )" )
O seguinte exemplo mostra como passar parâmetros nomeados, mantendo a capacidade de verificar a sintaxe do segundo parâmetro da função Let (o exemplo retorna 6, 12):
ScriptParameter = "a = 5 ; b = 10"
Let ( [a = Evaluate ( "Let ( [" & Get ( ScriptParameter ) & "] ; a )" ),
b = Evaluate ( "Let ( [" & Get ( ScriptParameter ) & "] ; b )" )] ; a + 1 & ", " & b + 2 )
Nota A função Evaluate avalia uma expressão, incluindo valores de campo a serem avaliados como uma fórmula de cálculo. Ela também permite especificar as dependências de campo de forma que um cálculo que use a função de avaliação possa ser acionado devido a mudanças em outros campos do mesmo registro. Essa função avalia as fórmulas definidas pelo usuário. Por exemplo, é possível criar uma fórmula no campo Total que calcule o imposto estadual:
Evaluate ( FórmulaImpostoEstadual ) + CustoEnvio
em que o campo FórmulaImpostoEstadual contém:
SubTotal * 1,0875
e o campo SubTotal contém o subtotal sem incluir o imposto e a taxa de envio.
A função Evaluate tem um segundo parâmetro opcional, que é um campo de que o cálculo depende. Quando o conteúdo do campo dependente muda, o FileMaker Pro reavalia o cálculo. No seguinte exemplo, o cálculo Total será reavaliado quando o SubTotal mudar:
Evaluate ( FórmulaImpostoEstadual ; SubTotal ) + CustoEnvio
O parâmetro dependente pode também ser útil em outros casos. Por exemplo,
Evaluate ( "Get ( CurrentTimeStamp )" ; [CampoB ; CampoC] )
armazenará um carimbo de data/hora no campo de cálculo sempre que FieldB ou FieldC mudar.
Tópicos relacionados