Rubrique précédente: Création des modules de logique applicativeRubrique suivante: Implémentation des cibles dynamiques


Création des paramètres

Les paramètres fournissent aux utilisateurs professionnels une façon rapide et intuitive d'afficher et de changer leurs valeurs en utilisant l'interface utilisateur graphique sans devoir modifier le script de formule.

L'utilisation de paramètres dans la logique applicative permet la création de formules générales qui peuvent avoir une utilisation importante dans le système, ce qui optimise l'utilisation des modules.

Vous pouvez définir des paramètres au niveau du contrat ou de la métrique. Les paramètres de métrique sont affichés et configurés dans l'onglet Enoncé d'objectif des détails de la métrique. L'accès de la logique applicative est limité aux paramètres au niveau de la métrique ; par conséquent, afin d'accéder à un paramètre de contrat dans une métrique, un type différent de paramètre est créé localement dans la métrique. Il s'agit d'un paramètre dynamique qui prend sa valeur de référence à partir des paramètres au niveau du contrat. Les valeurs de référence autorisées dans le paramètre dynamique sont uniquement celles définies dans le contrat parent de la métrique.

Types de paramètres :

Afin d'accéder aux valeurs du paramètre à partir du code de formule, il est nécessaire d'utiliser l'objet Paramètres et de se référer au nom du paramètre.

Exemple :

Paramètres ("Threshold")
(Notez qu'il s'agit d'une méthode abrégée pour appeler la valeur ; normalement cette opération s'effectue avec Parameters.Item("Threshold"))

Ou, pour un paramètre de type table :

Paramètres ("Table")("Word")("Price")

(où les valeurs "Word" et "Price" sont les noms de ligne et de colonne du paramètre de table, respectivement)

Les paramètres de table doivent uniquement être utilisés selon un nombre de points clés :

  1. Définir une variable globale (par ex. dim myTableParam)
  2. Dans la fonction OnLoad, remplissez la variable depuis l'objet de paramètres (ex. “Set myTableParam = Parameters(“MyParametersTable”))
  3. Par la suite utilisez uniquement l'objet créé, myTableParam.
    Le paramètre ne doit pas être utilisé en dehors de la fonction OnLoad et vous devez uniquement vous référer à l'objet variable global que vous avez créé à partir de celui-ci.(par ex. “dim myVal: myVal = myTableParam (“myRow”)(“myColumn”)).

Cette opération libère la mémoire que le paramètre utilise et empêche le moteur de créer le mappage du paramètre sur chaque appel de paramètre et pour chaque "OnXXXEvent" que vous pouvez appeler des milliers de fois par métrique

Le code suivant illustre l'utilisation correcte d'un paramètre de table :

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

Les méthodes suivantes sont disponibles pour chaque objet de paramètre créé dans le code.

Parameter

Description

IsExist

Paramètre existant. Ne fonctionne pas avec les paramètres de contrat.

IsNumeric

Paramètre de type numérique.

IsText

Paramètre de type texte.

IsDate

Paramètre de type date.

IsTable

Paramètre de type table.

IsEntryExist

Entrée dans la table.

IsEntryNumeric

Entrée dans la table de type numérique.

IsEntryText

Entrée dans la table de type texte.

IsEntryDate

Entrée dans la table de type date.

Dump

Renvoie une liste de tous les paramètres.

Elément

Fait référence à la valeur de paramètre.