En Qlik Sense, el valor booleano verdadero viene representado por -1 y el valor falso está representado por 0.
En otras palabras, la función inquarter() divide el año en cuatro trimestres iguales entre el 1 de enero y el 31 de diciembre. Puede utilizar el argumento de first_month_of_year para cambiar qué mes debe considerarse como el primero en su app y los trimestres cambiarán según ese argumento proporcionado. La base_date de la función identifica qué trimestre debe usarse como elemento comparador para la función. Por último, la función devuelve un resultado booleano al comparar valores de fecha con ese segmento trimestral.
Cuándo se utiliza
La función inquarter() devuelve un resultado booleano. Normalmente, este tipo de función se utilizará como condición en una if expression. Esto devuelve una agregación o cálculo que depende de si una fecha ocurrió o no en el trimestre seleccionado.
Por ejemplo, la función inquarter() se puede utilizar para identificar todos los equipos fabricados en un segmento trimestral en función de las fechas en que se fabricó el equipo.
Argumentos
Argumento
Descripción
timestamp
La fecha que desea comparar con base_date.
base_date
La fecha que se utiliza para evaluar el trimestre.
period_no
El trimestre puede desplazarse mediante period_no. period_no es un entero, en el que el valor 0 indica el trimestre que contiene a base_date. Los valores negativos en period_no indican trimestres precedentes y los valores positivos indican trimestres subsiguientes.
first_month_of_year
Si desea trabajar con años (fiscales) que no comiencen en enero, indique un valor entre 2 y 12 en first_month_of_year.
Puede utilizar los siguientes valores para establecer el primer mes del año en el argumento first_month_of_year:
first_month_of_year values
Month
Valor
Febrero
2
Marzo
3
Abril
4
May
5
Junio
6
Julio
7
Agosto
8
Septiembre
9
Octubre
10
Noviembre
11
Diciembre
12
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
inquarter ('01/25/2013', '01/01/2013', 0)
Devuelve TRUE
inquarter ('01/25/2013', '04/01/2013', 0)
Devuelve FALSE
inquarter ('01/25/2013', '01/01/2013', -1)
Devuelve FALSE
inquarter ('12/25/2012', '01/01/2013', -1)
Devuelve TRUE
inquarter ('01/25/2013', '03/01/2013', 0, 3)
Devuelve FALSE
inquarter ('03/25/2013', '03/01/2013', 0, 3)
Devuelve TRUE
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 de 2022, que se carga en una tabla llamada "Transactions".
Una instrucción load precedente, que contiene la función "inquarter()" configurada como el campo "in_quarter" y que determina qué transacciones tuvieron lugar en el mismo trimestre que el 15 de mayo de 2022.
Cargue los datos y abra una hoja. Cree una nueva tabla y agregue estos campos como dimensiones:
date
in_quarter
Tabla de resultados
date
in_quarter
1/7/2022
0
1/19/2022
0
2/5/2022
0
2/28/2022
0
3/16/2022
0
4/1/2022
-1
5/7/2022
-1
5/16/2022
-1
6/15/2022
-1
6/26/2022
-1
7/9/2022
0
7/22/2022
0
7/23/2022
0
7/27/2022
0
8/2/2022
0
8/8/2022
0
8/19/2022
0
9/26/2022
0
10/14/2022
0
10/29/2022
0
El campo "in_quarter" se crea en la instrucción load anterior mediante el uso de la función inquarter(). El primer argumento identifica qué campo se está evaluando. El segundo argumento es una fecha codificada del 15 de mayo que identifica qué trimestre definir como elemento comparador. Un period_no de 0 es el argumento final y garantiza que la función inquarter() no compare los trimestres que preceden o siguen al trimestre segmentado.
Cualquier transacción que ocurra entre el 1 de abril y el final del 30 de junio devuelve un resultado booleano de TRUE.
Ejemplo 2: period_no
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 2022, que se carga en una tabla llamada "Transactions".
Una instrucción load precedente, que contiene la función inquarter() configurada como el campo "previous_quarter" y que determina qué transacciones tuvieron lugar en el trimestre que precede al trimestre del 15 de mayo de 2022.
Cargue los datos y abra una hoja. Cree una nueva tabla y agregue estos campos como dimensiones:
date
previous_qtr
Tabla de resultados
date
previous_qtr
1/7/2022
-1
1/19/2022
-1
2/5/2022
-1
2/28/2022
-1
3/16/2022
-1
4/1/2022
0
5/7/2022
0
5/16/2022
0
6/15/2022
0
6/26/2022
0
7/9/2022
0
7/22/2022
0
7/23/2022
0
7/27/2022
0
8/2/2022
0
8/8/2022
0
8/19/2022
0
9/26/2022
0
10/14/2022
0
10/29/2022
0
Utilizando -1 como el argumento de period_no en la función inquarter(), la función desplaza los límites del segmento de comparación hacia atrás en un trimestre completo. El 15 de mayo cae en el segundo trimestre del año y por lo tanto el segmento inicialmente equivale al trimestre comprendido entre el 1 de abril y el 30 de junio. El period_no desplaza este segmento por tres meses negativos y hace que los límites de fecha sean del 1 de enero al 30 de marzo.
Por lo tanto, cualquier transacción que ocurra entre el 1 de enero y el 30 de marzo devolverá un resultado booleano de TRUE.
Ejemplo 3: first_month_of_year
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 2022, que se carga en una tabla llamada "Transactions".
Una instrucción load precedente, que contiene la función "inquarter()" configurada como el campo "in_quarter" y que determina qué transacciones tuvieron lugar en el mismo trimestre que el 15 de mayo de 2022.
Sin embargo, en este ejemplo, la política de la organización es que marzo sea el primer mes del año fiscal.
Cargue los datos y abra una hoja. Cree una nueva tabla y agregue estos campos como dimensiones:
date
previous_qtr
Tabla de resultados
date
previous_qtr
1/7/2022
0
1/19/2022
0
2/5/2022
0
2/28/2022
0
3/16/2022
-1
4/1/2022
-1
5/7/2022
-1
5/16/2022
-1
6/15/2022
0
6/26/2022
0
7/9/2022
0
7/22/2022
0
7/23/2022
0
7/27/2022
0
8/2/2022
0
8/8/2022
0
8/19/2022
0
9/26/2022
0
10/14/2022
0
10/29/2022
0
Utilizando 3 como el argumento de first_month_of_year en la función inquarter(), la función establece el comienzo del año en el 1 de marzo y luego divide el año en trimestres. Por lo tanto, los segmentos trimestrales son marzo-mayo, junio-agosto, septiembre-noviembre, diciembre-febrero. La base_date del 15 de mayo establece el trimestre marzo-mayo como trimestre de comparación para la función.
Por lo tanto, cualquier transacción que ocurra entre el 1 de marzo y el 31 de mayo devolverá un resultado booleano de TRUE.
Ejemplo 4: ejemplo de objeto gráfico
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 2022, que se carga en una tabla llamada "Transactions".
Una instrucción load precedente, que contiene la función "inquarter()" configurada como el campo "in_quarter" y que determina qué transacciones tuvieron lugar en el mismo trimestre que el 15 de mayo de 2022.
Cargue los datos y abra una hoja. Cree una nueva tabla y agregue este campo como dimensión:
date
Cree la siguiente medida para calcular si las transacciones se realizaron en el mismo trimestre que el 15 de mayo:
=inquarter(date,'05/15/2022', 0)
Tabla de resultados
date
in_quarter
1/7/2022
0
1/19/2022
0
2/5/2022
0
2/28/2022
0
3/16/2022
0
4/1/2022
-1
5/7/2022
-1
5/16/2022
-1
6/15/2022
-1
6/26/2022
-1
7/9/2022
0
7/22/2022
0
7/23/2022
0
7/27/2022
0
8/2/2022
0
8/8/2022
0
8/19/2022
0
9/26/2022
0
10/14/2022
0
10/29/2022
0
La medida "in_quarter" se crea en el gráfico usando la función inquarter(). El primer argumento identifica qué campo se está evaluando. El segundo argumento es una fecha codificada del 15 de mayo que identifica qué trimestre definir como elemento comparador. Un period_no de 0 es el argumento final y garantiza que la función inquarter() no compare los trimestres que preceden o siguen al trimestre segmentado.
Cualquier transacción que ocurra entre el 1 de abril y el final del 30 de junio devuelve un resultado booleano de TRUE.
Ejemplo 5: 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 "Products".
La tabla contiene los siguientes campos:
product ID
product type
manufacture date
cost price
Se ha identificado que, debido a un error del equipo, los productos que se fabricaron en el trimestre del 15 de mayo de 2022 eran defectuosos. Al usuario final le gustaría tener un gráfico que muestre, por nombre de trimestre, el estado de los productos fabricados, si eran "defectuosos" o "sin defectos" y el coste de los productos fabricados en ese trimestre.
Cargue los datos y abra una hoja. Cree una nueva tabla y agregue este campo como dimensión:
=quartername(manufacture_date)
Cree las siguientes medidas:
=if(only(InQuarter(manufacture_date,makedate(2022,05,15),0)),'Defective','Faultless') para identificar cuáles de los productos son defectuosos y cuáles no tienen defectos utilizando la función inquarter():
=sum(cost_price), para mostrar la suma del coste de fabricación de cada producto.
Haga lo siguiente:
Establezca el Formato numérico de la medida en Moneda.
La función inquarter() devuelve un valor booleano al evaluar las fechas de fabricación de cada uno de los productos. Para cualquier producto fabricado en el trimestre que contiene el 15 de mayo, la función inquarter() devuelve un valor booleano de TRUE y marca los productos como "defectuosos". Para cualquier producto que devuelva un valor de FALSE, y que por lo tanto no se haya fabricado en ese trimestre, marca los productos como "Sin defectos".
¿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.