PC SOFT

DOCUMENTATION EN LIGNE
DE WINDEV, WEBDEV ET WINDEV MOBILE

  • Présentation
  • Créer un état sur variable
  • Imprimer un état sur une variable
  • Imprimer un état sur une variable
  • Exemples WINDEV et WINDEV Mobile
  • Exemple WEBDEV
  • Remarques
  • Imprimer un état paramétré basé sur une variable
  • Exemple WINDEV et WINDEV Mobile
  • Exemple WEBDEV
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaEtats et RequêtesCode Utilisateur (MCU)
WEBDEV
WindowsLinuxPHPWEBDEV - Code Navigateur
WINDEV Mobile
AndroidWidget AndroidiPhone/iPadApple WatchUniversal Windows 10 AppWindows Mobile
Autres
Procédures stockées
Etat sur variable (Databinding)
Présentation
L'état sur variable permet d'imprimer directement les informations présentes dans une variable WLangage. Cette variable peut être :
  • une variable globale au projet,
  • une variable globale à une fenêtre ou une page.
  • une variable globale à une collection de procédures.
Cette variable peut être par exemple une variable de type tableau simple, un membre d'une classe, un membre d'une structure ou un membre d'une variable de type avancé.

Important

Le logiciel Etats & Requêtes ne permet pas de créer ou de modifier des états sur variable.
Versions 18 et supérieures
iPhone/iPad Cette fonctionnalité est désormais disponible pour les applications iPhone/iPad.
Nouveauté 18
iPhone/iPad Cette fonctionnalité est désormais disponible pour les applications iPhone/iPad.
iPhone/iPad Cette fonctionnalité est désormais disponible pour les applications iPhone/iPad.
Versions 21 et supérieures
Universal Windows 10 App Cette fonctionnalité est désormais disponible en mode Universal Windows 10 App.
Nouveauté 21
Universal Windows 10 App Cette fonctionnalité est désormais disponible en mode Universal Windows 10 App.
Universal Windows 10 App Cette fonctionnalité est désormais disponible en mode Universal Windows 10 App.
Créer un état sur variable
Pour créer un état sur variable :
  1. Sélectionnez l'option "Fichier .. Nouveau .. État". L'assistant de création d'un état se lance. Cliquez sur parmi les boutons d'accès rapide.
    • Dans la roue qui s'affiche, cliquez sur "Etat". 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 se lance.
  2. Dans l'assistant, choisissez la présentation de votre état (tableau, fiche, étiquette, ...). Pour plus de détails, consultez Les différents types d'états.
  3. Sélectionnez si nécessaire le modèle d'états à utiliser. Un modèle d'états permet de respecter une mise en page spécifique. Pour plus de détails sur les modèles d'états, consultez Les modèles d'états.
  4. Sélectionnez la source de données de l'état (option "D'une variable existante").
  5. Sélectionnez la variable de type tableau sur laquelle est basé l'état. Seules les variables globales au projet ou aux fenêtres présentes dans l'application en cours sont proposées.
  6. Pour grouper les enregistrements, il est possible de créer des ruptures sur les éléments du tableau. Pour créer des ruptures, répondez "Oui" à la question "Voulez-vous des ruptures dans l'état ?".
    Le plan suivant permet alors de sélectionner les variables correspondant aux ruptures.
    Attention : Avant d'imprimer l'état, dans le cas d'un tableau, il sera nécessaire de trier par programmation la variable tableau selon la variable de rupture. Ce tri sera par exemple réalisé avec la fonction Trie.
    Pour plus de détails sur les ruptures, consultez les Ruptures dans un état.
  7. Sélectionnez les variables à afficher dans l'état. Modifiez si nécessaire l'ordre d'affichage des différents champs dans l'état à l'aide des boutons fléchés à droite de la liste.
  8. Sélectionnez le bloc dans lequel chaque variable sera affiché. Il est également possible de renommer le libellé du champ.
    Remarque : Par défaut, les champs associés aux variables sont affichées dans le bloc Corps. Le libellé du champ correspond par défaut au nom de la variable. Ce libellé pourra être modifié également directement sous l'éditeur d'états.
  9. Si la variable associée à l'état contient au moins une rubrique de type numérique, il est possible de réaliser des calculs sur ces rubriques. Spécifiez le calcul réalisé pour chaque rubrique (somme, moyenne, ...). Deux types de calcul sont possibles :
    • calcul général : un champ Calculé sera créé dans le bloc Fin de document.
    • calcul sur rupture : un champ Calculé sera créé dans le bloc Bas de rupture. Dans les calculs sur rupture, le résultat du calcul est réinitialisé à chaque rupture. Pour réaliser un calcul sur rupture, une rupture doit être présente dans l'état en cours de création.
  10. Selon le type d'état en cours de création, indiquez les options spécifiques correspondantes.
    Type d'étatOptions spécifiques
    État de type : Tableau + GrapheType du graphe, aspect du graphe, ...
    Options détaillées dans la page Etat Tableau + Graphe
    État de type GrapheType du graphe, aspect du graphe, ...
    Options détaillées dans la page Etat Graphe
    État sur formulaireImage du formulaire, impression de l'image du formulaire, ...
    Options détaillées dans la page Etat sur formulaire
    État ÉtiquetteFormat des étiquettes, nombre d'exemplaires identiques, ...
    Options détaillées dans la page Etat Étiquette

    Type d'étatOptions spécifiques
    État sur formulaireImage du formulaire, impression de l'image du formulaire, ...
    Options détaillées dans la page Etat sur formulaire
    État ÉtiquetteFormat des étiquettes, nombre d'exemplaires identiques, ...
    Options détaillées dans la page Etat Étiquette
  11. 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.
    Remarque : Par défaut, les champs de l'état sont disposés sur une seule colonne. Pour réaliser un état multicolonne, il suffit de spécifier le nombre de colonnes voulues dans l'onglet "Format" de la fenêtre de description de l'état.
  12. Sélectionnez le gabarit de l'état si nécessaire.
  13. Saisissez le nom et le titre de l'état (nom du fichier ".WDE" correspondant à l'état). Ce nom permettra d'identifier l'état dans vos programmes.
  14. Validez la création de l'état.
  15. L'éditeur d'états propose automatiquement de changer le format de l'état utilisé si les conditions suivantes sont réunies :
    • l'état en cours de création comporte un tableau.
    • le format de l'état ne permet pas d'afficher l'ensemble des colonnes du tableau.
  16. Si nécessaire, indiquez le mode de réduction de l'état :
    • Versions 19 et supérieures
      Imprimer l'état sur plusieurs pages. Dans ce cas, l'utilisateur final devra assembler les pages. Pour plus de détails, consultez Impression multipage.
      Nouveauté 19
      Imprimer l'état sur plusieurs pages. Dans ce cas, l'utilisateur final devra assembler les pages. Pour plus de détails, consultez Impression multipage.
      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.
  17. L'état en cours de création s'affiche sous l'éditeur d'états.
