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 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81
| Function Macro1()
Dim tbl As DAO.Recordset
Dim exreqtype As String, qrdtype As QueryDef, rsttype As DAO.Recordset
Dim exreqtypeXMAT As String, qrdtypeXMAT As QueryDef, rsttypeXMAT As DAO.Recordset
Dim defaut As String
On Error GoTo Macro1_Err
' Ouvrir la table en lecture/écriture
Set tbl = CurrentDb.OpenRecordset("T_TypeDefauts", dbOpenDynaset)
If Not tbl.EOF Then
Else
MsgBox "Pas d'enregistrement, veuillez réessayer ! "
End If
tbl.MoveNext
defaut = tbl.Fields(0)
exreqtype = "PARAMETERS defaut string;" & _
"SELECT T_CaracteristiquesDefauts.DMD " & _
"FROM T_CaracteristiquesDefauts WHERE ((T_CaracteristiquesDefauts.Type) = defaut);"
Set qrdtype = CurrentDb.CreateQueryDef("", exreqtype)
qrdtype.Parameters![defaut] = defaut
Set rsttype = qrdtype.OpenRecordset
'Tant que non fin du recordset
While Not rsttype.EOF
dmd = rsttype.Fields(0)
Dim ReqPoidsBillettes As String, RS As DAO.Recordset, RSS As QueryDef
ReqPoidsBillettes = "PARAMETERS dmd string;" & _
"SELECT T_CaracteristiquesDefauts.DMD, PHARMORA_XMATIERE.SERLOTMAT, PHARMORA_XBILLETTE.BILLETTE, PHARMORA_XBILLETTE.POIDSBIL" & _
" FROM T_CaracteristiquesDefauts INNER JOIN ((PHARMORA_XMATIERE INNER JOIN PHARMORA_XBILLETTE ON PHARMORA_XMATIERE.SERLOTMAT = PHARMORA_XBILLETTE.SERLOTMAT) INNER JOIN PHARMORA_XSPECIFMAT ON PHARMORA_XMATIERE.SERLOTMAT = PHARMORA_XSPECIFMAT.SERLOTMAT) ON T_CaracteristiquesDefauts.DMD = PHARMORA_XMATIERE.SPECMAT" & _
" WHERE (((T_CaracteristiquesDefauts.DMD)=dmd) AND ((PHARMORA_XSPECIFMAT.SANCQUAL) Is Not Null));"
Set RSS = CurrentDb.CreateQueryDef("", ReqPoidsBillettes)
RSS.Parameters![dmd] = dmd
Set RS = RSS.OpenRecordset
If RS.EOF Then 'Si pas d'enregistrement
rsttype.MoveNext
GoTo Line1
End If
'Ouvrir table T_PoidsBillettes pour stocker tous les lots mat, les poids des billettes, les DMD's, nom du fournisseurs mat
' Quelques variables
Dim tblPoidsBillettes As DAO.Recordset
' Ouvrir la table en lecture/écriture
Set tblPoidsBillettes = CurrentDb.OpenRecordset("T_PoidsBillettes", dbOpenDynaset)
' Créer un enregistrement dans la table
With tblPoidsBillettes
.AddNew
tblPoidsBillettes("LotsMatiere") = RS.Fields("SERLOTMAT")
tblPoidsBillettes("DMD") = RS.Fields("DMD")
'tblPoidsBillettes("Fournisseur") = RS.Fields("SERLOTMAT")
tblPoidsBillettes("PoidsBillettes") = RS.Fields("POIDSBIL")
'CodeFournisseur=RS.Fields("
.Update
End With
'Passer au suivant
rsttype.MoveNext
MsgBox rsttype.Fields(0)
Line1:
Wend
tbl.Close
Set tbl = Nothing
'Vider la table T_PoidsBillette quand tout est terminé
Macro1_Exit:
Exit Function
Macro1_Err:
MsgBox Error$
Resume Macro1_Exit
End Function |
Partager