Vue générale de l'appel des moteurs de prévisions

Cette rubrique présente les conditions requises pour appeler les moteurs de prévisions et générer des prévisions pour l'article ou l'emplacement choisi, lors de l'emploi de la commande CallForecastEngine.

  • L'utilisateur (ou l'un de ses rôles) doit avoir accès à la macro, ainsi qu'au moteur de prévisions inclus dans le paramètre de nom du moteur. Dans le cas contraire, l'erreur suivante est générée par la macro lors de l'exécution :

    Moteur de prévisions {0} non accessible à l'utilisateur {1}

  • Les règles de sécurité des données concernant l'exécution de la macro par l'utilisateur actuel s'appliquent lors de la détermination des éléments d'article et d'emplacement à transmettre au moteur de prévisions pour le calcul. Ceci s'effectue en fonction de la sélection et du niveau hiérarchique transmis de ces articles et de ces emplacements. Par exemple :
    • CallForecastEngine("Moteur BATS","","TUPLE_EXISTS","Marque","Marque A","Région","E.-U.","Mois")
    • Si la sécurité des données de l'utilisateur actuel n'autorise pas celui-ci à voir la Marque A, ou tout article de base situé sous la Marque A dans la hiérarchie d'article, aucune sélection n'est transmise au moteur. Si l'utilisateur a accès à un sous-ensemble d'articles de base situés sous la Marque A, seuls ces articles génèrent des prévisions.
    • Si la sécurité des données de l'utilisateur actuel n'autorise pas celui-ci à voir « Etats-Unis », ou tout emplacement de base situé sous Etats-Unis dans la hiérarchie d'emplacement, aucune sélection n'est transmise au moteur. Si l'utilisateur a accès à un sous-ensemble d'emplacements de base situé sous Etats-Unis, seuls ces emplacements génèrent des prévisions.
    • Si des restrictions de période l'empêchent d'accéder à l'horizon complet de la période de cycle, seul le sous-ensemble de périodes de base pour lesquelles l'accès est possible génère des résultats de moteur persistants. Par exemple : si des restrictions limitent l'utilisateur aux périodes de base futures, aucun résultat écrit dans les périodes d'historiques n'est pris en compte.
  • La séquence de base permettant à SCP de préparer et d'appeler le moteur de prévisions via la commande macro CallForecastEngine est la suivante :
    • Identifier le moteur de prévision, le type et les paramètres par défaut.
    • Déterminer les paramètres du moteur de prévisions transmis.
    • Les paramètres non valides ne seront pas transmis au moteur de prévisions pour le traitement.
    • Les paramètres obligatoires manquants ne sont pas transmis au moteur de prévisions pour le traitement.
      Remarque : Ces paramètres s'appliquent à tous les articles/emplacements traités pour un moteur de prévisions. Les valeurs non valides ou les paramètres obligatoires manquants entraînent, par conséquent, l'annulation du traitement et le signalement d'une erreur dans le gestionnaire de tâches et le journal d'audit.
    • Déterminer les articles et les sélections d'emplacements à calculer.
    • Selon les paramètres de mappage de mesures du moteur de prévisions, récupérer les valeurs de scénario appropriées à transmettre à ce moteur (tous les mappages d'entrée).
  • Le système prépare et met en séquence les appels d'articles et emplacements individuels faits au moteur de prévisions, en transmettant le paramètre et les valeurs de mesure applicables pour chaque article et emplacement. Processus :
    • Le système vérifie que l'historique et les mesures de pondération sont associés à au moins une période > 0 pour générer une prévision. Si ce n'est pas le cas, l'article et l'emplacement ne sont pas transmis au moteur de prévisions pour le traitement et un message Rien qui corresponde s'affiche.
    • Pour chaque sélection d'article et d'emplacement, vous pouvez déterminer la configuration des paramètres à l'aide des paramètres du moteur de prévisions et de la liste de codes de paramètres définie par défaut pour le moteur de prévisions.
    • Les appels d'articles et emplacements individuels faits au moteur de prévisions doivent être préparés et mis en séquence en transmettant les paramètres et les valeurs de mesure applicables pour chaque appel d'article et d'emplacement.
    • Selon la configuration de mappage de la mesure définie pour le moteur de prévisions, vous pouvez récupérer les valeurs de scénario appropriées devant être transmises au moteur (pour les valeurs Historique, Masque d'historique et Pondération de période).
      Remarque : Les combinaisons article/emplacement dont la configuration des paramètres est invalide ne sont pas transmises au moteur de prévisions pour le traitement. L'erreur dans un paramètre n'est rapportée qu'une seule fois pour une liste de codes de paramètre, dans le journal de rejet.
    • Lorsque l'algorithme n'est pas « Evénements uniquement », et après avoir supprimé les zéros et masques définis par l'utilisateur, effectuer le test d'historique court pour vérifier le nombre de points de données d'historique par rapport au paramètre Historique court.
      Remarque : 
      • Lorsque Points d'historique < Paramètre d'historique court, l'article/l'emplacement est marqué comme historique court et n'est pas transmis au moteur de prévisions.
      • Valeur d'historique = 0 une fois la première période non nulle ajoutée dans le vecteur d'historique en tant que 0, et comptée dans le cadre du test d'historique court.
      • La valeur « 1 » est écrite dans la mesure Exception d'historique court si elle est mappée dans ces paramètres de moteur de prévisions.
      • Le nombre d'articles/d'emplacements ajouté à l'exception d'historique court est inclus dans le journal de rejet.
    • Si la valeur de masque d'historique est définie (>0) pour l'horizon d'historique de période de cycle, les données ne seront pas disponibles dans la prévision. La sélection d'article et d'emplacement n'est pas transmise au moteur de prévisions pour le traitement et une exception appropriée est inscrite au journal de rejet.
      • Le moteur de prévisions renvoie les articles et emplacement (et périodes) contenant une exception, car toutes les exceptions sont basées sur un problème indiqué durant le dernier appel du moteur de prévisions.
    • Les mesures mappées dans les résultats de l'exception (Exception stat invalide, Obsolescence, Observations aberrantes, Exception d'historique court, Exception de modification d'étape et Exception de signal de suivi) pour chaque article et chaque emplacement qui sont transmises au moteur de prévisions doivent être effacées.
      • Quand le moteur est de type ATT, que l'algorithme indiqué est HOLTWINTERS, MOINDRESCARRES, MOYENNEMOBILE, ou CROSTONS et que la mesure SMP est nulle (=0) ou non définie, le moteur de prévisions doit être appelé avec l'algorithme fitModelGivenAlgorithm(), qui remplacera alors l'algorithme spécifié.
    • L'historique et les vecteurs de masque doivent être de même longueur.
      Remarque :  Les valeurs de masque de 0 (ou qui sont nulles) pour toutes les périodes sont valides. Elles indiquent qu'aucune période n'est masquée.
    • Les valeurs d'historique sont normalisées en utilisant la mesure de pondération indiquée avant d'être transmises au moteur.
  • Lorsque la prévision est générée, le système enregistre les résultats du moteur de prévisions pour chaque article et emplacement vers les valeurs du scénario pour les mesures de sortie définies, en utilisant les paramètres de mappage de mesures. Cela inclut :
    • Normaliser la prévision en utilisant les coefficients correcteurs de période spécifiés pour l'horizon futur de période de cycle, avant d'enregistrer les données de la prévision.
    • Normaliser la spécification en ligne du modèle et les valeurs de l'historique de spécification du modèle en utilisant les coefficients correcteurs de période spécifiés pour l'horizon d'historique de période de cycle, avant d'enregistrer les données de la prévision, si elles sont mappées.
    • Si l'exception Obsolescence est mappée sur une mesure pour un moteur de prévisions spécifique, SCP exécute une vérification d'obsolescence additionnelle pour chaque article et emplacement retourné.
      • Définition : Articles et emplacements pour lesquels le niveau prévu est négatif (<0) dans l'horizon futur de période de cycle (périodes de prévision).
      • Calcul : Niveau + (Croissance * Périodes de prévision) < 0.
      • Une obsolescence ne se produit que si Croissance < 0. Ainsi, l'article et les emplacements pour lesquels Croissance >=0 ne sont pas pris en compte.
      • Les étapes macro ou l'amortissement de croissance modifiés ne sont pas inclus dans le calcul.
      • Horizon futur 12 mois = Niveau + (Croissance * 12). Si Niveau = 100 et Croissance = -10, cet article et cet emplacement sont considérés obsolètes.
    • S'ils sont mappés, les indices saisonniers peuvent être dérivés :
      • Applicable si l'algorithme est Holt-Winters (ou sélectionné comme Holt-Winters, par Meilleur), et que l'écran de modèle résultant est saisonnier. Les types des indices saisonniers retournés sont indiqués par type saisonnier.
      • Ceci est retourné comme un vecteur de valeurs numériques, où n est la périodicité transmise au moteur de prévisions.
      • La valeur doit être inscrite sur les n périodes historiques les plus récentes.
      Par exemple : Périodicité du moteur de prévisions = 12 (mois), Périodicité du cycle = Mois, Période de cycle = FY14 M07. 12 indices saisonniers sont appliqués du 7ème mois de l'exercice 2013 au 6ème mois de l'exercice 2014.
      Remarque : Les valeurs sont proportionnelles au niveau auquel les valeurs du scénario sont enregistrées, si applicable.
    • Les résultats de l'appel du moteur de prévisions sont actualisés sur les périodes de l'horizon futur de période de cycle, l'horizon d'historique de période de cycle, ou sur PCONST comme une valeur statique.
    • La prévision et la valeur aberrante, le changement d'étape et les résultats du suivi des exceptions au niveau des signaux (un vecteur de valeur) sont écrits pour les périodes à venir de l'horizon de prévision de la période de cycle.
    • La déviation standard, le niveau, la croissance et les résultats des données d'exception de l'historique court (une valeur unique) sont inscrits à l'élément PCONST de la dimension de la période.
    • Les résultats de l'historique normalisé de spécification du modèle et de la spécification en ligne du modèle (un vecteur de valeurs) sont inscrits aux périodes d'historique de l'horizon d'historique de la période de cycle.
  • Les résultats de la macro Callforecastengine sont transférés au gestionnaire de tâches et au journal d'audit. Processus :
    • Le système génère un fichier journal des informations supplémentaires à partir de la sortie du moteur de prévisions.
    • Les articles et emplacements sans historique, pondération ou valeurs de saisie de masque valides sont renvoyés sous l'intitulé Rien qui corresponde.
    • Les articles et emplacements sans réglage de paramètre valide sont renvoyés avec une erreur et des valeurs incorrectes.
    • Pour chaque paramètre non valide d'une liste de codes de paramètre, une erreur est inscrite dans les ensembles de paramètres. Par exemple, La liste de codes de paramètre "Paramètres BATS par défaut" contient une valeur non valide (1) : (2). 1= paramètre, 2 = erreur
    • Si le système identifie une combinaison article/emplacement dont le traitement a échoué (traitement par la validation SCP ou retour du moteur de prévisions avec un code erreur), l'erreur est inscrite au journal de rejet, avec un message d'erreur détaillé. Par exemple, Il n'existe aucun historique différent de zéro. Aucun modèle ne peut être spécifié.
    • Les exceptions de prévision sont actualisées dans le journal de rejet pour chaque exception sur une tâche. Ceci inclut les exceptions Historique court, Obsolescence, Valeurs aberrantes, Signal de suivi, Modifications d'étape et Stat invalide. Par exemple, 22 articles/emplacements indiqués comme aberrants.