Esta función devuelve la fecha que figura n meses después de startdate o, si n es negativa, la fecha que figura n meses antes de startdate.
Sintaxis:
AddMonths(startdate, n
, [ , mode])
Tipo de datos que devuelve: dual
La función addmonths() suma o resta un número definido de meses, n, desde una fecha de inicio startdate y devuelve la fecha resultante.
El argumento de mode impactará en los valores de startdate en o a partir del día 28 de cada mes. Al establecer el argumento de mode en 1, la función addmonths() devuelve una fecha que es igual en distancia relativa al final del mes que la fecha startdate.
Por ejemplo, el 28 de febrero es el último día del mes. Si la función addmonths(), con un mode de 1, se utiliza para devolver la fecha dos meses después, la función devolverá la última fecha de abril, el 30 de abril.
Argumentos
Argumento
Descripción
startdate
La fecha de inicio como una indicación de fecha, por ejemplo '2012-10-12'.
n
El número de meses como un entero positivo o negativo.
mode
Especifica si el mes se agrega en relación con el comienzo o el final del mes. El modo predeterminado es 0 para las adiciones relativas al comienzo del mes. Establezca el modo en 1 para las adiciones relativas al final del mes. Cuando el modo se establece en 1 y la fecha de entrada es 28 o superior, la función verifica cuántos días faltan para llegar al final del mes en la fecha de inicio. El mismo número de días para llegar al final del mes se establece en la fecha devuelta.
Cuándo se utiliza
La función addmonths() se utiliza normalmente en una expresión para encontrar una fecha un número determinado de meses antes o después de un período de tiempo.
Por ejemplo, la función addmonths() puede servir para identificar la fecha de finalización de los contratos de telefonía móvil.
Ejemplos de funciones
Ejemplo
Resultado
addmonths ('01/29/2003' ,3)
Devuelve "04/29/2003".
addmonths ('01/29/2003',3,0)
Devuelve "04/29/2003".
addmonths ('01/29/2003',3,1)
Devuelve "04/28/2003".
addmonths ('01/29/2003',1,0)
Devuelve "02/28/2003".
addmonths ('01/29/2003',1,1)
Devuelve "02/26/2003".
addmonths ('02/28/2003',1,0)
Devuelve "03/28/2003".
addmonths ('02/28/2003',1,1)
Devuelve "03/31/2003".
addmonths ('01/29/2003',-3)
Devuelve "10/29/2002".
Configuraciones regionales
A menos que se especifique algo distinto, los ejemplos de este tema utilizan el siguiente formato de fecha: MM/DD/YYYY. El formato de fecha se especifica en la sentencia SET DateFormat de su script de carga de datos. El formato de fecha predeterminado puede ser diferente en su sistema, debido a su configuración regional y otros factores. Puede cambiar el formato en los ejemplos a continuación para ajustarlo a sus necesidades. O puede cambiar los formatos en su script de carga para que coincidan con estos ejemplos.
La configuración regional predeterminada en las aps se basa en la configuración del sistema regional de la computadora o servidor donde esté instalado Qlik Sense. Si el servidor de Qlik Sense al que está accediendo está configurado en Suecia, el editor de carga de datos utilizará la configuración regional sueca para las fechas, la hora y la moneda. Estos ajustes de formato regional no están relacionados con el idioma mostrado en la interfaz de usuario de Qlik Sense. Qlik Sense se mostrará en el mismo idioma que esté utilizando en su navegador.
Ejemplo 1: sin argumentos adicionales
Vista general
Abra el editor de carga de datos y agregue el script de carga a continuación a una nueva pestaña.
El script de carga contiene:
Un conjunto de datos que contiene un conjunto de transacciones entre 2020 y 2022, que se carga en una tabla llamada "Transactions".
El campo de fecha proporcionado en el formato de la variable del sistema DateFormat: (MM/DD/AAAA).
La creación de un campo, two_months_later, que devuelve la fecha correspondiente a dos meses después de que se haya realizado la transacción.
Cargue los datos y abra una hoja. Cree una nueva tabla y agregue estos campos como dimensiones:
date
two_months_later
Tabla de resultados
date
two_months_later
01/10/2020
03/10/2020
02/28/2020
04/28/2020
04/09/2020
06/09/2020
04/16/2020
06/16/2020
05/21/2020
07/21/2020
08/14/2020
10/14/2020
10/07/2020
12/07/2020
12/05/2020
02/05/2021
01/22/2021
03/22/2021
02/03/2021
04/03/2021
03/17/2021
05/17/2021
04/23/2021
06/23/2021
05/04/2021
07/04/2021
06/30/2021
08/30/2021
07/26/2021
09/26/2021
12/27/2021
02/27/2022
02/02/2022
04/02/2022
02/26/2022
04/26/2022
03/07/2022
05/07/2022
03/11/2022
05/11/2022
El campo "two_months_later" se crea en la instrucción load anterior, mediante el uso de la función addmonths(). El primer argumento proporcionado identifica qué fecha se está evaluando. El segundo argumento es el número de meses que hay que sumar o restar a startdate. En este caso, se proporciona el valor de 2.
La transacción 8193 tuvo lugar el 14 de agosto. Por lo tanto, la función addmonths() devuelve el 14 de octubre de 2020 para el campo two_months_later.
Ejemplo 2: Final de mes relativo
Vista general
Abra el editor de carga de datos y agregue el script de carga a continuación a una nueva pestaña.
El script de carga contiene:
Un conjunto de datos que contiene un conjunto de transacciones de fin de mes de 2022, que se carga en una tabla llamada Transactions.
El campo de fecha proporcionado en el formato de la variable del sistema DateFormat: (MM/DD/AAAA).
La creación de un campo, relative_two_months_prior, que devuelve la fecha relativa de fin de mes de dos meses antes de que se realizara la transacción.
Cargue los datos y abra una hoja. Cree una nueva tabla y agregue estos campos como dimensiones:
date
relative_two_months_prior
Tabla de resultados
date
relative_two_months_prior
01/28/2022
11/27/2021
01/31/2022
11/30/2021
02/28/2022
12/31/2021
04/29/2022
02/27/2022
04/30/2022
02/28/2022
05/31/2022
03/31/2022
08/14/2022
06/14/2022
10/07/2022
08/07/2022
El campo relative_two_months_prior se crea en la instrucción de carga anterior mediante el uso de la función addmonths(). El primer argumento proporcionado identifica qué fecha se está evaluando. El segundo argumento es el número de meses que hay que sumar o restar a startdate. En este caso, se proporciona el valor de -2. El último argumento es la moda, con un valor de 1, que obliga a la función a calcular la fecha relativa de fin de mes para todas las fechas mayores o iguales que 28.
La transacción 8191 tiene lugar el 29 de abril de 2022. Inicialmente, dos meses antes fijaría el mes en febrero. Entonces, debido a que el tercer argumento de la función establece el modo en 1 y el valor del día es posterior al 27, la función calcula el valor relativo de fin de mes. La función identifica que el 29 es el penúltimo día de abril y por tanto devuelve el penúltimo día de febrero, el 27.
Ejemplo 3: ejemplo de objeto gráfico
Vista general
Abra el editor de carga de datos y agregue el script de carga a continuación en una nueva pestaña.
El script de carga contiene el mismo conjunto de datos y escenario que el primer ejemplo.
Sin embargo, en este ejemplo, el conjunto de datos sin modificar se carga en la aplicación. El cálculo que devuelve la fecha de dos meses posteriores a la realización de la transacción se crea como una medida en un objeto gráfico.
Cargue los datos y abra una hoja. Cree una nueva tabla y agregue este campo como dimensión: date.
Cree la siguiente medida:
=addmonths(date,2)
Tabla de resultados
date
=addmonths(date,2)
01/10/2020
03/10/2020
02/28/2020
04/28/2020
04/09/2020
06/09/2020
04/16/2020
06/16/2020
05/21/2020
07/21/2020
08/14/2020
10/14/2020
10/07/2020
12/07/2020
12/05/2020
02/05/2021
01/22/2021
03/22/2021
02/03/2021
04/03/2021
03/17/2021
05/17/2021
04/23/2021
06/23/2021
05/04/2021
07/04/2021
06/30/2021
08/30/2021
07/26/2021
09/26/2021
12/27/2021
02/27/2022
02/02/2022
04/02/2022
02/26/2022
04/26/2022
03/07/2022
05/07/2022
03/11/2022
05/11/2022
La medida two_months_later se crea en el objeto gráfico usando la función addmonths(). El primer argumento proporcionado identifica qué fecha se está evaluando. El segundo argumento es el número de meses que hay que sumar o restar a startdate. En este caso, se proporciona el valor de 2.
La transacción 8193 tuvo lugar el 14 de agosto. Por lo tanto, la función addmonths() devuelve el 14 de octubre de 2020 para el campo two_months_later.
Ejemplo 4: Escenario
Vista general
Abra el editor de carga de datos y agregue el script de carga a continuación a una nueva pestaña.
El script de carga contiene:
Un conjunto de datos que se carga en una tabla denominada Mobile_Plans.
Información con el ID del contrato, la fecha de inicio, la duración del contrato y la cuota mensual.
El usuario final desea un objeto gráfico que muestre, por ID de contrato, la fecha de finalización de cada contrato telefónico.
Cargue los datos y abra una hoja. Cree una nueva tabla y agregue estos campos como dimensiones:
contract_id
start_date
contract_length
Cree la siguiente medida para calcular la fecha de finalización de cada contrato:
=addmonths(start_date,contract_length, 0)
Tabla de resultados
contract_id
start_date
contract_length
=addmonths(start_date,contract_length,0)
8188
01/13/2020
18
07/13/2021
8189
02/26/2020
24
02/26/2022
8190
03/27/2020
36
03/27/2023
8191
04/16/2020
24
04/16/2022
8192
05/21/2020
24
05/21/2022
8193
08/14/2020
12
08/14/2021
8194
10/07/2020
18
04/07/2022
8195
12/05/2020
12
12/05/2021
8196
01/22/2021
12
01/22/2022
8197
02/03/2021
18
08/03/2022
8198
03/17/2021
24
03/17/2023
8199
04/23/2021
24
04/23/2023
8200
05/04/2021
12
05/04/2022
8201
06/30/2021
12
06/30/2022
8202
07/26/2021
12
07/26/2022
8203
12/27/2021
36
12/27/2024
8204
06/06/2022
24
06/06/2024
8205
07/18/2022
12
07/18/2023
8206
11/14/2022
12
11/14/2023
8207
12/12/2022
18
06/12/2024
¿Esta página le ha sido útil?
No dude en indicarnos en qué podemos mejorar si encuentra algún problema en esta página o su contenido, como, por ejemplo, errores tipográficos, pasos que falta o errores técnicos.