your outer query has Two WHERe statmeents; the second one should be an AND, i think:
SELECT
dbo.ACCOUNT.PORTFOLIO
FROM dbo.ACCOUNT
INNER JOIN dbo.SERVICE_JOIN
ON dbo.ACCOUNT.PORT_ROW_ID = dbo.SERVICE_JOIN.PORTFOLIO_ID
INNER JOIN dbo.SERVICES
ON dbo.SERVICE_JOIN.SERVICE_ID = dbo.SERVICES.ROW_ID
INNER JOIN dbo.CONTACT_JOIN
ON dbo.SERVICE_JOIN.SERVICE_ID = dbo.CONTACT_JOIN.SERVICE_ID
INNER JOIN dbo.CONTACTS
ON dbo.CONTACT_JOIN.CONTACT_ID = dbo.CONTACTS.ROW_ID
FULL OUTER JOIN dbo.NOTES
ON dbo.SERVICES.SERVICE_TYPE = dbo.NOTES.SERVICE_TYPE
AND dbo.ACCOUNT.ACC_ROW_ID = dbo.NOTES.ACCOUNT_ID
WHERE EXISTS (SELECT
dbo.ACCOUNT.PORTFOLIO
FROM dbo.ACCOUNT
WHERE dbo.CLIENT.REGION = 'R1')
AND NOT EXISTS (SELECT
dbo.ACCOUNT.PORTFOLIO
FROM dbo.ACCOUNT
WHERE dbo.DM_SERVICES.SERVICE = 'MISSING_SERVICE')
also, you may have modified an existing query, but as it stands, if this is returning just the one column dbo.ACCOUNT.PORTFOLIO
FROM dbo.ACCOUNT there is no reason to have lall those other joins...they just slow down the query, and you only need the WHERe...AND
Lowell