Imprimer un état sur une variable

Imprimer un état sur une variable

Pour imprimer un état sur une variable, il suffit de :
  1. Initialiser la valeur de la variable utilisée.
  2. Si nécessaire, trier le tableau (par exemple avec la fonction TableauTrie).
  3. Paramétrer la destination de l'impression de l'état :
    • WINDEV En WINDEV, grâce à la fonction iAperçu (aperçu avant impression, impression dans un fichier HTML, ...).
    • WEBDEV - Code Serveur En WEBDEV, grâce à la fonction iDestination (impression dans un fichier HTML, ...).
    • Windows Mobile En Windows Mobile, grâce à la fonction iConfigure ou iParamètre. Ces fonctions ouvrent une boîte de dialogue dans laquelle l'utilisateur sélectionne l'imprimante à utiliser par défaut.
      Pour plus de détails, consultez Modes d'impression d'un état.
  4. Préciser le nom de l'état à imprimer grâce à la fonction iImprimeEtat.
Si nécessaire, il est possible de spécifier des paramètres supplémentaires lors de l'impression d'un état paramétré basé sur une variable. Par exemple, il est possible de passer en paramètre le nom de la variable tableau à utiliser. Dans ce cas, l'état est un état paramétré sur une variable tableau (voir paragraphe suivant).

Important

Sous le logiciel Etats & Requêtes, il est possible d'imprimer un état :
  • soit en lançant une impression (icône ).
  • soit en testant l'état (icône ).
Il n'est donc pas nécessaire de programmer l'impression de l'état.
WINDEVWINDEV Mobile

Exemples WINDEV et WINDEV Mobile

L'état "ETAT_gglEvenement" est un état basé sur la variable MesEvenements de type gglEvénement. Cet état permet d'imprimer la liste des événements d'un agenda Google.
L'état "ETAT_gglEvenement" s'imprime lors d'un clic sur le bouton "BTN_Evénement". Dans cet exemple, le code de clic du bouton "BTN_Evénement" est le suivant :
  • WINDEV Code WINDEV :
    // Ouvrir la fenêtre d'aperçu
    iAperçu()
    // Imprimer l'état ETAT_gglEvenement
    iImprimeEtat(ETAT_gglEvenement)
  • Windows Mobile Code Windows Mobile :
    // Sélection de l'imprimante
    iConfigure()
    // Imprimer l'état ETAT_gglEvenement
    iImprimeEtat(ETAT_gglEvenement)
WEBDEV - Code Serveur

Exemple WEBDEV

L'état "ETAT_gglEvenement" est un état basé sur la variable MesEvenements de type gglEvénement. Cet état permet d'imprimer la liste des événements d'un agenda Google.
L'état "ETAT_gglEvenement" s'affiche dans un fichier PDF lors d'un clic sur le lien "LIEN_Evénement". Le fichier PDF est ensuite affiché sur le navigateur. Dans cet exemple, le code de clic serveur du lien "LIEN_Evénement" est le suivant :
// Génère un nom de fichier PDF unique
NomFicUnique est une chaîne
NomFicUnique = fRepWeb() + "\" + "ETAT_gglEvenement_" + ...
DateSys() + HeureSys() + ".pdf"
// Paramètre la destination de l'impression
iDestination(iPDF, NomFicUnique)
// Imprime l'état ETAT_gglEvenement
iImprimeEtat(ETAT_gglEvenement)
// Envoie le fichier dans le navigateur
FichierAffiche(NomFicUnique, "application/pdf")
// Supprime le fichier
fSupprime(NomFicUnique)

Remarques

  • La propriété ..NomSource utilisée dans le code de l'état permet de connaître et de changer le nom de la variable associée à l'état.
  • La propriété ..RubriqueAffichee utilisée dans le code de l'état permet de connaître et de changer le nom de la variable associée à la rubrique.

Imprimer un état paramétré basé sur une variable

Pour imprimer un état paramétré, il est nécessaire de passer des paramètres. Pour plus de détails, consultez les Etats paramétrés.
Pour imprimer un état paramétré basé sur une variable, il suffit de :
  1. Initialiser la valeur de la variable tableau utilisée.
  2. Si nécessaire, trier le tableau (par exemple avec la fonction TableauTrie).
  3. Paramétrer la destination de l'impression de l'état :
    • WINDEV En WINDEV, grâce à la fonction iAperçu (aperçu avant impression, impression dans un fichier HTML, ...).
    • WEBDEV - Code Serveur En WEBDEV, grâce à la fonction iDestination (impression dans un fichier HTML, ...).
    • WINDEV Mobile En WINDEV Mobile, grâce à la fonction iConfigure ou iParamètre. Ces fonctions ouvrent une boîte de dialogue dans laquelle l'utilisateur sélectionne l'imprimante à utiliser par défaut.
      Pour plus de détails, consultez Modes d'impression d'un état.
  4. Préciser les paramètres suivants grâce à la fonction iImprimeEtat :
    • le nom de l'état à imprimer.
    • les différents paramètres attendus par l'état (dans l'ordre spécifié dans l'état).
WINDEVWINDEV Mobile

Exemple WINDEV et WINDEV Mobile

Une fenêtre liste les agendas et leurs événements. L'état "ETAT_gglEvenement" s'imprime lors d'un clic sur le bouton "Imprimer les événements de l'agenda". Cet état attend en paramètre l'agenda pour lequel les événements doivent être listés.
WINDEV Code WINDEV :
  • le code de clic du bouton "Imprimer les événements de l'agenda" est le suivant :
    // Ouvrir la fenêtre d'aperçu
    iAperçu()
    // Imprimer l'état avec le passage des paramètres
    iImprimeEtat(ETAT_gglEvenement, Agenda[1])
  • le code de l'état est le suivant :
    // Récupérer les paramètres passés à l'état
    PROCÉDURE ETAT_gglEvenement(MonAgenda)
Windows Mobile Code Windows Mobile :
  • le code de clic du bouton "Imprimer les événements de l'agenda" est le suivant :
    // Sélection de l'imprimante
    iConfigure()
    // Imprimer l'état avec le passage des paramètres
    iImprimeEtat(ETAT_gglEvenement, Agenda[1])
  • le code de l'état est le suivant :
    // Récupérer les paramètres passés à l'état
    PROCÉDURE ETAT_gglEvenement(MonAgenda)
WEBDEV - Code Serveur

Exemple WEBDEV

L'état "ETAT_gglEvenement" s'affiche dans un fichier PDF lors d'un clic sur le lien "Imprimer les événements de l'agenda". Le fichier PDF est ensuite affiché sur le navigateur. Cet état attend en paramètre l'agenda pour lequel les événements doivent être listés.
Dans cet exemple :
  • le code de clic du bouton "Imprimer les événements de l'agenda" est le suivant :
    // Génère un nom de fichier unique
    NomFicUnique est une chaîne = fRepWeb() + "\" + "Evenementggl_" + ...
    DateSys() + HeureSys() + ".pdf"
    // Paramètre la destination de l'impression
    iDestination(iPDF, NomFicUnique)
    // Génère l'état
    iImprimeEtat(ETAT_gglEvenement, MonAgenda)
    // Envoie le fichier dans le navigateur
    FichierAffiche(NomFicUnique, "application/pdf")
    // Supprime le fichier
    fSupprime(NomFicUnique)
  • le code de l'état est le suivant :
    // Récupérer les paramètres passés à l'état
    PROCÉDURE ETAT_gglEvenement(MonAgenda)
Liste des exemples associés :
WD Etats Exemples didactiques (WINDEV) : WD Etats
[ + ] Cet exemple montre les différentes méthodes pour réaliser un état :

- impressions basées sur différentes sources de données (requêtes, variables, ...)
- impressions basées sur des champs (Table, Tableur, TCD, ...)
- impression d'états composés
- impressions spécifiques (portrait / paysage, état avec filigrane, état avec code-barres, ...)
Version minimum requise
  • Version 15
Documentation également disponible pour…
Commentaires
Cliquez sur [Ajouter] pour publier un commentaire