que tal Mario85,
si buscas en el foro veras dos temas que te podrían ayudar.
http://foros.solocodigo.com/viewtopic.php?f=58&t=40100&p=145646&hilit=trigger#p145646http://foros.solocodigo.com/viewtopic.php?f=58&t=38270&p=139257&hilit=trigger#p139257tambien puedes ve ejemplos en la pagina de soporte de mysql.
http://dev.mysql.com/doc/refman/5.0/es/create-trigger.htmlsi te fijas en los ejemplos tu necesitas un trigger de "AFTER INSERT" y lo vas a crear para la tabla pagos.
lo que si debes tomar en cuenta es que necesitas identificar "cual" cliente hace el pago para saber a cual cliente actualizar en tu tabla de clientes
ya dentro del trigger necesitas actualizar las tablas, ej, la de factura seria mas o menos así.
update pagos
set saldo=pagos.saldo - new.abono
where clve_fact=new.clve_fact;
esto tomando en cuenta la naturaleza de los conceptos, ya que es una abono a una factura el saldo de la factura sera igual a el saldo menos el abono realizado.
para la tabla cliente seria mas o menos asi:
NUMERO_FACTURA=new.clve_fact;
select SUM(t1.saldo) into SALDO_CLIENTE from facturas as t1,cliente as t2 where t1.clve_fact=NUMERO_FACTURA and t1.clve_cliente=t2.clve_cliente;
update clientes
set saldo =SALDO_CLIENTE;
para este caso tendras que declrar variables "NUMERO_FACTURA" Y "SALDO_CLIENTE" ya que lo que estas pidiendo es un "SUM" de las facturas pero segun tus tablas al momento de hacer un insert en pagos no se sabe cual es el cliente y por tanto se tiene que hacer un join con facturas para saber que cliente es, si tu tabla de pagos tuviera el campo clve_cliente no tuvieras que hacer el join.
bueno espero te halla servido de ayuda.