Skip to main content
Announcements
Live today at 11 AM ET. Get your questions about Qlik Connect answered, or just listen in. SIGN UP NOW
cancel
Showing results for 
Search instead for 
Did you mean: 
Not applicable

Error en sentencia join

Hola.

Necesito unir 2 campos de una TablaA a una TablaB, para lo que utilizo un left join o hago lo siguiente:

TablaC:

left join (TablaB)

load

     Campo1,

     Campo2,

     CampoClave

resident TablaA

En ambos casos da un error, es el siguiente: OUT OF VIRTUAL AND/OR LOGICAL MEMORY, allocating 2MB. ¿Alguien podría decirme qué siginifica este error, o si estoy haciendo algo mal?

Gracias.

1 Solution

Accepted Solutions
Not applicable
Author

Hola.

Ya hace unoas semanas encontré el error, al tener dos campos clave da error de memoria virtual.

Espero que a alguien le ayude.

View solution in original post

8 Replies
Not applicable
Author

Use the below code and remove the TableC:

and it should work

left join (TablaB)

load

     Campo1,

     Campo2,

     CampoClave

resident TablaA

Hope it helps

Not applicable
Author

Gracias por la respuesta, pero devuelve el error:

OUT OF VIRTUAL AND/OR LOGICAL MEMORY, ALLOCATING 2MB

Estoy desesperado.

Un saludo

Not applicable
Author

If possible upload the application and i can help you out.

erichshiino
Partner - Master
Partner - Master

Gabriel,

Yo creo que no necesita de la tablaC y necesita remover la tabla A despues del left join:

left join (TablaB)

load

     Campo1,

     Campo2,

     CampoClave

resident TablaA;

drop TablaA;

Not applicable
Author

Gracias por su respuestas Erich y Trytsk.

Se me olvidó comentar que tengo 2 campos clave, hago lo siguiente:

left join(tablaB)

load

campo1,

campo2,

campoclave1,

campoclave2

resident TablaA;

drop TablaA;

Si quito el campo clave2 devuelve el error antes mencionado, si utulizo el campoclave2 devuelve resultados falsos

ALBARAN_CABECERA:

LOAD

          B1COEJ&'_'& B1COSR&'_'& B1CONM AS NALBCAB,

          B1FVNM AS NFVALB,

          MAKEDATE(B1GEAN,B1GEME,B1GEDI) AS FECHA,

          B1CLCG AS CODIGO_CLIENTE_ENTREGA,

          B1CFCF AS REFERENCIA_FISCAL,

          B1GEBT AS IMPORTE,

          B1FVEJ&'_'& B1FVSR&'_'& B1FVNM AS ALBARANCAB_NFACT,

          B1GDD1&'_'& B1GDD2&'_'& B1GDD3 AS FECA_FACTURA,

          B1GDD1 AS A1,

          B1GDD2 AS A2,

          B1GDD3 AS A3;

          SQL SELECT *

FROM S65FCEEB.APLREMGEFI.B1;

ALBARAN_DETALLE:

LOAD

          B2COEJ&'_'& B2COSR&'_'& B2CONM AS NALBDET,

          MAKEDATE(B2GEAN,B2GEME,B2GEDI) AS FECHA,

          B2GELN AS LINEA1,

          B2GELI AS LINEA2,

          B2GELC AS LINEA3,

          B2GETD AS CARGO_ABONO,

          B2CFCF AS REFERENCIA_FISCAL,

          B2ARCG AS CODIGO_ARTICULO,

          B2ASCG AS CODIGO_SUBARTICULO,

          B2FMCG AS CODIGO_FAMILIA,

          B2FMSB AS CODIGO_SUBFAMILIA,

          B2GECN AS CANTIDAD,

          B2GEPR AS PRECIO,

          B2GEIM AS IMPORTE_ALBARAN,

          B2FVEJ&'_'& B2FVSR&'_'& B2FVNM AS ALBARANDET_NFACT;

SQL SELECT *

FROM S65FCEEB.APLREMGEFI.B2;

LEFT JOIN(ALBARAN_DETALLE)

LOAD

          A1,

          A2,

          REFERENCIA_FISCAL,

          FECHA

RESIDENT ALBARAN_CABECERA;

Not applicable
Author

Please try this out and it should work(Not tested).

ALBARAN_CABECERA:
LOAD
          B1COEJ&'_'& B1COSR&'_'& B1CONM AS NALBCAB,
          B1FVNM AS NFVALB,
          MAKEDATE(B1GEAN,B1GEME,B1GEDI) AS FECHA,
          B1CLCG AS CODIGO_CLIENTE_ENTREGA,
          B1CFCF AS REFERENCIA_FISCAL,
          B1GEBT AS IMPORTE,
          B1FVEJ&'_'& B1FVSR&'_'& B1FVNM AS ALBARANCAB_NFACT,
          B1GDD1&'_'& B1GDD2&'_'& B1GDD3 AS FECA_FACTURA,
          B1GDD1 AS A1,
          B1GDD2 AS A2,
          B1GDD3 AS A3;
          SQL SELECT *
FROM S65FCEEB.APLREMGEFI.B1;


ALBARAN_DETALLE:
LOAD
          B2COEJ&'_'& B2COSR&'_'& B2CONM AS NALBDET,
          MAKEDATE(B2GEAN,B2GEME,B2GEDI) AS FECHA1,
          B2GELN AS LINEA1,
          B2GELI AS LINEA2,
          B2GELC AS LINEA3,
          B2GETD AS CARGO_ABONO,
          B2CFCF AS REFERENCIA_FISCAL1,
          B2ARCG AS CODIGO_ARTICULO,
          B2ASCG AS CODIGO_SUBARTICULO,
          B2FMCG AS CODIGO_FAMILIA,
          B2FMSB AS CODIGO_SUBFAMILIA,
          B2GECN AS CANTIDAD,
          B2GEPR AS PRECIO,
          B2GEIM AS IMPORTE_ALBARAN,
          B2FVEJ&'_'& B2FVSR&'_'& B2FVNM AS ALBARANDET_NFACT;
SQL SELECT *
FROM S65FCEEB.APLREMGEFI.B2;


LEFT JOIN(ALBARAN_DETALLE)
LOAD
          A1 As New_A1,
          A2 AS New_A2,
          REFERENCIA_FISCAL as REFERENCIA_FISCAL1,
          FECHA  As FECHA1
RESIDENT ALBARAN_CABECERA;

Thanks

Talha

Not applicable
Author

Gracias por tu interés, pero sigue devolviendo error. Probaré y probaré y la solución encontraré.

Gracias por todo.

Un saludo

Not applicable
Author

Hola.

Ya hace unoas semanas encontré el error, al tener dos campos clave da error de memoria virtual.

Espero que a alguien le ayude.