jcatindoy
HOLA A TODOS,
Estoy tratando de obtener los días hábiles en un mes para varios países usando las vacaciones de cada país, pero soy muy malo en la condición de vacaciones de varios países. 🙂 Por favor ayuda. Gracias por adelantado.
Tabla con festivos de varios países
Tratando de lograr las tres columnas
He subido las tablas aquí.
https://drive.google.com/open?id=1fQlptidinFXxK8T-56Rq3QR8guQuQOu4
Siguiente paso: creo que tengo una idea de cómo dar el siguiente paso a continuación, pero si alguien pudiera ayudarme a ahorrar algo de tiempo, sería realmente genial. 🙂
Luego usaré la columna de días laborables reales para calcular la productividad de cada país y cada proveedor dividiendo el total de actividades cerradas por el número de empleados y luego por los días laborables de ese mes.
Tabla de productividad
danextian
Hola @jcatindoy,
Para obtener los días laborables en un mes (días laborables – días festivos entre semana), debe
- cree una tabla de calendario que contenga fechas desde el inicio del mes de la fecha más temprana hasta el final del mes de la última fecha en su tabla de hechos.
- identificar cuáles de las fechas generadas son días de semana
Ingrese la fórmula DAX a continuación como una tabla calculada:
Calendar = VAR StartDate = DATE ( YEAR ( MIN ( 'Productivity Table'[DATE] ) ), MONTH ( MIN ( 'Productivity Table'[DATE] ) ), 1 ) //start of month of the earliest month VAR EndDate = EOMONTH ( MAX ( 'Productivity Table'[DATE] ), 0 ) //end of month of the latest momth VAR BaseTable = CALENDAR ( StartDate, EndDate ) RETURN SELECTCOLUMNS ( BaseTable, "Date", [Date], "Day Name", FORMAT ( [Date], "ddd" ), "Is Weekday?", IF ( FORMAT ( [Date], "ddd" ) = "Sat" || FORMAT ( [Date], "ddd" ) = "Sun", 0, 1 ) )
Luego, en su tabla de hechos, cree una columna calculada para calcular los días laborables menos los días festivos entre semana.
Count of Workdays = VAR StartOfMonth_ = STARTOFMONTH ( 'Productivity Table'[DATE] ) VAR EndOfMonth_ = EOMONTH ( 'Productivity Table'[DATE], 0 ) VAR Workdays = CALCULATE ( SUM ( Calendar[Is Weekday?] ), DATESBETWEEN ( 'Calendar'[Date], StartOfMonth_, EndOfMonth_ ) ) VAR WeekdayHolidays = CALCULATE ( SUM ( 'Holiday Table'[Is Weekday?] ), DATESBETWEEN ( 'Holiday Table'[Date], StartOfMonth_, EndOfMonth_ ), 'Holiday Table'[Country] = EARLIER ( 'Productivity Table'[Country] ) ) RETURN Workdays - WeekdayHolidays
Es el mismo concepto que en su publicación anterior, excepto que, en este escenario, primero se deben determinar las fechas de inicio y finalización.
Owen Auger
Hola @jcatindoy
Aquí hay algunas sugerencias: eche un vistazo y vea si esto realmente tiene sentido, ya que hice algunas suposiciones al configurar esto. 🙂
Ejemplo de pbix aquí.
- Para el cálculo de días laborables reales en un mes (o cualquier período de tiempo), le sugiero que cree una tabla de calendario (con día/mes, etc.), junto con una tabla de dimensiones de país. Luego, Holidays está relacionado con Calendar & Country.
- Si también colocamos una columna Día de la semana 0/1 en el Calendario, puede crear las siguientes medidas relacionadas con el Día laboral, que tienen sentido siempre que esté filtrado en un país en particular:
Weekdays = SUM ( 'Calendar'[Weekday] ) Weekday Holidays = CALCULATE ( [Weekdays], CROSSFILTER ( 'Calendar'[Date], Holidays[Date], Both ) ) Actual Workdays = CALCULATE ( [Weekdays], EXCEPT ( VALUES ( 'Calendar'[Date] ), VALUES ( Holidays[Date] ) ) ) // Alternative: Actual Workdays V2 = [Weekdays] - [Weekday Holidays]
- Trayendo sus otras tablas, sugeriría que el modelo de datos general tenga tablas de dimensiones para Calendario, País y Proveedor, con las tablas de «hechos» que son Vacaciones, Datos sin procesar y Productividad. Esto es con lo que terminé. RawData y Productividad están relacionados con Calendario/País/Proveedor.
-
Con el modelo configurado de esta manera, creo que tiene los componentes básicos para su medida de productividad. Como prueba, definí las medidas Headcount Sum y Close Counter Sum (supongo que así es como las definiría) y las puse en una tabla con días laborables reales por país/proveedor/mes:
Espero que esto ayude 🙂
Saludos,
Owen
jcatindoy
Protuberancia.
Por favor ayuda. ¡Gracias!
jcatindoy
En respuesta a jcatindoy
Protuberancia. Por favor ayuda. Gracias
danextian
En respuesta a jcatindoy
Estoy viendo lo que puedo hacer, pero no estoy en casa, así que alguien más probablemente le haya dado una solución antes que yo.