Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Nota:
Las funciones definidas por el usuario de DAX se encuentran actualmente en versión preliminar.
Las funciones definidas por el usuario (UDF) de expresiones de análisis de datos (DAX) permiten empaquetar lógica DAX reutilizable y con parámetros en los modelos, lo que facilita la escritura, el mantenimiento y el uso compartido del código DAX. En lugar de repetir fórmulas entre medidas, columnas calculadas y objetos visuales, las UDF proporcionan flexibilidad de estilo de programación a los modelos semánticos, lo que le permite definir funciones una vez y usarlas en todas partes compatibles con DAX. Para más información, consulte Funciones definidas por el usuario de DAX.
¿Por qué usar funciones definidas por el usuario?
- Reutilización y coherencia: defina un cálculo una vez y reutilítelo en todas partes.
- Mantenimiento: actualice la lógica en un solo lugar para corregir o evolucionar reglas.
- Creación más segura: las sugerencias de tipo opcionales y los asistentes de comprobación de tipos admiten código predecible y resistente a errores.
- Objetos de modelo de primera clase: las UDF residen en el modelo y se pueden ver en el Explorador de modelos.
Comienza
Para probar UDF en escritorio:
- Vaya a Opciones de archivo > y opciones de configuración>.
- Seleccione Características de vista previa y compruebe las funciones definidas por el usuario de DAX.
- Seleccione Aceptar y reinicie Power BI Desktop.
Definición de una función
Puede definir una función definida por el usuario en Power BI Desktop mediante la vista de consulta DAX (DQV) o la vista TMDL.
Sintaxis general
La sintaxis general de una UDF es:
/// Optional description above the function
FUNCTION <FunctionName> = ( <ParameterName>: <ParameterType>, ... ) => <FunctionBody>
Ejemplo: Función fiscal simple
Este es un ejemplo sencillo de DQV que agrega impuestos al importe especificado. También puede evaluar UDF en DQV.
DEFINE
/// AddTax takes in amount and returns amount including tax
FUNCTION AddTax = (
amount : NUMERIC
) =>
amount * 1.1
EVALUATE
{ AddTax ( 10 ) }
// Returns 11
Una vez definida una UDF, puede actualizar el modelo o usar la lente de código para agregar la función al modelo.