Campos derivados

Si tenemos un grupo de campos que están relacionados, o si los campos portan información que puede desglosarse en partes más pequeñas útiles para crear dimensiones o medidas, podemos crear definiciones de campos que sirvan para generar campos derivados. Un ejemplo de esto es un campo de fecha, desde el que podemos derivar múltiples atributos, como por ej. año, mes, número de semana o día de la semana. Todos estos atributos pueden calcularse en una expresión de dimensión empleando funciones de fecha de Qlik Sense, pero una alternativa es crear una definición de calendario que sea común para todos los campos del tipo fecha. Las definiciones de campo se almacenan en el script de carga de datos.

Nota: Las definiciones de campos de calendario predeterminadas para Qlik Sense se incluyen en autoCalendar para campos de fecha cargados usando el Gestor de datos. Para más información, vea Añadir datos a la app.

Declarar las definiciones de campos de calendario

Utilizamos la sentencia Declare para crear una definición de los campos derivados. Aquí es donde definimos los distintos atributos del campo, en este caso atributos relacionados. Cada campo se describe como <expression> As field_name tagged tag. Configurar una o más etiquetas es opcional, pero puede afectar a la ordenación del campo derivado. Utilice $1 para hacer referencia al campo de datos desde el que se deben generar los campos derivados.

Advertencia: No utilice autoCalendar como nombre para las definiciones de campos de calendario, ya que este nombre se reserva para las plantillas de calendario generadas automáticamente.
Calendar: DECLARE FIELD DEFINITION TAGGED '$date' Parameters first_month_of_year = 1 Fields Year($1) As Year Tagged ('$numeric'), Month($1) as Month Tagged ('$numeric'), Date($1) as Date Tagged ('$date'), Week($1) as Week Tagged ('$numeric'), Weekday($1) as Weekday Tagged ('$numeric'), DayNumberOfYear($1, first_month_of_year) as DayNumberOfYear Tagged ('$numeric') Groups Year, Week, Weekday type drilldown as YearWeekDayName, Year, Month, Date type collection as YearMonthDate;
 

Para más información, vea Declare.

Enlazar campos de datos de mapas con el calendario mediante Derive

El siguiente paso es utilizar la sentencia Derive para enlazar campos de datos previos con el calendario. Esto creará los campos derivados. Podemos hacer esto de tres maneras distintas en el script de carga de datos.

  • Asociar campos específicos por nombre de campo.

    DERIVE FIELDS FROM FIELDS OrderDate,ShippingDate USING Calendar;
  • Asociar todos los campos que contengan una o más etiquetas de campo específicas.

    DERIVE FIELDS FROM EXPLICIT TAGS '$date' USING Calendar;
  • Asociar todos los campos que están etiquetados con una de las etiquetas de la definición de campo ($date en el ejemplo anterior).

    DERIVE FIELDS FROM IMPLICIT TAG USING Calendar;

En este caso podría utilizar cualquiera de los tres ejemplos aquí presentados.

Para más información, vea Derive.

Usar los campos de fecha derivados en una visualización

Qlik Sense está preparado para reconocer campos de fecha derivados si hemos creado una definición de calendario y asociado los campos como en este ejemplo. Están disponibles en la sección Campos fecha y hora del panel de activos Campos. También encontrará todos los campos derivados en el editor de expresiones y cuando cree o edite dimensiones.

Para más información, vea Campos de fecha y hora.