Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Buenas, mi pregunta es muy básica, pero que es una tabla residente y para que se suele utilizar. Si podeis anexar un ejemplo os lo agradeceria ya que me ayuda bastante para entender el como y para que de las cosas....
Gracias por anticipado.
Hola Galván,
La palabra clave resident se usa para cargar los datos desde una tabla que tengas ya previamente cargada.
Un ejemplo: imagina que tienes la siguiente tabla y que después quieres añadir los campos de la tabla “Fijos” (la podrías tener ya cargada, yo la cargo a continuación de ésta y después como no la voy a necesitar más la borro). Con resident estás añadiendo los datos ya cargados en la tabla que te interesa.
DistriFuncionalPersonal:
LOAD
DistriFuncional.AÑOMESCIERRE as AÑOMESCIERRE,
DistriFuncional.AÑOCIERRE as AÑOCIERRE, //
DistriFuncional.MESCIERRE as MESCIERRE, // unión
APCODI, //
ClvDiFu,
(DistriFuncional.AÑOCIERRE - 1) as AñoAnterior,
If(DistriFuncional.MESCIERRE=1, 'Ene',
If(DistriFuncional.MESCIERRE =2, 'Feb',
If(DistriFuncional.MESCIERRE=3, 'Mar',
If(DistriFuncional.MESCIERRE=4, 'Abr',
If(DistriFuncional.MESCIERRE=5, 'May',
If(DistriFuncional.MESCIERRE=6, 'Jun',
If(DistriFuncional.MESCIERRE=7, 'Jul',
If(DistriFuncional.MESCIERRE=8, 'Ago',
If(DistriFuncional.MESCIERRE=9, 'Sep',
If(DistriFuncional.MESCIERRE=10, 'Oct',
If(DistriFuncional.MESCIERRE=11, 'Nov',
If(DistriFuncional.MESCIERRE=12, 'Dic')))))))))))) as NombreMes,
APDESC,
APDECC
FROM $(dtwarehouse)DistriFuncional$(vAñoProceso).qvd (qvd);
// Unimos con los valores de los indicadores de personal para el mes/año
// PERSONAL
//..................................................................................................................
// FIJOS
Fijos:
LOAD
PTAGRU,
HDANIO,
HDMES,
HDNBI;
SQL SELECT
PTAGRU,
HDANIO,
HDMES,
Count(DISTINCT HDNBI) as HDNBI
FROM $(LIB1).CGHSTDIWQ Where HDTIPO='1'
Group By
PTAGRU,
HDANIO,
HDMES
;
left Join(DistriFuncionalPersonal)
LOAD
PTAGRU as APCODI, // unión
HDANIO & Right('00' & HDMES, 2) as AÑOMESCIERRE,
HDANIO as AÑOCIERRE, //
HDMES as MESCIERRE, //
HDNBI as Fijos
resident Fijos;
drop table Fijos;
Un saludo,
Hola Galván,
La palabra clave resident se usa para cargar los datos desde una tabla que tengas ya previamente cargada.
Un ejemplo: imagina que tienes la siguiente tabla y que después quieres añadir los campos de la tabla “Fijos” (la podrías tener ya cargada, yo la cargo a continuación de ésta y después como no la voy a necesitar más la borro). Con resident estás añadiendo los datos ya cargados en la tabla que te interesa.
DistriFuncionalPersonal:
LOAD
DistriFuncional.AÑOMESCIERRE as AÑOMESCIERRE,
DistriFuncional.AÑOCIERRE as AÑOCIERRE, //
DistriFuncional.MESCIERRE as MESCIERRE, // unión
APCODI, //
ClvDiFu,
(DistriFuncional.AÑOCIERRE - 1) as AñoAnterior,
If(DistriFuncional.MESCIERRE=1, 'Ene',
If(DistriFuncional.MESCIERRE =2, 'Feb',
If(DistriFuncional.MESCIERRE=3, 'Mar',
If(DistriFuncional.MESCIERRE=4, 'Abr',
If(DistriFuncional.MESCIERRE=5, 'May',
If(DistriFuncional.MESCIERRE=6, 'Jun',
If(DistriFuncional.MESCIERRE=7, 'Jul',
If(DistriFuncional.MESCIERRE=8, 'Ago',
If(DistriFuncional.MESCIERRE=9, 'Sep',
If(DistriFuncional.MESCIERRE=10, 'Oct',
If(DistriFuncional.MESCIERRE=11, 'Nov',
If(DistriFuncional.MESCIERRE=12, 'Dic')))))))))))) as NombreMes,
APDESC,
APDECC
FROM $(dtwarehouse)DistriFuncional$(vAñoProceso).qvd (qvd);
// Unimos con los valores de los indicadores de personal para el mes/año
// PERSONAL
//..................................................................................................................
// FIJOS
Fijos:
LOAD
PTAGRU,
HDANIO,
HDMES,
HDNBI;
SQL SELECT
PTAGRU,
HDANIO,
HDMES,
Count(DISTINCT HDNBI) as HDNBI
FROM $(LIB1).CGHSTDIWQ Where HDTIPO='1'
Group By
PTAGRU,
HDANIO,
HDMES
;
left Join(DistriFuncionalPersonal)
LOAD
PTAGRU as APCODI, // unión
HDANIO & Right('00' & HDMES, 2) as AÑOMESCIERRE,
HDANIO as AÑOCIERRE, //
HDMES as MESCIERRE, //
HDNBI as Fijos
resident Fijos;
drop table Fijos;
Un saludo,
Muchas gracias Sonia por tu info. Me ha servido mucho para entenderlo. ![]()
De nada.