Esta función devuelve un valor correspondiente a una marca de tiempo (fecha-hora) del último milisegundo del último día del mes que contiene a date. El formato de salida predeterminado será el DateFormat establecido en el script.
Sintaxis:
MonthEnd(date[, period_no])
En otras palabras, la función monthend() determina en qué mes cae la fecha. Luego devuelve una marca de tiempo, en formato de fecha, con el último milisegundo de ese mes.
Cuándo se utiliza
La función monthend() se usa como parte de una expresión cuando deseamos que el cálculo utilice la fracción del mes que aún no ha ocurrido. Por ejemplo, si desea calcular el interés total aún no devengado durante el mes.
Tipo de datos que devuelve: dual
Argumentos
Argumento
Descripción
date
La fecha o marca de tiempo para evaluar.
period_no
period_no es un número entero que, si es 0 o se omite, indica el mes que contiene date. Los valores negativos en period_no indican meses precedentes y los valores positivos indican meses subsiguientes.
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.
Ejemplos de funciones
Ejemplo
Resultado
monthend('02/19/2012')
Devuelve 02/29/2012 23:59:59.
monthend('02/19/2001', -1)
Devuelve 01/31/2001 23:59:59.
Ejemplo 1: ejemplo básico
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 una serie de transacciones de 2022 que se carga en una tabla llamada "Transactions".
Un campo de fecha con el formato de la variable del sistema DateFormat (MM/DD/YYYY).
Una instrucción load anterior que contiene lo siguiente:
La función monthend() que está definida como el campo "end_of_month".
La función timestamp que está definida como el campo "end_of_month_timestamp".
Cargue los datos y abra una hoja. Cree una nueva tabla y agregue estos campos como dimensiones:
id
date
end_of_month
end_of_month_timestamp
Tabla de resultados
id
date
end_of_month
end_of_month_timestamp
8188
1/7/2022
01/31/2022
1/31/2022 11:59:59 PM
8189
1/19/2022
01/31/2022
1/31/2022 11:59:59 PM
8190
2/5/2022
02/28/2022
2/28/2022 11:59:59 PM
8191
2/28/2022
02/28/2022
2/28/2022 11:59:59 PM
8192
3/16/2022
03/31/2022
3/31/2022 11:59:59 PM
8193
4/1/2022
04/30/2022
4/30/2022 11:59:59 PM
8194
5/7/2022
05/31/2022
5/31/2022 11:59:59 PM
8195
5/16/2022
05/31/2022
5/31/2022 11:59:59 PM
8196
6/15/2022
06/30/2022
6/30/2022 11:59:59 PM
8197
6/26/2022
06/30/2022
6/30/2022 11:59:59 PM
8198
7/9/2022
07/31/2022
7/31/2022 11:59:59 PM
8199
7/22/2022
07/31/2022
7/31/2022 11:59:59 PM
8200
7/23/2022
07/31/2022
7/31/2022 11:59:59 PM
8201
7/27/2022
07/31/2022
7/31/2022 11:59:59 PM
8202
8/2/2022
08/31/2022
8/31/2022 11:59:59 PM
8203
8/8/2022
08/31/2022
8/31/2022 11:59:59 PM
8204
8/19/2022
08/31/2022
8/31/2022 11:59:59 PM
8205
9/26/2022
09/30/2022
9/30/2022 11:59:59 PM
8206
10/14/2022
10/31/2022
10/31/2022 11:59:59 PM
8207
10/29/2022
10/31/2022
10/31/2022 11:59:59 PM
El campo end_of_month se crea en la instrucción load anterior utilizando la función monthend() e introduciendo el campo de fecha como argumento de la función.
La función monthend() identifica en qué mes del año cae el valor de la fecha y devuelve una marca de tiempo del último milisegundo de ese mes.
La transacción 8192 tuvo lugar el 16 de marzo. La función monthend() devuelve el último milisegundo de ese mes, que es el 31 de marzo a las 23:59:59.
Ejemplo 2: period_no
Vista general
Se utilizan el mismo conjunto de datos y el mismo escenario que en el primer ejemplo.
En este ejemplo, la tarea es crear un campo, "previous_month_end'', que devuelva la marca de tiempo del final del mes anterior a la transacción.
Cargue los datos y abra una hoja. Cree una nueva tabla y agregue estos campos como dimensiones:
id
date
previous_month_end
previous_month_end_timestamp
Tabla de resultados
id
date
previous_month_end
previous_month_end_timestamp
8188
1/7/2022
12/31/2021
12/31/2021 11:59:59 PM
8189
1/19/2022
12/31/2021
12/31/2021 11:59:59 PM
8190
2/5/2022
01/31/2022
1/31/2022 11:59:59 PM
8191
2/28/2022
01/31/2022
1/31/2022 11:59:59 PM
8192
3/16/2022
02/28/2022
2/28/2022 11:59:59 PM
8193
4/1/2022
03/31/2022
3/31/2022 11:59:59 PM
8194
5/7/2022
04/30/2022
4/30/2022 11:59:59 PM
8195
5/16/2022
04/30/2022
4/30/2022 11:59:59 PM
8196
6/15/2022
05/31/2022
5/31/2022 11:59:59 PM
8197
6/26/2022
05/31/2022
5/31/2022 11:59:59 PM
8198
7/9/2022
06/30/2022
6/30/2022 11:59:59 PM
8199
7/22/2022
06/30/2022
6/30/2022 11:59:59 PM
8200
7/23/2022
06/30/2022
6/30/2022 11:59:59 PM
8201
7/27/2022
06/30/2022
6/30/2022 11:59:59 PM
8202
8/2/2022
07/31/2022
7/31/2022 11:59:59 PM
8203
8/8/2022
07/31/2022
7/31/2022 11:59:59 PM
8204
8/19/2022
07/31/2022
7/31/2022 11:59:59 PM
8205
9/26/2022
08/31/2022
8/31/2022 11:59:59 PM
8206
10/14/2022
09/30/2022
9/30/2022 11:59:59 PM
8207
10/29/2022
09/30/2022
9/30/2022 11:59:59 PM
La función monthend() identifica primero el mes en que se realizan las transacciones, ya que se ha utilizado un period_no de -1 como argumento del desplazamiento. Luego cambia a un mes antes e identifica el último milisegundo de ese mes.
La transacción 8192 tuvo lugar el 16 de marzo. La función monthend() identifica que el mes anterior a la transacción fue febrero. Luego devuelve el último milisegundo de ese mes, el 28 de febrero a las 23:59:59.
Ejemplo 3: ejemplo gráfico
Vista general
Se utilizan el mismo conjunto de datos y el mismo escenario que en el primer ejemplo.
En este ejemplo el conjunto de datos está sin modificar y cargado en la app. La tarea es crear un cálculo que devuelve una marca de tiempo del final de mes en que se realizaron las transacciones como una medida en un gráfico de la app.
La función monthend() devuelve la fecha de finalización del mes actual utilizando la fecha de hoy como único argumento. La expresión devuelve el número de días que quedan de este mes al restar la fecha de hoy de la fecha de finalización del mes.
Luego, este valor se multiplica por la reclamación de gastos diarios promedio de cada empleado para calcular el valor estimado de las reclamaciones de gastos que se espera que haga cada empleado en el mes restante.
¿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.