Hola,
Lo mismo estoy metiendo la pata, pero, si lo que quieres es traer los registros cuyo "a.MontoCapital = 1000.00", ¿porqué no pedir directamente esos registros? O sea, "where a.MontoCapital = 1000.00"?
Creo que esto es lo más "sencillo" y no la consulta que tú tratas de realizar, que sin duda es más compleja y además parece no ofrecerte los resultados deseados.
¿O es que hay algún motivo para tener que hacerlo tal como quieres? Yo no lo veo por ningún lado, pero, en fin, tal vez tú sí.