Foro Empleos Cursos Blog
Recursos
  • Ejemplos de dashboards
  • DatData Games
  • Alumnos destacados
  • Ranking
  • Torneos pasados
  • Tests
Iniciar sesión Inscribirme
Back arrow

Carga laboral

Avatar por defecto

Octavio S.

Estudiante

•

hace 11 meses

Buenas tardes.

En mi modelo tengo una tabla llamada Carga laboral en la que tengo las columnas:

OC (hace referencia al numero de orden de compra)
OC-Pos (hace referencia al item de la orden de compra)
Activador ID (hace referencia al responsable)
Fecha inicio
Fecha final

Esta tabla está relacionada con la tabla calendario d_Calendario
Relaciona Fecha con Fecha inicio (relacion activa)
Relaciona Fecha con Fecha final (relacion inactiva)

Necesito crear una medida DAX que me calcule correctamente la cantidad de OC-Pos activas durante un periodo seleccionado dependiendo del contexto de filtro.

Por ejemplo en un grafico de lineas por Mes me debe mostrar la cantidad de OC-Pos activas en cada periodo
Es decir, la fecha inicio debe ser menor o igual a la fecha maxima del contexto de filtro y la fecha final debe ser mayor o igual a la fecha minima del contexto de filtro.

Tengo problemas para escribir la medida para que considere correctamente las relaciones entre tablas

DAX

0 Votos
2
Respuestas
Respuestas
Avatar de Asistente Virtual Datdata

Asistente Virtual Datdata

Equipo Datdata

•

respondió hace 11 meses

🤖 Esta respuesta fue generada automáticamente por nuestra inteligencia artificial local. Es un intento único de ayudarte al instante. No responderá a mensajes posteriores en este hilo.

Hola, ¡gracias por tu consulta!

Entiendo que necesitas crear una medida en DAX que calcule la cantidad de OC-Pos activas dentro de un período seleccionado, teniendo en cuenta las fechas de inicio y fin de cada OC, y considerando la relación con tu tabla calendario.

El desafío principal aquí es que una OC está activa en un mes si su período de vigencia (`Fecha inicio` a `Fecha final`) se solapa con ese mes. Necesitamos contar las OC que cumplen esta condición para cada mes en el contexto del informe.

Aquí te presento una medida DAX que podrías utilizar. Esta medida itera a través de cada fecha en tu tabla calendario (en el contexto de filtro del informe) y cuenta las OC que estaban activas en esa fecha específica.

Medida DAX para la cantidad de OC-Pos activas:

OC-Pos Activas = 
COUNTROWS (
    FILTER (
        'Carga laboral', // Itera sobre la tabla de Carga laboral
        VAR _FechaActualContexto = MAX ( 'd_Calendario'[Fecha] ) // Obtiene la fecha máxima del contexto actual (ej. fin de mes)
        RETURN
            'Carga laboral'[Fecha inicio] <= _FechaActualContexto && // La fecha de inicio debe ser anterior o igual a la fecha del contexto
            ( 
                'Carga laboral'[Fecha final] >= _FechaActualContexto || // La fecha de fin debe ser posterior o igual a la fecha del contexto
                ISBLANK('Carga laboral'[Fecha final]) // O la fecha final está en blanco (si aplica para OC's aún activas)
            )
    )
)

Explicación de la medida:

  • `VAR _FechaActualContexto = MAX('d_Calendario'[Fecha])`: Esta variable captura la fecha máxima dentro del contexto de filtro actual. Si estás visualizando por mes, por ejemplo, esta variable tomará la fecha del último día de ese mes.
  • `FILTER('Carga laboral', ...)`: Esta función filtra la tabla 'Carga laboral'.
  • `'Carga laboral'[Fecha inicio] <= _FechaActualContexto`: Asegura que la fecha de inicio de la OC sea anterior o igual a la fecha que estamos analizando en el contexto (ej. el fin del mes).
  • `'Carga laboral'[Fecha final] >= _FechaActualContexto || ISBLANK('Carga laboral'[Fecha final])`: Verifica que la fecha de finalización de la OC sea posterior o igual a la fecha del contexto. También incluye una condición `ISBLANK` por si tienes OC que aún están activas y no tienen una fecha final registrada. Ajusta esta parte si tu lógica de "aún activas" es diferente.
  • `COUNTROWS(...)`: Cuenta cuántas filas de la tabla 'Carga laboral' cumplen con las condiciones del filtro.

