Modificadores de conjunto com expansões de sinal de dólar
Expansões de sinal de cifrão são construções calculadas antes que a expressão seja analisada e avaliada. O resultado é então injetado na expressão em vez de $(…). O cálculo da expressão é então feito usando o resultado da expansão de sinal de cifrão.
O editor de expressões mostra uma visualização da expansão de sinal de cifrão para que você possa verificar o que sua expansão de sinal de cifrão avalia.
Visualização de expansão de sinal de dólar no editor de expressões
![Clique para ver em tamanho grande Visualização de expansão de sinal de dólar no editor de expressões.](../../../Resources/Images/ui_gen_dollar_expansion_preview.png)
Use expansões de sinal de dólar quando quiser usar um cálculo dentro do seu conjunto de elementos.
Por exemplo, se quiser ver apenas o último ano possível, use a seguinte construção:
<Year = {$(=Max(Year))}>
Max(Year) é calculado primeiro, e o resultado é injetado na expressão em vez de $(…).
O resultado após a expansão do cifrão será uma expressão como a que se segue:
<Year = {2021}>
A expressão dentro da expansão de sinal de dólar é calculada com base na seleção atual. Isso significa que, se você tiver uma seleção em outro campo, o resultado da expressão será afetado.
Se quiser que o cálculo seja independente da seleção, use a análise de conjunto dentro da expansão de sinal de dólar. Por exemplo:
<Year = {$(=Max({1} Year))}>
Sequências de caracteres
Quando você deseja que a expansão de sinal de dólar resulte em uma cadeia de caracteres, as regras normais de aplicação de aspas são aplicáveis. Por exemplo:
<Country = {'$(=FirstSortedValue(Country,Date)'}>
O resultado após a expansão do cifrão será uma expressão como a que se segue:
<Country = {'New Zealand'}>
Você obterá um erro de sintaxe se não usar as aspas.
Números
Quando você deseja que a expansão de sinal de dólar resulte em um número, certifique-se de que ela tenha a mesma formatação que o campo. Isso significa que, às vezes, você precisa envolver a expressão em uma função de formatação.
Por exemplo:
<Amount = {$(=Num(Max(Amount), '###0.00'))}>
O resultado após a expansão do cifrão será uma expressão como a que se segue:
<Amount = {12362.00}>
Use um hash para forçar a expansão a sempre usar o ponto decimal e nenhum separador de milhar. Por exemplo:
<Amount = {$(#=Max(Amount))}>
Datas
Quando quiser que a expansão de sinal de dólar resulte em uma data, certifique-se de que ela tenha a formatação correta. Isso significa que, às vezes, você precisa envolver a expressão em uma função de formatação.
Por exemplo:
<Date = {'$(=Date(Max(Date)))'}>
O resultado após a expansão do cifrão será uma expressão como a que se segue:
<Date = {'12/31/2015'}>
Assim como com sequências de caracteres, você precisa usar as aspas corretas.
Um caso de uso comum é quando você deseja que seu cálculo seja limitado ao último mês (ou ano). Nesse caso, é possível usar uma pesquisa numérica em combinação com a função AddMonths().
Por exemplo:
<Date = {">=$(=AddMonths(Today(),-1))"}>
O resultado após a expansão do cifrão será uma expressão como a que se segue:
<Date = {">=9/31/2021"}>
Isso selecionará todos os eventos que ocorreram no mês passado.
Exemplo: expressões de gráfico para modificadores de conjunto com expansões de sinal de dólar
Exemplos | Resultados |
---|---|
sum( {$<Year = {$(#vLastYear)}>} Sales ) |
Retorna as vendas do ano anterior em relação à seleção atual. Aqui, uma variável vLastYear contendo o ano relevante é usada em uma expansão de sinal de dólar. |
sum( {$<Year = {$(#=Only(Year)-1)}>} Sales ) |
Retorna as vendas do ano anterior em relação à seleção atual. Aqui, uma expansão de sinal de dólar é usada para calcular o ano anterior. |