Créer un document CRYSTAL dans DIAPASON
DIAPASON colle aux notions de CRYSTAL REPORTS® et intègre les notions de rapports et de sources de données.
Nous souhaitons créer un ARC ! Pour cela, nous allons paramétrer un document Crystal Report.
🧐 Quelles sont les différentes étapes à suivre ?
ETAPE 1: CREATION REQUETE REN/REB
Quelles informations souhaitons-nous avoir dans notre document Crystal ?
➡️ On commence par créer une requête dont dans laquelle on va créer les listes qu’on enverra ensuite dans le document Crystal.
Dans notre cas, on va créer :
une liste d’entête avec les données générales,
une liste ligne avec le détail de chaque ligne
Comment écrire la requête ?
![]() | On commence par récupérer les informations de l’entête qu’on souhaite afficher sur notre ARC. Pour l’instant, on les stocke dans des variables locales. |
![]() | Ensuite, on va venir alimenter la liste CdeComEnt, qui est la 1ere liste personnelle qu’on affichera dans notre ARC, et qui, dans notre cas, comportera les données de l’entête. On nomme cette liste comme on le souhaite ! 🥳 |
![]() | De même qu’avec les données de l’entête, on vient ensuite rechercher les données des lignes de commande qu’on souhaite afficher dans notre ARC… |
![]() | Et on vient alimenter notre 2nde liste personnelle, CdeComLig, avec ces données ! |
➡️ On a donc notre requête créée avec nos listes alimentées !
Le format par défaut d’une date dans Crystal est Date/Heure. Pour n’avoir que la date, il faut donc passer par une chaine dans la requête d’extraction
ETAPE 2 : Création de la source de données
On va ensuite créer une source de données dans laquelle on va renseigner le nom des listes préalablement créés et alimentées :

Pour avoir le détail de tous les champs de la Source de données c’est par ici !
Et on remplit:
![]() | ➡️ On nomme la source et la racine XSD avec le même nom que notre requête pour s’y retrouver plus facilement. |
![]() |
Ici, on alimente la source de données par requête, mais il est également possible de faire par liste d’extraction (dans le champs Type). La liste d’extraction est manipulable par la suite dans DIALOG par le biais des nouvelles instructions « CREATION LISTE EXTRACTION » et « PRENDRE LIS-EXT ». Dans les cas REN ou REB, il est possible d’indiquer un nom de balise propre à chaque liste utilisée. Dans le cas des listes d’extraction, cette information est donnée sur la définition de la liste elle-même. |
On peut valider !
ETAPE 3-1 : Création du rapport DIAPASON
On vient ensuite créer le rapport Crystal:

Pour avoir le détail de tous les champs du rapport c’est par ici !
Ici, on vient simplement crée un nouveau rapport, du même nom que la requête et la source de données:
![]() |
Un rapport défini dans DIAPASON permet de faire le lien entre le rapport CR utilisé (zone « Fichier ») et la source de données (et donc, les listes) utilisée. |
ETAPE 3-2: Génération de la source de données
La génération des sources de données, lancée depuis DIAPASON, a pour but de générer les fichiers XML et le fichier XSD qui seront utilisés dans le rapport sur CR. Suite à cette opération il est possible de concevoir le rapport dans CR (portant le nom contenu dans « Fichier »).
Une fois notre rapport créé, on vient cliquer dessus pour générer la source de données:

On sélectionne ensuite notre serveur de services:

Et on peut valider !
DIAPASON affiche ensuite un fichier de traces pour savoir si tout c’est bien passé:

Pour nous, la trace affiche “GO”, donc tout va bien ! Cette action a permis de générer les documents suivants sur notre serveur de services :

![]() | Notre rapport Crystal ! |
![]() | Ce fichier XSD est unique par rapport et décrit la structure de la ou des listes déduites de la source de données utilisée. |
![]() ![]() ![]() | 3 fichiers XML qui correspondent aux 3 listes personnelles créées dans la requête REB, et renseignées dans la source de données. Chaque liste utilisée à son propre fichier de données XML correspondant. |
![]() | Ce fichier XML est toujours généré, il contient les variables contextuelles du rapport (variables figées par DIAPASON et éventuellement les variables transmissibles indiquées sur la source de données courante). |
Où sont générés ces fichiers ?
Ces fichiers sont générés dans le dossier des rapports paramétré depuis l’application de définition des serveurs d’édition. Bien entendu, les rapports, eux même, devront se trouver dans ce même dossier. Lors d’une édition, ces fichiers de données, contenant les informations voulues, seront générés dans le dossier de travail paramétré dans cette application.

A compter de cette phase, tous les éléments nécessaires à la conception du rapport dans CR sont utilisables.
En mode XML avec Formatage Alphanumérique respecté, un champ caractère défini avec un format C/3 sera décrit dans CR avec ce format là, ce qui veut dire que CR ne verra toujours que 3 caractères même si la valeur en contient 30.
En mode Dataset ou XML sans respect du formatage Alphanumérique, CR verra la totalité de la valeur.

ETAPE 4: Créer le document dans DIAPASON
On va ensuite pouvoir aller créer le document dans DIAPASON:

![]() |
|
![]() | On choisit comment on souhaite que le fichier soit affiché en sortie. |
![]() |
|
Ce document permet de générer les fichiers XML résultats qui seront fusionnés avec le rapport pour l’état final. Ce document EXCEL est de type 1 (Edition par requête Diapason) ou 6 (REB/MFD).
Et on peut valider !
ETAPE 5: Paramétrer le document CRYSTAL
On peut ensuite aller ouvrir le fichier Crystal pour le paramétrer :

Quand on ouvre le fichier, il est vide ! Pour l’instant les champs de la base de données ne sont pas accessibles dans le rapport Crystal. Il va donc falloir connecter les sources de données ( les fichiers XML) à ce rapport:
Mettez le son !
L’Expert Base de données permet de visualiser simplement l’ensemble des sources de données du rapport ainsi que les liens éventuels entre les tables.
Et ensuite, on pourra aller éditer ce rapport dans Crystal ! Pour cela c’est par ici : Editer le document Crystal Report dans CRYSTAL