Critérios de parâmetro de texto
Quando uma consulta depende de muitos parâmetros, a consulta será paralisada até que cada um de seus parâmetros tenha sido resolvido. Às vezes, um parâmetro pode ter uma consulta simples que concatena uma cadeia de caracteres ou executa uma avaliação condicional. Essas consultas ainda fazem chamadas de rede para serviços que executam essas operações básicas e isso aumenta o tempo necessário para um parâmetro resolver um valor. O resultado é tempos de carga longos para pastas de trabalho complexas.
Quando você usa parâmetros de critérios, pode definir um conjunto de critérios com base em parâmetros especificados anteriormente, que serão avaliados para fornecer um valor dinâmico. O principal benefício de usar parâmetros de critério é que eles podem resolver valores de parâmetros especificados anteriormente e executar operações condicionais simples sem fazer chamadas de rede. O exemplo a seguir é um caso de uso de parâmetros de critérios.
Exemplo
Considere a seguinte consulta condicional:
let metric = dynamic({Counter});
print tostring((metric.object == 'Network Adapter' and (metric.counter == 'Bytes Received/sec' or metric.counter == 'Bytes Sent/sec')) or (metric.object == 'Network' and (metric.counter == 'Total Bytes Received' or metric.counter == 'Total Bytes Transmitted')))
Se você estiver focado no objeto metric.counter
, essencialmente o valor do parâmetro isNetworkCounter
deverá ser verdadeiro, se o parâmetro Counter
tiver Bytes Received/sec
, Bytes Sent/sec
, Total Bytes Received
ou Total Bytes Transmitted
.
Isso pode ser convertido em um parâmetro de texto de critérios:
Na imagem acima, as condições serão avaliadas de cima para baixo e o valor do parâmetro isNetworkCounter
levará o valor do qual sempre a condição é avaliada como verdadeira primeiro. Todas as condições, exceto a condição padrão (a condição 'else') podem ser reordenadas para obter o resultado desejado.
Configurar critérios
Comece com uma pasta de trabalho com pelo menos um parâmetro existente no modo de edição.
- Selecione Adicionar parâmetros>Adicionar Parâmetro.
- No novo painel de parâmetros que será aberto, insira:
- Nome do parâmetro:
rand
- Tipo do parâmetro:
Text
- Obrigatório:
checked
- Obter dados de:
Query
- Insira
print rand(0-1)
no Editor de Consulta. Esse parâmetro gerará um valor entre 0 e 1.
- Nome do parâmetro:
- Selecione Salvar para criar o parâmetro.
Observação
O primeiro parâmetro na pasta de trabalho não mostrará a guia Critério.
Na tabela com o
rand
parâmetro, selecione Adicionar Parâmetro.No novo painel de parâmetros que será aberto, insira:
- Nome do parâmetro:
randCriteria
- Tipo do parâmetro:
Text
- Obrigatório:
checked
- Obter dados de:
Criteria
- Nome do parâmetro:
Uma grade é exibida. Selecione Editar ao lado da caixa de texto em branco para abrir o formulário Configurações de Critérios. Para obter uma descrição de cada campo, consulte o formulário Configurações de critérios.
Insira os seguintes dados para preencher os primeiros critérios e selecione OK:
- Primeiro operando:
rand
- Operador:
>
- Valor de:
Static Value
- Segundo operando:
0.25
- Valor de:
Static Value
- O resultado é:
is over 0.25
- Primeiro operando:
Selecione Editar, ao lado da condição
Click edit to specify a result for the default condition
para editar a condição padrão.Observação
Para a condição padrão, tudo deve ser desabilitado, exceto os campos
Value from
eResult is
.Insira os seguintes dados para preencher a condição padrão e selecione OK:
- Valor de: valor estático
- Resultado: 0,25 ou inferior
Salve o parâmetro.
Atualize a pasta de trabalho para ver o parâmetro
randCriteria
em ação. Seu valor será baseado no valor derand
.
Formulário de configurações de critérios
Campos de formulário | Descrição |
---|---|
Primeiro operando | Essa lista suspensa consiste em nomes de parâmetros que já foram criados. O valor do parâmetro será usado no lado esquerdo da comparação. |
Operador | O operador usado para comparar o primeiro e o segundo operandos. Pode ser uma avaliação numérica ou de cadeia de caracteres. O operador is empty desabilitará Second operand já que somente First operand é necessário. |
Valor de | Se definido como Parameter , um menu suspenso que consiste em parâmetros que já foram criados será mostrado. O valor do parâmetro será usado no lado direito da comparação.Se definido como Static Value , uma caixa de texto aparece onde você pode inserir um valor para o lado direito da comparação. |
Segundo operando | Será um menu suspenso que consiste em parâmetros criados ou uma caixa de texto, a depender da seleção Value from acima. |
Valor de | Se definido como Parameter , um menu suspenso que consiste em parâmetros que já foram criados será mostrado. O valor desse parâmetro será usado para o valor retornado do parâmetro atual.Se definido como Static Value :– Uma caixa de texto é exibida onde você pode inserir um valor para o resultado. – Você também pode desreferenciar outros parâmetros usando chaves ao redor do nome do parâmetro. – É possível concatenar vários parâmetros e criar uma cadeia de caracteres personalizada, por exemplo: " {paramA} , {paramB} e alguma cadeia de caracteres". Se definido como Expression :– Uma caixa de texto aparece, onde você pode inserir uma expressão matemática que será avaliada como resultado. – Assim como o caso Static Value , vários parâmetros podem ser desreferenciados nesta caixa de texto.– Se o valor do parâmetro referenciado na caixa de texto não for um número, ele será tratado como o valor 0 . |
O resultado é | Será um menu suspenso que consiste em parâmetros criados ou uma caixa de texto, a depender da seleção Value from acima. A caixa de texto será avaliada como o resultado final deste formulário de Configurações de critérios. |