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 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45
| 'Vérif l'existence d'un Enregistrement à dupliquer.
If Me.NewRecord Then
MsgBox "Selectionner le Devis à Dupliquer."
Else
'Dupliquer l'enregistrement principal
With Me.RecordsetClone
.AddNew 'la méthode AddNew permet de Récupérer la nouvelle K_NumDevis
!NomSociete = Me.NomSociete
!NomClt = Me.NomClt
!Ad1Clt = Me.Ad1Clt
!Ad2Clt = Me.Ad2Clt
!CpClt = Me.CpClt
!VilleClt = Me.VilleClt
!HTDevis = Me.HTDevis
'etc ........
.Update
'Sauve la Klé primaire ,pour l'utiliser en Klé secondaire avec les nouveaux enregistrements.
.Bookmark = .LastModified
lngID = !K_NumDevis 'nouvelle K_NumDevis
'Dupliquer les Sections.
'Attention : Dans le cas d'un Compteur ne pas recopier la Kprimaire: K_DevisSection
Select Case Me.F12_DevisSectionsSF.Form.RecordsetClone.RecordCount
Case Is > 0
strSql = "INSERT INTO [T_DevisSections] (K_NumDevis,OrdreTriSection,LibelléSection,HTSection )" & _
"SELECT " & lngID & " ,OrdreTriSection,LibelléSection,HTSection " & _
"FROM [T_DevisSections] WHERE K_NumDevis = " & Me.K_NumDevis & ";"
DBEngine(0)(0).Execute strSql, dbFailOnError
'**************************JUSQUE LA LE CODE MARCHE BIEN******************************************
************** à patir ici Comment recopier LES K_DevisSection ?????????***************************************
'Dupliquer SectionsLignes
'Vérifier l'existence de Lignes dans T_DevisLignes
'If Vérifier l'existance de Lignes dans T_DevisLignes Then
strSql = "INSERT INTO [T_DevisLig] (K_NumDevis,K_DevisSection,OrdreTriLignes,Description,Qté,Unité,Pu )" & _
"SELECT " &Nouvelles K_DevisSection & " ,K_DevisSection,OrdreTriLignes,Description,Qté,Unité,Pu " & _
"FROM [T_DevisLig] WHERE K_NumDevis = " & Me.K_NumDevis & ";"
DBEngine(0)(0).Execute strSql, dbFailOnError
'End If
Case Is = 0
MsgBox "Le Devis est Dupliqué, mais il n'y avait pas de Section à Dupliquer", vbOKOnly + vbInformation, ""
End Select |