Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Access > Requêtes et SQL.
Requêtes et SQL. Tout ce qui concerne vos questions sur les requêtes et le SQL sous Access se trouve ici.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 20/09/2011, 11h06   #1
Membre habitué
 
Homme Christian Roignot
Logisticien
Inscription : janvier 2009
Messages : 308
Détails du profil
Informations personnelles :
Nom : Homme Christian Roignot
Âge : 59
Localisation : France

Informations professionnelles :
Activité : Logisticien
Secteur : Industrie

Informations forums :
Inscription : janvier 2009
Messages : 308
Points : 112
Points : 112
Par défaut Type de données incompatible dans l'expression du critère

Bonjour,

J'ai une requête multicritére qui me génére le message d'erruer cité en titre.
Code :
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
 
Dim sql As String, ClauseWhere
    sql = "INSERT INTO [tblChargeLongueTemp001-2] ( idClient, idArticle, [Magasin expedition], idIPU, idCAP, DteFinCarnet, LC, [OF], [Statut des OF], DteCarnetCdeXLS, Retard, [Dte Fin Prévue], [Code Blocage], [Dte expédition modifiée], [Dte Expédition], [Dte Ddée EXW], [Point expedition], Qté, idPlanner, idADV, idLigne, OV, IdOV )"
    sql = sql & " SELECT [tblChargeLongueTemp001-1].idClient, [tblChargeLongueTemp001-1].idArticle, [tblChargeLongueTemp001-1].[Magasin expedition], [tblChargeLongueTemp001-1].idIPU, [tblChargeLongueTemp001-1].idCAP, [tblChargeLongueTemp001-1].DteFinCarnet, [tblChargeLongueTemp001-1].LC, [tblChargeLongueTemp001-1].OF, [tblChargeLongueTemp001-1].[Statut des OF], [tblChargeLongueTemp001-1].DteCarnetCdeXLS, [tblChargeLongueTemp001-1].Retard, [tblChargeLongueTemp001-1].[Dte Fin Prévue], [tblChargeLongueTemp001-1].[Code Blocage], [tblChargeLongueTemp001-1].[Dte expédition modifiée], [tblChargeLongueTemp001-1].[Dte Expédition], [tblChargeLongueTemp001-1].[Dte Ddée EXW], [tblChargeLongueTemp001-1].[Point expedition], [tblChargeLongueTemp001-1].Qté, [tblChargeLongueTemp001-1].idPlanner, [tblChargeLongueTemp001-1].idADV, [tblChargeLongueTemp001-1].idLigne, [tblChargeLongueTemp001-1].OV, [tblChargeLongueTemp001-1].IdOV"
    sql = sql & " FROM [tblChargeLongueTemp001-1]"
 
    If Not Me.chkCAP Then
        ClauseWhere = ClauseWhere & "AND idCAP = '" & Me.cmbCAP & "' "
    End If
    If Not Me.chkCdeArticle Then
        ClauseWhere = ClauseWhere & "AND [tblChargeLongueTemp001-1].idArticle = '" & Me.cmbCodeArticle & "' "
    End If
    If Not Me.chkClient Then
        ClauseWhere = ClauseWhere & "AND idClient = '" & Me.cmbClient & "' "
    End If
    If Not Me.chkIPU Then
        ClauseWhere = ClauseWhere & "AND idIPU = '" & Me.cmbIPU & "' "
    End If
    If Not Me.cmbMagasin Then
        ClauseWhere = ClauseWhere & "AND [Magasin expedition] = '" & Me.cmbMagasin & "'  "
    End If
    If Len(ClauseWhere) = 0 Then
        GoTo AménagerLaQueuDuSql
    Else
        ' supprimer le 1er And et Aménager la tête de clause
        ClauseWhere = " Where " & Right(ClauseWhere, Len(ClauseWhere) - 3)
        sql = sql & ClauseWhere
    End If
AménagerLaQueuDuSql:
    sql = sql & ";"
    Debug.Print sql
    DoCmd.RunSQL (sql)
 
End Sub
Dans la fenêtre du débogage, j'ai bien les critères sélectionnés.
Lorsque j'exécute cette requête sans les critères, l'insert s'effectue sans problème.
Les champs des critères sont numérique.
J'ai dans un autre pgm le même type de requête et cela fonctionne très bien.

là je ne comprends pas

Quelqu'un aurait'il une idée?

Merci d'avance de votre aide.
rch05 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/09/2011, 11h10   #2
Rédacteur/Modérateur
 
Avatar de User
 
Homme Denis
Développeur informatique
Inscription : août 2004
Messages : 3 206
Détails du profil
Informations personnelles :
Nom : Homme Denis
Âge : 42
Localisation : France

Informations professionnelles :
Activité : Développeur informatique

Informations forums :
Inscription : août 2004
Messages : 3 206
Points : 5 256
Points : 5 256
Salut,

Si tes champs sont numériques il faut enlever les quotes (') de part et d'autre:

Code :
1
2
3
If Not Me.chkCAP Then
        ClauseWhere = ClauseWhere & "AND idCAP = " & Me.cmbCAP & " "
    End If
A+
__________________
Merci de ne pas poster sur mon profil pour des problèmes techniques. Pour celà vous pouvez utiliser le forum ou m'envoyer un mp.

Bon développement !


Mes tutoriels et contributions sur ma page perso:
Ma page personnelle
User est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 20/09/2011, 11h25   #3
Membre habitué
 
Homme Christian Roignot
Logisticien
Inscription : janvier 2009
Messages : 308
Détails du profil
Informations personnelles :
Nom : Homme Christian Roignot
Âge : 59
Localisation : France

Informations professionnelles :
Activité : Logisticien
Secteur : Industrie

Informations forums :
Inscription : janvier 2009
Messages : 308
Points : 112
Points : 112
Bonjour Denis,

As-tu passé de bonne vacances?

Depuis ce matin j'étai sur le pb, et j'aurai pu le voir en effectuant une meilleure recherche.

Merci de ta précieuse aide.

Bonne journée

Ch.
rch05 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/09/2011, 12h21   #4
Rédacteur/Modérateur
 
Avatar de User
 
Homme Denis
Développeur informatique
Inscription : août 2004
Messages : 3 206
Détails du profil
Informations personnelles :
Nom : Homme Denis
Âge : 42
Localisation : France

Informations professionnelles :
Activité : Développeur informatique

Informations forums :
Inscription : août 2004
Messages : 3 206
Points : 5 256
Points : 5 256
Citation:
Envoyé par rch05 Voir le message
Bonjour Denis,

As-tu passé de bonne vacances?

...
Ch.
Oui c'était sympa,

mais en ce moment je suis pas mal occupé

J'espère pour toi que tu as aussi pu recharger tes batteries

A+

Denis
__________________
Merci de ne pas poster sur mon profil pour des problèmes techniques. Pour celà vous pouvez utiliser le forum ou m'envoyer un mp.

Bon développement !


Mes tutoriels et contributions sur ma page perso:
Ma page personnelle
User est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 03h31.


 
 
 
 
Partenaires

Hébergement Web