Microsoft Fabric Community Conference 2025, March 31 - April 2, Las Vegas, Nevada. Use code FABINSIDER for a $400 discount.
Register nowGet inspired! Check out the entries from the Power BI DataViz World Championships preliminary rounds and give kudos to your favorites. View the vizzies.
Hola. En mi informe, estoy trabajando con dos tablas. La primera tabla se llama "modlog"
La tabla modlog contiene tres columnas.
mod_id = el identificador de modificación del pedido
em_id = id de empleado de la persona que modificó el pedido
mod_datetime = marcas de tiempo de cuándo se realizó la modificación.
La segunda tabla se denomina "modlog_ship"
La tabla "modlog_ship" tiene cinco columnas
ship_mod_id = el identificador de modificación de los eventos de envío
mod_id = el identificador de modificación del pedido
ds_id = el número de pedido
mod_type = el tipo de modificación realizada
mod_value = el valor de la modificación realizada
Cada pedido pasa por varios "mod_values"
Quiero crear dos columnas.
La primera columna me daría el "mod_datetime" cuando se hiciera un "mod_value" de "AUDITADO".
La segunda columna me daría el "mod_datetime" cuando se hiciera un "mod_value" de "BILLED".
El objetivo de mi informe es mostrar las siguientes columnas y contar el número de días que tardó el pedido en pasar de "AUDITADO" a "FACTURADO"
ds_id = número de pedido
mod_datetime cuando el pedido tenía el mod_value de "AUDITADO"
mod_datetime cuando ordere tenía el mod_value de "FACTURADO"
Algo así
Por favor, pruebe el siguiente dax para crear una nueva tabla:
Table =
DISTINCT (
SELECTCOLUMNS (
modlog_ship,
"ds_id", modlog_ship[ds_id] ,
"audited_date",
LOOKUPVALUE (
modlog[mod_datetime],
modlog[mod_id],
CALCULATE (
MAX ( modlog_ship[mod_id] ),
FILTER (
modlog_ship,
modlog_ship[mod_value] = "AUDITED"
&& modlog_ship[ds_id] = EARLIER ( modlog_ship[ds_id] )
)
)
),
"BILLED",
LOOKUPVALUE (
modlog[mod_datetime],
modlog[mod_id],
CALCULATE (
MAX ( modlog_ship[mod_id] ),
FILTER (
modlog_ship,
modlog_ship[mod_value] = "BILLED"
&& modlog_ship[ds_id] = EARLIER ( modlog_ship[ds_id] )
)
)
),
"#of date",
DATEDIFF (
LOOKUPVALUE (
modlog[mod_datetime],
modlog[mod_id],
CALCULATE (
MAX ( modlog_ship[mod_id] ),
FILTER (
modlog_ship,
modlog_ship[mod_value] = "AUDITED"
&& modlog_ship[ds_id] = EARLIER ( modlog_ship[ds_id] )
)
)
),
LOOKUPVALUE (
modlog[mod_datetime],
modlog[mod_id],
CALCULATE (
MAX ( modlog_ship[mod_id] ),
FILTER (
modlog_ship,
modlog_ship[mod_value] = "BILLED"
&& modlog_ship[ds_id] = EARLIER ( modlog_ship[ds_id] )
)
)
),
DAY
)
)
)
Recomienda:
Resultado de salida:
¿Respondí a su pregunta? ¡Marca mi post como solución!
Saludos
Lucien
Hola @amartinezdsq ,
tómese el tiempo y cree un archivo pbix que contenga datos de ejemplo, pero que refleje su modelo de datos (tablas, relaciones, columnas calculadas y medidas). Sube el pbix a onedrive o dropbox y comparte el enlace. Si está utilizando Excel para crear los datos de ejemplo en lugar del método de entrada manual, comparta también el xlsx.
No olvide explicar los resultados esperados en función de los datos de muestra que proporcionó.
El resultado que proporcionaste, contiene dos columnas que no puedo identificar en base a tus datos agrios.
Saludos
Tom