Sua cláusula where está convertendo a junção externa de volta em uma interna.
As linhas não correspondentes preservadas pela
outer join todos terão NULL valores para documentation.status então seu documentation.status != 3 condição irá filtrá-los de volta (O resultado da expressão NULL !=3 é unknown não true ). Para evitar esse problema, use
select documentation_reference.ref_docnumber,
documentation.filename
from documentation_reference
left outer join documentation
on ref_docnumber = documentation.docnumber
and documentation.status != 3
where documentation_reference.docnumber = 'TP-036'
Observe que o
documentation.status != 3 o predicado é movido para o JOIN doença.