La réalisation d’indicateurs de performance (KPI) et de rapports d’analyses est essentielle pour le travail avec un ERP. Ces rapports permettent de faire des présentations de données, qui n’ont pas été prévu initialement dans l’ERP.

Les données d’un ERP sont regroupées dans des tables et les différentes solutions de reporting se distinguent principalement par le niveau d’accès de l’utilisateur aux données « réelles » dans les tables des ERP. La solution Excel/Jet Reports pour MS Navision (Microsoft Dynamics 365) est une solution, qui permet un accès direct aux données de l’ERP, elle est donc comparable à la solution SAP Query pour l’ERP SAP.

De telles solutions de reporting ont l’avantage qu’elles sont moins couteuses que des solutions (plus sophistiquées) avec des données et rapports prédéfinies (souvent appelées Business Intelligence BI). Cependant, leur point critique est qu’elles demandent de l’utilisateur un certain savoir-faire au niveau de la manipulation de données d’un ERP.

Fonctions essentielles

La solution Jet Reports correspond à un complément (add-in) pour Excel et elle permet ainsi de définir des requêtes de données de l’ERP directement dans Excel. D’un point de vue général, on peut distinguer deux types d’utilisateurs d’Excel/Jet Reports. Le premier groupe correspond aux designers, qui ont accès à toutes les fonctionnalités et qui ont le droit de créer et modifier des requêtes. Le groupe des designers est donc limité aux utilisateurs ayant une certaine expérience en programmation et en analyse de données. Le deuxième groupe correspond aux utilisateurs, qui ont juste le droit d’exécuter les Excel/Jet Reports sans avoir le droit de manipuler les requêtes.

La création des Jet Reports peut se faire à l’aide du Table Builder et le Jet Function Wizard, qui font partie de l’add-in Jet Reports. Ces deux options sont très utiles pour un premier contact avec Excel/Jet Reports, mais dans cet article, on se concentre sur la création de requêtes Jet Reports directement avec des formules d’Excel. Cette option offre une plus grande flexibilité, surtout quand il s’agit d’analyses plus complexes.

Le nombre de fonctions et paramètres d’Excel/Jet Reports est très élevé, mais les fonctions suivantes couvrent la grande majorité des besoins. Dans les exemples suivants, des requêtes sont définies pour les tables de l’ERP MS Dynamics NAV avec des données fictives.

+Hide+Auto+Values

Dans chaque Excel/Jet Report se trouve dans la cellule A1 au moins les mots-clés AUTO+HIDE, qui font cacher la première colonne et ligne d’Excel et qui font exécuter automatiquement tous des mots-clés dans A1. Des mots-clés supplémentaires sont +VALUES (transforme toutes les formules en valeurs) et +LOCK (empêche la modification des formules).   

NL(‘’Table’’)

La fonction NL(‘’Table’’) est la fonction principale pour extraire des données des tables de l’ERP. Son paramétrage de base est le suivant :

=NL(‘’Table’’; ‘’Nom de la Table’’ ; Champ1 ; ‘’Filtre pour Champ1’’ ; ‘’Champ2’’ ; ‘’Filtre pour Champ2‘’; … )

Dans l’exemple suivant, la quantité produite d’un certain article ‘’12345’’ avec date et numéro de l’ordre de fabrication est extraite avec une requête de la table ‘’Item Ledger Entry’’. Cette table est une des tables les plus importantes, car elle contient toutes les transactions de stock (entrées, sorties, etc.) des articles.

Formule Excel/Jet Reports

En exécutant la requête, on obtient la table d’Excel suivante (extrait) :

Résultat de la requête Excel/Jet Reports

Pour pouvoir extraire des données de plusieurs tables en même temps, la ou les clés de table doivent être liés via la fonction NL(‘’LINK’’). Dans l’exemple suivant, la table ‘’Item’’ est liée à la table ‘’Item Ledger Entry’’ via la clé de table ‘’Item No.’’ :

=NL(‘’Link’’ ; ‘’Item’’ ; ‘’Item Ledger Entry’’ ; ‘’No.’’ ; ‘’=Item No.’’ ; Champ1 ; Filtre pour Champ1 ; …)

Ceci permet maintenant d’extraire avec la même requête les données de la table ‘’Item’’ via la fonction LinkField :

=Linkfield([Item]; [Champ de la table Item])

Le prochain exemple combine les tables ‘’Item Ledger Entry’’ et ‘’Item’’ pour pouvoir extraire les livraisons d’un certain fournisseur ‘’23425’’ à partir d’une certaine date :

Formule Excel/Jet Reports avec Lien (Link)

En exécutant la requête, on obtient la table d’Excel suivante (extrait) :

Résultat de la requête Excel/Jet Reports avec Lien (Link)

NP(‘’Formula’’ ;’’=formule Excel’’)

La fonction NP(‘’Formula’’) permet d’inclure des formules Excel dans les requêtes Excel/Jet Reports. C’est une fonction essentielle pour élargir d’une manière significative les possibilités d’analyse des requêtes avec Excel/Jet Reports.

Dans l’exemple suivante, on vérifie si la date de livraison est après ou non une certaine date. La syntaxe [@[nom du champ]] est utilisée pour accéder à la valeur d’un champ d’une requête.

=NP(‘’Formula’’; ‘’=SI( [@[Posting Date]]>01.05.2020 ; VRAI ; FAUX) ’’)

Résumé

Jet Reports est un outil très efficace pour la réalisation de rapports avec Excel pour Navision (Microsoft Dynamics 365). Il a l’avantage que toutes les données d’un EPR sont à disposition sans passer par le service informatique pour la création de requêtes spécifiques. Cependant, pour éviter la prolifération d’un (trop) grand nombre de rapports Excel dans une entreprise, il est conseillé d’utiliser cet outil surtout pour la création de prototypes de rapports. Ensuite, ces rapports peuvent être implémentés dans une solution de reporting, qui est plus adapté à être partagé par l’ensemble de l’entreprise (par exemple via une interface web).

Références