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 :

Table remplis par programmation


Sujet :

WinDev

  1. #1
    Membre du Club
    Homme Profil pro
    Développeur Web
    Inscrit en
    Janvier 2014
    Messages
    180
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Janvier 2014
    Messages : 180
    Points : 58
    Points
    58
    Par défaut Table remplis par programmation
    Bonjour,

    je dois faire un tableau sous windev, j'ai du mal a assimiler la partie remplir par programmation !!!

    en fait j'arrive a afficher des données présente dans un fichier.

    Ce que j'aimerais faire c'est de retravailler les données avant de les afficher dans mon tableau.

    voici le tableau
    Nom : tableau1.png
Affichages : 378
Taille : 17,2 Ko
    et voici ce que j'aimerais obtenir :
    Nom : tableau2.png
Affichages : 374
Taille : 26,0 Ko

  2. #2
    Membre éprouvé
    Inscrit en
    Avril 2008
    Messages
    1 129
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 1 129
    Points : 1 283
    Points
    1 283
    Par défaut
    Salut!

    Je t'exhorte à :

    - Créer une table mémoire
    - Parcourir ton fichier et remplir ta table (à l'aide des fonctions hlit et tableajouteligne)

    Bon DEV

  3. #3
    Membre émérite
    Femme Profil pro
    .
    Inscrit en
    Janvier 2012
    Messages
    999
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : .
    Secteur : Tourisme - Loisirs

    Informations forums :
    Inscription : Janvier 2012
    Messages : 999
    Points : 2 526
    Points
    2 526
    Par défaut
    Salut!

    Je t'exhorte à :

    - Faire de toute urgence, et sérieusement, le cours d'autoformation.

    Bonne form.

  4. #4
    Membre du Club
    Homme Profil pro
    Développeur Web
    Inscrit en
    Janvier 2014
    Messages
    180
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Janvier 2014
    Messages : 180
    Points : 58
    Points
    58
    Par défaut
    Peut-on remplir une cellule avec une couleur par programmation?

    en fait j'aimerais colorer les cellules vide.

  5. #5
    Rédacteur/Modérateur

    Avatar de dsr57
    Homme Profil pro
    Analyste programmeur senior
    Inscrit en
    Octobre 2003
    Messages
    1 139
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Analyste programmeur senior
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2003
    Messages : 1 139
    Points : 4 681
    Points
    4 681
    Billets dans le blog
    22
    Par défaut
    Bonjour

    La propriété couleurFond, voir l'aide en ligne : http://doc.pcsoft.fr/fr-FR/?2510022

    Bon dev
    ------------------------------------------------------------------------------------------------------------------------------------------
    Mon message vous a aidé, pensez à remercier . La discussion est résolue, n'oubliez pas le tag
    ------------------------------------------------------------------------------------------------------------------------------------------
    Site perso : Formation, Expérience, Réalisations, ...
    Blog : Le Blog de DSR57 - Programmation WinDev

  6. #6
    Membre éprouvé
    Profil pro
    Inscrit en
    Mars 2003
    Messages
    552
    Détails du profil
    Informations personnelles :
    Localisation : Laos

    Informations forums :
    Inscription : Mars 2003
    Messages : 552
    Points : 1 193
    Points
    1 193
    Par défaut
    A défaut de ne pas vouloir faire le cours d'autoformation, vous avez l'aide windev....

    Si vous faites l'effort de chercher par exemple : "couleur table" dans l'aide de windev....
    On tombe sur cela : http://doc.pcsoft.fr/fr-FR/?2510022&...fond_propriete

    Après je vous l'accorde, il faut prendre le temps de lire et de comprendre.

  7. #7
    Membre du Club
    Homme Profil pro
    Développeur Web
    Inscrit en
    Janvier 2014
    Messages
    180
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Janvier 2014
    Messages : 180
    Points : 58
    Points
    58
    Par défaut
    Oui en faite je cherchais dans les fonction table en pensant qu'il y ai une fonction pour la couleur des cellules, alors il est vrai que j'aurai pue chercher plus loin !

    Cepandant, j'ai essayé un bout de code mais il ne fonctionne pas, pourriez vous m'aider svp ?

    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
    HExécuteRequête(REQ_horaire,hRequêteDéfaut,0)
    HLitPremier(REQ_horaire)
    TANTQUE HEnDehors() = Faux
    	jour est une chaîne
    	active est une chaîne
    	sHeureOuverture1 est une chaîne
    	sHeureOuverture2 est une chaîne
    	sHeureOuverture3 est une chaîne
    	sHeureOuverture4 est une chaîne
    	SI REQ_horaire.HeureDebut1 = "NULL" ALORS COL_Début..CouleurFond = RougeClair SINON sHeureOuverture1 = REQ_horaire.HeureDebut1
    	SI REQ_horaire.HeureFin1 = "NULL" ALORS sHeureOuverture2 = "Fermée" SINON sHeureOuverture2 = REQ_horaire.HeureFin1
    	SI REQ_horaire.HeureDebut2 = "NULL" ALORS sHeureOuverture3 = "Fermée" SINON sHeureOuverture3 = REQ_horaire.HeureDebut2
    	SI REQ_horaire.HeureFin2 = "NULL" ALORS sHeureOuverture4 = "Fermée" SINON sHeureOuverture4 = REQ_horaire.HeureFin2
    	SI REQ_horaire.Jour = 1 ALORS jour= "Lundi"
    	SI REQ_horaire.Jour = 2 ALORS jour= "Mardi"
    	SI REQ_horaire.Jour = 3 ALORS jour= "Mercredi"
    	SI REQ_horaire.Jour = 4 ALORS jour= "Jeudi"
    	SI REQ_horaire.Jour = 5 ALORS jour= "Vendredi"
    	SI REQ_horaire.Jour = 6 ALORS jour= "Samedi"
    	SI REQ_horaire.Jour = 7 ALORS jour= "Dimanche"
    	SI REQ_horaire.Actif = 0 ALORS active = "Non"
    	SI REQ_horaire.Actif = 1 ALORS active = "Oui"
    	TableAjoute(TABLE_Horaire_Hiver, jour +TAB+ "Hiver" +TAB+ active +TAB+ sHeureOuverture1 +TAB+ sHeureOuverture2 +TAB+ sHeureOuverture3 +TAB+ sHeureOuverture4)
    	HLitSuivant()
    FIN
    Dans ma fiche de donnée, j'ai des jours où les horaires sont à NULL et c'est celles-ci que je souhaite colorer.

  8. #8
    Membre du Club
    Homme Profil pro
    Développeur Web
    Inscrit en
    Janvier 2014
    Messages
    180
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Janvier 2014
    Messages : 180
    Points : 58
    Points
    58
    Par défaut
    Bon j'ai trouvé mon erreur mais je ne me suis pas aperçu que la couleur était sur toute la colonne, hors j'aimerais appliquer la couleur uniquement sur la cellule.
    J'arrive a dire applique la couleur sur la col_debut mais comment je dis de mettre la couleur sur la cellule?

  9. #9
    Membre éprouvé
    Profil pro
    Inscrit en
    Mars 2003
    Messages
    552
    Détails du profil
    Informations personnelles :
    Localisation : Laos

    Informations forums :
    Inscription : Mars 2003
    Messages : 552
    Points : 1 193
    Points
    1 193
    Par défaut
    Bonjour alors si je peux me permettre, si vous voulez prendre de bonne habitude de programmation :
    Citation Envoyé par cid5420 Voir le message
    ...

    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
    HExécuteRequête(REQ_horaire,hRequêteDéfaut,0) <-- de manière générale, toujours tester l'échec de fonction
    HLitPremier(REQ_horaire)
    TANTQUE HEnDehors() = Faux
    	jour est une chaîne    <-- de manière générale, sortez les déclaration en début de code, là vous redéclarer à chaque itération la variable....
    	active est une chaîne
    	sHeureOuverture1 est une chaîne
    	sHeureOuverture2 est une chaîne
    	sHeureOuverture3 est une chaîne
    	sHeureOuverture4 est une chaîne
    	SI REQ_horaire.HeureDebut1 = "NULL" ALORS COL_Début..CouleurFond = RougeClair SINON sHeureOuverture1 = REQ_horaire.HeureDebut1 
    	SI REQ_horaire.HeureFin1 = "NULL" ALORS sHeureOuverture2 = "Fermée" SINON sHeureOuverture2 = REQ_horaire.HeureFin1
    	SI REQ_horaire.HeureDebut2 = "NULL" ALORS sHeureOuverture3 = "Fermée" SINON sHeureOuverture3 = REQ_horaire.HeureDebut2
    	SI REQ_horaire.HeureFin2 = "NULL" ALORS sHeureOuverture4 = "Fermée" SINON sHeureOuverture4 = REQ_horaire.HeureFin2
    	SI REQ_horaire.Jour = 1 ALORS jour= "Lundi"
    	SI REQ_horaire.Jour = 2 ALORS jour= "Mardi"
    	SI REQ_horaire.Jour = 3 ALORS jour= "Mercredi"
    	SI REQ_horaire.Jour = 4 ALORS jour= "Jeudi"
    	SI REQ_horaire.Jour = 5 ALORS jour= "Vendredi"
    	SI REQ_horaire.Jour = 6 ALORS jour= "Samedi"
    	SI REQ_horaire.Jour = 7 ALORS jour= "Dimanche"
    	SI REQ_horaire.Actif = 0 ALORS active = "Non"
    	SI REQ_horaire.Actif = 1 ALORS active = "Oui"
    	TableAjoute(TABLE_Horaire_Hiver, jour +TAB+ "Hiver" +TAB+ active +TAB+ sHeureOuverture1 +TAB+ sHeureOuverture2 +TAB+ sHeureOuverture3 +TAB+ sHeureOuverture4) <-- de manière générale, préférer TableAjouteLigne() à TableAjoute(), car si votre chaine contient une tabulation, cela va tout décaler, et de plus TableAjouteLigne() est plus adapté pour une intégration 3-tiers
    	HLitSuivant() <-- de manière générale, pensez à préciser la source de données, dans le cas de plusieurs requête imbriqué, cela va devenir compliquer à débugger 
    FIN
    ...
    Ensuite comment le faire pour une cellule, si vous avez pris le temps de lire l'aide en ligne, la réponse EXACTE à votre question se trouve dedans... allez vous pouvez même être fainéant et lire en diagonale que les exemples jusqu'à trouver votre CAS....

  10. #10
    Membre du Club
    Homme Profil pro
    Développeur Web
    Inscrit en
    Janvier 2014
    Messages
    180
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Janvier 2014
    Messages : 180
    Points : 58
    Points
    58
    Par défaut
    Merci pour les conseilles,
    Alors oui je suis sur l'aide en ligne, seulement il faut connaitre le nom de la colonne et le numéro de ma ligne et je ne connait pas le numéro de ligne vue que je suis en train de la rajouter.

  11. #11
    Membre éprouvé
    Profil pro
    Inscrit en
    Mars 2003
    Messages
    552
    Détails du profil
    Informations personnelles :
    Localisation : Laos

    Informations forums :
    Inscription : Mars 2003
    Messages : 552
    Points : 1 193
    Points
    1 193
    Par défaut
    Je vous dirais simplement de regarder l'aide de la fonction : tableAjoute() ou tableAjouteLigne() : http://doc.pcsoft.fr/fr-FR/?3074006&...ligne_fonction

    C'est une fonction et pas une procédure... donc cela sous-entend que l'appel à cette fonction retourne quelque chose.

    EDIT : si vous voulez utiliser tableAjoute() alors regardez du côté de la fonction TableOccurrence() pour connaitre le nombre de ligne dans une table mémoire ou fichier, l'indice sera forcément égale au nombre de ligne vu que vous venez de l'ajouter

  12. #12
    Membre habitué
    Homme Profil pro
    *
    Inscrit en
    Avril 2012
    Messages
    84
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Orientales (Languedoc Roussillon)

    Informations professionnelles :
    Activité : *

    Informations forums :
    Inscription : Avril 2012
    Messages : 84
    Points : 128
    Points
    128
    Par défaut
    Bonjour,

    il y a moyen de simplifier ton premier code, pas besoin de jour et active.

    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
     
     
    HExécuteRequête(REQ_horaire,hRequêteDéfaut,0)
    HLitPremier(REQ_horaire)
    TANTQUE HEnDehors() = Faux
    	sHeureOuverture1 est une chaîne
    	sHeureOuverture2 est une chaîne
    	sHeureOuverture3 est une chaîne
    	sHeureOuverture4 est une chaîne
    	SI REQ_horaire.HeureDebut1 <> "NULL" ALORS sHeureOuverture1 = REQ_horaire.HeureDebut1
    	SI REQ_horaire.HeureFin1 = "NULL" ALORS sHeureOuverture2 = "Fermée" SINON sHeureOuverture2 = REQ_horaire.HeureFin1
    	SI REQ_horaire.HeureDebut2 = "NULL" ALORS sHeureOuverture3 = "Fermée" SINON sHeureOuverture3 = REQ_horaire.HeureDebut2
    	SI REQ_horaire.HeureFin2 = "NULL" ALORS sHeureOuverture4 = "Fermée" SINON sHeureOuverture4 = REQ_horaire.HeureFin2
     
    	TableAjoute(TABLE_Horaire_Hiver, NuméroDeJourVersLettre(REQ_horaire.Jour)+TAB+ "Hiver" +TAB+ REQ_horaire.Actif +TAB+ sHeureOuverture1 +TAB+ sHeureOuverture2 +TAB+ sHeureOuverture3 +TAB+ sHeureOuverture4)
    	HLitSuivant(REQ_horaire)
    FIN
    ensuite, pour ta couleur de fond,

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    Pour i=1 _a_ tableoccurence(TABLE_Horaire_Hiver)
    	IF COL_Début[i]="NULL" THEN COL_Début[i]..CouleurFond = RougeClair 
     
    FIN
    idem pour ton code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    	sHeureOuverture2 est une chaîne
    	sHeureOuverture3 est une chaîne
    	sHeureOuverture4 est une chaîne
    	SI REQ_horaire.HeureFin1 = "NULL" ALORS sHeureOuverture2 = "Fermée" SINON sHeureOuverture2 = REQ_horaire.HeureFin1
    	SI REQ_horaire.HeureDebut2 = "NULL" ALORS sHeureOuverture3 = "Fermée" SINON sHeureOuverture3 = REQ_horaire.HeureDebut2
    	SI REQ_horaire.HeureFin2 = "NULL" ALORS sHeureOuverture4 = "Fermée" SINON sHeureOuverture4 = REQ_horaire.HeureFin2
    tu dois pouvoir le simplifier par une fonction. de plus j'ai un doute vu le format de tes colonnes heure que Fermée s'inscrive mais c'est juste un doute.

  13. #13
    Membre du Club
    Homme Profil pro
    Développeur Web
    Inscrit en
    Janvier 2014
    Messages
    180
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Janvier 2014
    Messages : 180
    Points : 58
    Points
    58
    Par défaut
    Merci pour ton aide j'ai relativement simplifié et viré tous ce qui ne servais à rien !!!

    Dans la boucle pour la couleur de fond, j'aimerais ajouter une fonction supplémentaire.
    Les colonnes des horaires sont en saisie et le reste du tableau est en affichage seulement.
    Donc le truc serait de passer uniquement la cellule concerné d'un état de saisie en affichage seulement.

    Dans les fonctions de table, je n'ai pas trouvé comment changer un état

Discussions similaires

  1. Réponses: 4
    Dernier message: 01/12/2014, 17h44
  2. Réponses: 18
    Dernier message: 28/05/2014, 14h45
  3. Réponses: 10
    Dernier message: 21/05/2013, 13h29
  4. [WB11] Table remplie par requete+acces HLitPremier
    Par frlefort dans le forum WebDev
    Réponses: 2
    Dernier message: 09/09/2008, 08h49
  5. onchange d'une zone remplie par programmation
    Par japz dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 30/05/2006, 13h58

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