Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

Earn the coveted Fabric Analytics Engineer certification. 100% off your exam for a limited time only!

Reply
Syndicate_Admin
Administrator
Administrator

Medida: Encontrar texto parcial en la tabla no relacionada

Hola

Tengo dos mesas no relegadas con 1 campo común.

Mi objetivo es crear una medida que pueda identificar, para cualquier SalesOrderID determinado, si existe una coincidencia parcial para "Pedido agregado al almacén" en la columna "Mensaje" de otra tabla.

Tabla1: ApplicationAudit

BranchIDApplicationIDNúmero de transacciónMensajeModAtAutoID
SF01PEDIDO DE VENTAS1118778Pedido agregado al pedido de almacén 00035991.12/30/2020 8:5117898821
SF01PEDIDO DE VENTAS1056768Pedido agregado al pedido de almacén 00036431.1/8/2021 14:1818141984
SF01PEDIDO DE VENTAS1118781Pedido agregado al pedido de almacén 00037859.2/4/2021 14:4018944137
DADFPEDIDO DE VENTAS1118628Pedido agregado al pedido de almacén 00036097.1/4/2021 10:1417958991
DADFPEDIDO DE VENTAS1118628A bin: SHIP011/4/2021 13:3217970590

Tabla 2:SalesOrder

BranchIDSalesOrderID
RK101123590
DADF1123552
SF011056768
SF011118778
DADF1118628

Salida esperada (desorden):

BranchIDSalesOrderIDAñadido al almacén
RK101123590NO
DADF1123552NO
SF011056768
SF011118778
DADF1118628

Notas:

Ambas tablas tienen campos adicionales pero ApplicationAudit.TransactionNumber = SalesOrder.SalesOrderID

SalesOrderIDs 1056768, 1118778 y 1118628 tienen "Yes" en "Added to warehouse" porque en la tabla applicationaduit, el mismo TransacationNumber tiene un registro debajo de la columna de mensaje para "Pedido agregado al almacén"


SalesOrderID y TransactionNumber tienen duplicados en cada tabla

Añadido al almacén =
IF(ISBLANK(
MINX(
FILTER(ApplicationAudit, SEARCH("Order added",ApplicationAudit[Message],1,0) > 0 ),
SalesOrders[Líneas])),
"SÍ",
"NO")
1 ACCEPTED SOLUTION

@EnrichedUser, prueba algo como

if(isblank(countx(filter(ApplicationAudit,SalesOrder[SalesOrderID] = ApplicationAudit[TransactionNumber] && search("Pedido agregado al almacén", ApplicationAudit[Message],0) >0),ApplicationAudit[Message])), "No", "Yes")

View solution in original post

3 REPLIES 3
Syndicate_Admin
Administrator
Administrator

@EnrichedUser , Pruebe una nueva columna en SalesOrder

if(isblank(countx(filter(ApplicationAudit,search(SalesOrder[SalesOrderID], ApplicationAudit[Message],0) >0),ApplicationAudit[Message])), "No", "Yes")

Hola @amitchandak

Gracias por su rápida respuesta. Desafortunadamente, esto no fue capaz de resolver.

mirando tu dax:
if(isblank(countx(filter(ApplicationAudit,search(SalesOrder[SalesOrderID], ApplicationAudit[Message],0) >0),ApplicationAudit[Message])), "No", "Yes")

no tiene en cuenta el campo de mensaje para "Pedido agregado al almacén"

Además, SalesOrderID no estaría en Message sino TranscationNumber

@EnrichedUser, prueba algo como

if(isblank(countx(filter(ApplicationAudit,SalesOrder[SalesOrderID] = ApplicationAudit[TransactionNumber] && search("Pedido agregado al almacén", ApplicationAudit[Message],0) >0),ApplicationAudit[Message])), "No", "Yes")

Helpful resources

Announcements
April AMA free

Microsoft Fabric AMA Livestream

Join us Tuesday, April 09, 9:00 – 10:00 AM PST for a live, expert-led Q&A session on all things Microsoft Fabric!

March Fabric Community Update

Fabric Community Update - March 2024

Find out what's new and trending in the Fabric Community.

Top Solution Authors