Access - Sebastian

   
Vista:

Sebastian

Buenos dias.

Por favor, necesito de su ayuda.

Tengo una consulta que valida si la fecha real es 0 (Domingo), si es 0 le sumara +1 dia para convertirlo en lunes, y si no es cero mantendra la fecha real; todo esto en un nuevo campo llamado fecha nueva.

He intentado con estos dos codigos:

fecha_nueva: SiInm(DíaSemana([fecha_reall]=0),[fecha_real]+1,[fecha_real])

fecha_nueva: SiInm(DíaSemana([fecha_real]=0),AgregFecha("d",1,[fecha_real]),[fecha_real)

Pero al ejecutarlo me da el siguiente resultado.

fecha_real fecha_nueva
20/06/2014 21/06/2014
21/06/2014 22/06/2014
22/06/2014 23/06/2014
23/06/2014 24/06/2014

Como podran observar aun sin ser domingo le esta sumando +1 dia sin respetar la condicion .

Que podria estar haciendo mal??
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

Sebastian

Publicado por Emilio (221 intervenciones) el 24/06/2014 16:01:04
Hola Sebastian

Recuerda la sintaxis de iif:

SiInm(expresión, parteverdadera, partefalsa)

fecha_nueva: SiInm(DíaSemana([fecha_reall]=0),[fecha_real],[fecha_real])+1

Saludos.
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

Sebastian

Publicado por Sebastian (37 intervenciones) el 25/06/2014 06:29:20
Amigo Emilio,

Gracias por tu atencion.

Hize la prueba con tus recomendaciones; pero el resultado sigue siendo el mismo.

Aun sin ser domingo le esta sumando +1 dia sin respetar la condicion .

Que podra ser????
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

Sebastian

Publicado por Emilio (221 intervenciones) el 25/06/2014 15:37:30
Es bastante lógico, lo que te sale mira:


La función DíaSemana puede devolver cualquiera de estos valores:

Constante Valor Descripción

vbSunday 1 Domingo
vbMonday 2 Lunes
vbTuesday 3 Martes
vbWednesday 4 Miércoles
vbThursday 5 Jueves
vbFriday 6 Viernes
vbSaturday 7 Sábado

De donde sacaste que 0 es Domingo si en realidad es 1, como ninguna fecha te da 0 siempre te da un dia más.

Saludos.
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

Sebastian

Publicado por Sebastian (37 intervenciones) el 26/06/2014 06:47:21
Amigo Sebastian, te doy la razon.

muy aprte de tus recomendaciones, he notado que estaban mal colocadas los parentesis, debiendo ser asi:


fecha_nueva: SiInm(DíaSemana([fecha_real])=1;[fecha_real];[fecha_real]+1)


Gracias por la aclaracion.
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