Skip to main content
Announcements
See why Qlik is a Leader in the 2024 Gartner® Magic Quadrant™ for Analytics & BI Platforms. Download Now
cancel
Showing results for 
Search instead for 
Did you mean: 
Anonymous
Not applicable

sumar niveles en cuentas

amigos, necesito ayuda tengo un inconveniente respecto a mostrar niveles de las cuentas que tienen valor 0 cuando desactivo la opción en la pestaña Presentación de Suprimir Valores Cero me muestra todo mas por decir:

     cuentas          Valores

          1010          24

          1011          26

          2020          34

          2021          46

          3030          14

          3031          12

          4040          19

          4041          48

          5050          49

          5051          47

no puedo hacer en una expresión que me muestre las sumas solo los que empiecen con 40 y 50 por un lado y los que empiezan en 10 al 30 por otro lado.

mi expresión es esta sum(if( ([Codigo Cuenta]>4000 AND [Codigo Cuenta]<6000), [Moneda]*(-1))).

nose si me deje entender.

aguardo sus ayudas gracias de antemano  

Mensaje editado por: Pedro Calderon Flores

14 Replies
hector_munoz
Specialist
Specialist

Hola Pedro,

Si usas esta expresión:

Sum({<cuentas={">4000,<6000"}>} Valores*(-1))

, y deseleccionas la opción "Suprimir Valores Cero" te deberían de salir aquellas cuentas >4000 y <6000 cuyos Valores sean 0.

Solo te saldrían, y con valores 0, todas las cuentas (y no solo las >4000 y <6000) si además de deseleccionar la opción "Suprimir Valores Cero" seleccionas la opción "Mostrar Todos los Valores":

01-03-2017 17-52-48.png

Adjunto ejemplo, espero que te sirva.

Saludos,
H

Anonymous
Not applicable
Author

Buenas Hector,

disculpa la demora estaba verificando la expresion que me pasaste pero sigue igual al parecer el tema esta en la descarga de mis datos dato que estoy bajando por separado cada cuenta lo adjunto el scrip

CuentaN1:

LOAD

  ccnta,

  nomb;

SELECT ccnta,nomb

FROM cnplc WHERE SUBSTR(ccnta,2,7)=0000000;

STORE CuentaN1 INTO CuentaN1.qvd;

DROP TABLE CuentaN1;

CuentaN2:

LOAD

  ccnta,

  nomb;

SELECT ccnta,nomb

FROM cnplc WHERE SUBSTR(ccnta,4,5)=00000;

//AND SUBSTR(ccnta,2,2)<>0;

STORE CuentaN2 INTO CuentaN2.qvd;

DROP TABLE CuentaN2;

CuentaN3:

LOAD

  ccnta,

  nomb;

SELECT ccnta,nomb

FROM cnplc WHERE SUBSTR(ccnta,6,3)=000;

//AND SUBSTR(ccnta,4,2)<>0;

STORE CuentaN3 INTO CuentaN3.qvd;

DROP TABLE CuentaN3;

CuentaN4:

LOAD

  ccnta,

  nomb;

SELECT ccnta,nomb

FROM cnplc

WHERE SUBSTR(ccnta,6,2)<>00;

STORE CuentaN4 INTO CuentaN4.qvd;

DROP TABLE CuentaN4;

en el N1 están las cuentas 10000000, 20000000, 30000000, 40000000, 50000000

en el N2 estan las cuentas 10100000, 20100000, 30100000, 40100000, 50100000

en el N3 estan las cuentas 10101000, 20101000, 30101000, 40101000, 50100000

en el N4 estan las cuentas 10101011, 20101011, 30101011, 40101011, 50101011

para que se entienda mejor el problema del porque mi script esta así arriba.


y como explique en el primer post no me permite agrupar y sumar o que me muestre los datos incluyendo los que tienen cero por decir solo las cuentas del 1 al 3 y también otra suma y agrupación de las cuentas que empiezan en 4 y 5.

haber si puedes darme una mano ya que ahí me perdí para hacerlo.

gracias,

hector_munoz
Specialist
Specialist

Hola Pedro,

