Forum Discussion
Anonymous
5 years agoNot applicable
Problema de Dax
Hola a todos En esta captura de pantalla se inicia el pedido del cliente y el éxito del pago está en el mismo txn id que queremos que se complete la transacción o de lo contrario el client...
- 5 years ago
Hola,@Muthuvel_s
De acuerdo con su descripción, creo que puede crear una columna para calcular el resultado deseado, así:
Column = VAR a = CALCULATETABLE ( DISTINCT ( 'Table'[TXN-OID] ), FILTER ( ALL ( 'Table' ), [TXN-STATUS] = "ORDER_INITIATED" ) ) VAR c = CALCULATETABLE ( DISTINCT ( 'Table'[TXN-OID] ), FILTER ( ALL ( 'Table' ), [TXN-STATUS] = "PAYMENT_SUCCESS" ) ) RETURN IF ( [TXN-OID] IN a && [TXN-OID] IN c, "completed", "payment failed" )O:
Column 2 = VAR a = COUNTROWS ( FILTER ( 'Table', [TXN-OID] = EARLIER ( 'Table'[TXN-OID] ) && [TXN-STATUS] = "ORDER_INITIATED" ) ) VAR b = COUNTROWS ( FILTER ( 'Table', [TXN-OID] = EARLIER ( 'Table'[TXN-OID] ) && [TXN-STATUS] = "PAYMENT_SUCCESS" ) ) RETURN IF ( b > 0 && a > 0, "completed", "payment failed" )Si no resuelve su problema, por favor no dude en preguntarme.
Saludos
Janey Guo
Si este post ayuda,entonces considere Aceptarlo como la solución para ayudar a los otros miembros a encontrarlo más rápidamente.
d_gosbell
Super User
5 years agoSuponiendo que la tabla se denomina 'Transacciones', podría usar una expresión como la siguiente para encontrar el número máximo de fecha y hora actualizada y, a continuación, buscar el estado
Payment Status =
var txnOid = [TXN_OID]
var maxDate =
MAXX(
FILTER(ALL(Transactions[TXN_OID], Transactions[STATUS_UPDATE_DATETIME]),
Transactions[TXN_OID] = txnOid)
, Transactions[STATUS_UPDATE_DATETIME])
var lastStatus = LOOKUPVALUE(Transactions[TXN_STATUS]
, Transactions[TXN_OID] , txnOid
, Transactions[STATUS_UPDATE_DATETIME], maxDate)
return if( lastStatus = "PAYMENT_SUCCESSFUL", "completed", "payment failed")Anonymous
5 years agoNot applicable
Estoy probando este dax. pero estoy desajustando algún error