|
|
|
|
|
- Présentation
- Créer un état sur une source de données programmée
- Présentation
- Créer un état sur une source de données programmée
- Programmer la lecture des enregistrements
- Ordre d'exécution des différents événements WLangage
Etat sur une source de données programmée
Dans un état sur une source de données programmée, la lecture des enregistrements à afficher dans l'état nécessite une programmation complète en WLangage. La source de données peut être de n'importe quel type (fichier HFSQL, requête, fichier texte, fichier d'une base de données tierce, ...). La création d'un état sur une source de données programmée s'effectue grâce à l'assistant de création d'un état. Lorsque l'état sur une source de données programmée est créé, il est possible à tout moment de : - modifier la source de données de l'état (onglet "Données" de la description de l'état).
- ajouter ou supprimer des champs Rubriques liés à la source de données de l'état.
![](https://doc.pcsoft.fr/ext/images/fr/note_v2.png?478445243) Le logiciel Etats & Requêtes ne permet pas de créer des états sur une source de données programmée. Cependant, il est possible de personnaliser des états sur une source de données programmée créés sous l'éditeur d'états intégré (couleur, polices, taille, ...). Créer un état sur une source de données programmée Présentation Pour créer un état sur une source de données programmée, deux étapes sont nécessaires : - Création de l'état à l'aide de l'assistant de création.
- Programmation de la lecture des enregistrements.
Créer un état sur une source de données programmée Pour créer un état sur une source de données programmée : - Cliquez sur
parmi les boutons d'accès rapide. - La fenêtre de création d'un nouvel élément s'affiche : cliquez sur "Etat" puis sur "Etat".
- L'assistant de création d'un état s'affiche.
- Choisissez la présentation de votre état (tableau, fiche, étiquette, ...). Pour plus de détails, consultez Les différents types d'états.
- Sélectionnez la source de données de l'état (option "Autre (programmation, fichier texte, zone mémoire, vue HFSQL)"). Sélectionnez ensuite l'option "Je programme la lecture de ma source de données".
- Pour chaque type d'état, indiquez les options spécifiques correspondantes.
| | Type d'état | Options spécifiques |
---|
État de type tableau | - spécifiez le nombre de colonnes présentes dans le tableau.
- pour chaque colonne, spécifiez le libellé et le type de la valeur imprimée.
- modifiez si nécessaire l'ordre des différentes colonnes.
| État sur formulaire | Image du formulaire, impression de l'image du formulaire, ... Options détaillées dans la page Etat sur formulaire. | État Étiquette | Format des étiquettes, nombre d'exemplaires identiques, ... Options détaillées dans la page Etat Étiquette. |
- Spécifiez le format de la feuille sur laquelle l'état va être imprimé. Par défaut, l'état est imprimé sur une feuille au format A4.
- Sélectionnez le gabarit de l'état si nécessaire.
- Saisissez le nom et le titre de l'état. Ce nom (nom du fichier ".WDE" correspondant à l'état) permettra d'identifier l'état dans vos programmes.
- Validez la création de l'état.
- Si l'état contient un tableau, l'éditeur d'états propose automatiquement de changer le format de l'état utilisé et/ou de réduire le tableau si le format de l'état ne permet pas d'afficher l'ensemble des colonnes du tableau.
- Si nécessaire, indiquez le mode de réduction de l'état :
- Imprimer l'état sur plusieurs pages. Dans ce cas, l'utilisateur final devra assembler les pages. Pour plus de détails, consultez Impression multipage.
- Utiliser le mode paysage.
- Réduire l'état par rapport à l'original. Attention : selon le pourcentage de réduction choisi, l'état imprimé pourra devenir illisible.
- L'état en cours de création s'affiche sous l'éditeur d'états.
Programmer la lecture des enregistrements La programmation nécessaire à la lecture des enregistrements est illustrée par l'exemple suivant : ![](https://doc.pcsoft.fr/ext/images/fr/note_v2.png?478445243) Exemple :
L'ensemble des informations à imprimer est contenu dans le fichier de données HFSQL "Client". Les données sont affichées dans des champs rubriques. Pour programmer la lecture des enregistrements, la méthode est la suivante : - Lecture du premier enregistrement du fichier de données "Client" dans l'événement "Ouverture" de l'état" (fonction HLitPremier).
HLitPremier(Client, NumClient)
- L'événement "Lecture des données" de l'état permet de gérer la fin du fichier de données. Selon le cas, les valeurs suivantes sont renvoyées :
- Vrai : fin du fichier non atteinte (étape 3 exécutée).
- Faux : fin du fichier atteinte (étape 3 non exécutée).
SI HEnDehors() = Vrai ALORS
RENVOYER Faux
SINON
RENVOYER Vrai
FIN
- L'événement "Avant impression" du bloc Corps permet de gérer les enregistrements du fichier de données :
- Affectation des valeurs des rubriques dans les champs de l'état.
- Lecture de l'enregistrement suivant.
RUB_Société = Client.Societe
RUB_Nom = Client.NomClient
RUB_Adresse = Client.Adresse
RUB_CP = Client.CP
RUB_Ville = Client.Ville
HLitSuivant(Client)
- L'événement "Après impression" du bloc Corps permet de gérer un saut de page, dans le cas où chaque page ne doit contenir qu'un seul bloc Corps.
Remarque : Dans la fenêtre de description du bloc Corps, l'option "Saut de page après le bloc" ne s'applique pas dans le cas d'un état sur une source de données programmée.
SI HEnDehors() = Faux ALORS
iTerminePage()
FIN
Ordre d'exécution des différents événements WLangage L'ordre d'exécution des différents événements WLangage permettant de lire les enregistrements est présenté dans le tableau suivant : | | Ordre d'exécution des événements de l'état | Programmation nécessaire à la lecture des données |
---|
1. Ouverture de l'état | Lecture du premier enregistrement (fonction HLitPremier par exemple). | 2. Lecture des données de l'état | Gestion de la fin du fichier de données. | 3. Avant impression du bloc Corps | Affectation des valeurs des rubriques dans les champs de l'état et lecture de l'enregistrement suivant (fonction HLitSuivant par exemple). |
Documentation également disponible pour…
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|