Skip to main content
Announcements
July 15, NEW Customer Portal: Initial launch will improve how you submit Support Cases. IMPORTANT DETAILS
cancel
Showing results for 
Search instead for 
Did you mean: 
CGJA
Creator II
Creator II

Suma Incorrecta Tabla Pivote

Hola Buena tarde

Tengo una tabla pivote, en la cual tengo la siguiente formula:

=(IF(SubStringCount(if(IsNull(NombreEnviarA),[Nombre Cliente],NombreEnviarA),'PTO')='1',sum({<Fabricante={'LAB. LICON, S.A.'}>}Cost_Dir_F), sum(Cost_Dir_F)))

Suma Pivote 2.JPG

Si realizo la suma en Excel me da

$4,820,992,90

Espero me puedan apoyar

Mil gracias!!!!

1 Solution

Accepted Solutions
rubenmarin

Hola Jorge, la expresión sería:

If(Dimensionality()>1 //puede que sea 1 en vez de 0

, (IF(SubStringCount(if(IsNull(NombreEnviarA),[Nombre Cliente],NombreEnviarA),'PTO')='1',sum({<Fabricante={'LAB. LICON, S.A.'}>}Cost_Dir_F), sum(Cost_Dir_F)))

, Sum(Aggr((IF(SubStringCount(if(IsNull(NombreEnviarA),[Nombre Cliente],NombreEnviarA),'PTO')='1',sum({<Fabricante={'LAB. LICON, S.A.'}>}Cost_Dir_F), sum(Cost_Dir_F))), CteGrupo, NombreEnviarA, [Nombre Cliente], PaqueteBS))

)

Si no funciona necesitaría que subas un ejemplo para revisarlo.

Saludos.

View solution in original post

6 Replies
rubenmarin

Hola Jorge,  estas diferencias suelen venir porque el total se calcula sobre todos los datos, mientras que las filas se aplican aplicando las dimensiones por separado, normalmente se solucionan usando aggr() en el total ,para que vuelva a realizar la operación sumando el valor de las dimensiones por separado, algo como:

If(Dimensionality()>0 //puede que sea 1 en vez de 0

, Expresion

, Sum(Aggr(Expresion, Dimension1, Dimension2, Dimension3..)) // Siendo DimensionX las dimensiones usadas en la tabla

)

CGJA
Creator II
Creator II
Author

Mira estoy replicando lo que me comentas peor no me sale

**************************Formula nueva*****************************

=if(Dimensionality()=0,

IF(SubStringCount(if(IsNull(NombreEnviarA),[Nombre Cliente],NombreEnviarA),'PTO')='1',

sum(Aggr({<Fabricante={'LAB. LICON, S.A.'}>}Cost_Dir_F),CteGrupo,if(IsNull(NombreEnviarA),[Nombre Cliente],NombreEnviarA),PaqueteBS)))

**************************Formula Vieja*****************************

(IF(SubStringCount(if(IsNull(NombreEnviarA),[Nombre Cliente],NombreEnviarA),'PTO')='1',sum({<Fabricante={'LAB. LICON, S.A.'}>}Cost_Dir_F), sum(Cost_Dir_F)))

no se si me puedas ayudar

Saludpos!!!

rubenmarin

Hola Jorge, la expresión sería:

If(Dimensionality()>1 //puede que sea 1 en vez de 0

, (IF(SubStringCount(if(IsNull(NombreEnviarA),[Nombre Cliente],NombreEnviarA),'PTO')='1',sum({<Fabricante={'LAB. LICON, S.A.'}>}Cost_Dir_F), sum(Cost_Dir_F)))

, Sum(Aggr((IF(SubStringCount(if(IsNull(NombreEnviarA),[Nombre Cliente],NombreEnviarA),'PTO')='1',sum({<Fabricante={'LAB. LICON, S.A.'}>}Cost_Dir_F), sum(Cost_Dir_F))), CteGrupo, NombreEnviarA, [Nombre Cliente], PaqueteBS))

)

Si no funciona necesitaría que subas un ejemplo para revisarlo.

Saludos.

CGJA
Creator II
Creator II
Author

Mil gracias por tu ayuda en verdad

CGJA
Creator II
Creator II
Author

Espero me puedas apoyar me pasa lo mismo con esta sentencia.....



if(

If(Dimensionality()>1 //puede que sea 1 en vez de 0


, (IF(SubStringCount(if(IsNull(NombreEnviarA),[Nombre Cliente],NombreEnviarA),'PTO')='1',

sum({<Fabricante={'LAB. LICON, S.A.'}>}Cost_Dir_F), sum(Cost_Dir_F)))


, Sum(Aggr((IF(SubStringCount(if(IsNull(NombreEnviarA),[Nombre Cliente],NombreEnviarA),'PTO')='1',

sum({<Fabricante={'LAB. LICON, S.A.'}>}Cost_Dir_F), sum(Cost_Dir_F))), CteGrupo, NombreEnviarA, [Nombre Cliente], PaqueteBS))


)=0

,


(Sum ({$<Mov= {'Factura','eFactura','eFacturaClave','eFacturaCPP'} >} Cantidad_C*CXP)

-

Sum ({$<Mov= {'eCancelacion Factura','Cancelacion Factura', 'eBonificacion Venta', 'eDevolucion Venta'} >} Cantidad_C*CXP))

,


If(Dimensionality()>1 //puede que sea 1 en vez de 0


, (IF(SubStringCount(if(IsNull(NombreEnviarA),[Nombre Cliente],NombreEnviarA),'PTO')='1',

sum({<Fabricante={'LAB. LICON, S.A.'}>}Cost_Dir_F), sum(Cost_Dir_F)))


, Sum(Aggr((IF(SubStringCount(if(IsNull(NombreEnviarA),[Nombre Cliente],NombreEnviarA),'PTO')='1',

sum({<Fabricante={'LAB. LICON, S.A.'}>}Cost_Dir_F), sum(Cost_Dir_F))), CteGrupo, NombreEnviarA, [Nombre Cliente], PaqueteBS))


)


)

rubenmarin

Hola Jorge, antes de complicarlo, ¿cual era la expresión inicial?