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 82 83 84 85 86 87 88 89
|
Set IDEFIX = CurrentDb
'Reconstuction de la requête "rqyQtéCapTotalEXW"
'Constituer le nom de la nouvelle requête
sNomRQ = "rqyQtéCapTotalExw"
'construction de la nouvelle requête
sql = "PARAMETERS [Forms]![frmChDteExw]![SemaineD] Value, [Forms]![frmChDteExw]![AnneeD] Value;"
sql = sql & " SELECT rqyQtéCap.[Dte Fin Prévue], rqyQtéCap.DteCarnetCdeXLS, rqyQtéCap.Qté, rqyQtéCap.[Statut des OF],"
sql = sql & " NumSemaine([DteCarnetCdeXLS]) AS Semaine, rqyQtéCap.idCAP, rqyQtéCap.LC, rqyQtéCap.CAP, rqyQtéCap.idIPU,"
sql = sql & " rqyQtéCap.idClient, rqyQtéCap.Client, rqyQtéCap.idArticle, rqyQtéCap.[Code Article],"
sql = sql & " rqyQtéCap.Désignation, rqyQtéCap.[Dte Ddée EXW], rqyQtéCap.[Dte Expédition], rqyQtéCap.[Dte expédition modifiée], rqyQtéCap.Retard,"
sql = sql & " rqyQtéCap.[Magasin expedition], rqyQtéCap.[Point expedition], rqyQtéCap.OV, rqyQtéCap.OF"
sql = sql & " FROM rqyQtéCap"
sql = sql & " WHERE ((rqyQtéCap.DteCarnetCdeXLS) Between InvDatePart(1,[Forms]![frmChDteExw]![SemaineD],"
sql = sql & " [Forms]![frmChDteExw]![AnneeD]) And (InvDatePart(1,[Forms]![frmChDteExw]![SemaineD],"
sql = sql & " [Forms]![frmChDteExw]![AnneeD])+13))"
Select Case Me.gprStatutOF
Case 1
ClauseAND = ClauseAND & " AND [Statut des OF] = '" & "livrée" & "' "
Case 2
ClauseAND = ClauseAND & " And [Statut des OF] = '" & "non livrée" & "' "
Case 3
ClauseAND = ClauseAND & " And [Statut des OF] like '" & "" & "' "
'ClauseAND = ClauseAND & " And [Statut des OF] is null"
Case 4
ClauseAND = ClauseAND & " AND ([Statut des OF] Is Null Or [Statut des OF] Is Not Null)"
End Select
If Not Me.chkCAP Then
ClauseAND = ClauseAND & " AND idCAP like '*" & Me.cmbCAP & "*' "
End If
If Not Me.chkIPU Then
ClauseAND = ClauseAND & " AND idIPU like '*" & Me.cmbIPU & "*' "
End If
If Not Me.chkClient Then
ClauseAND = ClauseAND & " AND idClient like '*" & Me.cmbClient & "*' "
End If
If Not Me.chkCdeArticle Then
ClauseAND = ClauseAND & " AND idArticle like '*" & Me.cmbCodeArticle & "*' "
End If
If Not Me.ChkMagasin Then
ClauseAND = ClauseAND & " AND [Magasin expedition] like '*" & Me.cmbMagasin & "*' "
End If
Select Case Me.grpRetard
Case 1
ClauseAND = ClauseAND & " AND [Retard] like '" & "Retard" & "' "
Case 2
ClauseAND = ClauseAND & " AND [Retard] like '" & "Pas retard" & "' "
Case 3
ClauseAND = ClauseAND & " AND [Retard] like '" & "" & "' "
Case 4
ClauseAND = ClauseAND & " AND ([Retard] is null or [Retard] is not null)"
End Select
Select Case Me.grpOF
Case 1
ClauseAND = ClauseAND & " AND [OF] is not null "
Case 2
ClauseAND = ClauseAND & " AND [OF] like '" & "" & "' "
Case 3
ClauseAND = ClauseAND & " AND ([OF] is null or [OF] is not null) "
End Select
Select Case Me.grpLC
Case 1
ClauseAND = ClauseAND & " AND [LC] like '" & "x" & "' "
Case 2
ClauseAND = ClauseAND & " AND [LC] like '" & "" & "' "
Case 3
ClauseAND = ClauseAND & " AND ([LC] is null or [LC] is not null) "
End Select
If Len(ClauseAND) = 0 Then
GoTo AménagerLaQueueDuSQL
Else
sql = sql & ClauseAND
End If
AménagerLaQueueDuSQL:
sql = sql & " ORDER BY rqyQtéCap.[Dte Expédition];"
'Debug.Print sql
'supprime la raquête si elle existe
If ExistQuery(sNomRQ) Then DoCmd.DeleteObject acQuery, sNomRQ
'créer la nouvelle requête
Set maReq = IDEFIX.CreateQueryDef(sNomRQ, sql) |
Partager