Or you could re-write the view to avoid the problem:
CREATE VIEW TODOS2
AS
SELECT A.rgt, A.codctt, D.CIF, D.morada, D.dta_alteracao, D.bictb
FROM allt AS A
JOIN
(
SELECT B1.codctb, B1.CIF, B1.morada, B1.dta_alteracao, B1.bictb
FROM contribuintesest AS B1
UNION ALL
SELECT B2.codctb, B2.CIF, B2.morada, B2.dta_alteracao, NULL
FROM contribuintee AS B2
UNION ALL
SELECT B3.codctb, B3.CIF, B3.morada, B3.dta_alteracao, NULL
FROM contribuinteinst B3
) D
ON A.codctb = D.codctb