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 : comment changer la police en fonction des données ?

0000002049     -      29/08/2017

Solution 1

Le but de ce code est de montrer comment, dans l'éditeur de rapports, changer aisément la police en fonction des données.

Dans l'éditeur de rapports, il faut :

  • dans le rapport, cliquer dans la bande "Données" afin de sélectionner "Data1 Databand" dans la fenêtre des propriétés du rapport
  • dans la fenêtre des propriétés du rapport, cliquer sur le bouton "Eclair" afin d'accéder au code C# correspondant à la bande de données
  • double-cliquer sur l'évènement "BeforePrint"
  • la fenêtre de code s'ouvre avec, par défaut, "private void Data1_BeforePrint(object sender, EventArgs e)"
  • coller le code ci-dessous.

 

Ceci illustre l'utilisation de la propriété Font() de la zone Text1.

Zoom
// Récupération de la valeur du champ s_prix_ti
Double montant = ((Double)Report.GetColumnValue("StockRep.s_prix_ti"));

// Ajuster la police de caractère en fonction du montant
if (montant < 10)
  Text1.Font = new Font("Arial", 8F, ((FontStyle)(FontStyle.Bold | FontStyle.Underline)), GraphicsUnit.Point, ((byte)(0)));
else
  Text1.Font = new Font("Arial", 8F, ((FontStyle)(FontStyle.Regular)), GraphicsUnit.Point, ((byte)(0)));

 

Solution 2

Dans l'éditeur de rapports, après avoir sélectionné la(les) zone(s) concernée(s), il faut cliquer sur le bouton permettant de définir la mise en page (). Il suffit alors d'indiquer la condition et la mise en page souhaitée.

Exemple : liste des rayons, familles et sous-familles.