Fecha Duración excluye fines de semana

Un usuario Pregunto ✅

chethan

Hola a todos,

Necesito una fórmula DAX para calcular la duración de la fecha excluyendo los fines de semana (sábado y domingo). A continuación se muestra la vista de tabla.

TableName: Informe semanal

Por favor ayuda en esto

Número de orden Fecha / hora de apertura Fecha / hora de cierre Duración de los días
806452859 30/9/2015 14:39 19/10/2015 12:22 14
806452860 20/10/2015 17:28 22/10/2015 10:38 3
806452861 20/5/2015 16:13 27/5/2015 10:29 6
806452862 03/11/2015 11:47 5/11/2015 11:32 3
806452863 18/8/2015 17:05 18/9/2015 12:23 24
806452864 20/4/2015 13:18 23/4/2015 14:22 4
806452865 1/10/2015 12:26 5/10/2015 11:08 3
806452866 1/4/2015 2:04 23/4/2015 16:24 17
806452867 23/11/2015 12:28 28/12/2015 12:27 26
806452868 23/11/2015 10:53 30/11/2015 18:06 6
806452869 23/4/2015 17:22 29/4/2015 11:02 5
806452870 23/4/2015 12:58 27/4/2015 10:09 3

Gracias por adelantado.

Saludos,

Chethan K

@chethan

Si también desea excluir las horas no laborables, puede consultar este hilo y transfiera las horas a días.

Atentamente,

Herbert

BhaveshPatel

Hola Chethan,

Debe importar la tabla de fechas en su modelo de datos para la implementación de mi solución.

Paso 1: Como parte del cálculo, cree la columna calculada IsWorkDay en su tabla de fechas

IsWorkDay = CAMBIAR (DÍA DE LA SEMANA ([Date]), 1,0,7,0,1)

Paso 2: cree la duración de los días excluyendo los fines de semana creando otra columna calculada en su tabla de pedidos

Duración de días excluyendo fines de semana = CALCULAR (SUMA (Fechas[IsWorkDAY]),
FECHAS ENTRE (Fechas[Date],
PedidosTable[Opened Date/Time ],
PedidosTable[Closed Date /Time ] )
)

nadirS

En respuesta a BhaveshPatel

¿Hay alguna manera de hacer una reversión de lo mismo que explicó anteriormente? Tengo una tabla de fechas y puedo calcular los días laborables (0 para los fines de semana y 1 para los días laborables). Necesito agregar 5 días a mi fecha de inicio y elegir la fecha de trabajo apropiada de la tabla de fechas para que me dé una «Fecha de finalización esperada» que tenga en cuenta los fines de semana.

chethan

En respuesta a BhaveshPatel

Hola @BhaveshPatel

Gracias por responder.

He creado un Tabla de fechas en su modelo de datos Pero no funciona, por favor ayúdenme. A continuación se muestra la serigrafía

1.JPG2.JPG3.JPG

Gracias

Saludos,

Chethan K

magsod

En respuesta a chethan

En lugar de sumar el [Date] columna en su tabla debe sumar su columna recién creada [IsWorkDay]

* Editar *: también parece que ha creado el [IsWorkDay] en su tabla de hechos en lugar de en la tabla de calendario de fechas. Eche un vistazo más de cerca a la solución propuesta en la primera respuesta.

Br,

Magnus

nadirS

En respuesta a magsod

¿Hay alguna manera de hacer una reversión de lo mismo que explicó anteriormente? Tengo una tabla de fechas y puedo calcular los días laborables (0 para los fines de semana y 1 para los días laborables). Necesito agregar 5 días a mi fecha de inicio y elegir la fecha de trabajo apropiada de la tabla de fechas para que me dé una «Fecha de finalización esperada» que tenga en cuenta los fines de semana.

chethan

En respuesta a magsod

No lo conseguí, ¿puede crear un archivo de muestra? ¿Puede enviarme si no le importa?

magsod

En respuesta a chethan

Aquí hay un modelo muy simple que muestra el mismo escenario que el tuyo y puedes ver todos los cálculos que hice para que funcione. Tenga en cuenta que la función DatesBetween devolverá una tabla que incluye tanto la fecha de inicio como la fecha de finalización. Por lo tanto, debe considerar cómo define la duración (con la fecha de inicio / finalización incluida o viceversa)

Cree una columna con 1 para los días laborables y 0 para los fines de semanaCree una columna con 1 para los días laborables y 0 para los fines de semanacalcular el número de días desde la fecha de inicio hasta la fecha de finalización sin fines de semanacalcular el número de días desde la fecha de inicio hasta la fecha de finalización sin fines de semana

leticiasf

En respuesta a magsod

Hola,

Muchas gracias por todos estos valiosos aportes, estoy tratando de usarlo, sin embargo, no funciona para todos los casos, déjame mostrarte …

¡Apreciamos mucho cualquier ayuda!

Estoy usando:

IsWorkDay = CAMBIAR (DÍA DE LA SEMANA ([Date]); 1; 0; 7; 0; 1)

Duración de días excluyendo fines de semana = CALCULAR (SUM (calendario[IsWorkDAY]); FECHAS ENTRE (calendario[Date]; ‘Datos brutos'[INCIDENT Submit Date]; ‘Datos brutos'[INCIDENT Closed Date]))

A continuación, se muestran algunos ejemplos de cálculos incorrectos de ‘Duración de días excluyendo fines de semana’:

image.png

Gracias

ssvr

En respuesta a magsod

Hola @magsod

Acabo de seguir tus pasos y creé las fechas (función de calendario) y es el día laboral (tu función de captura de pantalla)

Creé una columna con el número de función del día de la semana

¿Fuera está mal?

adjunto la captura de pantalla para su referenciaDDiff2.JPGDDiff2a.JPGDDiff2b.JPG

Por favor ayúdame con esto

Requerimiento urgente

ssvr

En respuesta a magsod

Hola @magsod,

Para qué campo (OpenDate o ClosedDate) tengo que crear una columna con la función IsWeekday

Aquí solo tenemos dos campos de fecha OpenDate y CloseDate

magsod

En respuesta a ssvr

@ssvr Esta solución propuesta se basa en el supuesto de que tiene una tabla de fechas separada. Y es para esa tabla de fechas para la que crea la columna IsWeekday, no para OpenDate o CloseDate en su tabla de hechos.

Br,

Magnus

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *