Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Estimados y estimadas,
Necesito hacer cargas incrementales en qlik. Hice un script con QVD que me permite solo actualizar los datos nuevo cargados en teradata. No se si funciona porque no cargarán más datos por ahora, pero necesito saber si está haciendo lo que debería o no. ya que, me arroja el error que sale adjunto en la foto. Supongo que ese error es porque no hay datos nuevos a partir del dato número 361.218.925, pero me arroja error. Pero me gustaría que pudieran revisar si el script está correcto, ya que necesito saber si en verdad el script lo que hace es guardar el qvd, luego solo actualizar los datos nuevos y agregarlos al qvd que ya estaba creado, de esta forma se maximiza el tiempo de carga. Lo que hice fue lo siguiente (no puse todas las variables para que sea más fácil ver):
1) Cargo el QVD
LIB CONNECT TO 'Teradata';
[Ventas$]:
LOAD "Venta_Id",
"Monto";
SQL SELECT "Venta_Id",
"Monto"
FROM "DL_C".VISTA;
store Ventas$ into [lib://_TABLES/Ventas.qvd] (qvd);
exit Script
2) Incremental load
MaxKeyLoad:
load Max("Venta_Id") as MaxID
From [lib://_TABLES/Ventas.qvd] (qvd);
Let MaxID = Peek('MaxID',0,MaxKeyLoad);
[Ventas]:
load *;
SQL SELECT * FROM "DL_C".VISTA
WHERE Venta_Id > '$(MaxID)';
Concatenate
Load * From [lib://_TABLES/Ventas.qvd] (qvd);
// Store the new larger qvd file
store orders into [lib://_TABLES/Ventas.qvd] (qvd);
exit Script;
Olla @Sebastián
parece que su código no tiene conexión con la base de datos del teradata.
Ver las siguientes líneas
2) Incremental load
MaxKeyLoad:
load Max("Venta_Id") as MaxID
From [lib://_TABLES/Ventas.qvd] (qvd);
Let MaxID = Peek('MaxID',0,MaxKeyLoad);
LIB CONNECT TO 'Teradata';
[Ventas]:
load *;
SQL SELECT * FROM "DL_C".VISTA
WHERE Venta_Id > '$(MaxID)';
Concatenate
Load * From [lib://_TABLES/Ventas.qvd] (qvd);
// Store the new larger qvd file
store orders into [lib://_TABLES/Ventas.qvd] (qvd);
exit Script;