Es que eso no es un "insert", eso es un insert con un select anidado...
y un count distinct y un sum, y otro sum, y un count(*) !!!
y otro exists con otro select anidado, y un not exists con otro select anidado...
y un group by
y todo aderezado de montones de campos de texto, concatenaciones de campos, ...
No es un insert, es un desastre
Me temo que tendrás que ir poco a poco, probando cada parte del código para ir mejorándolo y afinándolo.