Ver Mensaje Individual
  #4  
Antiguo 29-12-2007
Avatar de Lepe
[Lepe] Lepe is offline
Miembro Premium
 
Registrado: may 2003
Posts: 7.424
Reputación: 28
Lepe Va por buen camino
Al tratarse de paradox, la cosa se complica un poco, en otros motores de Bases de datos, se tienen muchos mecanismos donde elegir, aquí, poco se puede hacer. Tendrás que implementar mucho código delphi y consultas sql.

Cita:
Empezado por Jaros
lo que no tengo muy claro es si cuando finalicen los diez meses obligarle a mi hija que vaya a la ficha del curso y por medio de un boton o lo que sea cambie el periodo de 2007/2008 a 2008/2009
No tienes que obligar a nada a tu hija, tampoco te echará cuenta... (no he podido contenerme de hacer un chiste malo, lo siento ).
Cuando un curso se da de alta, se debería dar de alta todos los periodos que comprende, es decir, si tiene 2 periodos, dar de alta 2 registros:
Código:
IdCurso		IdPeriodo	Periodo		Fecha_inico	FechaFin
  1		1		2007/2008	01/10/2007	30/06/2008
  1		2		2008/2009	01/07/2008	01/01/2009
A través de la fecha actual del sistema, usando fecha_inicio y Fecha_Fin, puedes saber qué periodo es el vigente de cada curso.

Incluso pidiendo un listado por filtrado por IdCurso y ordenado ascendentemente por IdPeriodo, puedes saber cual es el periodo siguiente al vigente.

Si no existen alumnos en el periodo vigente, significa que estás comenzando un nuevo periodo y puedes preguntar al usuario si quiere crear todos los registros para el periodo actual. No sé supongo que es lo que quieres decir con "cambiar el periodo a todos los alumnos", dicho de otra forma, crear nuevos registros para un periodo nuevo de cada alumno cursando una materia.

Obviamente cada Alumno que está en un curso debe tener un campo Boolean que se llame "Matricula_Cancelada", para no dar de alta en el nuevo periodo, aquellos alumnos que han cancelaldo su matrícula.

Cita:
Empezado por Jaros
por que si lo hago en automatico (cambiar el periodo a todos los alumnos a la vez lo mismo que en el curso) creo que pueda tener problemas.
Obviamente no sé cómo has implementado eso y tampoco sé, cómo debe funcionar el programa, por este motivo quizás "no nos entendamos".

Cita:
Empezado por Jaros
luego en la ficha del alumno cuando realice el primer pago se le cambie el campo periodo a 2008/2009
ummm, esto no lo entiendo. Cuando un alumno va a pagar, tu hija debe indicar qué curso, qué periodo y qué mes va a pagar. Por tanto, el campo "periodo" es un dato de entrada, no tienes que averiguarlo.

Se puede solucionar con un DBLookUpCombo, mostrando en la lista desplegable del combo los periodos que tiene un curso, y, sabiendo la fecha actual del sistema, "proponer por defecto" el periodo que se desea pagar.

Si no "he entendido lo que preguntas", expón la estructura de tus tablas (al menos la de curso, periodo, curso-alumno, pagos) y explica qué registros das de alta y como funciona. Quizás yo tenga en mente una forma de trabajo y tu otra distinta.

Saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente,
se lo volveré a explicar hasta que no lo entienda, Gracias.
Responder Con Cita