cancel
Showing results for 
Search instead for 
Did you mean: 
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")

View solution in original post

Helpful resources

Announcements
PBI User Groups

Welcome to the User Group Public Preview

Check out new user group experience and if you are a leader please create your group

April Update

Check it Out!

Click here to read more about the April 2021 Updates!

secondImage

The largest Power BI virtual conference

100+ sessions, 100+ speakers, Product managers, MVPs, and experts. All about Power BI. Attend online or watch the recordings.

secondImage

Experience what’s next for Power BI

See the latest Power BI innovations, updates, and demos from the Microsoft Business Applications Launch Event.