Vous consultez une page technique concernant le logiciel de gestion Mercator. Celle-ci contient des informations spécifiques destinées aux professionnels de Mercator. Souhaitez-vous être redirigés vers des informations plus générales ?


   Ne plus poser cette question

Reporting : utilisation des fourchettes propres aux signalétiques

0000001047     -      19/09/2018

Mercator permet l'utilisation de fourchettes propres aux signalétiques dans les différents reportings définis via "Outils / Paramétrage Documents". Ces fourchettes sont utilisables sur l'ID, les 3 clés et le nom, dans chacun des signalétiques.

Ces constantes sont :

  • pour les clients
    • @CONST_C_ID_1 et @CONST_C_ID_2
    • @CONST_C_CLE1_1 et @CONST_C_CLE1_2
    • @CONST_C_CLE2_1 et @CONST_C_CLE2_2
    • @CONST_C_CLE3_1 et @CONST_C_CLE3_2
    • @CONST_C_NOM_1 et @CONST_C_NOM_2
  • pour les articles
    • @CONST_S_ID_1 et @CONST_S_ID_2
    • @CONST_S_CLE1_1 et @CONST_S_CLE1_2
    • @CONST_S_CLE2_1 et @CONST_S_CLE2_2
    • @CONST_S_CLE3_1 et @CONST_S_CLE3_2
    • @CONST_S_MODELE_1 et @CONST_S_MODELE_2

et ainsi de suite pour chacun des signalétiques de Mercator (GEN, ANA, PROJ, DEST, IMM, TACT, XLEAD, ...)

Mercator détecte dans la requête SQL la présence d'une ou de plusieurs de ces variables et affichent la ou les boîtes de dialogue permettant de saisir ces constantes. La saisie de ces constantes est validée par rapport aux enregistrements du signalétique sous-jacent. Les déroulants sont de type "combo", ce qui signifie qu'on peut les utiliser comme liste déroulante ou comme champ de type texte avec saisie classique.

Exemple de requête :
select *
    from stock
    where (s_cle1>=@CONST_S_CLE1_1) and (s_cle1<=@CONST_S_CLE1_2)
    order by s_cle1

Ce système peut être avantageusement couplé au choix de paramètres, puisque le remplacement des chaînes $PARAMi$ est effectué avant l'appel des fenêtres décrites ci-dessus.

Par exemple :
select *
    from stock
    where ($PARAM1$>=@CONST_$PARAM1$_1) and ($PARAM1$<=@CONST_$PARAM1$_2)
    order by $PARAM1$

 

Cas particulier pour les comptes analytiques

La fenêtre de sélection des fourchettes analytiques est dotée d'un déroulant supplémentaire permettant au préalable de sélectionner un plan analytique. Le numéro du plan choisi est automatiquement stocké dans la variable globale @GLOBAL_A_PLAN. De la sorte, il est possible de tenir compte du plan choisi dans les requêtes SQL :

    where a_plan=@GLOBAL_A_PLAN

Dans le cas où on choisit "<TOUS>", @GLOBAL_A_PLAN renvoie zéro. Il faut donc en tenir compte dans la construction de la requête SQL en adaptant par exemple la requête SQL comme suit (clause moins performante) :

    where ((case when @GLOBAL_A_PLAN=0 then 0 else a_plan-@GLOBAL_A_PLAN end)=0)

Si on souhaite qu'un plan soit proposé par défaut, il suffit, dans la requête SQL de faire suivre @GLOBAL_A_PLAN du numéro du plan souhaité.
Par exemple, pour que le plan 2 soit proposé par défaut :

    where a_plan=@GLOBAL_A_PLAN2

Notez que peu importe l'endroit où se trouve cette chaîne GLOBAL_A_PLANi. Si on souhaite que "<TOUS>" soit sélectionné par défaut, il faut utiliser GLOBAL_A_PLAN0.
Notez aussi que ce chiffre supplémentaire passé pour sélection du plan par défaut est retiré de la requête avant son exécution.
GLOBAL_A_PLAN doit être noté en majuscules obligatoirement. (Un seul indice de plan par défaut peut être utilisé par requête)