Consideraciones importantes:

  • Relación entre tablas: Asegúrate de que la relación entre tu tabla `Carga laboral` y `d_Calendario` esté correctamente establecida (entre `Carga laboral[Fecha inicio]` y `d_Calendario[Fecha]`). La relación inactiva con `Fecha final` no se usará directamente en esta medida, pero tenerla puede ser útil para otras lógicas.
  • Rendimiento: Para tablas muy grandes, una medida que itera fila por fila (`FILTER` sobre una tabla grande) puede impactar el rendimiento. Si notas lentitud, podrías considerar optimizar la carga de datos en Power Query o explorar otras técnicas DAX más avanzadas como `SUMX` con iteradores o incluso usar Power Query para pre-calcular la información si es posible.
  • Fechas en blanco: Ajusta la condición `ISBLANK('Carga laboral'[Fecha final])` si la lógica para las OC activas sin fecha final es diferente en tu caso.

Espero que esta medida te sea de gran ayuda. Si experimentas algún problema o la lógica necesita ajustarse a tu caso específico, no dudes en preguntar.

Te sugiero visitar:

https://www.datdata.com/cursos/int101/clases/RyWfmo

https://www.datdata.com/cursos/int101/clases/4cuXds

- Asistente Virtual de Datdata

0 Votos
Avatar de Sarai Rábago

Sarai R.

Equipo Datdata

•

respondió hace 11 meses

Hola Octavio, 

¿Podrías confirmarnos si solución propuesta por el agente te ha sido de ayuda? 

¡Saludos!
0 Votos
Es necesario estar inscrito para dejar tu duda, comentario y/o respuesta

Sobre el alumno

OctavioSomonte850

Octavio S.

Cursos completados

Imagen del curso Aprende Power BI con proyectos sencillos
Imagen del curso Domina Power BI con proyectos intermedios
Imagen del curso Certificación oficial por Microsoft de Power BI (archivado)
Imagen del curso Especialización en Transformación de Datos con Power Query
Imagen del curso Especialización en DAX con Power BI

Más preguntas sobre el tema

Pagos indebidos

Carlos-Nasimba

Tabla calendario y medidas de ingeligencia de tiempo

RoxanaSc461

Promedio mensual

OctavioSomonte850

Medida DAX

RoxanaSc461

La función CALCULATE no reconoce mis columnas de talbla.

deleted-user-UVUC

Recursos
  • Foro
  • Inscribirse
  • Blog
  • Ejemplos de dashboards
  • Acerca
Cursos
  • Todos los cursos
  • Microsoft Copilot: IA integrada a Excel, Teams, Word y más
  • Introducción a la IA en Power BI con Claude
  • De cero a freelancer con Power BI
  • Máster en Diseño de Reportes con Power BI
  • Introducción al análisis de Estados Financieros con Power BI
  • Certificación oficial por Microsoft de Power BI
  • Proyectos avanzados con Power BI
  • Introducción Práctica a Power BI
  • SQL para usuarios de Excel y Power BI
  • Introducción a la suite de Power Platform
  • Publica tu portafolio de dashboards con herramientas gratis
  • Especialización en Power BI Service
  • Especialización en Dashboards Profesionales con Power BI
  • Especialización en Visualización de Datos con Power BI
  • Especialización en DAX con Power BI
  • Especialización en Modelado de Datos con Power BI
  • Especialización en Transformación de Datos con Power Query
  • Análisis y Visualización de Datos con Excel
  • Domina Power BI con proyectos intermedios
  • Aprende Power BI con proyectos sencillos
Legales
  • Términos del servicio
  • Política de privacidad
  • Política de cookies
  • Contacto
Canal de YouTube de datdata Cuenta de Linkedin de datdata Cuenta de Instagram de datdata Página de Facebook de datdata Cuenta de TikTok de datdata
© 2026 © datdata - Todos los derechos reservados

Confirmar eliminación

Para eliminar esta participación, por favor ingrese su contraseña.