Tutorial rápido: aprenda los fundamentos de DAX en 30 minutos

Este tutorial rápido está destinado a usuarios nuevos de Power Pivot en Excel o de proyectos de modelos tabulares creados en SQL Server Data Tools. Está pensado para ofrecerle una introducción rápida y fácil sobre cómo usar Expresiones de análisis de datos (DAX) para solucionar varios problemas analíticos y de modelado básico de datos. Este tema incluye información conceptual, una serie de tareas que puede completar y algunos cuestionarios para probar lo que ha aprendido. Después de completar este tema, debe tener un buen conocimiento de la mayoría de los conceptos fundamentales básicos de DAX.

¿Qué es DAX?

DAX es una recopilación de funciones, operadores y constantes que se pueden usar en una fórmula o expresión para calcular y devolver uno o varios valores. Dicho más fácilmente, DAX ayuda a crear información de datos nueva que ya está en un modelo.

¿Por qué DAX es tan importante?

Es fácil crear un libro e importar algunos datos en él. Puede incluso crear tablas dinámicas o gráficos dinámicos que muestran información importante sin utilizar las fórmulas de DAX. Pero, ¿qué ocurre si necesita analizar datos críticos de ventas en varias categorías de productos y para distintos intervalos de fechas? ¿O si necesita combinar datos importantes del inventario de varias tablas de orígenes de datos diferentes? Las fórmulas de DAX proporcionan esta capacidad y muchas otras funciones importantes. Aprender a crear fórmulas DAX eficaces le ayudará a sacar el máximo partido de los datos. Cuando obtiene la información que necesita, puede empezar a solucionar los problemas empresariales reales que afectan a la base. Se trata de Business Intelligence y DAX le ayudará a entrar en esa materia.

Requisitos previos

Puede que ya está familiarizado con la creación de fórmulas de Microsoft Excel. Ese conocimiento será útil para comprender DAX, pero incluso si no tiene ninguna experiencia con las fórmulas de Excel, los conceptos descritos aquí le ayudarán a empezar a crear fórmulas y a solucionar los problemas de BI del mundo real inmediatamente.

Vamos a foco específicamente en las fórmulas DAX descripción usadas en los cálculos. Ya debe estar familiarizado con los conceptos básicos de las columnas calculadas y medidas (también conocido como campos calculados), que se describen en Power Pivot ayuda. También debe estar familiarizado con el Power Pivot en Excel entorno y herramientas de creación.

Libro de ejemplo

La mejor forma de aprender DAX es crear algunas fórmulas básicas, utilizarlas con algunos datos reales y ver los resultados. Los ejemplos y las tareas de este documento usan el libro Contoso Sample DAX Formulas.xlsx. Puede descargar el libro en http://go.microsoft.com/fwlink/?LinkID=237472&clcid=0x409. Una vez que tenga el libro descargado en el equipo, ábralo y, después, abra la ventana de Power Pivot.

Empecemos

Nos centraremos en tres conceptos fundamentales muy importantes de DAX: sintaxis, funciones y contexto. Por supuesto, hay otros conceptos importantes en DAX, pero conocer estos tres le proporcionará el mejor fundamento sobre el que basar sus conocimientos de DAX.

Sintaxis

Antes de crear sus propias fórmulas, echemos un vistazo a la sintaxis de las fórmulas de DAX. La sintaxis incluye varios elementos que conforman una fórmula o, más simplemente, cómo se escribe. Por ejemplo, examinemos una fórmula DAX simple utilizada para crear datos nuevos (valores) para cada fila de una columna calculada, denominada Margin, en una tabla FactSales: (los colores del texto de la fórmula únicamente son para fines ilustrativos)

Fórmula de una columna calculada

