Suppression occurence dans une zone de liste

Le
k3n3bra
salut !

je suis actuellement en stage et on me demande de reprendre un programme
déjà existant sur ACCESS concernant une gestion de stock
-l'utilisateur peut faire une entrée en stock, une entrée peut avoir
plusieurs produit (ex: entrée 01 => 5 pain, 10 farine etc)
-si l'utilisateur se trompe il peut modifier une entrée mais il doit
pouvoir aussi supprimer l'entrée (le code est déjà fait pour la suppression
de l'entrée entiére)

le probleme est que je n'arrive pas à faire en sorte de supprimer un produit
supprimer dans une entrée (ex: entrée01: sélectionner uniquement les '5
pains' et les supprimer )

pour l'instant mon code ressemble à cela :

Private Sub Cmdsupsup01_Click()

Dim base As Database
Dim tentree As Recordset
Set base = CurrentDb()
Set tentree = base.OpenRecordset("DÉTAIL_ENTREE", DB_OPEN_DYNASET)
Dim critere As String


critere = "N°ENTREE='" + Lstpdtsup.Column(0) + "' AND N°DETAIL='" +
Lstpdtsup.Column(14) + "'"


tentree.FindFirst (critere)

If tentree.NoMatch = False Then
tentree.Delete
End If

Lstpdtsup.Requery

donc voila lorsque j'essaye de supprimer le produit selectionné (cliqué avec
la souris) un message d'erreur apparait sur "tentree.FindFirst (critere)" =>
type de données imcompatible dans l'expressoin du critére
pourtant mon critere récupere bien le N°ENTREE et le N°DETAIL
enfin bref, je commence à avoir access en horreur et je dois encore y passer
un mois
donc si quelqu'un pouvait apaiser ma peine cela serait fort sympathique
voila merci d'avance
byebye
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses Page 1 / 2
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Michel_D
Le #6730011
Bonjour,

Quel est la structure de ta base ?


"k3n3bra"
salut !

je suis actuellement en stage et on me demande de reprendre un programme
déjà existant sur ACCESS concernant une gestion de stock
-l'utilisateur peut faire une entrée en stock, une entrée peut avoir
plusieurs produit (ex: entrée 01 => 5 pain, 10 farine etc)
-si l'utilisateur se trompe il peut modifier une entrée mais il doit
pouvoir aussi supprimer l'entrée (le code est déjà fait pour la suppression
de l'entrée entiére)

le probleme est que je n'arrive pas à faire en sorte de supprimer un produit
supprimer dans une entrée (ex: entrée01: sélectionner uniquement les '5
pains' et les supprimer )

pour l'instant mon code ressemble à cela :

Private Sub Cmdsupsup01_Click()

Dim base As Database
Dim tentree As Recordset
Set base = CurrentDb()
Set tentree = base.OpenRecordset("DÉTAIL_ENTREE", DB_OPEN_DYNASET)
Dim critere As String


critere = "N°ENTREE='" + Lstpdtsup.Column(0) + "' AND N°DETAIL='" +
Lstpdtsup.Column(14) + "'"


tentree.FindFirst (critere)

If tentree.NoMatch = False Then
tentree.Delete
End If

Lstpdtsup.Requery

donc voila lorsque j'essaye de supprimer le produit selectionné (cliqué avec
la souris) un message d'erreur apparait sur "tentree.FindFirst (critere)" =>
type de données imcompatible dans l'expressoin du critére
pourtant mon critere récupere bien le N°ENTREE et le N°DETAIL
enfin bref, je commence à avoir access en horreur et je dois encore y passer
un mois
donc si quelqu'un pouvait apaiser ma peine cela serait fort sympathique
voila merci d'avance
byebye


k3n3bra
Le #6730451
euh ... la structure de la base ... euh je dois avouer que je n'en sais rien
... désolé.
En plus je c'est pas où trouver la réponse ^^'
normalement c'est du genre OCBD où quelque chose comme ça non ?!
enfin désolé je suis très novice (même si c'est pas une excuse :/)


Bonjour,

Quel est la structure de ta base ?


"k3n3bra"
salut !

je suis actuellement en stage et on me demande de reprendre un programme
déjà existant sur ACCESS concernant une gestion de stock
-l'utilisateur peut faire une entrée en stock, une entrée peut avoir
plusieurs produit (ex: entrée 01 => 5 pain, 10 farine etc)
-si l'utilisateur se trompe il peut modifier une entrée mais il doit
pouvoir aussi supprimer l'entrée (le code est déjà fait pour la suppression
de l'entrée entiére)

le probleme est que je n'arrive pas à faire en sorte de supprimer un produit
supprimer dans une entrée (ex: entrée01: sélectionner uniquement les '5
pains' et les supprimer )

pour l'instant mon code ressemble à cela :

Private Sub Cmdsupsup01_Click()

Dim base As Database
Dim tentree As Recordset
Set base = CurrentDb()
Set tentree = base.OpenRecordset("DÉTAIL_ENTREE", DB_OPEN_DYNASET)
Dim critere As String


critere = "N°ENTREE='" + Lstpdtsup.Column(0) + "' AND N°DETAIL='" +
Lstpdtsup.Column(14) + "'"


tentree.FindFirst (critere)

If tentree.NoMatch = False Then
tentree.Delete
End If

Lstpdtsup.Requery

donc voila lorsque j'essaye de supprimer le produit selectionné (cliqué avec
la souris) un message d'erreur apparait sur "tentree.FindFirst (critere)" =>
type de données imcompatible dans l'expressoin du critére
pourtant mon critere récupere bien le N°ENTREE et le N°DETAIL
enfin bref, je commence à avoir access en horreur et je dois encore y passer
un mois
donc si quelqu'un pouvait apaiser ma peine cela serait fort sympathique
voila merci d'avance
byebye






Michel_D
Le #6730441
re,

Si l'on ne sait pas comment sont organisés les données, on va avoir du
mal pour t'aider.

En gros, tes entrées sont stockés dans quels champs de quelles tables ?

Par exemple j'espère que les infos "5 pain" et "10 farine" sont situées
dans un enregistrement distinct sinon cela veut dire des complications
en perspectives.


"k3n3bra"
euh ... la structure de la base ... euh je dois avouer que je n'en sais rien
... désolé.
En plus je c'est pas où trouver la réponse ^^'
normalement c'est du genre OCBD où quelque chose comme ça non ?!
enfin désolé je suis très novice (même si c'est pas une excuse :/)


Bonjour,

Quel est la structure de ta base ?


"k3n3bra"
salut !

je suis actuellement en stage et on me demande de reprendre un programme
déjà existant sur ACCESS concernant une gestion de stock
-l'utilisateur peut faire une entrée en stock, une entrée peut avoir
plusieurs produit (ex: entrée 01 => 5 pain, 10 farine etc)
-si l'utilisateur se trompe il peut modifier une entrée mais il doit
pouvoir aussi supprimer l'entrée (le code est déjà fait pour la suppression
de l'entrée entiére)

le probleme est que je n'arrive pas à faire en sorte de supprimer un produit
supprimer dans une entrée (ex: entrée01: sélectionner uniquement les '5
pains' et les supprimer )

pour l'instant mon code ressemble à cela :

Private Sub Cmdsupsup01_Click()

Dim base As Database
Dim tentree As Recordset
Set base = CurrentDb()
Set tentree = base.OpenRecordset("DÉTAIL_ENTREE", DB_OPEN_DYNASET)
Dim critere As String


critere = "N°ENTREE='" + Lstpdtsup.Column(0) + "' AND N°DETAIL='" +
Lstpdtsup.Column(14) + "'"


tentree.FindFirst (critere)

If tentree.NoMatch = False Then
tentree.Delete
End If

Lstpdtsup.Requery

donc voila lorsque j'essaye de supprimer le produit selectionné (cliqué avec
la souris) un message d'erreur apparait sur "tentree.FindFirst (critere)" =>
type de données imcompatible dans l'expressoin du critére
pourtant mon critere récupere bien le N°ENTREE et le N°DETAIL
enfin bref, je commence à avoir access en horreur et je dois encore y passer
un mois
donc si quelqu'un pouvait apaiser ma peine cela serait fort sympathique
voila merci d'avance
byebye








k3n3bra
Le #6730431
AHHHH diantre ... un nom si compliqué pour ça ... pfiou j'ai eu peur ^^
donc lorsqu'il y a une entrée:
table => ENTRÉE(n°entrée,date entrée)
et on enregistre l'entrée dans une autre table (si j'ai bien tout compris au
travail de mes predecesseurs ^^') => DÉTAIL_ENTRÉE(n°détail, n°entrée,
n°produit_cdt ...)
donc normalement quand il y a une entrée les différents produits sont
enregistrés avec le n°détail
car effectivement si c'est pas le cas je vais avoir énormément de mal à
séparer les produits pour réussir à les supprimer individuellement ... du
coup maintenant je balise encore plus :$
Michel_D
Le #6730871
re,

Hum, un conseil avant de lancer dans quoi que ce soit essaye de
comprendre comment est organisé ta base, aprés tu pourras
intervenir dessus.


"k3n3bra"
AHHHH diantre ... un nom si compliqué pour ça ... pfiou j'ai eu peur ^^
donc lorsqu'il y a une entrée:
table => ENTRÉE(n°entrée,date entrée)
et on enregistre l'entrée dans une autre table (si j'ai bien tout compris au
travail de mes predecesseurs ^^') => DÉTAIL_ENTRÉE(n°détail, n°entrée,
n°produit_cdt ...)
donc normalement quand il y a une entrée les différents produits sont
enregistrés avec le n°détail
car effectivement si c'est pas le cas je vais avoir énormément de mal à
séparer les produits pour réussir à les supprimer individuellement ... du
coup maintenant je balise encore plus :$


k3n3bra
Le #6730851
oui oui je sais j'ai essayé de bien la comprendre mais la base est
relativement imposante (elle date de 2003) et les utilisateurs s'en servent
depuis lors ... donc il y a bon nombre d'enregistrement.
de plus d'autres étudiants sont passés avant moi et n'ont pas réussi grand
chose non plus ... et c'est pas pour critiquer ceux qui sont passés avant moi
mais ils ont nommés les formulaires et autres un peu bizarrement donc c'est
difficile d'avoir de bons points de repéres ... enfin bref ... désolé du
dérangement ^^ je suis (presque) sur que j'ai du me tromper dans la
récupération du n° ou quelque chose comme ça :D
byebye


re,

Hum, un conseil avant de lancer dans quoi que ce soit essaye de
comprendre comment est organisé ta base, aprés tu pourras
intervenir dessus.


"k3n3bra"
AHHHH diantre ... un nom si compliqué pour ça ... pfiou j'ai eu peur ^^
donc lorsqu'il y a une entrée:
table => ENTRÉE(n°entrée,date entrée)
et on enregistre l'entrée dans une autre table (si j'ai bien tout compris au
travail de mes predecesseurs ^^') => DÉTAIL_ENTRÉE(n°détail, n°entrée,
n°produit_cdt ...)
donc normalement quand il y a une entrée les différents produits sont
enregistrés avec le n°détail
car effectivement si c'est pas le cas je vais avoir énormément de mal à
séparer les produits pour réussir à les supprimer individuellement ... du
coup maintenant je balise encore plus :$






Gilbert
Le #6732401
Bonjour,

Au vu des noms des champs j'imagine qu'ils sont numériques. As-tu essayé
d'enlever les apostrophes?
Ca donne :
critere = "N°ENTREE=" + Lstpdtsup.Column(0) + " AND N°DETAIL=" +
Lstpdtsup.Column(14)


--
Cordialement,

Gilbert


"k3n3bra" news:
salut !

je suis actuellement en stage et on me demande de reprendre un programme
déjà existant sur ACCESS concernant une gestion de stock
-l'utilisateur peut faire une entrée en stock, une entrée peut avoir
plusieurs produit (ex: entrée 01 => 5 pain, 10 farine etc)
-si l'utilisateur se trompe il peut modifier une entrée mais il doit
pouvoir aussi supprimer l'entrée (le code est déjà fait pour la
suppression

de l'entrée entiére)

le probleme est que je n'arrive pas à faire en sorte de supprimer un
produit

supprimer dans une entrée (ex: entrée01: sélectionner uniquement les '5
pains' et les supprimer )

pour l'instant mon code ressemble à cela :

Private Sub Cmdsupsup01_Click()

Dim base As Database
Dim tentree As Recordset
Set base = CurrentDb()
Set tentree = base.OpenRecordset("DÉTAIL_ENTREE", DB_OPEN_DYNASET)
Dim critere As String


critere = "N°ENTREE='" + Lstpdtsup.Column(0) + "' AND N°DETAIL='" +
Lstpdtsup.Column(14) + "'"


tentree.FindFirst (critere)

If tentree.NoMatch = False Then
tentree.Delete
End If

Lstpdtsup.Requery

donc voila lorsque j'essaye de supprimer le produit selectionné (cliqué
avec

la souris) un message d'erreur apparait sur "tentree.FindFirst (critere)"
=>

type de données imcompatible dans l'expressoin du critére
pourtant mon critere récupere bien le N°ENTREE et le N°DETAIL
enfin bref, je commence à avoir access en horreur et je dois encore y
passer

un mois
donc si quelqu'un pouvait apaiser ma peine cela serait fort sympathique
voila merci d'avance
byebye


k3n3bra
Le #6736521
salut !
oui j'ai tenté de les enlever ce matin au cas ou mais en fait n°entrée =>
num auto
n°détail => texte
si j'enléve les quotes j'ai une erreur de syntaxe sur mon critere du coup ^^'
merci quand même
byebye


Bonjour,

Au vu des noms des champs j'imagine qu'ils sont numériques. As-tu essayé
d'enlever les apostrophes?
Ca donne :
critere = "N°ENTREE=" + Lstpdtsup.Column(0) + " AND N°DETAIL=" +
Lstpdtsup.Column(14)


--
Cordialement,

Gilbert


"k3n3bra" news:
salut !

je suis actuellement en stage et on me demande de reprendre un programme
déjà existant sur ACCESS concernant une gestion de stock
-l'utilisateur peut faire une entrée en stock, une entrée peut avoir
plusieurs produit (ex: entrée 01 => 5 pain, 10 farine etc)
-si l'utilisateur se trompe il peut modifier une entrée mais il doit
pouvoir aussi supprimer l'entrée (le code est déjà fait pour la
suppression

de l'entrée entiére)

le probleme est que je n'arrive pas à faire en sorte de supprimer un
produit

supprimer dans une entrée (ex: entrée01: sélectionner uniquement les '5
pains' et les supprimer )

pour l'instant mon code ressemble à cela :

Private Sub Cmdsupsup01_Click()

Dim base As Database
Dim tentree As Recordset
Set base = CurrentDb()
Set tentree = base.OpenRecordset("DÉTAIL_ENTREE", DB_OPEN_DYNASET)
Dim critere As String


critere = "N°ENTREE='" + Lstpdtsup.Column(0) + "' AND N°DETAIL='" +
Lstpdtsup.Column(14) + "'"


tentree.FindFirst (critere)

If tentree.NoMatch = False Then
tentree.Delete
End If

Lstpdtsup.Requery

donc voila lorsque j'essaye de supprimer le produit selectionné (cliqué
avec

la souris) un message d'erreur apparait sur "tentree.FindFirst (critere)"
=>

type de données imcompatible dans l'expressoin du critére
pourtant mon critere récupere bien le N°ENTREE et le N°DETAIL
enfin bref, je commence à avoir access en horreur et je dois encore y
passer

un mois
donc si quelqu'un pouvait apaiser ma peine cela serait fort sympathique
voila merci d'avance
byebye







Michel_D
Le #6736511
Bonjour,

Bon allez, on va essayer de progresser, il faudrait fournir le code qui
supprime l'entrée entière.


"k3n3bra"
oui oui je sais j'ai essayé de bien la comprendre mais la base est
relativement imposante (elle date de 2003) et les utilisateurs s'en servent
depuis lors ... donc il y a bon nombre d'enregistrement.
de plus d'autres étudiants sont passés avant moi et n'ont pas réussi grand
chose non plus ... et c'est pas pour critiquer ceux qui sont passés avant moi
mais ils ont nommés les formulaires et autres un peu bizarrement donc c'est
difficile d'avoir de bons points de repéres ... enfin bref ... désolé du
dérangement ^^ je suis (presque) sur que j'ai du me tromper dans la
récupération du n° ou quelque chose comme ça :D
byebye


