Forum Discussion
hola
hola
Tengo una tabla de ventas donde tengo valor vendido y devolución. Cuando se vende, el número de factura es normal, un número, pero cuando se devuelve, hay CR al principio y CR o número de factura de devolución no es el mismo que el número de factura vendido. En algún momento el cliente devuelve todos los artículos completos o todos los artículos en algún momento artículos pertiales
| Número de factura | Importe neto |
| 221101 | 150 |
| 221102 | 130 |
| 221103 | 200 |
| 221104 | 120 |
| CR999999 | -120 |
| 221105 | 80 |
| 221106 | 40 |
| CR888888 | -20 |
| 221107 | 15 |
ahora, cuando intento encontrar el valor de AVG Busket, ya elimino las facturas que comienzan con CR
entonces mi clculación sería (150 + 130 + 200 + 80 + 20 +15) / 6 = 99.16 AVG busket vlue
no debería agregar120 (221104 y CR999999) como retorno completo y debería agregar 20 (221106 y CR888888) como retorno pertial
Así que aquí sumo todos los valores positivos y luego lo divido con todos los valores positivos, no por números de factura.
Si estoy en lo correcto, por favor ayúdame cómo puedo CONTAR SOLO NÚMEROS POSITIVOS de cantidad neta
Por favor, no dude en dar sus pensamientos si los hay para averiguar al revés.
gracias
6 Replies
- Syndicate_AdminAdministrator
Creo que primero necesito eliminar la factura que comienza con CR
luego tengo que verificar y comparar si CR Importe neto si = Importe neto de la factura, entonces tengo que eliminar esa factura también luego sumar (importe neto) y dividir el recuento del número de factura
Por favor, ayúdame a crear esta medida
gracias
- Syndicate_AdminAdministrator
hola
Son mis errores que no podría dar un buen archivo de ejemplo para entender. Aquí he adjuntado archivo de Excel.
donde puedo eliminar las devoluciones completas y pertiales, y hacer coincidir con customer_ID y invoice_DT con el número de factura y el número CR para eliminar y luego encontrar el promedio.
Las filas podrían estar en cualquier lugar dentro de 3 millones de datos
Perdón por lo inconveniente.
gracias
- Syndicate_AdminAdministrator
Primero, agregue índice, luego use el siguiente dax para crear una nueva columna:
test = IF('Table'[Net Amount]<0,'Table'[Net Amount]+CALCULATE(MAX('Table'[Net Amount]),FILTER(ALL('Table'),'Table'[Index]=EARLIER('Table'[Index])-1)),if(CALCULATE(MAX('Table'[Net Amount]),FILTER(ALL('Table'),'Table'[Index]=EARLIER('Table'[Index])+1))<0,0,'Table'[Net Amount]))A continuación, cree la siguiente medida:
avg = SUM('Table'[test])/CALCULATE(COUNTROWS('Table'),FILTER('Table','Table'[test]>0))Salida:
Saludos
Lucien
- Syndicate_AdminAdministrator
Gracias por sus esfuerzos. realmente genial. ¿Me ayudaría a encontrar dónde hay error en mi columna de cálculo?
El valor de la factura que se reembolsa completamente con CR debe ser ambos) pero el mío no hace eso. Ayuda de PLease
prueba = SI('bm_retail_t resumen'[NET_AMT] < 0,'bm_retail_t resumen'[NET_AMT] +CALCULAR(..MAX('bm_retail_t resumen'[NET_AMT]),FILTRO(TODO('bm_retail_t resumen'),'bm_retail_t resumen'[Índice] =ANTERIOR('bm_retail_t resumen'[Índice]) - 1)),si(CALCULAR(..MAX('bm_retail_t resumen'[NET_AMT]),FILTRO(TODO('bm_retail_t resumen'),'bm_retail_t resumen'[Índice] = ANTERIOR('bm_retail_t resumen'[Índice]) + 1)) < 0, 0, 'bm_retail_t resumen'[NET_AMT]))- Syndicate_AdminAdministrator
Creo que cometimos un error
221104 120 CR999999 -120 No siempre estar juntos. el número de factura y la factura de corrorponancia CR podrían estar en otro lugar, podrían ser después de quince mil o mil filas. podría estar en cualquier lugar. En ese caso, 1 no es correcto. podríamos decir que cuando el valor de CR coincide con el número de factura y en la misma fecha de factura y luego hacer que ambos sean 0