Avatar billede plato Juniormester
16. marts 2014 - 08:31 Der er 5 kommentarer og
1 løsning

DoCmd Delete med 2 conditions

Hejsa

Der er et per billeder med som måske giver bedre mening end min forklaring.

Jeg har en form der lister Hovedroller (Sorteret i Query med MainRole = True)
Hovedrollen (MainRoleTitle) ligger i tbljobs (JobsId). En Hovedrolle kan i samme tabel have Subroller. Jeg henviser bare Hovedrollens JobsId til MainRoleId.

Nu har jeg så prøvet at lave en sletteknappe i min form:
DoCmd.SetWarnings False
DoCmd.RunSQL "DELETE FROM tblJobs Where JobsId= " & Me.JobsId & ""
MsgBox "Hovedrollen samt alt tilhørende data er slettet."
DoCmd.SetWarnings True
Me.Requery

Den virker helt fint som den skal. Men den slette jo kun Hovedrollen.

Så har jeg prøvet med:
DoCmd.SetWarnings False
DoCmd.RunSQL "DELETE FROM tblJobs Where JobsId= " & Me.JobsId & " AND MainJobId = " & Me.JobsId & ""
MsgBox "Hovedrollen samt alt tilhørende data er slettet."
DoCmd.SetWarnings True
Me.Requery

Denne melder ikke fejl, men den sletter heller ikke.

Billedemateriale:
Form: http://billedeupload.dk/images/VWiua.png
Tabel: http://billedeupload.dk/images/clBFS.png
Avatar billede terry Ekspert
16. marts 2014 - 09:23 #1
AND means that BOTH criteria have to be satisfied (true) but if say Me.JobsId = 71 then BOTH have to be 71.

When I look at your example I would say you need to change AND to OR
Avatar billede terry Ekspert
16. marts 2014 - 09:25 #2
The reason that your sql isn't giving an error is because the syntax is right, its just what you are asking which is wrong!
Avatar billede plato Juniormester
16. marts 2014 - 11:15 #3
Ty Terry. Once again your help gave me the way to solve it. :)

DoCmd.SetWarnings False
DoCmd.RunSQL "DELETE FROM tblJobs Where MainJobId= " & Me.JobsId & ""
DoCmd.RunSQL "DELETE FROM tblJobs Where JobsId= " & Me.JobsId & ""
MsgBox "Hovedrollen samt alt tilhørende data er slettet."
DoCmd.SetWarnings True
Me.Requery
Avatar billede terry Ekspert
16. marts 2014 - 11:50 #4
I'll place an answer then :-)

You should be able to do it with one SQL ..

"DELETE FROM tblJobs Where MainJobId= " & Me.JobsId & " OR JobsId = " & Me.JobsId
Avatar billede plato Juniormester
16. marts 2014 - 12:59 #5
Men en OR, tager den ikke kun enten den ene eller den anden?
Eller leder den godt nok efter begge?
Avatar billede terry Ekspert
16. marts 2014 - 14:12 #6
enten MainJobId eller JobsId = Me.JobsId
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Dyk ned i databasernes verden på et af vores praksisnære Access-kurser

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester