Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Buenas Tardes,
Recurro a ustedes con la siguiente duda.
Tengo un caso donde hay clientes que pertenecen a un canal, una región y una subregión además de otros campos que son formas en las que se puede agrupar información. Se necesita realizar el cálculo de un gasto por kilo según la combinación canal-región-subregión.
Para sacar dicho calculo lo primero que se necesita saber es la cantidad de kilos vendidos en la combinación canal-region-subregion. En la siguiente imagen se ve el valor adecuado para la combinación mencionada:
Ahora seleccionamos el canal Tradicional y la subregion Antioquia-choco
Luego procedemos a visualizar la información por cliente (los clientes que se muestran pertenecen al mismo Canal, Region y Subregion), acá se necesita que el valor que aparezca en Venta Kg sea el mismo para todos los registros (551,225.38) ya que el calculo del gasto debe tener en cuenta los kilos vendidos en total para dicha combinación.
La fórmula que se esta aplicando para Ventas Kg es la siguiente:
sum({1<#id_TipoMovimiento = {'V'}, [Linea de Negocio]={'POLLO'}, Año=P(), Mes=P(), Periodo=P(), Canal=P(), Region=P(), SubRegion=P(),#id_TerceroSucursal=P()>} [Ventas Kg])
Donde lo que se pretende hacer es no tener en cuenta las selecciones de campos a excepción de: #id_TipoMovimiento que debe ser igual a ‘V’ para que muestre solo las ventas, [Linea de Negocio] para que solo muestre lo referente a ventas de ‘POLLO’ y que tenga en cuenta lo que se seleccione en los campos Año, Mes, Periodo, Canal, Region, SubRegion.
Me gustaría que me dieran una mano para ver en que puedo estar fallando en la formulación o como replanteo este analisis.
Agradezco de antemano la atención y colaboración que me puedan prestar.
Saludos,
Raúl
Se me había olvidado lo del grupo cíclico, se puede poner dinámico usando GetCurrentField():
Sum({1<#id_TipoMovimiento = {'V'}, [Linea de Negocio]={'POLLO PROCESADO'}
, Año=P(Año), Mes=P(Mes), Periodo=P(Periodo)
, Canal=P(Canal), Region=P(Region), SubRegion=P(SubRegion),#id_TerceroSucursal=P(#id_TerceroSucursal)>}
Aggr(Sum({1<#id_TipoMovimiento = {'V'}, [Linea de Negocio]={'POLLO PROCESADO'}
, Año=P(Año), Mes=P(Mes), Periodo=P(Periodo)
, Canal=P(Canal), Region=P(Region), SubRegion=P(SubRegion),#id_TerceroSucursal=P(#id_TerceroSucursal)>}
TOTAL <Canal,Region,SubRegion> [Ventas Kg]), [$(=GetCurrentField(GC_Clientes))], Canal,Region,SubRegion))
Hola Raul, podrías probar con:
sum( {1<#id_TipoMovimiento = {'V'}, [Linea de Negocio]={'POLLO'}, Año=P(Año), Mes=P(Mes), Periodo=P(Periodo), Canal=P(Canal), Region=P(Region), SubRegion=P(SubRegion),#id_TerceroSucursal=P(#id_TerceroSucursal)>} [Ventas Kg])
Hola Ruben, Gracias por sacar tiempo para dar respuesta.
Te cuento que sigue arrojando el mismo resultado al momento de cambiar a cliente, no es capaz de sacar los 551,225.38 referentes a la combinación canal-region-subregion.
Saludos,
Hola Raúl,
Prueba:
Sum({1<#id_TipoMovimiento = {'V'}, [Linea de Negocio]={'POLLO'}, Año=P(Año), Mes=P(Mes), Periodo=P(Periodo), Canal=P(Canal), Region=P(Region), SubRegion=P(SubRegion),#id_TerceroSucursal=P(#id_TerceroSucursal)>} TOTAL <Canal,Region,SubRegion> [Ventas Kg])
Saludos,
H
ésta va a ser 😃
Buenos días,
Primero que todo te agradezco la atención prestada y tu colaboración.
Te cuento que aplique la formula que sugieres y mientras tenga los campos visibles el resultado es correcto, pero al momento que en una tabla pivote contraigo la dimensión y dejo solo el cliente con el canal, me entrega la suma del canal y no me respeta la condición de Canal-Region-SubRegion.
Mira las imágenes:
Cuando esta por Canal - Region - SubRegion
Cuando se agrega el campo Cliente, como se puede ver en la imagen los clientes que pertenecen al canal Tradicional, Region Noroccidente y SubRegion Antioquia-Choco tienen el mismo valor de 551,225.38 y así es como debería comportarse siempre.
Al momento de contraer las dimensiones y dejar solo el canal, el sistema totaliza todo el canal Tradicional y no respeta lo que el cliente tiene internamente como Region -SubRegion. Por ejemplo los 2 primeros clientes deberian tener el valor 551,225.38 y el tercer cliente el valor de 617,741.66 (como se muestra en la imagen 2).
Agradezco nuevamente la atención y quedo atento a cualquier comentario.
Saludos,
Raúl
Hola Raul, puedes probar añadiendo la primera dimensión al TOTAL. Al ser un grupo cíclico puedes ponerla usando $(), entre corchetes por si el nombre del campo contiene espacios:
Sum({1<#id_TipoMovimiento = {'V'}, [Linea de Negocio]={'POLLO'}, Año=P(Año), Mes=P(Mes), Periodo=P(Periodo), Canal=P(Canal), Region=P(Region), SubRegion=P(SubRegion),#id_TerceroSucursal=P(#id_TerceroSucursal)>} TOTAL <[$(=GetCurrentField(NombreGrupo))], Canal,Region,SubRegion> [Ventas Kg])
Edit: Bueno, puede que así no te coja el total bien, si subes un ejemplo podría probarlo.
Hola, ejecute la modificación que me indicaste pero los valores varían, se van al nivel de cliente. La primer columna de formulas es con la modificación que me indicaste y la ultima es con la anterior.
Voy a tratar de subir un ejemplo de los datos.
Saludos,
Adjunto ejemplo con el cuadro que les muestro en las imágenes. Para ver si me pueden colaborar.
Saludos,
No es elegante pero así parece que funciona:
Sum({1<#id_TipoMovimiento = {'V'}, [Linea de Negocio]={'POLLO PROCESADO'}
, Año=P(Año), Mes=P(Mes), Periodo=P(Periodo)
, Canal=P(Canal), Region=P(Region), SubRegion=P(SubRegion),#id_TerceroSucursal=P(#id_TerceroSucursal)>}
Aggr(Sum({1<#id_TipoMovimiento = {'V'}, [Linea de Negocio]={'POLLO PROCESADO'}
, Año=P(Año), Mes=P(Mes), Periodo=P(Periodo)
, Canal=P(Canal), Region=P(Region), SubRegion=P(SubRegion),#id_TerceroSucursal=P(#id_TerceroSucursal)>}
TOTAL <Canal,Region,SubRegion> [Ventas Kg]), Cliente, Canal,Region,SubRegion))