Partager via


Reporter le total des objectifs

Pour reporter les données dans la hiérarchie d’objectifs, utilisez le message RecalculateRequest. Il recalcule les valeurs des champs cumulatifs d’objectif, comme Goal.ActualMoney ou Goal.ActualInteger, pour tous les objectifs de la hiérarchie. Un cumul pour chaque objectif est effectué dans le contexte du gestionnaire d’objectifs. Cela signifie que seuls les enregistrements auxquels le gestionnaire d’un objectif a accès en lecture peuvent participer au cumul. Le système bascule automatiquement le contexte du gestionnaire pour chaque objectif durant le cumul, car chaque objectif peut avoir un autre gestionnaire d’objectif.

Les totaux sont reportés des objectifs enfants aux objectifs parents, du bas vers le haut de la hiérarchie. Le total final de l’objectif racine en haut de la hiérarchie est la somme cumulée de tous les totaux dans la hiérarchie. Par exemple, si la mesure de revenu est utilisée, le total est la somme cumulée des montants. Si une mesure de dénombrement est utilisée, le total est le nombre cumulé des enregistrements dans le système, par exemple des appels téléphoniques. Quel que soit l’objectif spécifique cible de l’opération de recalcul, tous les totaux dans une hiérarchie donnée sont mis à jour.

Si vous attribuez à Goal.RollupOnlyFromChildGoals la valeur true, seuls les enregistrements des objectifs enfants sont utilisés dans le cumul. Si vous lui attribuez la valeur false, le cumul inclut les enregistrements enfants et d’autres enregistrements participants à l’objectif. Un enregistrement participant doit respecter les conditions suivantes :

  • La date source de l’enregistrement doit être comprise entre la date de début et la date de fin de la période de l’objectif, ou être la date de début ou de fin de la période de l’objectif.

  • L’état et le statut de l’enregistrement doivent correspondre aux valeurs définies dans la mesure de l’objectif.

  • Si une requête de cumul est spécifiée pour l’objectif, toutes les conditions de requête doivent être remplies.

  • Le gestionnaire d’objectif doit avoir accès en lecture à l’enregistrement.

Note

Les champs cumulatifs d’objectifs qui ne participent pas au cumul ne sont pas mis à jour, ils ont la valeur null.

Pour spécifier le délai d’expiration du cumul, utilisez la colonne Organization.GoalRollupExpiryTime. Par exemple, si le délai d’expiration du cumul est défini à six mois, les objectifs de plus de six mois ne sont pas reportés automatiquement. Pour indiquer la fréquence de cumul de l’objectif, utilisez la colonne Organization.GoalRollupFrequency. La fréquence peut être définie sur une base horaire. Par défaut, les valeurs réelles des objectifs sont recalculées toutes les 24 heures.

Remplacer les valeurs calculées

Pour remplacer les valeurs des champs cumulatifs de l’objectif réelles, en cours ou personnalisées calculées par le système, utilisez le message UpdateRequest pour mettre à jour l’enregistrement d’objectif. Vous devez définir la colonne Goal.IsOverride sur true pour informer le système que les valeurs des champs cumulatifs peuvent être mises à jour. Pour indiquer au système que les valeurs des champs cumulatifs de l’objectif sont remplacées et ne doivent pas être mises à jour lors de la prochaine opération de recalcul, définissez la colonne Goal.IsOverridden sur true. Si Goal.IsOverride est false, une exception est jetée lors de l’opération de mise à jour. Si Goal.IsOverridden est false, les valeurs des champs cumulatifs de l’objectif sont remplacées par des valeurs calculées par le système lors de la prochaine opération de recalcul.

Tables de gestion des objectifs
Exemple : Cumuler les données d’objectif sur une période personnalisée par rapport au revenu cible
Exemple : Cumuler les données d’objectif sur une période fiscale par rapport au nombre cible étendu
Table Goal