La sintaxis de esta fórmula incluye los elementos siguientes:

  1. El operador del signo igual (=) indica el principio de la fórmula y cuando esta fórmula se calcule, devolverá un resultado o un valor. Todas las fórmulas que calculan un valor empezarán con un signo de igual.

  2. La columna a la que se hace referencia [SalesAmount] contiene los valores de los que se resta. Una referencia de columna de una fórmula siempre viene entre corchetes []. A diferencia de las fórmulas de Excel que hacen referencia a una celda, una fórmula DAX hace referencia siempre a una columna.

  3. El operador matemático de resta (-).

  4. La columna a la que se hace referencia [TotalCost] contiene los valores que deseamos restar de los valores de la columna [SalesAmount].

Al intentar entender cómo leer una fórmula de DAX, suele ser útil analizar cada uno de los elementos de un idioma en el que piense y hable cada día. Por ejemplo, puede leer esta fórmula como:

En la tabla FactSales, para cada fila de la columna calculada Margin, calcule (=) un valor restando (-) los valores de la columna [TotalCost] de los valores de la columna [SalesAmount].

Echemos un vistazo a otro tipo de fórmula, que se usa en una medida:

Fórmula de una columna calculada

Esta fórmula incluye los elementos de sintaxis siguientes:

  1. El nombre de la medida Sum of Sales Amount. Fórmulas para las medidas pueden incluir el nombre de la medida, seguido de dos puntos, seguido de la fórmula de cálculo.

  2. El operador del signo igual (=) indica el principio de la fórmula de cálculo. Cuando se calcule, devolverá el resultado.

  3. La función SUM suma todos los números de la columna [SalesAmount]. Obtendrá más información sobre características más adelante.

  4. Los paréntesis () alrededor de uno o más argumentos. Todas las funciones requieren al menos un argumento. Un argumento pasa un valor a una función.

  5. La tabla a la que se hace referencia FactSales.

  6. La columna a la que se referencia [SalesAmount] en la tabla FactSales. Con este argumento, la función SUM sabe qué columna agregar a SUM.

Puede leer esta fórmula como:

Para el medida denominado Sum of Sales Amount, calcule (=) la suma de los valores en el [ SalesAmount ] columna en la FactSales tabla.

Cuando se coloca en los valores de la zona en una lista de campos de tabla dinámica de colocación, esta medida calcula y devuelve los valores definidos por cada celda de la tabla dinámica, por ejemplo, los teléfonos móviles en Estados Unidos.

Observe que hay algunas diferencias en esta fórmula con respecto a la fórmula que utilizamos para la columna calculada Margin. En particular, incluimos una función, SUM. Las funciones son fórmulas desarrolladas de antemano que facilitan la realización de cálculos y manipulaciones complejas con números, fechas, horas, texto, etc. Obtendrá más información sobre características más adelante.

A diferencia de la columna calculada Margin a versiones anteriores, verá que la columna [SalesAmount] se precedidos por la FactSales de la tabla en la que pertenece la columna. Esto se conoce como un nombre de columna completo que incluye el nombre de columna precedido por el nombre de tabla. Columnas que se hace referencia en la misma tabla, no se requiere el nombre de la tabla se incluyen en la fórmula. Puede hacer que las fórmulas largas que hacen referencia a todas las columnas es más cortas y más fáciles de leer. Sin embargo, es una buena costumbre incluir siempre el nombre de tabla en las fórmulas de medida, incluso cuando esté en la misma tabla.

Nota: Si el nombre de una tabla contiene espacios, palabras clave reservadas o caracteres no permitidos, deberá incluir el nombre de la tabla entre comillas simples. También debe escribir los nombres de tabla entre comillas si contiene algún carácter que esté fuera del intervalo ANSI de caracteres alfanumérico, independientemente de que la configuración regional admita el juego de caracteres o no.

Es muy importante que las fórmulas tengan la sintaxis correcta. En la mayoría de los casos, si la sintaxis no es correcta, se devolverá un error de sintaxis. En otros casos, la sintaxis puede ser correcta, pero los valores podrían no ser lo que se esperaba. Power Pivot (y SQL Server Data Tools) incluye IntelliSense, una característica usada para crear fórmulas sintácticamente correctas que lo ayudan a seleccionar los elementos correctos.

