Debería ser más rápido asignar las cuatro variables en una consulta (solo una tabla o escaneo de índice):
SELECT INTO validador, validador2, validador3, validador4
sum(CASE id_tipo_cifra WHEN 901 THEN 1 ELSE 0 END)
,sum(CASE id_tipo_cifra WHEN 902 THEN 1 ELSE 0 END)
,sum(CASE id_tipo_cifra WHEN 905 THEN 1 ELSE 0 END)
,sum(CASE id_tipo_cifra WHEN 907 THEN 1 ELSE 0 END)
FROM webdte.doc_tip_cifra
WHERE id_doc = id_documento;
Mismo resultado.
Normalmente tendrías que comprobar id_doc
para NULL
además, pero como tienes un WHERE
condición con =
en él, no puede ser NULL
.