No lo entiendo... en script estás creando, por el ejemplo que pones, 4 QVDs a partir de la tabla de base de datos 'cnplc'. En cada QVD guardas una serie de cuentas que filtras por su código pero:

  • ¿dónde está el campo Valores?
  • ¿cómo cargas luego la información de los QVDs para que te cree el modelo asociativo?

¿Puedes adjuntar un ejemplo real?

Saludos,
H

Anonymous
Not applicable
Author

Disculpa Hector me había olvidado de ese detalle que lo adjunto ahora mismo

esto hago en la transformación

asientos:

LOAD

  gest AS Gestion,

  Month(fdoc)&'-'&gest AS Mes_Gestion,

  ntra as [nro Transaccion],

  cnta as [Codigo Cuenta],

  glos as [Glosa],

  impi as [Moneda],

if(cmon=1,'Bs','$us') as [Moneda],

  impc as [Moneda Ext.],

  fdoc as [Fecha],

  Year(fdoc) as [año],

  Month(fdoc) as [mes],

  day(fdoc) as [dia],

  Week(fdoc) as Semana,

  'Q' & Ceil(Month(fdoc)/3) as Trimestre,

  Year(fdoc) & '-Q' & Ceil(Month(fdoc)/3) as añoQtr

FROM asientosH.qvd(qvd);

where // glos <>'SALDO AL 311214 ' and

glos <>'ASIENTO RESULTADO';

PlanCuenta:

LOAD

  ccnta as [Codigo Cuenta],

  ccnta&' '&nomb as [Cta-Detalle],

  nomb  as [Cuenta]

FROM PlanCuenta.qvd(qvd);

CuentaN1:

LOAD

  ccnta as [Codigo Cuenta Nivel 1],

  nomb as [Cuenta Nivel 1]

FROM CuentaN1.qvd(qvd);

CuentaN2:

LOAD

  ccnta as [Codigo Cuenta Nivel 2],

  nomb as [Cuenta Nivel 2]

FROM CuentaN2.qvd(qvd);

CuentaN3:

LOAD

  ccnta as [Codigo Cuenta Nivel 3],

  nomb as [Cuenta Nivel 3]

FROM CuentaN3.qvd(qvd);

CuentaN4:

LOAD

  ccnta as [Codigo Cuenta Nivel 4],

  nomb as [Cuenta Nivel 4]

FROM CuentaN4.qvd(qvd);

hector_munoz
Specialist
Specialist

Hola Pedro,

No lo entiendo... Las tablas 'CuentaN?' no parecen enlazadas ni a 'asientos' ni a 'PlanCuenta', luego no nos servirían para nada si queremos utilizar los campos de estas últimas. ¿Cómo queda el modelo resultante (CTRL+T)?

Saludos,

H

Anonymous
Not applicable
Author

disculpa Hector pero creo que debí hacer esto desde el principio como hagpo ára adjuntarte el .qvw que tengo actualmente para que lo veas, y bueno para que me ayudes y poder mostrar los datos como lo mencione antes tener las cuentas que empiezan por 4 y 5 por un lado y las cuentas del 1 al 3 por otro lado

hector_munoz
Specialist
Specialist

Hola Pedro,

Cuando des a responder, a continuación haz clic en el enlace de "Utilizar el editor avanzado" de la parte superior derecha del marco de la entrada que estás escribiendo:

04-03-2017 21-19-58.png

, luego haz clic en el enlace "Adjuntar" de la parte inferior derecha del mismo marco:

04-03-2017 21-21-20.png

Saludos,

H

Anonymous
Not applicable
Author

Buenas Hector quería consultarte si pudiste ver el adjunto sino lo subo de nuevo, desde ya gracias por tu tiempo.

hector_munoz
Specialist
Specialist

Hola Pedro,

Usa la siguiente expresión:

Sum({<[Codigo Cuenta]={">=40000000<=60000000"}>} [Moneda Nac.]*(-1))

Con ella puedes sumar el importe del campo 'Moneda Nac.' solo si los códigos de cuenta están comprendidos entre el 40000000 y el 60000000, ambos inclusive.

Espero que te sirva,

H