Os parâmetros fornecem aos usuários corporativos uma maneira rápida e intuitiva de exibir e alterar seus valores por meio da interface gráfica de usuário (GUI), sem precisar editar o script de fórmula.
O uso de parâmetros na lógica de negócios permite a criação de fórmulas gerais que podem ter um amplo uso em todo o sistema e otimiza o uso de módulos.
Os parâmetros podem ser definidos em nível de contrato ou de métrica. Os parâmetros em nível de métrica são exibidos e configurados na guia Declaração de objetivo dos Detalhes da métrica. A lógica de negócios tem acesso apenas aos parâmetros em nível de métrica; portanto, para acessar um parâmetro de contrato em uma métrica, um tipo diferente de parâmetro é criado localmente na métrica. É chamado de parâmetro dinâmico e obtém seu valor como uma referência dos parâmetros em nível de contrato. Os valores de referência permitidos no parâmetro dinâmico são apenas aqueles definidos no contrato pai da métrica.
Tipos de parâmetros:
Para acessar os valores do parâmetro no código da fórmula, é necessário usar o objeto de parâmetros e fazer referência ao nome do parâmetro.
Exemplo:
Parameters("Threshold")
(Observe que esse é um método resumido de chamar o valor - normalmente é feito como Parameters.Item("Threshold").)
Ou, para um parâmetro de tipo de tabela:
Parameters("Table")("Word")("Price")
(Onde os valores "Word" e "Price" são os nome de linha e coluna do parâmetro de tabela, respectivamente.)
Os parâmetros de tabela só devem ser usados após uma série de pontos principais:
Isso libera memória que o parâmetro utiliza e evita que o mecanismo crie o mapa do parâmetro em cada chamada de parâmetro e para cada "OnXXXEvent", que pode ser chamado milhares de vezes por métrica.
O código a seguir ilustra o uso correto de um parâmetro de tabela:
Option Explicit
Dim sum
Dim myParamTable
Sub OnLoad(TIME)
Set myParamTable = Parameters("MyTableParam")
End Sub
Sub OnRegistration(dispatcher)
dispatcher.RegisterByResource" OnEvent", "EventType", "ResourceType"
End Sub
Sub OnPeriodStart(TIME)
sum = 0
End Sub
Sub OnEvent(eventDetails)
If Context.IsWithinTimeslot Then
sum = sum + 1 * myParTimeSlotamTable("firstRow")("secondColumn")
End If
End Sub
Function Result
Result = ( sum * myParamTable("secondRow")("thirdColumn") )
End Function
Os seguintes métodos estão disponíveis para cada objeto de parâmetro criado no código.
|
Parâmetro |
Descrição |
|
IsExist |
O parâmetro existe. |
|
IsNumeric |
Parâmetro de número. |
|
IsText |
Parâmetro de texto. |
|
IsDate |
Parâmetro de data. |
|
IsTable |
Parâmetro de tabela. |
|
IsEntryExist |
Há uma entrada na tabela. |
|
IsEntryNumeric |
Entrada numérica na tabela. |
|
IsEntryText |
Entrada de texto na tabela. |
|
IsEntryDate |
Entrada de data na tabela. |
|
Dump |
Retorna uma lista de todos os parâmetros. |
|
Item |
Refere-se ao valor do parâmetro. |
| Copyright © 2012 CA. Todos os direitos reservados. | Enviar email à CA Technologies sobre este tópico |