Qlik Community

Ask a Question

QlikView App Dev

Discussion Board for collaboration related to QlikView App Development.

Announcements
Become an analytics expert with Qlik's new 15 week course: Applied Data Analytics using Qlik Sense. READ MORE
cancel
Showing results for 
Search instead for 
Did you mean: 
Not applicable

Problema para trabajar con tablas

Hola, soy bastante nueva en esto del Qlikview y en general todo lo que tiene que ver con bases de datos.

Siguiendo un par de tutoriales, estoy tratando de hacer mi propia aplicación, en la que necesito hacer varias cosas pero me encuentro trabada en el inicio.

Ya cargué mis datos en varios archivos .qvd, desde los cuales tengo entendido que debo de poder trabajar, por ejemplo:

Tabla_base:

LOAD ID,

     FHNACIM,

     SEXO,

     DENSIDAD,

     ESTATUS,

     EDAD1,

     FECHA1,

     AFILIA1

FROM Tabla_1.qvd (qvd);

//hasta aquí únicamente estoy cargando un qvd en el que ya tengo mis datos, pero quiero realizar una operación sobre al menos un campo de esa tabla y guardarlo todo en otro tabla, usando este codigo:

Tabla_calculos:

LOAD ID,

bp=DENSIDAD*bc

FROM Tabla_base;

donde bp y bs son valores constantes que tengo en otra tabla, recibo errores del tipo "No se encuentra el archivo C:\...\Tabla_base" y no me queda claro qué es lo que estoy haciendo mal...

Agradecería la ayuda, saludos.

1 Solution

Accepted Solutions
settu_periasamy

Hi,

Tabla_calculos:

LOAD ID,

bp=DENSIDAD*bc

FROM Tabla_base;

You need to use Resident Here..


Tabla_calculos:

LOAD ID,

          DENSIDAD

RESIDENT Tabla_base;

Regarding  bp=DENSIDAD*bc, You can't directly give the other table Fields(Here 'bc')

Need to look Applymap    Don't join - use Applymap instead

View solution in original post

3 Replies
settu_periasamy

Hi,

Tabla_calculos:

LOAD ID,

bp=DENSIDAD*bc

FROM Tabla_base;

You need to use Resident Here..


Tabla_calculos:

LOAD ID,

          DENSIDAD

RESIDENT Tabla_base;

Regarding  bp=DENSIDAD*bc, You can't directly give the other table Fields(Here 'bc')

Need to look Applymap    Don't join - use Applymap instead

View solution in original post

Not applicable
Author

Hola Cecilia, espero poder ayudarte.

Vamos por partes.

Si uno hace mención a una tabla que ya creamos previamente en el mismo qvw podemos usar "Resident" en vez de usar "FROM".

En tu caso sería:

LOAD *

Resident Tabla_Base;

En el otro caso, si el campo bc no pertenece a la Tabla_Base y está en otra tabla deberías hacer un JOIN o LEFT JOIN relacionando la Tabla_Base por medio de algún ID, de manera tal de poder incorporarle el campo bc a la Tabla_Base.

Mas performante es usar un ApplyMap (fijese en la ayuda la utilización de esta función si le interesa).

Entonces, de esta manera, la Tabla_Calculos quedaría de la siguiente manera

Tabla_Calculos:

LOAD ID, DENSIDAD,

DENSIDAD * bc AS bp

Resident Tabla_Base;

Espero haber sido de ayuda.

Saludos,

Julio

Not applicable
Author

Hola Cecilia,

La carga realizada del QVD es correcta.

Como te han indicado en el post anterior, puedes hacer un resident para cargar lo que hay ya en una tabla:

Tabla_base:

LOAD ID,

     FHNACIM,

     SEXO,

     DENSIDAD,

     ESTATUS,

     EDAD1,

     FECHA1,

     AFILIA1

FROM Tabla_1.qvd (qvd);

Tabla_calculos:

LOAD ID,

DENSIDAD*bc as bp

residentTabla_base;

No sé que es bc en tu qvd, ¿a qué campo hace referencia?

Saludos.