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: 
edddddy24
Contributor II
Contributor II

Tabla residente sin crear

Buenas tardes comunidad , soy nuevo en esto y creo que mi error es simple pero creo que ya me cicle.

El detalle es el siguiente:

PlantaX:

LOAD

     Key_WC,

     Sociedad_Prod,

     if(mid(Planta_Puesto_Trabajo,3,2)='01',

     replace(Planta_Puesto_Trabajo,'01','A1'),Planta_Puesto_Trabajo) as Planta_Puesto_TrabajoX

    

FROM D:\QlikView\Datos\PP\Qvds\Produccion_PuestosTrabajo.qvd (qvd)

where Sociedad_Prod='XXX';

concatenate

PlantasinX:

LOAD

     Key_WC,

     Sociedad_Prod,

  Planta_Puesto_Trabajo as Planta_Puesto_TrabajoX

    

FROM D:\QlikView\Datos\PP\Qvds\Produccion_PuestosTrabajo.qvd (qvd)

where Sociedad_Prod <>'XXX';

Aquí le estoy diciendo a QV que, en la primera tabla utilice 2 dimensiones mas un campo que evalúa el puesto de trabajo(YY01) y si los últimos 2 caracteres son '01', los cambia a 'A1', y en el WHERE le digo que solo de una sociedad en especifico, de esta manera tendré un catalogo.

En la segunda tabla residente le digo que el campo Planta_Puesto_TrabajoX sea igual al campo origen y estableciendo que sea de toda la información a exepcion de la sociedad que utilice en la tabla residente anterior.

Así ya tengo una tabla residente con información modificada de una sociedad y la otra es la información original de todas las sociedades menos la ya mencionada.

Después hago lo siguiente:

[Puestos de Trabajo]:

Load

*

FROM D:\QlikView\Datos\PP\Qvds\Produccion_PuestosTrabajo.qvd (qvd);

left join([Puestos de Trabajo])

LOAD *

Resident PlantasAQP;

left join([Puestos de Trabajo])

LOAD *

Resident PlantasinX;

Aqui cargo la tabla con información original contenida en un QVD y trato de hacer un left join contra las tablas residentes que ya creé, las cuales contienen 2 campos con el mismo nombre(campos numéricos) para que sean mis llaves mas la nueva columna, pero al momento de correr la aplicación me dice que una de las tablas residentes no existe. estará  mal la sintaxis?

Espero y me puedan entender , y gracias de antemano por su tiempo.

1 Solution

Accepted Solutions
Anonymous
Not applicable

Buen dia Eduardo,

Revisando tu codigo veo que despues de cargar la tabla PlantaX tienes un concatenate, y los campos de PlantasinX son comunes con la anterior, por lo tanto Qlik uniria ambas tablas en una sola bajo el nombre de PlantaX. Por lo tanto al momento de hacer el left join no encuentra la tabla PlantasinX (y asumo que PlantasAQP fue definida anteriormente unicamente que no esta el codigo en el ejemplo que has compartido).

Saludos Cordiales

--Karla

View solution in original post

2 Replies
Anonymous
Not applicable

Buen dia Eduardo,

Revisando tu codigo veo que despues de cargar la tabla PlantaX tienes un concatenate, y los campos de PlantasinX son comunes con la anterior, por lo tanto Qlik uniria ambas tablas en una sola bajo el nombre de PlantaX. Por lo tanto al momento de hacer el left join no encuentra la tabla PlantasinX (y asumo que PlantasAQP fue definida anteriormente unicamente que no esta el codigo en el ejemplo que has compartido).

Saludos Cordiales

--Karla

edddddy24
Contributor II
Contributor II
Author

Muchas gracias Karla.

Asi es , y encontre una forma aun mas simple de evitarme todo este codigo:

[Puestos]:

Load

*,

if(Linea_Prod='XXX',Replace(Planta_Puesto_Trabajo,'01','A1'),Planta_Puesto_Trabajo) as Planta_Puesto_TrabajoEVC

FROM Produccion_PuestosTrabajo.qvd (qvd);

de esta manera selecciono solamente la información que necesito y la evaluó para modificara y así crear un nuevo campo.

Hacia falta consultarlo con la amulada,gracias equipo.