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 :

Impression d'un état sur table dynamique de colonnes clonées [WD14]


Sujet :

WinDev

  1. #1
    Membre éclairé
    Profil pro
    Développeur informatique
    Inscrit en
    Décembre 2002
    Messages
    466
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Somme (Picardie)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Décembre 2002
    Messages : 466
    Points : 805
    Points
    805
    Par défaut Impression d'un état sur table dynamique de colonnes clonées
    Bonjour à tous

    Je suis actuellement en train de développer un requêteur permettant de lancer un nombre infini de requêtes sur n'importe quelle base Hyperfile.
    La majorité des fonctionnalités marchent nickel chrome. L'execution de requête, l'enregistrement, le chargement, etc.

    Cependant il faut que j'imprime le contenu d'un champ table dans un état. Là, ça me pose problème...

    J'ai créé un état sur table, donc, dont voila le code d'initialisation :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
     
    PROCEDURE E_Impression_Table(w_numplan)
     
    // ===== Déclaration des variables
    nomLogiqueCompletColonne est une chaîne  // Nom complet de la colonne. Ex : "F_Menu.Table_Resultat_1._COL1"
    nomLogiqueAbregeColonne est une chaîne // Nom de la colonne. Ex : "_COL1"
    TitreColonne est une chaîne // Titre de la colonne
     
    // ===== Initialisation des variables
     
     
    // ===== Traitements
    LBL_Descriptif = {"F_Menu.SAI_Descripif_" + w_numplan,indChamp} // Un champ situé au début du document et qui contient le descriptif de la requête
    E_Impression_Table..NomSource = "F_Menu.Table_Resultat_" + w_numplan
    TITREDOC = F_Menu.SAI_Nom_Plan
     
    POUR indiceColonne = 1 _A_ TableOccurrence("F_Menu.Table_Resultat_" + w_numplan,toColonne)
    	nomLogiqueAbregeColonne = TableEnumèreColonne("F_Menu.Table_Resultat_" + w_numplan,indiceColonne)
    	nomLogiqueCompletColonne = "F_Menu.Table_Resultat_" + w_numplan + "." + TableEnumèreColonne("F_Menu.Table_Resultat_" + w_numplan,indiceColonne)
    	TitreColonne = {nomLogiqueCompletColonne,indChamp}..Titre
    	ChampClone(Colonne1_LIB1,"COL_" + nomLogiqueAbregeColonne)
    	ChampClone(Colonne11,"CEL_" + nomLogiqueAbregeColonne)
    	{"COL_" + nomLogiqueAbregeColonne,indChamp} = TitreColonne
    	{"CEL_" + nomLogiqueAbregeColonne,indChamp}..RubriqueAffichée = nomLogiqueCompletColonne
    FIN
     
    Colonne1_LIB1..Visible = Faux
    Colonne11..Visible = Faux
    Donc ce que je cherche à faire, c'est pour chaque colonne de la table source, cloner une colonne dans l'état qui est ensuite liée à la colonne présente dans la table source.
    Mettre un duplicatat de la table dans l'état.

    Cependant je ne réussis pas du tout à obtenir le résultat escompté...

    Un exemple sera peut être plus parlant...
    Nom : menu.GIF
Affichages : 727
Taille : 13,3 Ko

    J'obtiens dans le cas présent un état qui contient une seule colonne : Datinv, et qui est à vide dans mon état... :/

    Si quelqu'un voit d'ou vient le problème, je suis preneur

    Merci d'avance

  2. #2
    Expert confirmé
    Homme Profil pro
    ?
    Inscrit en
    Juillet 2002
    Messages
    2 378
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : ?

    Informations forums :
    Inscription : Juillet 2002
    Messages : 2 378
    Points : 4 494
    Points
    4 494
    Par défaut
    Bonjour

    il y bien ExécuteFAA(Table, faaImprimeEtatSurTable), mais ça doit générer un nouvel état à chaque fois et je suppose que ça ne te conviendra pas.

    Pour ce genre de chose je préfère programmer entièrement l'état. On fait tout ce qu'on veut avec les iImprime, iCadre ...
    En faisant une classe ou une collection dédiée tu pourras ensuite utiliser cette fonctionnalité dans toutes tes applications

  3. #3
    Membre éclairé
    Profil pro
    Développeur informatique
    Inscrit en
    Décembre 2002
    Messages
    466
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Somme (Picardie)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Décembre 2002
    Messages : 466
    Points : 805
    Points
    805
    Par défaut
    Quelqu'un m'avait suggéré aussi la programmation de l'état.

    Cependant je n'arrive pas du tout à saisir pourquoi une seule colonne apparait dans mon état... :/

    EDIT : ah non c'est bon... Le clonage dans les champs table met les colonnes les unes derrière les autres... Tandis que dans un état les champs sont superposés... D'ou le fait qu'un seul apparait

    Je vais tenter le parcours par programmation.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [AC-2003] impression d'un état sur access
    Par bmorvan dans le forum VBA Access
    Réponses: 1
    Dernier message: 17/06/2011, 13h13
  2. [WD12E] État sur Table Mémoire
    Par no_me_entero dans le forum WinDev
    Réponses: 1
    Dernier message: 01/06/2009, 23h08
  3. Réponses: 5
    Dernier message: 29/01/2009, 14h29
  4. [IHM] Forcer l'impression d'un état sur une page
    Par NiKoTiNe dans le forum IHM
    Réponses: 2
    Dernier message: 17/07/2007, 07h41
  5. Impression d'un état sur planche étiquette
    Par ip203 dans le forum IHM
    Réponses: 6
    Dernier message: 12/02/2007, 08h17

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