Vamos a crear una fórmula simple. Esta tarea le ayudará a entender en mayor medida la sintaxis de las fórmulas y cómo pueden ayudarle las características de IntelliSense de la barra de fórmulas.

Tarea: crear una fórmula sencilla para una columna calculada

  1. Si no está en la ventana de Power Pivot, en Excel, en la cinta de opciones Power Pivot, haga clic en Ventana dePower Pivot.

  2. En la ventana de Power Pivot, haga clic en la tabla FactSales (pestaña).

  3. Desplácese a la columna situada más a la derecha y luego, en el encabezado de columna, haga clic en Agregar columna.

  4. Haga clic en la barra de fórmula situada en la parte superior de la ventana del diseñador de modelos.

    Barra de fórmulas de PowerPivot

    El cursor ahora aparece en la barra de fórmulas. La barra de fórmulas es donde puede escribir una fórmula para una columna calculada o un campo calculado.

    Dediquemos un momento en examinar los tres botones de la parte izquierda de la barra de fórmulas.

    Barra de fórmulas

    Cuando el cursor está activo en la barra de fórmulas, esos tres botones dejan de estar activos. El botón del extremo izquierdo, la X, es simplemente un botón de cancelación. Continúe y haga clic en él. El cursor ya no aparece en la barra de fórmulas y el botón de cancelación y el botón de marca de verificación ya no aparecen. Continúe y haga clic en la barra de fórmulas de nuevo. El botón de cancelación y el botón de marca de verificación ahora reaparecen. Esto significa que está preparado para empezar a escribir una fórmula.

    El botón de marca de verificación es el botón de la fórmula de comprobación. No hay mucho que ver hasta que haya escrito una fórmula. Volveremos a ello dentro de poco.

    Haga clic en el botón Fx . Verá que aparece un cuadro de diálogo nuevo; el cuadro de diálogo Insertar función. El cuadro de diálogo Insertar función es la manera más sencilla de empezar a escribir una fórmula DAX. Agregaremos una función en una fórmula cuando creamos una medida un poco más adelante, pero por ahora, no necesita agregar una función en la fórmula de columna calculada. Continuar y cerrar el cuadro de diálogo Insertar función.

  5. En la barra de fórmulas, escriba un signo de igualdad = y después escriba un corchete de apertura [. Aparecerá una pequeña ventana con todas las columnas de la tabla FactSales. IntelliSense ha entrado en acción.

    Dado que las columnas calculadas siempre se crean en la tabla activa en la que esté, no hay necesidad de preceder el nombre de la columna con el nombre de tabla. Continúe y desplácese hacia abajo y haga doble clic en [SalesQuantity]. También puede desplazarse al nombre de columna que desee y, a continuación, presionar el tabulador.

    El cursor está activo ahora a la derecha de [SalesQuantity].

  6. Escriba un espacio y, después, escriba un operador de resta - (un signo menos) y otro espacio.

  7. Ahora, escriba otro corchete de apertura [. Esta vez, seleccione la columna [ReturnQuantity] y, a continuación, presione Entrar.

    Si obtiene un error, revise cuidadosamente la sintaxis. Si fuera necesario, compárela con la fórmula de la columna calculada Margin descrita anteriormente.

    Cuando presione Entrar para completar la fórmula, la palabra Calculando aparecerá en la barra de estado a lo largo de la parte inferior de la ventana de Power Pivot. Desaparece rápidamente, aunque haya calculado valores nuevos para más de tres millones de filas.

  8. Haga clic con el botón secundario en el encabezado de columna y cambie el nombre de la columna, NetSales.

Eso es, ha creado una fórmula DAX simple pero muy eficaz. Para cada fila de la tabla FactSales, la fórmula NetSales calcula un valor restando el valor de la columna [ReturnQuantity] del valor de la columna [SalesQuantity]. Observe que hemos dicho “Para cada fila”. Esto es una introducción a otro concepto muy importante en DAX: el contexto de fila. Aprenderá más sobre el contexto de fila posteriormente.

Sugerencia: 

Algo realmente importante de entender al escribir un operador en una fórmula DAX es el tipo de datos de los argumentos se usan. Por ejemplo, si escribiera la siguiente fórmula, = 1 & = 2, el valor devuelto sería un valor de texto “12 ". Esto se debe a que el operador y comercial (&) está destinado a la concatenación de texto. DAX interpreta esta fórmula para que indique: calcular un resultado tomando el valor 1 como texto y agregando el valor 2 como texto. Ahora, si escribiera = 1 + 2, DAX leería esta fórmula como: calcular un resultado tomando el valor numérico 1 y sumando el valor numérico 2. El resultado es, por supuesto, “3", un valor numérico. DAX calcula los valores resultantes en función del operador de la fórmula, no según el tipo de datos de las columnas utilizadas en el argumento. Los tipos de datos de DAX son muy importantes, pero no entran en el ámbito de este tutorial. Para obtener más información sobre los tipos de datos y los operadores de las fórmulas DAX, vea la referencia de DAX (http://go.microsoft.com/fwlink/?LinkId=239769&clcid=0x409) en los Libros en pantalla.

Probemos otra. En este momento, creará una medida escribiendo la fórmula y el uso de IntelliSense. No se preocupe demasiado si no comprende completamente la fórmula. Lo importante que es aprender a crear una fórmula que usa varios elementos juntos en sintaxis correcta.

Tarea: Crear una fórmula de medida

  1. En la tabla FactSales, haga clic en una celda vacía del Área de cálculo. Es el área de celdas vacías de debajo de una tabla en la ventana de Power Pivot.

Área de cálculo de PowerPivot

  1. En la barra de fórmulas, escriba el nombre Previous Quarter Sales:.

  2. Escriba un signo igual = para comenzar la fórmula de cálculo.

  3. Escriba las primeras letras CAL y haga doble clic en la función que desea utilizar. En esta fórmula, desea utilizar la función CALCULATE.

  4. Escriba un paréntesis de apertura ( para comenzar los argumentos que se van a pasar a la función CALCULATE.

    Observe que tras escribir los paréntesis de apertura, IntelliSense muestra los argumentos requeridos para la función CALCULATE. Aprenderá más acerca de los argumentos en un momento.

  5. Escriba las primeras letras de la tabla FactSales y, luego, en la lista desplegable, haga doble clic en FactSales[sales].

  6. Escriba una coma (,) para especificar el primer filtro, después escriba PRE y haga doble clic en la función PREVIOUSQUARTER .

    Después de seleccionar la función PREVIOUSQUARTER, otros paréntesis de apertura aparecen, lo que indica que otro argumento es necesario; esta vez, para la función PREVIOUSQUARTER.

  7. Escriba las primeras letras Dim y haga doble clic en DimDate[DateKey].

  8. Cierre tanto el argumento que se pasa a la función PREVIOUSQUARTER como la función CALCULATE escribiendo dos paréntesis de cierre )).

    La fórmula ahora debe tener el siguiente aspecto:

    Previous Quarter Sales:=CALCULATE(FactSales[Sales], PREVIOUSQUARTER(DimDate[DateKey]))

  9. Haga clic en el botón comprobar fórmula en la barra de fórmulas para validar la fórmula. Si obtiene un error, compruebe cada elemento de la sintaxis.

¡Hizo! Acaba de crear una medida usar DAX y no una fácil que. ¿Qué va a hacer esta fórmula es calcular el total de ventas del trimestre anterior, dependiendo de los filtros aplicados en una tabla dinámica o gráfico dinámico.

Ha incluido varios aspectos importantes de las fórmulas de DAX. En primer lugar, esta fórmula incluía dos funciones. Observe que la función PREVIOUSQUARTER está anidada como argumento pasado a la función CALCULATE. Las fórmulas de DAX pueden contener hasta 64 funciones anidadas. Es poco probable que una fórmula contuviera tantas funciones anidadas. De hecho, esta fórmula sería muy difícil de crear y depurar, y probablemente tampoco sería muy rápida.

En esta fórmula, también usó filtros. Los filtros reducen lo que se calcula. En este caso, seleccione un filtro como argumento, que es realmente otra función. Obtendrá más información sobre los filtros más adelante.

Finalmente, usó la función CALCULATE. Es una de las características más eficaces de DAX. A medida que cree modelos de datos y fórmulas más complejas, probablemente utilizará esta función muchas veces. Explicar la función CALCULATE está fuera del ámbito de este tutorial rápido, pero a medida que vaya aprendiendo más sobre DAX, préstele una atención especial.

Nota: Generalmente, para usar las funciones de inteligencia de tiempo en fórmulas DAX, debe especificar una columna de fecha única usando el cuadro de diálogo Marcar como tabla de fecha. En el libro Contoso DAX Formula Samples.xlsx, la columna DateKey de la tabla DimDate se selecciona como la columna de fecha única.

Crédito adicional

Es podrán que le pregunta: '¿qué es la fórmula DAX más sencilla que puedo crear?' Bien, la respuesta es 'la fórmula que no es necesario que'. Y esto es exactamente lo que puede hacer usando una función de agregación estándar en una medida. Necesita casi cualquier modelo de datos filtrar y calcular los datos agregados. Por ejemplo, la función suma en la medida de suma del importe de ventas que se ha visto anteriormente se usa para agregar todos los números de una columna en particular. DAX incluye algunas otras funciones que también valores agregan. Puede crear fórmulas con agregaciones estándares con la característica Autosuma automáticamente.

Tarea de crédito adicional: Crear una fórmula de medida mediante la característica Autosuma

  1. En la tabla FactSales, desplácese a la columna ReturnQuantity y haga clic en el encabezado de columna para seleccionar toda la columna.

  2. En la pestaña Inicio, en la cinta de opciones, en el grupo Cálculos, haga clic en el botón Autosuma.

Autosuma de PowerPivot

  1. Haga clic en la flecha abajo situada junto a Autosuma y, a continuación, haga clic en promedio (Observe las otra estándar funciones de agregación puede utilizar también).
    Inmediatamente, se crea una nueva medida con el nombre promedio de ReturnQuantity: seguido de la fórmula = AVERAGE([ReturnQuantity]).

¿Era fácil? ¿Verdad? Por supuesto, no todas las fórmulas que cree serán tan sencillas. Pero, mediante la característica Autosuma, puede crear fórmulas rápida y fácilmente mediante cálculos de agregación estándar.

Esto debería darle una buena idea de la sintaxis utilizada en las formulas DAX. También ha conocido algunas características realmente valiosas como IntelliSense y Autosuma para ayudarle a crear fórmulas rápidas, sencillas y precisas. Es evidente que puede aprender mucho más acerca de la sintaxis. Un buen lugar para ello es la referencia de DAX o los Libros en pantalla de SQL.

Preguntas sobre sintaxis

  1. ¿Qué hace este botón de la barra de fórmulas?
    botón Función

  2. ¿Qué rodea siempre un nombre de columna en una fórmula DAX?

  3. ¿Cómo escribiría una fórmula para lo siguiente?:
    En la tabla DimProduct, para cada fila de la columna calculada UnitMargin, calcule un valor restando los valores de la columna UnitCost de los valores de la columna UnitPrice

Las respuestas se proporcionan al final de este tema.

Funciones

Las funciones son fórmulas predefinidas que realizan cálculos utilizando valores específicos, denominados argumentos, especificados en un orden o estructura concretos. Los argumentos pueden ser otras funciones, otra fórmula, referencias de columna, números, texto, valores lógicos como TRUE o FALSE o constantes.

DAX incluye las siguientes categorías de funciones: de fecha y hora, de información, lógicas, matemáticas, estadísticas, de texto y de inteligencia de tiempo. Si está familiarizado con las funciones de las fórmulas de Excel, muchas de las funciones de DAX le parecerán similares; sin embargo, las funciones de DAX son únicas en este sentido:

  • Una función de DAX siempre hace referencia a una columna completa o una tabla. Si solo desea usar valores concretos de una tabla o columna, puede agregar filtros a la fórmula.

  • Si necesita personalizar los cálculos fila a fila, DAX dispone de funciones que permiten usar el valor de la fila actual o un valor relacionado como un tipo de argumento, para realizar cálculos que varían según el contexto. Aprenderá más sobre el contexto posteriormente.

  • DAX incluye muchas funciones que devuelven una tabla, en lugar de un valor. La tabla no se muestra, pero se usa para proporcionar la entrada a otras funciones. Por ejemplo, puede recuperar una tabla y, a continuación, contar los valores distintos que contiene o calcular sumas dinámicas en tablas o columnas filtradas.

  • DAX incluye una serie de funciones de inteligencia de tiempo. Estas funciones le permiten definir o seleccionar rangos de fechas y realizar cálculos dinámicos basados en ellos. Por ejemplo, puede comparar sumas en períodos paralelos.

A veces es complicado saber qué características podría necesitar usar en una fórmula. Power Pivot y el diseñador de modelos tabulares de SQL Server Data Tools incluyen la característica Insertar función, un cuadro de diálogo que le ayuda a seleccionar las funciones por categoría y proporciona descripciones breves para cada función.

Insertar función

Creemos una nueva fórmula que incluya una función que seleccione con la característica Insertar función:

Tarea: agregar una función en una fórmula mediante Insertar función

  1. En la tabla FactSales, desplácese a la columna situada más a la derecha y luego, en el encabezado de columna, haga clic en Agregar columna.

  2. En la barra de fórmulas, escriba un signo igual =.

  3. Haga clic en el botón Insertar función. Insertar función Abre el cuadro de diálogo Insertar función.

  4. En el cuadro de diálogo Insertar función, haga clic en Seleccionar una categoría en el cuadro de lista. De forma predeterminada, se selecciona Todo y todas las funciones de la categoría Todo se enumeran a continuación. Son muchas funciones, de modo que le interesará filtrarlas para que sea más fácil encontrar el tipo de función que está buscando.

  5. En esta fórmula, desea devolver algunos datos que ya existen en otra tabla. Para esto, va a usar una función de la categoría Filtro. Continúe y haga clic en la categoría Filtro y, a continuación, en Seleccionar una función, desplácese hacia abajo y haga doble clic en la función RELATED. Haga clic en Aceptar para cerrar el cuadro de diálogo Insertar función.

  6. Utilice IntelliSense para ayudarle a buscar y seleccionar la columna DimChannel[ChannelName].

  7. Cierre la fórmula y luego presione Entrar.

  8. Cuando presione Entrar para completar la fórmula, la palabra Calculando aparecerá en la barra de estado a lo largo de la parte inferior de la ventana de Power Pivot. Ahora verá que acaba de crear una nueva columna en la tabla FactSales con la información de canal de la tabla DimChannel.

  9. Cambie el nombre de la columna Canal.

    La fórmula debe tener el siguiente aspecto: =RELATED(DimChannel[ChannelName])

Acaba de conocer otra función muy importante en DAX, la función RELATED. La función RELATED devuelve valores de otra tabla. Puede utilizar RELATED siempre que haya una relación entre la tabla en la que está actualmente y la tabla que contiene los valores que desea obtener. Por supuesto, la función RELATED tiene posibilidades inmensas. En este caso, ahora puede incluir el canal de ventas para cada venta en la tabla FactSales. Ahora puede ocultar la tabla DimChannel de la lista de campos de tabla dinámica, lo que facilita la navegación y ver solo la información más importante que necesita realmente. Al igual que la función CALCULATE descrita anteriormente, la función RELATED es muy importante y es probable que la use muchas veces.

Como puede ver, las funciones de DAX pueden ayudarle a crear fórmulas muy eficaces. En realidad solo tocamos los fundamentos de las funciones. A medida que aumente sus conocimientos de DAX, creará fórmulas con muchas funciones diferentes. Uno de los mejores lugares para obtener información detallada acerca de las funciones DAX es la Referencia de expresiones de análisis de datos (DAX).

Preguntas sobre funciones

  1. ¿A qué hace referencia siempre una función?

  2. ¿Puede una fórmula contener más de una función?

  3. ¿Qué categoría de funciones usaría para concatenar dos cadenas de texto en una sola?

Las respuestas se proporcionan al final de este tema.

Contexto

El contexto es uno de los conceptos más importantes de DAX que debe entender. Hay dos tipos de contexto en DAX: contexto de fila y contexto de filtro. Primero examinaremos el contexto de fila.

Contexto de fila

El contexto de fila se entiende con más facilidad en relación a la fila actual. Por ejemplo, ¿recuerda la columna calculada Margin que vio anterior al tratar sobre la sintaxis? La fórmula =[SalesAmount] - [TotalCost] calcula un valor de la columna Margin para cada fila de la tabla. Los valores de cada fila se calculan a partir de valores en otras dos columnas, [SalesAmount] y [TotalCost], de la misma fila. DAX puede calcular los valores para cada fila de la columna Margin porque tiene el contexto: para cada fila, toma los valores de la columna [TotalCost] y los resta de los valores de la columna [SalesAmount].

En la celda seleccionada que se muestra a continuación, el valor $49,54 de la fila actual se calcula restando el valor $51,54 de la columna [TotalCost] del valor $101,08 de la columna [SalesAmount].

Contexto de la fila en PowerPivot

Contexto de fila no se aplica solo a las columnas calculadas. Contexto de fila también se aplica cuando una fórmula contiene una función que se aplica filtros para identificar una sola fila de una tabla. La función aplicará inherente un contexto de fila para cada fila de la tabla en los que se filtran. Este tipo de contexto de fila más a menudo se aplica a las medidas.

Contexto de filtro

El contexto de filtro es un poco más difícil de comprender que el contexto de fila. Es más fácil considerar el contexto de filtro como uno o más filtros aplicados en un cálculo que determina un resultado o un valor.

El contexto de filtro no existe en lugar del contexto de fila; en cambio, se aplica además del contexto de fila. Por ejemplo, para restringir más los valores para incluir en un cálculo, puede aplicar un contexto de filtro que no solo especifique el contexto de fila, sino que también especifique únicamente un valor determinado (filtro) en ese contexto de fila.

El contexto de filtro se ve fácilmente en las tablas dinámicas. Por ejemplo, al sumar TotalCost al área Valores y luego sumar el año y la región a las filas o columnas, define un contexto de filtro que selecciona un subconjunto de datos según un año y una región determinados.

¿Por qué es tan importante para DAX contexto de filtro? Porque mientras el contexto de filtro se puede aplicar más fácilmente agregando columnas y etiquetas de fila y segmentaciones de datos en una tabla dinámica, contexto de filtro también se pueden aplicar en una fórmula DAX definiendo un filtro mediante funciones como todos, relacionado, filtro, calcular, relaciones y otras columnas y medidas. Por ejemplo, echemos un vistazo a la siguiente fórmula en una medida denominada StoreSales:

Fórmula

Esta fórmula es claramente más compleja que algunas de las otras fórmulas que ha visto. Sin embargo, para entender mejor esta fórmula, podemos dividirla, como hemos hecho con otras fórmulas.

Esta fórmula incluye los elementos de sintaxis siguientes:

  1. El nombre de la medida StoreSales, seguido de dos puntos:.

  2. El operador del signo igual (=) indica el principio de la fórmula de cálculo.

  3. La función CALCULATE evalúa una expresión, como un argumento, en un contexto que es modificado por los filtros especificados.

  4. Los paréntesis () alrededor de uno o más argumentos.

  5. Una medida [Sales] en la misma tabla como una expresión. La medida Sales tiene la fórmula: = SUM(FactSales[SalesAmount]).

  6. Una coma (,) separa cada filtro.

  7. La columna a la que se hace referencia y un valor específico DimChannel[ChannelName] =”Store”, como filtro.

Esta fórmula asegurará que solo los valores de ventas, definidos por la medida de ventas, como un filtro se calculan únicamente para las filas de la columna DimChannel [ChannelName] con el valor "Store", como filtro.

Como puede imaginar, poder definir el contexto de filtro dentro de una fórmula tiene una capacidad inmensa. Poder hacer referencia a un valor determinado en una tabla relacionada es solo un ejemplo. No se preocupe si no entiende del todo el contexto inmediatamente. Al crear sus propias fórmulas, entenderá mejor el contexto y por qué es tan importante en DAX.

Preguntas acerca del contexto

  1. ¿Cuáles son los dos tipos de contexto?

  2. ¿Qué es el contexto de filtro?

  3. ¿Qué es el contexto de fila?

Las respuestas se proporcionan al final de este tema.

Resumen

Ahora que tiene un conocimiento básico de los conceptos más importantes en DAX, puede empezar a crear fórmulas DAX para columnas calculadas y medidas en su propia. DAX sí puede ser un poco complicado obtener información, pero hay muchos recursos disponibles para usted. Después de leer este tema varias veces y experimentar con algunos de sus propias fórmulas, puede obtener más información acerca de otros conceptos DAX y fórmulas que pueden ayudar a solución problemas de su propia empresa. Hay muchos recursos DAX disponibles para usted en Power Pivot ayuda, libros en pantalla de SQL Server, las notas y blogs de Microsoft y los profesionales de BI. El centro de recursos de DAX Wiki (http://social.technet.microsoft.com/wiki/contents/articles/dax-resource-center.aspx) es un lugar ideal para empezar. La referencia de expresiones de análisis de datos (DAX) también es un buen recurso. Asegúrese de guardar en la lista de favoritos.

Las notas del producto DAX en el modelo tabular BI, que puede descargar (http://go.microsoft.com/fwlink/?LinkID=237472&clcid=0x409) proporciona una visión más detallada sobre los conceptos presentados aquí con muchos otros conceptos avanzados y fórmulas. Estas notas del producto también usan el mismo libro Contoso DAX Sample Formulas.xlsx que ya tiene.

Respuestas de las preguntas

Sintaxis:

  1. Abra la característica Insertar función.

  2. Corchetes [].

  3. =[UnitPrice] - [UnitCost]

Funciones:

  1. Una tabla y una columna.

  2. Sí. Una fórmula puede contener hasta 64 funciones anidadas.

  3. Funciones de texto.

Contexto:

  1. Contexto de fila y contexto de filtro.

  2. Una o más filtros en un cálculo que determina un único valor.

  3. La fila actual.

Notas: 

  • Declinación de responsabilidades de traducción automática: Este artículo se ha traducido con un sistema informático sin intervención humana. Microsoft ofrece estas traducciones automáticas para que los hablantes de otros idiomas distintos del inglés puedan disfrutar del contenido sobre los productos, los servicios y las tecnologías de Microsoft. Puesto que este artículo se ha traducido con traducción automática, es posible que contenga errores de vocabulario, sintaxis o gramática.

  • Para su referencia, puede encontrar la versión en inglés de este artículo aquí. Todos los miembros de la comunidad de Microsoft pueden mejorar este artículo mediante el marco de colaboración en traducciones (CTF). Simplemente, mueva el puntero sobre cualquier frase del artículo y, a continuación, haga clic en "MEJORAR TRADUCCIÓN" en el widget CTF. Haga clic aquí para obtener más información acerca de CTF. Con el uso de CTF, el usuario acepta nuestras Condiciones del servicio.

Ampliar sus conocimientos
Explorar los cursos
Obtener nuevas características primero
Únase a los participantes de Office Insider

¿Le ha sido útil esta información?

¡Gracias por sus comentarios!

Gracias por sus comentarios. Quizá le interese ponerse en contacto con uno de nuestros agentes de soporte de Office.

×