TBL4.PROPERTY_NAME(+)='Id'
significa che quando la linea è stata unita internamente, il valore deve essere 'Id' , ma quando la riga è stata unita esternamente, la condizione viene valutata come vera
tuttavia dovresti riscrivere la dichiarazione allo standard come:
SELECT *
FROM TBL1
JOIN TBL2 ON TBL2.Type_ID = TBL1.Type_ID
JOIN TBL3 ON TBL3.Project_ID = TBL1.Project_ID
LEFT JOIN TBL4 ON TBL4.Entity_ID=TBL1.Entity_ID AND TBL4.PROPERTY_NAME='Id'