Access - Campo de "Fecha" campo "Categoria" a partir de esto conseguir fecha vencimiento

   
Vista:

Campo de "Fecha" campo "Categoria" a partir de esto conseguir fecha vencimiento

Publicado por Ezequiel parezequiel@gmail.com (3 intervenciones) el 25/11/2015 17:05:16
Necesito ayuda, tengo una base de datos donde los productos tienen una fecha inicial, y una categoria (A,B;C;D) a partir de estas quisiera me apareciera en un 3er campo la fecha de vencimiento de los mismos.
en Excel soy capaz de lograrlo con la formula: =SI(E3="A";D3+1;SI(E3="A1"; "S/N";SI(E3="B";D3+3;SI(E3="C";D3+10;SI(E3="D";D3+120))))) Donde E3 seria el campo "categoria", y D3 el campo "fecha inicial", pero lo necesito en access.... Muy agradecido
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

Campo de "Fecha" campo "Categoria" a partir de esto conseguir fecha vencimiento

Publicado por Enrique Heliodoro (1663 intervenciones) el 25/11/2015 20:14:36
Ese comando (en Access) se le conoce como IIF (en guiri) y Silnm (en cristiano), el resto es similar a su aplicación en Excel (condición, parte verdadera, parte falsa).
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

Campo de "Fecha" campo "Categoria" a partir de esto conseguir fecha vencimiento

Publicado por Ezequiel Paredes parezequiel@gmail.com (3 intervenciones) el 25/11/2015 20:33:35
te comento en el campo "fecha de vencimiento", en tipo de datos coloco "calculated" (mi access esta en ingles) luego en la ventana emergente coloco tal cual esta formula..... sustituyo los SiInm por, IIf... pero luego me sale una ventana de error "you cannot set "fecha de vencimiento" to the calculed data type

Use add field in the modify fields ribbon to add a field with the calculated data type.... si me puedes ayudar.... seria muy, pero muy util
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

Campo de "Fecha" campo "Categoria" a partir de esto conseguir fecha vencimiento

Publicado por Enrique Heliodoro (1663 intervenciones) el 25/11/2015 23:31:51
No se pueden comparar peras con balones de futbol (en eso Access es muy critico) y con los datos que aportas no se puede llegar a ninguna conclusión.

Si indicases el tipo de campo para cada uno de los que intervienen, la expresión que provoca el error (transcripción fidedigna, no inventada) y lo que se desea obtener, se podría llegar a alguna conclusión.

Lamentablemente Access no tiene un creador de macros tan interactivo como Excel, pero ello reporta la ventaja de permitir mas creatividad (o con menos supuestos limites).
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

Campo de "Fecha" campo "Categoria" a partir de esto conseguir fecha vencimiento

Publicado por Ezequiel Paredes (3 intervenciones) el 26/11/2015 15:07:43
Hola.... a ver....soy un novato en Access, y no entiendo mucho lo q tratas de decirme

En mi pequeña tabla, tengo una columna para las fecha iniciales, esta columna la defino en el data type como "date/time", luego en otra columna tengo las categorias (A,B;C;D), estas las defino igualmente en el data type como "text", y en la tercera columna, Fecha de vencimiento, utilizo en el data type "Calculated", y expreso la siguiente funcion:
=IIf([categoria]="A",[fecha]+1,IIf([categoria]="B",[fecha]+3,IIf([categoria]="C",[fecha]+10,IIf([categoria]="D",[fecha]+120,""))))
Que es lo que entiendo seria lo mas parecido a Excel
Si puedes explicarme para niño de kinder ¿Por que falla? te lo agradecería infinitamente
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

Campo de "Fecha" campo "Categoria" a partir de esto conseguir fecha vencimiento

Publicado por Enrique Heliodoro (1663 intervenciones) el 26/11/2015 15:57:15
No se si el valor de/en ese campo será de utilidad para usos posteriores (por ejemplo: localizar elementos a caducar en un plazo de dos días), dado que el campo no es de tipo fecha, sino de un valor calculado (que aunque parezca una fecha, puede ser cualquier cosa).

Normalmente para la introducción de datos EN ACCESS, no se utilizan las tablas, se utilizan los formularios (que son los que verdaderamente admiten programación), además los cálculos que se pueden efectuar directamente en las tablas son limitados y no creo que el IIF este admitido entre ellos.

En un formulario si se aplicaría IIF y trabajaría de forma correcta, aun así podemos intentarlo con una expresión matemática (al fin y al cabo se trata de una suma)

El original:
=IIf([categoria]="A",[fecha]+1,IIf([categoria]="B",[fecha]+3,IIf([categoria]="C",[fecha]+10,IIf([categoria]="D",[fecha]+120,""))))

Esto : [categoria]="A",[fecha]+1
Matemáticamente: Fecha + Abs([categoria]="A")
Añadimos: IIf([categoria]="B",[fecha]+3
Matemáticamente: Fecha + Abs([categoria]="A") + (3 * Abs([categoria]="B"))

Y asi se irían concatenado las diferentes condiciones, todo ello en base a que una comparación devuelve True(-1) o False(0) y que ABS devuelve el valor absoluto (1,0 en este caso)
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