This is just a hunch, because it's hard to tell what sort of data you're hoping to pull, but you may be missing some parenthesis around the OR clause. See https://stackoverflow.com/a/1241158/1445356 for more info.
Your query currently has this effective WHERE clause:
WHERE
(
A.ACTIVITY_TYPE = 'LICENCE'
AND A.PRODUCT_CODE = 'IP'
AND A.THRU_DATE IS NULL
AND A.SOURCE_CODE = 'ICAS'
AND N.MEMBER_TYPE IN ('MM','PM','ST','SC','SE','CA','CM','AC','IN','BC','NM','IS','RN','WEB','PS','PP','NP')
AND N.STATUS IN ('A','P')
AND N.ID <> 1
)
OR Groups.IP_access = 1
is that correct logic? or were you wanting to do this:
WHERE
A.ACTIVITY_TYPE = 'LICENCE'
AND A.PRODUCT_CODE = 'IP'
AND A.THRU_DATE IS NULL
AND A.SOURCE_CODE = 'ICAS'
AND N.MEMBER_TYPE IN ('MM','PM','ST','SC','SE','CA','CM','AC','IN','BC','NM','IS','RN','WEB','PS','PP','NP')
AND N.STATUS IN ('A','P')
AND (
N.ID <> 1
OR Groups.IP_access = 1
)