PC SOFT

DOCUMENTATION EN LIGNE
DE WINDEV, WEBDEV ET WINDEV MOBILE

  • Présentation
  • Création du bloc Itération
  • Imprimer un bloc Itération
  • Remplacer un bloc existant
  • Ajouter un bloc supplémentaire à l'état
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
Présentation
Le bloc Itération est un bloc libre, créé manuellement sous l'éditeur d'états. Il peut être utilisé comme n'importe quel autre type de bloc. Par exemple, un bloc Itération peut être utilisé pour remplacer un bloc Haut de page pour différencier les pages paires et les pages impaires.Le bloc Itération est un bloc libre, créé manuellement sous l'éditeur d'états. Il peut être utilisé comme n'importe quel autre type de bloc. Par exemple, un bloc Itération peut être utilisé pour remplacer un bloc Entête de page pour différencier les pages paires et les pages impaires.
La substitution de blocs est réalisée en programmation grâce à la fonction iSubstBloc. Il est également possible d'imprimer un bloc spécifique grâce à la fonction iImprimeBloc.
Versions 19 et supérieures
Remarque : A partir de la version 19, les plans sont disponibles dans les états. Dans la majorité des cas, l'utilisation des plans dans les états permet de remplacer l'utilisation des blocs d'itération. L'utilisation des plans dans les états est plus simple que l'utilisation des blocs d'itération. Pour plus de détails, consultez Les plans.
Nouveauté 19
Remarque : A partir de la version 19, les plans sont disponibles dans les états. Dans la majorité des cas, l'utilisation des plans dans les états permet de remplacer l'utilisation des blocs d'itération. L'utilisation des plans dans les états est plus simple que l'utilisation des blocs d'itération. Pour plus de détails, consultez Les plans.
Remarque : A partir de la version 19, les plans sont disponibles dans les états. Dans la majorité des cas, l'utilisation des plans dans les états permet de remplacer l'utilisation des blocs d'itération. L'utilisation des plans dans les états est plus simple que l'utilisation des blocs d'itération. Pour plus de détails, consultez Les plans.
Création du bloc Itération
Pour créer un bloc Itération :
  1. Effectuez une des manipulations suivantes sous l'éditeur d'états :
    • sélectionnez l'option "Insertion .. Nouveau bloc".sous le volet "Création", dans le groupe "Structure", déroulez "Blocs".
    • sélectionnez l'option "Ajouter un bloc" du menu contextuel de l'état (clic droit sur l'état en cours de création).
    • cliquez sur le bouton "Ajouter un bloc" dans l'onglet "Blocs" de la description de l'état.
  2. Sélectionnez le type "Bloc d'itération".
Imprimer un bloc Itération
Un bloc Itération permet de :
  • remplacer un bloc existant.
  • ajouter un bloc supplémentaire à l'état.

Remplacer un bloc existant

La programmation nécessaire au remplacement d'un bloc existant est illustrée par l'exemple suivant :

Le haut de page de mon état doit être différent pour les pages paires et les pages impaires.
Le bloc Haut de page (bloc "HautPage") correspond aux pages impaires (il sera imprimé sur la page 1,3,5, ...). Ce bloc sera donc imprimé sur la première page de mon état.
Le bloc Itération (bloc "Itération") correspond aux pages paires.
  1. Ajoutez si nécessaire un bloc Haut de page (option "Insertion .. Nouveau bloc .. Haut de page"). Le nom de ce bloc est "HautPage".Ajoutez si nécessaire un bloc Haut de page : sous le volet "Création", dans le groupe "Structure", déroulez "Blocs" et sélectionnez "Haut de page". Le nom de ce bloc est "HautPage".
  2. Personnalisez le bloc "HautPage" comme celui correspondant aux pages impaires.
  3. Dans le traitement "Après impression" du bloc "HautPage", saisissez le code suivant :
    // --Après impression de HautPage
    // Substitution du bloc HautPage par le bloc
    // Itération sur la prochaine page de mon état
    iSubstBloc(HautPage, Itération)
  4. Ajoutez si nécessaire un bloc Itération (option "Insertion .. Nouveau bloc .. Bloc d'itération"). Le nom de ce bloc est "Iteration".Ajoutez si nécessaire un bloc Itération : sous le volet "Création", dans le groupe "Structure", déroulez "Blocs" et sélectionnez "Bloc d'itération". Le nom de ce bloc est "Itération".
  5. Personnalisez le bloc "Itération" comme celui correspondant aux pages paires.
  6. Dans le traitement "Après impression" du bloc "Itération", saisissez le code suivant :
    // --Après impression de Itération
    // Annulation de la substitution du bloc HautPage
    // par le bloc Itération sur la prochaine page de mon état
    iSubstBloc(HautPage, "")
Remarque : Pour substituer un bloc Bas de page, il est conseillé d'utiliser des blocs de même hauteur pour éviter des problèmes d'impression.

Ajouter un bloc supplémentaire à l'état

La programmation nécessaire à l'ajout d'un bloc Itération supplémentaire est illustrée par l'exemple suivant :
L'état "ETAT_EtatProduit" imprime la description de chaque produit proposé à la vente (une rupture est effectuée sur "NumProduit"). Certains produits font l'objet d'une promotion. Dans ce cas, la rubrique "Promotion" du fichier "Produit" correspond à Vrai. Cette rubrique est de type booléen.
Pour les produits en promotion, le bloc "Itération" est ajouté à l'état. Ce bloc décrit le type de promotion s'appliquant au produit en cours (achat de deux produits pour le prix d'un, 20% du produit gratuit en plus, ...).
  1. Ajoutez si nécessaire un bloc Itération (option "Insertion .. Nouveau bloc .. Bloc d'itération"). Le nom de ce bloc est "Iteration".Ajoutez si nécessaire un bloc Itération : sous le volet "Création", dans le groupe "Structure", déroulez "Blocs" et sélectionnez "Bloc d'itération". Le nom de ce bloc est "Itération".
  2. Personnalisez le bloc "Itération".
  3. Dans le traitement "Après impression" du bloc Bas de rupture de l'état, saisissez le code suivant :
    // --Après impression du Bas de rupture
    // Est-ce que le produit en cours d'impression est en promotion ?
    SI MaSource.Promotion = Vrai ALORS
    // Impression du bloc Itération
    iImprimeBloc("Itération")
    FIN
    Dans le traitement "Après impression" du bloc Fin de rupture de l'état, saisissez le code suivant :
    // --Après impression du Fin de rupture
    // Est-ce que le produit en cours d'impression est en promotion ?
    SI MaSource.Promotion = Vrai ALORS
    // Impression du bloc Itération
    iImprimeBloc("Itération")
    FIN
Version minimum requise
  • Version 9
Documentation également disponible pour…
Commentaires
Cliquez sur [Ajouter] pour publier un commentaire