Ver Mensaje Individual
  #10 (permalink)  
Antiguo 02/05/2011, 23:44
Avatar de Joch_pa
Joch_pa
 
Fecha de Ingreso: octubre-2009
Ubicación: Pachuca De Soto, Hidalgo, Mexico, Mexico
Mensajes: 122
Antigüedad: 14 años, 6 meses
Puntos: 7
Respuesta: Stored Procedure para registrar prestamos segun limite de credito

perdon, me habi desconectado un rato, pero ya viendo tu logica y tu avance, me doy cuenta que:
en el primer error que te arroja es porque el SP Procedimiento_cliente tiene 8 parametros y solo le estas pasando 7, y viendo la consulta, te falta el primero @id_cliente.

Error al convertir el tipo de datos varchar a int.

y por esta razón también, el segundo error (Procedimiento_Prestamo) se genera.

ya analizado ese punto, lo que recomiendo es revisar cada SP y los datos pasados, si no tienes alguno no lo deberías de agregar a la lista de paramentos.

y crear varios SP que hagan las osas por separado, algo asi ;lo que esta en parentesis son datos a pasarle al SP;

un SP para verificar si existe el cliente (buscado por nombre , mejor por RFC [este campo se lo agregaria] )

un SP para insertar un nuevo cliente (todos los campos de la tabla de cliente)

un SP para actualizar el cliente (id_cliente y datos que pueden cambiar [obvio nombre, rfc no cambiarion])

un SP para verificar si existe el prestamo para el cliente (id_cliente)
un SP para agregar un prestamo para el cliente (id_cliente y datos del prestamo)
un SP para actualizar el prestamo para el cliente (id_prestamo y datos que puedan cambiar)


y listo

ahora :

Código cita:
Ver original
  1. ...controlar que el cliente no tome prestamos mas alla de su limite de credito. Eje: si el limite es 100, los prestamos no debe pasar de este monto.

lo que debes hacer en este punto es no revasar el limite de credito

osea limite_credito de tu tabla cliente, te indica cuanto es lo mas que le puedes prestar.
osea debes calcular cuanto dinero le tienes prestado y ver que no se pase antes de autorizarle otro prestamo.

esto lo haces en sql con la funcion sum()


espero aun te sirva y no haber llegado demasiado tarde.