re,

Hum, un conseil avant de lancer dans quoi que ce soit essaye de
comprendre comment est organisé ta base, aprés tu pourras
intervenir dessus.


"k3n3bra"
AHHHH diantre ... un nom si compliqué pour ça ... pfiou j'ai eu peur ^^
donc lorsqu'il y a une entrée:
table => ENTRÉE(n°entrée,date entrée)
et on enregistre l'entrée dans une autre table (si j'ai bien tout compris au
travail de mes predecesseurs ^^') => DÉTAIL_ENTRÉE(n°détail, n°entrée,
n°produit_cdt ...)
donc normalement quand il y a une entrée les différents produits sont
enregistrés avec le n°détail
car effectivement si c'est pas le cas je vais avoir énormément de mal à
séparer les produits pour réussir à les supprimer individuellement ... du
coup maintenant je balise encore plus :$








Gilbert
Le #6736991
Alors laisse-les pour n°detail et enlève-les pour N°ENTREE

critere = "N°ENTREE=" + Lstpdtsup.Column(0) + " AND N°DETAIL='" +
Lstpdtsup.Column(14) + "'"

Et je ne sais pas si ça peut influer, mais j'utilise & plutôt que + pour les
chaînes de caractères
critere = "N°ENTREE=" & Lstpdtsup.Column(0) & " AND N°DETAIL='" &
Lstpdtsup.Column(14) & "'"


--
Cordialement,

Gilbert


"k3n3bra"
salut !
oui j'ai tenté de les enlever ce matin au cas ou mais en fait n°entrée =>
num auto
n°détail => texte
si j'enléve les quotes j'ai une erreur de syntaxe sur mon critere du coup
^^'
merci quand même
byebye


Bonjour,

Au vu des noms des champs j'imagine qu'ils sont numériques. As-tu essayé
d'enlever les apostrophes?
Ca donne :
critere = "N°ENTREE=" + Lstpdtsup.Column(0) + " AND N°DETAIL=" +
Lstpdtsup.Column(14)


--
Cordialement,

Gilbert


"k3n3bra" news:
salut !

je suis actuellement en stage et on me demande de reprendre un
programme
déjà existant sur ACCESS concernant une gestion de stock
-l'utilisateur peut faire une entrée en stock, une entrée peut
avoir
plusieurs produit (ex: entrée 01 => 5 pain, 10 farine etc)
-si l'utilisateur se trompe il peut modifier une entrée mais il
doit
pouvoir aussi supprimer l'entrée (le code est déjà fait pour la
suppression

de l'entrée entiére)

le probleme est que je n'arrive pas à faire en sorte de supprimer un
produit

supprimer dans une entrée (ex: entrée01: sélectionner uniquement les '5
pains' et les supprimer )

pour l'instant mon code ressemble à cela :

Private Sub Cmdsupsup01_Click()

Dim base As Database
Dim tentree As Recordset
Set base = CurrentDb()
Set tentree = base.OpenRecordset("DÉTAIL_ENTREE", DB_OPEN_DYNASET)
Dim critere As String


critere = "N°ENTREE='" + Lstpdtsup.Column(0) + "' AND N°DETAIL='" +
Lstpdtsup.Column(14) + "'"


tentree.FindFirst (critere)

If tentree.NoMatch = False Then
tentree.Delete
End If

Lstpdtsup.Requery

donc voila lorsque j'essaye de supprimer le produit selectionné (cliqué
avec

la souris) un message d'erreur apparait sur "tentree.FindFirst
(critere)"
=>

type de données imcompatible dans l'expressoin du critére
pourtant mon critere récupere bien le N°ENTREE et le N°DETAIL
enfin bref, je commence à avoir access en horreur et je dois encore y
passer

un mois
donc si quelqu'un pouvait apaiser ma peine cela serait fort sympathique
voila merci d'avance
byebye










Publicité
Poster une réponse
Anonyme