Access - Problema con el año

 
Vista:

Problema con el año

Publicado por Lucio (3 intervenciones) el 02/06/2013 16:39:07
Buenas tengo un problema que no entiendo bien, estoy haciendo una base de datos con Access 2007 para mi comunidad de vecinos, tengo todos los datos metidos pero lo que me falta es saber cuándo cambie el año como lo puedo hacer para que comience desde cero ósea 1 del siguiente año otra vez y seguir manteniendo los datos anteriores , en la tabla de año tengo( Idaño auto numérico )y otro campo( año numero), si alguien pe pudiera ayudar se lo agradecería, Gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Toni

Problema con el año

Publicado por Toni (129 intervenciones) el 02/06/2013 19:30:26
Hola Lucio,

Hasta donde yo se, y no se mucho, los camos autonuméricos no se pueden reiniciar a no ser que se empiece la base desde cero, es un campo que le has de dar otra utilidad y no la de reiniciar un año en un contador, como tienes otro campo (según dices), año número, tendrías que enfocarlo hacia ese campo poniendo alguna condición que cuando empezara el año nuevo pues te reiniciara ese campo desde 1 o desde el año que fuera....

Pero vamos, que de todas formas tu pregunta es poco concisa.

Saludos
Toni
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Problema con el año

Publicado por lucio (3 intervenciones) el 02/06/2013 22:37:53
Bien Toni de acuerdo eso es lo que quiero, que condición debería poner, Gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Toni

Problema con el año

Publicado por Toni (129 intervenciones) el 03/06/2013 18:28:46
Hola Lucio,

Mira te doy alguna pista de por dónde puedes empezar a jugar con Access, hacer tus propias pruebas y decidir cómo quieres enfocar el tema.

En el diseño de tabla puedes indicarle al campo que quieres que refleje el año que por defecto te ponga ya ese dato:

En valor predeterminado puedes poner:
Año(Ahora())

De esta manera cada vez que des de alta un registro ese campo ya recogerá el año en curso,


Para reiniciar con valor 1 el campo de tu tabla podrías establecer la condición de que te comparase el valor máximo del campo que contiene el año con el año actual y decirle que si es mayor (el año actual), entonces que reinicie ya que en ese caso indicará que el año ha cambiado a un valor superior:

If Year(Date) > DMax("TuCampoAño", "TuTabla") Then
Tutextboxdetuformulario.value=1
endif

El valor de ese campo (que yo he dado por hecho que lo tenías enlazado a la tabla en tu formulario) "Tutextboxdetuformulario", podrías indicárselo de manera automática, algo así como que cogiera siempre el valor más alto + 1 y en propiedades bloquearlo para que no se pudiera acceder a él, de esta manera te asegurarías que siempre iría aumentando.

Se hace igual que te he indicado arriba, con el Dmax ("nombrecampo" , "nombretabla"), a eso podrías sumarle uno y obtendrías su valor +1.

Bueno no se si te servirá de algo estas pinceladas, hacer un contador es fácil, lo difícil es evitar que se corrompa, piensa que la fecha del ordenador puede variar por diferentes motivos, cambiar el año por algún error, etc.., dar de alta un registro que luego se anula, etc.. etc.. también deberías controlar mediante un filtro que te avisara en caso de que no fuera cierto que el año ha cambiado realmente.
Como ves tienes bastantes opciones.

Saludos.
Toni
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Problema con el año

Publicado por lucio (3 intervenciones) el 04/06/2013 22:03:52
Hola Toni perdona mi torpeza pero no se donde debo poner la condición, te explico ahora en la tabla de años solo he puesto un campo ( año )numérico que es la llave, todas las demás tablas vienen a buscar el año a esta tabla 2013, al poner [En valor predeterminado puedes poner:
Año(Ahora())] me salen dos líneas 2013 si me haces el favor de decirme como ponga la condición que me comentas.
Gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar