Los parámetros proporcionan a los usuarios de negocio una forma rápida e intuitiva de consultar y cambiar sus valores mediante la interfaz de usuario gráfica (GUI), sin tener que editar el script de la fórmula.
El uso de parámetros dentro de la lógica de negocios permite crear fórmulas generales que pueden tener un amplio uso en todo el sistema y optimiza el uso de los módulos.
Los parámetros se pueden definir en el nivel de contrato o de métrica. Los parámetros de nivel de métrica se muestran y se configuran en la ficha Declaración del objetivo de los detalles de la métrica. La lógica de negocios sólo tiene acceso a los parámetros de nivel de métrica; por lo tanto, para acceder a un parámetro de contrato desde dentro de una métrica, se crea un tipo de parámetro diferente localmente dentro de la métrica. Éste se denomina "parámetro dinámico" y toma su valor como referencia de los parámetros de nivel de contrato. Los valores de referencia permitidos en el parámetro dinámico son solamente los definidos en el contrato principal de la métrica.
Tipos de parámetros:
Para acceder a los valores de los parámetros desde el código de fórmula, es necesario de utilizar el objeto Parameters y hacer referencia al nombre del parámetro.
Ejemplo:
Parameters("Threshold")
(Tenga en cuenta que este es un método abreviado de invocar al valor. Normalmente esto se hace como Parameters.Item("Threshold"))
O, para un parámetro de tipo tabla:
Parameters("Table")("Word")("Price")
(donde los valores de "Word" y "Price" corresponden a los nombres de fila y columna del parámetro en la tabla, respectivamente).
Los parámetros de tabla se deberán utilizar solamente confirmados una serie de puntos clave:
Esto libera memoria que el parámetro toma y evita que el motor cree una asignación de parámetro en cada invocación de parámetro para cada "OnXXXEvent", que se puede invocar miles de veces por métrica.
El código siguiente ilustra el uso correcto de un parámetro de tabla:
Option Explicit
Dim sum
Dim miTablaDeParametros
Sub OnLoad(TIME)
Set miTablaDeParametros = Parameters("MiParamDeTabla")
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
Resultado de la función
Result = ( sum * miTablaDeParametros("secondRow")("thirdColumn") )
End Function
Los siguientes son los métodos disponibles para cada objeto de parámetro creado dentro del código.
|
Parámetro |
Descripción |
|
IsExist |
Si existe el parámetro. No funciona en parámetros de contrato. |
|
IsNumeric |
Si el tipo de parámetro es numérico. |
|
IsText |
Si el tipo de parámetro es texto. |
|
IsDate |
Si el tipo de parámetro es fecha. |
|
IsTable |
Si el tipo de parámetro es tabla. |
|
IsEntryExist |
Si existe una entrada en la tabla. |
|
IsEntryNumeric |
Si el tipo de entrada en la tabla es numérico. |
|
IsEntryText |
Si el tipo de entrada en la tabla es texto. |
|
IsEntryDate |
Si el tipo de entrada en la tabla es fecha. |
|
Dump |
Devuelve una lista con todos los parámetros. |
|
Elemento |
Hace referencia al valor del parámetro. |
|
Copyright © 2013 CA.
Todos los derechos reservados.
|
|