IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

WinDev Discussion :

Rubrique dans DebutDocument ou Hautdepage


Sujet :

WinDev

  1. #1
    Membre averti
    Directeur technique
    Inscrit en
    Novembre 2006
    Messages
    584
    Détails du profil
    Informations personnelles :
    Âge : 61

    Informations professionnelles :
    Activité : Directeur technique

    Informations forums :
    Inscription : Novembre 2006
    Messages : 584
    Points : 403
    Points
    403
    Par défaut Rubrique dans DebutDocument ou Hautdepage
    Bonjour à tous,

    Je débute avec les Etats et n'ai peut-être pas encore compris la philosophie.

    Est-il possible d'Imprimer une rubrique dans un Debut_Document ou Haut_de_page ou bien seulement dans le Corps?

    J'ai tout betement un fichier Versement et un autre Lignes Versement et je souhaite, une fois les infos versement Affichées Lister mes Lignes Versement.
    Il y a la possibilité de faire des sous etats mais ne peut-on pas tout faire dans un seul états?

    Merci de votre attention
    Un seul conseil: la règle des 3S.

  2. #2
    R&B
    R&B est déconnecté
    Membre éprouvé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2005
    Messages
    571
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Drôme (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Distribution

    Informations forums :
    Inscription : Mars 2005
    Messages : 571
    Points : 1 263
    Points
    1 263
    Par défaut
    Il est tout a fait possible d'imprimer un état avec en entête le versement et ses lignes en corps.

    Maintenant vous devez comprendre que l'état va boucler son corps sur le parcours des lignes... et que vous "remonterez" à l'entête par le moyen de l'identifiant versement qui devrait aussi dans les lignes.

    Ainsi dans le bloc qui vous servira d'entête (haut de page ou début de document selon votre choix de répétition par page), il suffit de vous positionner sur votre enregistrement d'entête et d'affecter les champs voulus pour afficher votre entête.
    Le corps sera constitué de rubriques appartenant au fichier ligne.

    L'état parcours le fichier des ligne en étant borné sur l'identifiant versement pour la borne minimum et maximum.

    Vu votre demande, je vous recommande vivement le guide d'auto formation et de passer du temps à tester les différentes possibilité des états (parcours, ruptures etc).

  3. #3
    Membre averti
    Directeur technique
    Inscrit en
    Novembre 2006
    Messages
    584
    Détails du profil
    Informations personnelles :
    Âge : 61

    Informations professionnelles :
    Activité : Directeur technique

    Informations forums :
    Inscription : Novembre 2006
    Messages : 584
    Points : 403
    Points
    403
    Par défaut
    Merci pour ta réponse.
    En fait j'ai testé avec succès plusieurs méthodes (et pas grâce à l'auto formation).

    Pour un champ de DebutDeDocument qui n'est pas lié à la source de donnée on peut utiliser un champ calculé avec comme code "Avant impression" du dit champ:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    HLitRecherchePremier(tblEntite, EntiteID, "X")
    SI HTrouve() = Vrai ALORS
        CALC_Entite = tblEntite.Description
    FIN
    Pour un champ de HautDePage, si sa valeur est dans la source de donnée on peut utiliser une rubrique avec "Avant impression":
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    RUB_VersementIDHdP = sdSQL.VersementIDParent
    On pourrait aussi utiliser des champs calculés mais avec un accès bdd pour chaque champ cela ne semble pas optimisé.

    On peut aussi utiliser les ruptures mais c'est un peu bête si seulement un enregistrement est demandé...

    Peut-être encore d'autres façon de faire...
    Un seul conseil: la règle des 3S.

  4. #4
    Expert éminent
    Avatar de frenchsting
    Homme Profil pro
    multitâches-multifonctions
    Inscrit en
    Juin 2003
    Messages
    5 202
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : multitâches-multifonctions
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2003
    Messages : 5 202
    Points : 9 190
    Points
    9 190
    Par défaut
    Plutôt que de passer sur chaque rubrique et mettre du code dedans, il vaut mieux mettre ton code dans le bloc directement :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    AVANT impression de HAUT_DE_PAGE
    HLitRecherchePremier(tblEntite, EntiteID, "X")
    SI HTrouve(tblEntite) = Vrai ALORS
        CALC_Nom = tblEntite.Nom
        CALC_Adresse = tblEntite.adresse
        CALC_Entite = tblEntite.Description
    FIN
    Un conseil : précise le fichier concerné par le htrouve, cela t'évitera quelques surprises.
    Commencez toujours appuyer sur la touche F1 et puis n'hésitez à passer par un moteur de recherche...
    Le forum est fait pour répondre aux questions : pas la peine de me les envoyer par MP. Merci.

    Sur internet, tout est vrai ! Honoré de Balzac
    Make it real not fantasy... Herman Rarebell

Discussions similaires

  1. Réponses: 6
    Dernier message: 14/06/2008, 17h10
  2. Réponses: 1
    Dernier message: 12/06/2007, 21h38
  3. Réponses: 4
    Dernier message: 24/01/2006, 10h41
  4. Ajout de rubrique dans plusieurs table
    Par flo456 dans le forum ASP
    Réponses: 3
    Dernier message: 19/10/2005, 09h01

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo