Verwijderquery, Bevestiging weglaten

Status
Niet open voor verdere reacties.

fmeca

Gebruiker
Lid geworden
7 sep 2009
Berichten
95
Na het uitvoeren van een verwijder query komt telekns de vraag / bevestiging dat er een record is verwijderd, "record is deleted".
Deze moet telkens bevestigd worden. Ondanks dat "warnings op False" te staan"

Code:
    DoCmd.SetWarnings False
    strSQL = "DELETE "
    strSQL = strSQL & "FROM Groep_NENMeetstaat "
    strSQL = strSQL & "WHERE ((Not (Groep_NENMeetstaat.Verdeler_ID) Is Null) AND ((Groep_NENMeetstaat.Meet_Groepnummer) Is Null));"
    DoCmd.RunSQL (strSQL)
    DoCmd.SetWarnings True

Hoe krijg ik dit weg.
 
Dat mag; persoonlijk heb ik nooit problemen met Setwarnings. Maar je kunt Setwarnings True een keer uitzetten, en kijken of het scheelt. Ik vermoed eigenlijk van niet.... Overigens zet ik de vragen standaard altijd uit in Opties; dan ben je er volgens mij veel makkelijker van af.
 
Mijn gedachte achter de set warnings was, dat ik deze warnings dan 'uit' of 'aan' kon zetten.

m.a.w. in deze situatie zou hij, tijdens verwijderen, geen bevestiging vragen, maar bij de volgende instructies, na de setwarnings true, weer wel. afh. van de volgende code.

PS Octafish. Van deze optie wist ik nog niet. Gaan we proberen.

THX alvast
 
Je gedachte is op zich prima, en ik heb zelf ook nog niet meegemaakt dat hij alsnog met een melding komt. Zoals ik al zei: probeer het eens zonder de Setwarnings True, al zul je die actie wel een keer uit moeten voeren omdat je anders de manier verandert hoe objecten worden opgeslagen. Als je bijvoorbeeld een query verandert, en sluit, vraagt Access ook niet meer of je 'm wilt bewaren of niet, hij bewaart de wijzigingen gewoon. En dat wil je niet altijd.... Ook kun je nog met een msgbox de status van setwarnings controleren; misschien wordt het commando wel niet uitgevoerd, in welk geval de Setwarnings dus gewoon op True blijft staan, met het bekende gevolg.
 
Is het probleem al opgelost? Zo ja, mag je de vraag op Opgelost zetten. Zo Nee: wat is nu het probleem?
 
Dat mag; persoonlijk heb ik nooit problemen met Setwarnings. Maar je kunt Setwarnings True een keer uitzetten, en kijken of het scheelt. Ik vermoed eigenlijk van niet.... Overigens zet ik de vragen standaard altijd uit in Opties; dan ben je er volgens mij veel makkelijker van af.

OctaFish: Je hebt gelijk. Uit zetten haalt niets uit.
 
Dan is het hardnekkig :) Ik heb eigenlijk ook geen oplossing, want met DoCmd.SetWarnings False moet je de meldingen zowiezo onderdrukken. Als de macrobeveiliging te hoog staat doet de code het niet, maar dat geldt voor de hele procedure, dus de macrobeveiliging op <Laag> zetten zal waarschijnlijk ook niet helpen. Heb je misschien een Frontend-Backend database? Want misschien heb je de opties bij de databases niet gelijk staan... En heb je de drie opties (of dan toch in ieder geval de optie <Verwijderen van records> bij <Bevestigen> in je Opties ook uitgezet?
 
Opgelost!

Probleem werd veroorzaakt door de verwijder query. Deze was gemaakt omdat het formulier / tabel een één op veel relatie. De functie werd uitgevoerd bij het laden van het formulier. Hierdoor werd er reeds een record gegenereerd. Vervolgens werden de aanmaak-, bijwerk- en samenvoeg queries uitgevoerd waardoor er een lege record zichtbaar was. Deze heb ik toen getracht met een verijder query te verwijderen waardoor het probleem zich voordeed.

Opgelost door de 'aanmaak-, bijwerk- en samenvoeg queries uit te voeren op het mainform bij de actie van de drukknop 'voordat' het formulier opend.

THX voor jullie tips. :thumb:
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan