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 :

Problème d'impression avec etat sur table [WD17]


Sujet :

WinDev

  1. #1
    Membre éprouvé
    Homme Profil pro
    Benevole
    Inscrit en
    Mai 2004
    Messages
    1 694
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Benevole
    Secteur : Enseignement

    Informations forums :
    Inscription : Mai 2004
    Messages : 1 694
    Points : 953
    Points
    953
    Par défaut Problème d'impression avec etat sur table
    Bonjour a tous
    j'ai des données avec photo que je veux imprimer a partir d'une table. cette table est alimenté a partir d'une base (Inerbase 7) qui contient un champ Blob

    Donc dans l'initialisation de mon état voici mon code :
    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
    SI 	gsLENOMSERVEUR="OUI" ALORS
    ChRepertoireTemp est une chaîne = ExtraitChaîne(SysEnvironnement("TEMP"),2,"=") //on recupere le chemin complet
    chNomFichier1 est une chaîne = ChRepertoireTemp +"\Photo.jpg" 
    macommande9 est une chaîne =ChaîneConstruit("SELECT "+...
    "MESINFORMATIONS.STOCKPHOTO , "+...
    "MESINFORMATIONS.STOCKSIGNATURE "+...
    "FROM MESINFORMATIONS "+...
    "WHERE MESINFORMATIONS.LACLE='%1'",FEN_Table_PERSONNES_TEST.Table.LACLE)
    SQLExec(macommande9, "REQ1")
    	TANTQUE SQLAvance("REQ1") = 0// Il y a encore une ligne à lire
    		// Récupérer les données
    		HExtraitMémo(SQLLitMémo("REQ1",1),chNomFichier1)
    		IMG_Local=chNomFichier1
    	FIN
    	SQLFerme("REQ1")
    FIN
    En effet pour tous les lignes sélectionnées dans ma table je vais rechercher les photos dans la base pour affichage.
    Mais je n'ai que la première photo qui s'affiche pour tout le reste.
    d'ou mon besion d'aide :
    1. Es que la méthode que j’utilise est correcte (optimisée)? car si le nombre de donnée augment ça peut être catastrophique.
    2. Que dois-je modifier dans mon code pour afficher la photo de chaque ligne sélectionnée ?

    Merci pour vos retours d'expériences

  2. #2
    Expert éminent
    Avatar de frenchsting
    Homme Profil pro
    multitâches-multifonctions
    Inscrit en
    Juin 2003
    Messages
    5 293
    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 293
    Points : 9 386
    Points
    9 386
    Par défaut
    As-tu fais un pas à pas de l'exécution de ta requête, notamment au niveau du hextraitmémo ?
    Regarde si à chaque extraction, ton image change (dans l'explorateur).

  3. #3
    Membre émérite
    Homme Profil pro
    Développeur et responsable micros/réseaux
    Inscrit en
    Octobre 2010
    Messages
    1 286
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur et responsable micros/réseaux
    Secteur : Bâtiment

    Informations forums :
    Inscription : Octobre 2010
    Messages : 1 286
    Points : 2 562
    Points
    2 562
    Par défaut
    Bonjour,

    comment fais-tu l'affichage car je ne vois qu'une instruction :
    IMG_Local=chNomFichier1

    Or celle-ci est la même pour toutes les lignes, donc au final tu auras l'image de la dernière ligne lue.

    à bientôt,

    Nicolas

  4. #4
    Membre éprouvé Avatar de wimbish
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2006
    Messages
    416
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2006
    Messages : 416
    Points : 1 073
    Points
    1 073
    Par défaut
    Bonjour,

    A mon avis ton code devrait se trouver dans le code "avant impression du bloc (corps ou itération etc.)" qui contient l'image et pas dans l'initialisation de l’état.
    Il faut chercher l'image juste avant de l'afficher.

  5. #5
    Membre éprouvé
    Homme Profil pro
    Benevole
    Inscrit en
    Mai 2004
    Messages
    1 694
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Benevole
    Secteur : Enseignement

    Informations forums :
    Inscription : Mai 2004
    Messages : 1 694
    Points : 953
    Points
    953
    Par défaut
    Effectivement frenchsting quand je regarde avec l'explorateur j'ai la même image.
    Nicolas_Jeanneau
    comment fais-tu l'affichage car je ne vois qu'une instruction :
    IMG_Local=chNomFichier1
    Or celle-ci est la même pour toutes les lignes, donc au final tu auras l'image de la dernière ligne lue.
    Effectivement c'est là que je bloc car je suis dit que je dvais avoir un système d’itération

    wimbish
    A mon avis ton code devrait se trouver dans le code "avant impression du bloc (corps ou itération etc.)" qui contient l'image et pas dans l'initialisation de l’état.
    Il faut chercher l'image juste avant de l'afficher.
    Je vais de ce pas fouiller dans ce sens ! et ensuite faire un retour

  6. #6
    Expert éminent
    Avatar de frenchsting
    Homme Profil pro
    multitâches-multifonctions
    Inscrit en
    Juin 2003
    Messages
    5 293
    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 293
    Points : 9 386
    Points
    9 386
    Par défaut
    J'avais loupé le code d'init...
    En gros : tu mets ça dans le code d'init :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    SI gsLENOMSERVEUR="OUI" ALORS
    ChRepertoireTemp est une chaîne = ExtraitChaîne(SysEnvironnement("TEMP"),2,"=") //on recupere le chemin complet
    chNomFichier1 est une chaîne = ChRepertoireTemp +"\Photo.jpg" 
    macommande9 est une chaîne =ChaîneConstruit("SELECT "+...
    "MESINFORMATIONS.STOCKPHOTO , "+...
    "MESINFORMATIONS.STOCKSIGNATURE "+...
    "FROM MESINFORMATIONS "+...
    "WHERE MESINFORMATIONS.LACLE='%1'",FEN_Table_PERSONNES_TEST.Table.LACLE)
    SQLExec(macommande9, "REQ1")
    si SQLAvance("REQ1") = 0// Il y a encore une ligne à lire
    	// Récupérer les données
    	HExtraitMémo(SQLLitMémo("REQ1",1),chNomFichier1)
    	IMG_Local=chNomFichier1
    FIN
    et dans le bloc avant impression :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    si SQLAvance("REQ1") = 0// Il y a encore une ligne à lire
    	// Récupérer les données
    	HExtraitMémo(SQLLitMémo("REQ1",1),chNomFichier1)
    	IMG_Local=chNomFichier1
    FIN
    et dans le code de fermeture :
    Mais, ton état me paraît un peu bancal car tu dis avoir un état sur table. Ne serait-il pas possible de faire une requête basée sur ta table qui prendrait la ligne en cours comme paramètre et ne renverrrait qu'une image... Du coup, tout le code serait dans le bloc avant impression corps.

  7. #7
    Membre éprouvé
    Homme Profil pro
    Benevole
    Inscrit en
    Mai 2004
    Messages
    1 694
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Benevole
    Secteur : Enseignement

    Informations forums :
    Inscription : Mai 2004
    Messages : 1 694
    Points : 953
    Points
    953
    Par défaut
    OK je test tout ça et je fais un retour ! Merci

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 24/08/2012, 14h20
  2. [WD12] Etat sur table avec colonne clonée
    Par JeAn-PhI dans le forum WinDev
    Réponses: 0
    Dernier message: 14/10/2009, 18h30
  3. Réponses: 1
    Dernier message: 08/07/2009, 09h37
  4. Réponses: 1
    Dernier message: 03/05/2009, 06h40
  5. [FB1.5]Vue avec jointure sur tables ?
    Par Sitting Bull dans le forum SQL
    Réponses: 2
    Dernier message: 07/12/2004, 17h07

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