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

Access Discussion :

Petite question sur les recorset


Sujet :

Access

  1. #1
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2014
    Messages
    84
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2014
    Messages : 84
    Points : 63
    Points
    63
    Par défaut Petite question sur les recorset
    Bonjour,

    j'alimente un recordset avec un autre (copie) et j’obtiens :
    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
     
    Dim db As DAO.Database
    Dim rs(1 To 2) As DAO.recordset
    Dim rs(3) As DAO.Recordset2
    Dim name As String
     
    Set db = CurrentDb
    Set rs(1) = db.OpenRecordset("Select * from Tbl_EI where id_ei=" & ID_EI, dbOpenSnapshot)
    Set rs(2) = db.OpenRecordset("Tbl_EI", dbOpenTable, dbAppendOnly)
    Set rs(3) = rs(1).Fields("photo").Value
    rs(2).AddNew
    rs(2).Fields("vorgang").Value = rs(1)("vorgang").Value
    rs(2).Fields("Num_EI").Value = rs(1)("Id_EI").Value
    rs(2).Fields("Indice_plan").Value = rs(1)("Indice_plan").Value
    rs(2).Fields("Date_debut_EI").Value = rs(1)("Date_debut_EI").Value
    rs(2).Fields("Date_modification_ei").Value = Now
    rs(2).Fields("modifié_par").Value = Cemp
    rs(2).Fields("Id_employe").Value = Cidemp
    rs(2).Fields("Date_fin_EI").Value = rs(1)("Date_fin_EI").Value
    rs(2).update
    ma question est la suivante :

    Il n'y aura pas un moyen plus simple (une boucle for each par exemple) d'alimenter rs2 puisque je veux copier totalement rs1 ? J'ai essayé mais en vain je n'arrive pas a boucler sur le nom des champs des recordsets. Petite précision quand même la table "Tbl_EI" contient des pièces jointes avec des photos. J'ai cru comprendre qu'il fallait que je passe par un recordset2 donc je compte faire cette manip après avoir fini la copie de rs1 . Est-ce exact ?

  2. #2
    Expert éminent

    Homme Profil pro
    Inscrit en
    Mai 2012
    Messages
    3 840
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Madagascar

    Informations forums :
    Inscription : Mai 2012
    Messages : 3 840
    Points : 7 974
    Points
    7 974
    Par défaut
    Bonjour,

    Be, il faut utiliser un boucle While
    Je verrai :
    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
     
    Dim db As DAO.Database
    Dim rs(1 To 2) As DAO.recordset
    Dim rs(3) As DAO.Recordset2
    Dim name As String
    Set db = CurrentDb
    Set rs(1) = db.OpenRecordset("Select * from Tbl_EI where id_ei=" & ID_EI, dbOpenSnapshot)
    Set rs(2) = db.OpenRecordset("Tbl_EI", dbOpenTable, dbAppendOnly)
    Set rs(3) = rs(1).Fields("photo").Value
         rs(1).MoveFirst
         While Not rs(1).EOF
              rs(2).AddNew
              rs(2).Fields("vorgang").Value = rs(1)("vorgang").Value
              rs(2).Fields("Num_EI").Value = rs(1)("Id_EI").Value
              rs(2).Fields("Indice_plan").Value = rs(1)("Indice_plan").Value
              rs(2).Fields("Date_debut_EI").Value = rs(1)("Date_debut_EI").Value
              rs(2).Fields("Date_modification_ei").Value = Now
              rs(2).Fields("modifié_par").Value = Cemp
              rs(2).Fields("Id_employe").Value = Cidemp
              rs(2).Fields("Date_fin_EI").Value = rs(1)("Date_fin_EI").Value
              rs(2).update
         Wend
    Cordialement,
    Mandresy
    "Je ne sais qu'une chose, c'est que je ne sais rien" Socrate

    N'oublions pas de mettre quand on a trouvé notre bonheur. Soyons sympa pour les futurs heureux.

    Merci, c'est toujours sympa de recevoir des de votre part

  3. #3
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2014
    Messages
    84
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2014
    Messages : 84
    Points : 63
    Points
    63
    Par défaut Bonjour
    D'abord merci pour l'info je croit que vous m'avez sorti plusieurs fois de la panade.
    J'ai trouvez ceci
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    Do While Not rs(1).EOF
        ' You can place if condition here
        rs(2).AddNew
        For i = 0 To rs(1).Fields.Count - 1
            rs(2).Fields(rs(1).Fields(i).name) = rs(1).Fields(i).Value
        Next i
        rs(2).update
        rs(1).MoveNext
    Loop
    Mais ça bloque sur les champs de type pièces jointes.... Je suis bloqué

  4. #4
    Expert éminent

    Homme Profil pro
    Inscrit en
    Mai 2012
    Messages
    3 840
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Madagascar

    Informations forums :
    Inscription : Mai 2012
    Messages : 3 840
    Points : 7 974
    Points
    7 974
    Par défaut
    Bonjour,

    Je ne peux t'aider s'il s'agit de champs de type pièces jointes vu que j'ai toujours évité d'en utiliser. Il faudrait que j'approfondisse, mais ce n'est pas le moment (pas le temps).
    Désolé !

    Cordialement,
    Mandresy
    "Je ne sais qu'une chose, c'est que je ne sais rien" Socrate

    N'oublions pas de mettre quand on a trouvé notre bonheur. Soyons sympa pour les futurs heureux.

    Merci, c'est toujours sympa de recevoir des de votre part

Discussions similaires

  1. Petite question sur les conventions de nommage en Java
    Par implosion dans le forum Langage
    Réponses: 7
    Dernier message: 18/01/2006, 15h54
  2. Petites question sur les onglets...
    Par jarod_bx dans le forum Access
    Réponses: 1
    Dernier message: 20/12/2005, 18h45
  3. [ATL] Petite question sur les progress bar
    Par MrMaze dans le forum MFC
    Réponses: 1
    Dernier message: 06/05/2005, 09h40
  4. Réponses: 3
    Dernier message: 08/12/2004, 13h58
  5. Petite question sur les performances de Postgres ...
    Par cb44 dans le forum PostgreSQL
    Réponses: 5
    Dernier message: 13/01/2004, 13h49

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