Cette fonction est un outil permettant de justifier de la non-historisation d'une donnée.

Cette aide au diagnostic de non historisation génère une trace décrivant les dépendances entre les données et le(s) motif(s) de non historisation s'il y a lieu.

Gestion de l'écran

pour utiliser cet écran, il faut indiquer:
- soit directement la valeur de HISPTR (pointeur identifiant une donnée)
- soit la clé d'enregistrement d'une table du code historisation

Le traitement génère alors une trace donnant les liens entre la clé saisie et les autres données de Warehousing. Les lignes en vert indiquent les données historisables. Les lignes en rouge indiquent les données non historisables avec le motif de non historisation:

  • "LNK xxx => PTR yyy" : indique à quel groupe de pointeur PTR appartient ce HISPTR, c'est-à-dire le PTR correspondant à un enregistrement de HISLIK pour le code historisation tel que TYP='G' & LNK=HISPTR
  • "LNK xxx <= LNK yyy" : indique que le groupe de pointeur PTR n'est pas historisable parce que le pointeur yyy de ce même groupe ne l'est pas.
  • "LNK xxx <= TBL CLE(1..n)" : indique que le pointeur PTR lui-même n'est pas historisable du fait de l'enregistrement CLE(1..n) dans la table TBL.
  • "Lien entre LNK xxx & LNK yyy" : indique le lien entre les pointeurs PTR et yyy.
  • "LNK xxx CLE(1..n)" :  indique que le pointeur est en lui même historisable (mais non historisé parce qu'il appartient au groupe de pointeur PTR non historisable à cause du pointeur yyy)

Prenons un premier exemple:
Soit l'entrée attendue N° 276 (site/déposant = 01/ALPHA) qui ne s'historise pas. Je saisi dans cet écran le code historisation INPUT, la table EINPUTH, la clé (01, ALPHA, 276) identifiant l'EA.

J'obtiens la trace suivante:
LNK 463891 => PTR 463891
17:34:01 LNK 463891 (EINPUTH 01 ALPHA 0000276) <= LNK 464656
Lien entre LNK 463891 & LNK 464656 (RECEIPTL 01 0000319 0000276 1 3)
17:34:01 LNK 464656 (RECEIPTL 01 0000319 0000276 1 3) <= INPUTH 01 ALPHA 0000528
17:34:01 LNK 463891 (EINPUTH 01 ALPHA 0000276) <= LNK 464656

  • Ligne 1: le pointeur 463891 (identifiant l'EA 276) appartient au groupe de pointeur 463891
  • Ligne 2: le pointeur 463891 (EA 276) n'est pas historisable car le pointeur 464656 ne l'est pas.
  • Ligne 3: le pointeur 463891 (EA 276) est lié au pointeur 464656 (Réception 319, EA 276, ligne EA 1)
  • Ligne 4: le pointeur 464656 n'est pas historisable à cause de l'entrée directe n°528
  • Ligne 5: le pointeur 463891 (EA 276) n'est pas historisable car le pointeur 464656 ne l'est pas.

En résumé: l'ED 276 ne s'historise pas car la RA 319 ne s'historise pas. Cette RA ne s'historise pas à cause de l'ED 528 qui est toujours non terminé dans Warehousing.

Second exemple:
Soit la ligne de réception (RA N°2, EA N°3, ligne EA N°1) qui ne s'historise pas.
la trace nous donne:
LNK 442492 => PTR 441972
11:33:20 LNK 441972 (EINPUTH 01 ALPHA 0000003) <= LNK 443460
Lien entre LNK 441972 & LNK 442492 (RECEIPTL 01 0000002 0000003 1 1)
Lien entre LNK 442492 & LNK 443460 (INPUTH 01 ALPHA 0000033)
11:33:21 LNK 443460 (INPUTH 01 ALPHA 0000033) <= STORINGLST 01 ALPHA 0000038
11:33:21 LNK 442492 (RECEIPTL 01 0000002 0000003 1 1)
Lien entre LNK 441972 & LNK 442492 (RECEIPTL 01 0000002 0000003 1 1)

  • Ligne 1: le pointeur 442492 (identifiant la ligne de réception) appartient au groupe de pointeur 441972
  • Ligne 2: le pointeur 441972 (EA 3) n'est pas historisable car le pointeur 443460 ne l'est pas.
  • Ligne 3: le pointeur 441972 (EA 3) est lié au pointeur 442492 (la ligne de réception)
  • Ligne 4: le pointeur 442492 (la ligne de réception) est lié au pointeur 443460 (ED 33)
  • Ligne 5: le pointeur 443460 (ED 33) n'est pas historisable à cause de la LR n°38
  • Ligne 6: le pointeur 442492 (la ligne de réception) est en lui même historisable.
  • Ligne 7: le pointeur 441972 (EA 3) est lié au pointeur 442492 (la ligne de réception)

En résumé: la ligne de réception n'est pas historisable parce qu'elle est rattachée à l'EA 3 qui n'est pas historisable à cause de la LR 38 à laquelle elle est rattachée via l'ED 33.

Dans le cas où la donnée est déjà historisée, alors l'utilitaire indique dans la trace:
- la date à laquelle la donnée a été passée du dossier d'exploitation vers le dossier historisé.
- la liste des autres données constituant ce groupe d'historisation.

Exemple de trace:
LNK 15417 => Date historisation = 27/05/2008
Table DLVORDERH : Ordres de livraison
CM DEPOT 0000123
Table PICKORDER : Ordres de préparation
CM DEPOT 0000431
CM DEPOT 0000432
CM DEPOT 0000433
CM DEPOT 0000434
Table VACATION : Vacations
CM DEPOT 0000442
CM DEPOT 0000441
Table OUTPUTM : Mouvements de sortie
CM DEPOT 0000002761
CM DEPOT 0000002753
CM DEPOT 0000002754
CM DEPOT 0000002762
CM DEPOT 0000002755
CM DEPOT 0000002756
CM DEPOT 0000002760
Table DLVORDERL : Lignes OL
CM DEPOT 0000123 1
Table SUBVAC : Sous numéros de vacation
CM DEPOT 0000441 1
CM DEPOT 0000442 1

Spécificité Historisation / Epuration sur Warehousing

Champs

Les champs suivants sont présents dans cette fenêtre :

Pas d'aide liée à ce champ.

  • champ HISPTR

 

 

  • Clé (champ VALCLE)

 

  • champ INTCLE

 

Fermer

Dans la fonction superviseur Historisation/Epuration (Fonction GESAHI), nous avons ajoutés un menu "Fonctions" avec les choix "Initialiser les liens" et "Aide au diagnostic".

Aide au diagnostic

L'aide au diagnostic de non historisation génère une trace basée sur les enregistrements HISLIK du code historisation de type 'L' ou 'G' et le HISPTR des données associées, sans toucher à aucune donnée.

Initialiser les liens

L'initialisation des liens supprime les enregistrements HISLIK du code historisation de type 'L' ou 'G' et remet à zéro le HISPTR des données associées.
Par conséquent, pour un code historisation, l'aide au diagnostic ne peut donner des résultats que si les liens n'ont pas été réinitialisés depuis la dernière historisation (en simulation ou non). Il est donc important de lancer l'initialisation des liens avec précaution. C'est pourquoi on ne la lance plus à chaque fois qu'on clique sur le bouton "Enregistrer", mais uniquement sur demande de l'utilisateur, soit ici, soit en lancement d'historisation/Epuration (fonction GESAHI).
Il ne faut demander l'initialisation des liens que si on a modifié quelque chose dans le paramétrage d'un code historisation ou dans ses traitements standard ou spécifique qui puisse impacter la constitution des groupes de données ou des liens entre ces groupes.

Exploitation de la fonction Historisation/Epuration (Fonction GESAHI)

Lancer cette fonction sans initialiser les liens peut faire gagner un temps important, puisqu'on garde les groupes et les liens constitués lors du lancement précédent.

La simulation inhibe la création des données dans le dossier historisé et la suppression des données. Par contre, elle met à jour les zones HISPTR des différentes tables et la table HISLIK (sauf pour les enregistrements de type 'E'). Cela signifie qu'aprés une historisation en simulation, on peut lancer un diagnostic de non historisation.

Sauf cas particulier, il est conseillé de lancer cette fonction sans détail des enregistrements historisés/épurés et sans détail des liens entre enregistrements, pour ne pas avoir une trace trop volumineuse où finalement on a du mal à s'y retrouver.

Ecran de saisie

Champs

Les champs suivants sont présents dans cet onglet :

Pas d'aide liée à ce champ.

  • champ HISPTR

 

 

  • Clé (champ VALCLE)

 

  • champ INTCLE

 

Fermer

 

Messages d'erreur

Outre les messages génériques, les messages d'erreur suivants peuvent apparaître lors de la saisie :

Erreur de l'application: HISPTR=0

La donnée saisie n'existe pas dans la table HISLIK. c'est à dire qu'elle est toujours en cours de traitement dans Warehousing (non encore en statut final).

Tables mises en oeuvre

SEEREFERTTO Reportez-vous à la documentation de Mise en oeuvre