Tek-Tips is the largest IT community on the Internet today!

Members share and learn making Tek-Tips Forums the best source of peer-reviewed technical information on the Internet!

  • Congratulations TouchToneTommy on being selected by the Tek-Tips community for having the most helpful posts in the forums last week. Way to Go!

Query not working as designed

Status
Not open for further replies.

SysDupe123

Technical User
Dec 17, 2003
74
US
I've been agonizing over this all day! This is the SQL for the query that I built:

UPDATE [Compl P129 A3C] INNER JOIN MasterFundSch ON [Compl P129 A3C].LOANNUMBER = MasterFundSch.[Loan Number] SET MasterFundSch.P129OldInv = [OLDINVNUMBER], MasterFundSch.P129OldCat = [OLDCATNUMBER], MasterFundSch.P129NewInv = [Compl P129 A3C]!NEWINVNUMBER, MasterFundSch.P129NewCat = [Compl P129 A3C]!NEWCATNUMBER, MasterFundSch.P129PrinBal = [PRINBAL], MasterFundSch.P129PrinTran = [Compl P129 A3C]!PRINTRANS, MasterFundSch.P129Diff = [PRINBAL]-[PRINTRANS], MasterFundSch.P129RptDt = [Compl P129 A3C]!RPTDATE, MasterFundSch.P129ActionCd = [Compl P129 A3C]!ACTIONCODE, MasterFundSch.P129DueDt = [Compl P129 A3C]!DUEDATE, MasterFundSch.P129EffDt = [Compl P129 A3C]!EFFDATE, MasterFundSch.[REPUR SUB] = IIf([groupID]="FH",IIf(Month([fund dt])=Month(Now()),IIf(Day([fund Dt])<16,"N","C"),"C"),Null)
WHERE (((MasterFundSch.P129RptDt) Is Null) AND (([Compl P129 A3C].NEWINVNUMBER)=[MasterFundSch]![New Inv]) AND (([Compl P129 A3C].NEWCATNUMBER)=[MasterFundSch]![New Cat]) AND (([Compl P129 A3C].ACTIONCODE)="0000" Or ([Compl P129 A3C].ACTIONCODE)="0820" Or ([Compl P129 A3C].ACTIONCODE)="0077" Or ([Compl P129 A3C].ACTIONCODE)="0078"));


I'm getting records updating that are not one of the four Action Codes that I've assigned.
Help before I go crazy!
 
I think it is easier to read if you get rid of some of the unnecessay parens. Normally the dot operator identifies fields.
WHERE
MasterFundSch.P129RptDt Is Null
AND [Compl P129 A3C].NEWINVNUMBER=[MasterFundSch].[New Inv]
AND [Compl P129 A3C].NEWCATNUMBER=[MasterFundSch].[New Cat]
AND ([Compl P129 A3C].ACTIONCODE IN ("0000" , "0820", "0077", "0078"))

 
Yeah, it would be nicer to read, but Access seems to put them in. It still says the same thing. The problem is I get codes updating like "1040" and "DIF1" and they shouldn't!
 
Got it. Over at UtterAccess, they suggested I use the
In() function instead of all the OR statements. Worked like a charm! Thanks anyway!
 
Status
Not open for further replies.

Part and Inventory Search

Sponsor

Back
Top