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

IHM Discussion :

Creation d'un etat pour plusieurs destinataires et dispatch


Sujet :

IHM

  1. #1
    Futur Membre du Club
    Inscrit en
    Décembre 2003
    Messages
    11
    Détails du profil
    Informations forums :
    Inscription : Décembre 2003
    Messages : 11
    Points : 8
    Points
    8
    Par défaut Creation d'un etat pour plusieurs destinataires et dispatch
    Bonjour à tous ,

    Je viens de créer une BD pour gérer les expeditions d un Depot central .

    Il est prevu qu à la procédure de cloture des expeditions , nous puissions envoyer un fichier word par email à chaque depot de destination un Etat
    de ce qu ils vont recevoir.

    Il y a à peu pres une 40 aine de depots à alerter .

    Mon problème est de trouver la meilleur technique de dévelopement pour :

    - Creer un ETAT part depot de destination .Surtout que nous devons les alerter même si ils ne recoivent rien .

    J ai 2 tables :
    TblDepot
    TblOrders

    Je pense que pour chaque Depot existant dans "TblDepot " , je dois verifier si il y a des ordres existants dans Tblorders .

    Si oui je créé un Etat contenant les ordres que j exporte dans word puis j'envoie ce même fichier par email .

    Si non , je créé un ETAT mentionnant "pas de colis pour demain" que j'exporte
    dans word puis j'envoie ce même fichier par email .

    Je ne suis pas un pro des recordset et surtout des " Do until -- loop" . J aimerais donc savoir comment je pourrais faire .

    `
    Après j aimerais aussi savoir si je dois créer un fichier et l envoyer de suite , ou créer tous les fichier et les envoyer un par un ?

    J aurais juste besoin d un petit coup de pousse pour m aider à construire ce script , je suis loin d être un pro et je sèche depuis pas mal de temps sur ce problème.

    Merci d avance .

  2. #2
    Expert éminent
    Avatar de Lou Pitchoun
    Profil pro
    Inscrit en
    Février 2005
    Messages
    5 038
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Février 2005
    Messages : 5 038
    Points : 8 268
    Points
    8 268
    Par défaut
    Salut,

    L'idée que tu avances est à peu près bonne.

    Pour chaque dépot, tu vérifies s'il y a des ordres ou pas.
    S'il n'y a pas d'ordre, avant d'exporter ton état en pdf, tu affiches un texte "Pas d'ordre" (ou ce que tu veux...)
    Tu crées ton pdf pour le dépot en cours, puis tu l'envois par mail.

    Et ainsi de suite pour chacun des dépôts.


    Pour l'export en pdf tu as un tuto. Ensuite pour l'envoi par mail si tu utilise outlook ou Lotus Notes, regarde dans la faq.

    Pour ce qui est du parcours d'un recordset regarde ce tuto


  3. #3
    Expert éminent

    Avatar de Maxence HUBICHE
    Homme Profil pro
    Développeur SQLServer/Access
    Inscrit en
    Juin 2002
    Messages
    3 842
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : Développeur SQLServer/Access

    Informations forums :
    Inscription : Juin 2002
    Messages : 3 842
    Points : 9 197
    Points
    9 197
    Par défaut
    Etant donné le peu d'informations que nous avons sur ton architecture, je vais partir du prinicpe que tous tes champs sont de type texte, sauf les clé étrangères et primaires, qui sont de type Entier Long.

    Je préconiserai :
    • Une requête (qryRapport_GetOrders_ParamDepot) paramétrée du genre :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    PARAMETERS myDepot Long;
    SELECT tblOrders.*
    FROM tblOrders;
    • Une requête(qryRapport_GetDepots) qui te liste tes Dépots dans l'ordre qui t'intéresse
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    SELECT tblDepots.*
    FROM tblDepots
    ORDER BY Champ1, Champ2;
    • Un code qui utilise simultanément 2 recordsets (celui des dépots, et celui des orders issus de la requête paramétrée précédente), pour parcourir, pour chaque Depot, l'ensemble de ses orders
    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
    29
    30
     
    Sub GenererDocs()
        Dim rstDepots    As DAO.Recordset
        Dim rstOrders    As DAO.Recordset
        Dim qdfOrders   As DAO.QueryDef
     
        Set rstDepots=CurrentDB.Openrecordset("qryRapport_GetDepots", dbOpenForwardOnly)
        Set qdfOrders=Currentdb.queryDefs("qryRapport_GetOrders_ParamDepot")
     
        Do Until rstDepots.Eof
            qdfOrders.Parameters("myDepot").value=rstDepots.Fields("IDDuDepot").value
            Set rstOrders=qdfOrders.OpenRecordset()
            if rstOrders.eof then
                'Actions à faire si le dépot n'a pas d'orders   
            else
                'Actions à faire si le dépot a des orders
                Do until rstOrders.eof
                    'Action pour un Order Donné
                    rstOrders.MoveNext
                Loop
            end if
            rstOrders.Close
            set rstOrders=Nothing
            rstDepot.MoveNext
        Loop
     
        qdfOrders.close
        set qdfOrders=Nothing
        qdfDepots.Close
        Set rstDepots=Nothing


    Attention, ce code n'est donné qu'à titre indicatif, et n'a aps été testé.
    A toi de continuer

  4. #4
    Futur Membre du Club
    Inscrit en
    Décembre 2003
    Messages
    11
    Détails du profil
    Informations forums :
    Inscription : Décembre 2003
    Messages : 11
    Points : 8
    Points
    8
    Par défaut
    Merci .... Vous êtes vraiment geniales.

    Je vais faire ma petite bidouille et quand j ai ma solution (je pense ce soir) , je n oublierai pas de vous remercier encore une fois .. et d'appliquer le Flag resolu .

    JC

  5. #5
    Futur Membre du Club
    Inscrit en
    Décembre 2003
    Messages
    11
    Détails du profil
    Informations forums :
    Inscription : Décembre 2003
    Messages : 11
    Points : 8
    Points
    8
    Par défaut
    Encore un Grand merci à tous...

    J ai reussi à créer et a envoyer un fichier par depot .. Maintenant je vais me pencher sur l implementation du PDF avec le Tuto .

    Merci .
    JC

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

Discussions similaires

  1. [WD15] pour les experts! etat sur plusieurs requetes
    Par essajide dans le forum WinDev
    Réponses: 3
    Dernier message: 16/04/2012, 10h29
  2. Plusieurs destinataires pour un mail
    Par laurentSc dans le forum Langage
    Réponses: 2
    Dernier message: 22/07/2010, 10h15
  3. [WD12] Creation d'un skin multi etat pour un bouton
    Par yann_72 dans le forum WinDev
    Réponses: 1
    Dernier message: 16/12/2008, 21h37
  4. Réponses: 2
    Dernier message: 08/04/2008, 18h14
  5. [XI] Entrer un paramètre pour plusieurs etats simultanément
    Par campia dans le forum SAP Crystal Reports
    Réponses: 9
    Dernier message: 01/06/2007, 16h16

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