Forum Discussion
Convertir C a DAX
Querida comunidad,
Esto es parte de la importación de mi conjunto de datos desde Excel
| País | No de paquete | Mes |
| Nos | 1 | Enero |
| Sg | 2 | Enero |
| Nos | 7 | Febrero |
| Nos | 4 | Enero |
Esta es la suma total de No paquetes con mes.
Tengo paquetes totales de estos artículos y me gustaría tener una medida DAX para determinar cuántos tamaños de pallet para conseguir en él.
Tengo 10 palets de tamaño y 20 palets de tamaño.
Por ejemplo, enero tengo 247items, así que calcule que requerirá doce palets de 20 tamaños y un palet de 10 tamaños. (247/20 a 12,35, el resto entrará en el palet de 10 tamaños.)
En lenguaje C,
si totalitem > 20,
{
Num20 - totalitem/20
Remain1 - totalitem % 20
}
si Remain1 > 0
{
Num10 - Permanecer1/10
Remain2 - Permanecer1 % 10
}
Y mi resultado esperado le gustará
| País | Meses | No de paquetes | Medida |
| Nos | Enero | 247 | 12 20s palet y 1 10s palet. |
Le agradezco que se tome el tiempo para responder a mi pregunta. Estoy seguro de que está muy ocupado y gracias por tomarse el tiempo para responder personalmente a mí. Gracias de nuevo.
@NickProp28
Prueba estas dos medidas para 20 y 1020 Plt = INT(DIVIDE(SUM(TABLE[NO OF PACKAGES]),20)) 10 Plt = ROUNDUP(MOD(sum(TABLE[NO OF PACKAGES]),20),-1)/10________________________
¿He respondido a tu pregunta? Marque este post como una solución, esto ayudará a otros!.
Haga clic en el icono Thumbs-Up a la derecha si le gusta esta respuesta 🙂
Hola, @NickProp28
Según su descripción, creé datos para reproducir su escenario. El archivo pbix se adjunta al final.
Mesa:
Puede crear una medida como la siguiente.
Result = var _value = SUM('Table'[No of Packages]) var _num20 = INT(DIVIDE(_value,20)) var _remain1 = MOD(_value,20) var _num10 = ROUNDUP(DIVIDE(_remain1,10),0) var _remain2 = MOD(_remain1,10) return IF( _value>20, IF( _remain1>0, _num20&" 20s pallet and "&_num10&" 10s pallet", _num20&" 20s pallet" ), INT(DIVIDE(_value,10))&" 10s pallet" )Resultado:
Saludos
Allan
Si este post ayuda,entonces considere Aceptarlo como la solución para ayudar a los otros miembros a encontrarlo más rápidamente.
Redondea un decimal a la izquierda del punto decimal.
________________________
¿He respondido a tu pregunta? Marque este post como una solución, esto ayudará a otros!.
Haga clic en el icono Thumbs-Up a la derecha si le gusta esta respuesta 🙂
7 Replies
- amitchandak
Super User
@NickProp28, cociente y mod ayudará
https://docs.microsoft.com/en-us/dax/quotient-function-dax
https://docs.microsoft.com/en-us/dax/mod-function-dax
cociente([columna],20)
mod([columna],20)
- NickProp28
Post Partisan
Estimado @amitchandak,
Gracias por su pronta respuesta,
Me gustaría crear una medida basada en ningún paquete, pero im conseguir problema en ella.
- Fowmy
Super User
@NickProp28
Prueba estas dos medidas para 20 y 1020 Plt = INT(DIVIDE(SUM(TABLE[NO OF PACKAGES]),20)) 10 Plt = ROUNDUP(MOD(sum(TABLE[NO OF PACKAGES]),20),-1)/10________________________
¿He respondido a tu pregunta? Marque este post como una solución, esto ayudará a otros!.
Haga clic en el icono Thumbs-Up a la derecha si le gusta esta respuesta 🙂
- v-alq-msft
Community Support
Hola, @NickProp28
Según su descripción, creé datos para reproducir su escenario. El archivo pbix se adjunta al final.
Mesa:
Puede crear una medida como la siguiente.
Result = var _value = SUM('Table'[No of Packages]) var _num20 = INT(DIVIDE(_value,20)) var _remain1 = MOD(_value,20) var _num10 = ROUNDUP(DIVIDE(_remain1,10),0) var _remain2 = MOD(_remain1,10) return IF( _value>20, IF( _remain1>0, _num20&" 20s pallet and "&_num10&" 10s pallet", _num20&" 20s pallet" ), INT(DIVIDE(_value,10))&" 10s pallet" )Resultado:
Saludos
Allan
Si este post ayuda,entonces considere Aceptarlo como la solución para ayudar a los otros miembros a encontrarlo más rápidamente.
- NickProp28
Post Partisan
Dear Fowmy v-alq-msft ,
Really appreciate yous guys solution. Two of it works perfectly for me. Thanks!
Dear Fowmy .10 Plt = ROUNDUP(MOD(sum(Data[NO OF PACKAGES]),20),-1)/10 . May I know why there have -1 in this formula. Thank you for providing me with advice.- Fowmy
Super User
Redondea un decimal a la izquierda del punto decimal.
________________________
¿He respondido a tu pregunta? Marque este post como una solución, esto ayudará a otros!.
Haga clic en el icono Thumbs-Up a la derecha si le gusta esta respuesta 🙂