RECHERCHER :
COMMUNAUTE MP
Identifiez vous ...
Devenir Membre
J'ai oublié mon MDP
DOMAINE MP
Bavardages
Langages Généraux
Langages Web
Langages DotNet
Autres langages
Dev. Jeux Video
Sécurité
Sys. Exploitation
Graphismes
Logiciels
Réseaux
Bases de données
Méthodologies
Emplois High-tech
Aide juridique
Articles juridiques
FORUM
Index des forums
Ajouter un sujet
Rechercher sujet
Contact Responsable
Devenir modérateur
CHAT MP IRC
Votre pseudo ...
Srv: irc.moteurprog.com
Chan: #MoteurProg
PARTICIPER
Plus de 3500 emplois.
Rechercher un job
Déposez votre CV
Emplois High-tech

Visiteur MP

 requete suppression, aide

Forum : ACCESS
Sous Catégorie : Aucune
Type du sujet : Sujet Normale
FAQ : FAQ ACCESS

SUIVI DES SUJETS PAR MAIL

SUIVI PAR MAIL INACTIF

RESOLUTION DU SUJET SUJET NON RESOLU
BLOQUAGE DU SUJET SUJET ACTIF
APPARTENANCE A LA FAQ N'APPARTIENT PAS A LA FAQ


PAGE : [1]

POSTER UN NOUVEAU SUJET REPONDRE A CE SUJET

FORUM ACCESS

PREMIERE PAGE

PAGE PRECEDENTE

Page précedente

Page suivante

PAGE SUIVANTE

DERNIERE PAGE
me755
Nouveau membre
Inscrit : 06/02/2010
Messages : 11
Message
#168404
Posté le 08/02/10 à 23:25
Bonsoir

On a les relations suivantes

http://nsa11.casimages.com/img/2010/02/03/100203101513660598.jpg

J'ai crée la requête suppression suivante pour supprimer les parrains

http://www.zimagez.com/zimage/requetsupp.php

J'ai appliquer cocher " appliquer l'intégrité référentielle" + "mettre a jour en cascade les champs correspondants" + "effacer en cascade les enregistrements correpondants" de sorte que lorsque l'on supprime un parrain, on supprime l'enfant qu'il parraine aussi

Jusque la il n'y apas de problème ça fonctionne

Toutefois j'ai voulu créer une requête suppression enfant.
on a donc :

http://www.zimagez.com/zimage/requettesupprr.php

Mais là il y a un problème,
on a deux cas:

cas 1 :Un parrain peut parrainé plusieurs enfants donc j'aimerais que lorsqu'un enfant est supprimé, le parrain qui parraine plusieurs enfants ne le soit pas

Cas 2:andis que si un parrain parraine qu'un seul enfant et que ce dernier est supprimé je voudrais que le parrain le soit aussi

Or avec la requete que jai crée l'enfant est bien supprimé mais dans tous les cas le parrain ne l'est pas (que ce soit le cas 1 ou 2)

Pourriez vous me donner un coup de pouce?
Merci d'avance:)

HAUT DE PAGE

PROFIL MEMBRE LUI ECRIRE 

Publicité
Inscrit : X
Messages : X
Message
#Aucun

HAUT DE PAGE

  

me755
Nouveau membre
Inscrit : 06/02/2010
Messages : 11
Message
#168405
Posté le 09/02/10 à 11:49
svp?

HAUT DE PAGE

PROFIL MEMBRE LUI ECRIRE 

francisHop
Modérateur :
- Access
Inscrit : 11/05/2008
Messages : 548
Message
#168449
Posté le 11/02/10 à 02:01
Bonsoir,

Ha là là. J'ai mis "Fermé jusqu'en Mars" mais j'ouvre quand même un peu la boutique.

En contrepartie de ces heures supplémentaires je te demande de ne plus mettre texte1 pour un champ de formulaire. Et pour tes formulaires un nom préfixé.
Sinon, en VBA tu va "trinquer" ayant pris de mauvaises habitudes. Donner des noms distincts préfixés permet de savoir de suite à qui on s'adresse et de quel objet il s'agit.

J'ai repris une partie de tes noms... Hum! C'est pas idéal.

*****************************


Un formulaire —> frm_parrain source —> parrain (Qui devrait s'appeler tbl_parrain)
Avec au moins un champ —> code_parrain

Donc il existe dans ta base deux requêtes suppression :
La première :
qrySupParrain :
DELETE parrain.code_parrain FROM parrain WHERE ((parrain.code_parrain)=[Formulaires]![frm_parrain]![code_parrain]);
(Tiens, pour jouer on fera différend lors de la deuxième requête... De toute façon ce bouton de commande est donné à titre d'exemple et destiné à être supprimé...... Alors : Pourquoi le créer Smiley)

On va exécuter très simplement cette requête depuis un bouton —> cmdSupp situé sur ce formulaire :
Private Sub cmdSupp_Click() DoCmd.OpenQuery ("qrySupParrain") Me.Form.Requery End Sub
Ici nous faisons une mise à jour pour le champ supprimé

Nous avons un autre formulaire —> sfrm_enfant source —> enfant (Qui devrait s'appeler tbl_enfant)

Nous l'insérons en qualité de sous formulaire dans notre formulaire —> frm_parrain
Champs fils/Champs pères —> code_parrain

Sur notre formulaire principal (frm_parrain ) dans l'entête nous insérons une zone de texte —>code_enfant
Source —> =Nz(sfrm_enfant.Formulaire!code_enfant;0)

Dans le pied de notre sous formulaire une zone de texte —> Compteur
Source contrôle —> =Compte(*)

Un bouton de commande sur ce même formulaire —> :cmdSuppression
Private Sub cmdSuppression_Click() Dim SQL As String Dim Db As Database Set Db = CurrentDb() Dim strCompteur As String strCompteur = Me.sfrm_enfant.Form!Compteur If Me.code_enfant = 0 Then MsgBox "Sélectionnez un enfant!" & vbCrLf & vbCrLf & " FrancisHop", vbCritical, "Soyons attentifs" Exit Sub End If If strCompteur > 1 Then SQL = "DELETE [code_enfant] FROM enfant " SQL = SQL & "WHERE [code_enfant]= " & Me.code_enfant & ";" Db.Execute SQL Else If strCompteur = 1 Then SQL = "DELETE [code_enfant] FROM enfant " SQL = SQL & "WHERE [code_enfant]= " & Me.code_enfant & ";" Db.Execute SQL DoCmd.OpenQuery ("qrySupParrain") End If End If Db.Close Set Db = Nothing SQL = "" Me.Form.Requery 'Me.sfrm_enfant.Requery End Sub
Au fait, quand un sujet est OK --> Le Tag Résolu
Le Tag! Le Tag! Le...

Cordialement.

__________________________
.
Smiley Pas de questions techniques par MP

HAUT DE PAGE

PROFIL MEMBRE LUI ECRIRE 
POSTER UN NOUVEAU SUJET REPONDRE A CE SUJET

PREMIERE PAGE

PAGE PRECEDENTE Page précédente

Page suivante

PAGE SUIVANTE DERNIERE PAGE

FORUM ACCESS



    PAGE : [1]



.: Site Web développé par Yann Pingot et l'équipe MPWG avec www.evolvia-web.com :.