create or replace package pkg_fco_gral is

  -- Author  : Manuel Daza
  -- Created : 08/06/2006 02:02:09 p.m.
  -- Purpose : Definiciones

  -- Public type declarations
  type TrabRecTyp is record(
    compania         char(4),
    trabajador       char(10),
    sucursal         varchar2(10),
    relacion_laboral char(1),
    fecha_ingreso    date,
    fecha_baja       date,
    clave_unica      varchar2(25),
    nombre           varchar2(100),
    registro_fiscal  varchar2(20),
    sit_trabajador   number(1));

  type TrabCurTyp is ref cursor; --return TrabRecTyp;

  -- Public constant declarations
  orden1    constant varchar2(300) := ' ORDER BY to_number(fn_solonum(t.clave_unica))';
  ordenx    constant varchar2(300) := ' ORDER BY t.nombre';
  orden3    constant varchar2(300) := ' ORDER BY t.clave_unica';
  sentencia constant varchar2(4000) := 'select tg.compania, tg.trabajador,' ||
                                       'nvl(suc.dato, ' || '''' || ' ' || '''' || ') sucursal, tg.relacion_laboral,' ||
                                       'tg.fecha_ingreso, tg.fecha_baja, t.clave_unica,' ||
                                       't.nombre, t.registro_fiscal, tg.sit_trabajador' ||
                                       ' from trabajadores_grales tg, trabajadores t, vw_fco_div_trabajador SUC' ||
                                       ' WHERE tg.trabajador = t.trabajador' ||
                                       ' AND SUC.compania = tg.compania' ||
                                       ' AND SUC.trabajador = tg.trabajador' ||
                                       ' AND tg.compania = :pch_compania' ||
                                       ' AND to_char(tg.fecha_ingreso, ' || '''' || 'YYYYMM' || '''' || ') <= :vch_periodo' ||
                                       ' AND (tg.sit_trabajador = 1 OR' || ' to_char(tg.fecha_baja, ' || '''' || 'YYYYMM' || '''' || ') >= :vch_periodo)' ||
                                       ' AND (ltrim(rtrim(SUC.dato)) = ltrim(rtrim(:pch_sucursal)) OR :pch_sucursal is null)';
/*and tg.trabajador = ''     15933''*/
  -- Public variable declarations
  --  < VariableName > < Datatype >;
  vdc_tar_EPS  number(6, 5); -- Tarifa Salud
  vdc_tar_AFP  number(6, 5); -- Tarifa Pensión
  vdc_tar_CCF  number(6, 5); -- Tarifa Cajas de Compensación
  vdc_tar_SENA number(6, 5); -- Tarifa SENA
  vdc_tar_ICBF number(6, 5); -- Tarifa ICBF
  vdc_tar_ESAP number(6, 5); -- Tarifa ESAP
  vdc_tar_MEdu number(6, 5); -- Tarifa MinEducación

-- Public function and procedure declarations
--  function < FunctionName > (< Parameter > < Datatype >) return < Datatype >;

end pkg_fco_gral;
/
