setTabela('calendario.calendario_cadastro'); $this->setCampoCod('cod_calendar'); $this->setComplementoChave(''); $this->AddCampo('cod_calendar','integer',true,'',true,false); $this->AddCampo('descricao','varchar',true,'100',false,false); } function montaRecuperaRelacionamento() { ; $stSql .= "select \n"; $stSql .= " cf.cod_feriado, \n"; $stSql .= " to_char(cf.dt_feriado, 'dd/mm/yyyy') as dt_feriado, \n"; $stSql .= " cf.dt_feriado as dt_feriado_order, \n"; $stSql .= " cf.descricao, \n"; $stSql .= " CASE abrangencia \n"; $stSql .= " WHEN 'E' THEN 'Estadual' \n"; $stSql .= " WHEN 'F' THEN 'Federal' \n"; $stSql .= " WHEN 'M' THEN 'Municipal' \n"; $stSql .= " END as abrangencia, \n"; $stSql .= " CASE tipoferiado \n"; $stSql .= " WHEN 'D' THEN 'Dia compensado' \n"; $stSql .= " WHEN 'F' THEN 'Fixo' \n"; $stSql .= " WHEN 'P' THEN 'Ponto facultativo' \n"; $stSql .= " WHEN 'V' THEN 'Variável' \n"; $stSql .= " END as tipoferiado, \n"; $stSql .= " tipo_feriado_calendario(to_char(dt_feriado,'dd/mm/yyyy'),'".$this->getDado("cod_calendar")."','".Sessao::getEntidade()."') as tipo_cor \n"; $stSql .= " \n"; $stSql .= " from \n"; $stSql .= " calendario.feriado cf \n"; $stSql .= "where \n"; $stSql .= " cod_feriado not in (select * from calendario.feriado_variavel) and \n"; $stSql .= " cod_feriado not in (select * from calendario.ponto_facultativo) and \n"; $stSql .= " cod_feriado not in (select * from calendario.dia_compensado) \n"; if ($this->getDado("dt_feriado")) { $stSql .= "and dt_feriado = to_date('". $this->getDado("dt_feriado") ."','dd/mm/yyyy')"; } if ($this->getDado("dt_inicial") && $this->getDado("dt_inicial")) { $stSql .=" and ( dt_feriado BETWEEN to_date('".$this->getDado("dt_inicial")."','dd/mm,yyyy') AND to_date('".$this->getDado("dt_final")."','dd/mm/yyyy') )\n"; } $stSql .= " \n"; $stSql .= "union \n"; $stSql .= " \n"; $stSql .= " select \n"; $stSql .= " cf.cod_feriado, \n"; $stSql .= " to_char(cf.dt_feriado, 'dd/mm/yyyy') as dt_feriado, \n"; $stSql .= " cf.dt_feriado as dt_feriado_order, \n"; $stSql .= " cf.descricao, \n"; $stSql .= " CASE abrangencia \n"; $stSql .= " WHEN 'E' THEN 'Estadual' \n"; $stSql .= " WHEN 'F' THEN 'Federal' \n"; $stSql .= " WHEN 'M' THEN 'Municipal' \n"; $stSql .= " END as abrangencia, \n"; $stSql .= " CASE tipoferiado \n"; $stSql .= " WHEN 'D' THEN 'Dia compensado' \n"; $stSql .= " WHEN 'F' THEN 'Fixo' \n"; $stSql .= " WHEN 'P' THEN 'Ponto facultativo' \n"; $stSql .= " WHEN 'V' THEN 'Variável' \n"; $stSql .= " END as tipoferiado, \n"; // $stSql .= " calendario".Sessao::getEntidade().".tipo_feriado(to_char(dt_feriado,'dd/mm/yyyy')) as tipo_cor \n"; $stSql .= " tipo_feriado_calendario(to_char(dt_feriado,'dd/mm/yyyy'),'".$this->getDado("cod_calendar")."','".Sessao::getEntidade()."') as tipo_cor \n"; $stSql .= " from \n"; $stSql .= " calendario.feriado_variavel cfv, \n"; $stSql .= " calendario.calendario_feriado_variavel ccfv, \n"; $stSql .= " calendario.feriado cf \n"; $stSql .= " where \n"; $stSql .= " cfv.cod_feriado = ccfv.cod_feriado \n"; $stSql .= " and cf.cod_feriado = cfv.cod_feriado \n"; $stSql .= " and ccfv.cod_calendar = ".$this->getDado("cod_calendar")." \n"; if ($this->getDado("dt_feriado")) { $stSql .= "and dt_feriado = to_date('". $this->getDado("dt_feriado") ."','dd/mm/yyyy')"; } if ($this->getDado("dt_inicial") && $this->getDado("dt_inicial")) { $stSql .=" and ( dt_feriado BETWEEN to_date('".$this->getDado("dt_inicial")."','dd/mm,yyyy') AND to_date('".$this->getDado("dt_final")."','dd/mm/yyyy') )\n"; } $stSql .= " \n"; $stSql .= "union \n"; $stSql .= " \n"; $stSql .= " select \n"; $stSql .= " cf.cod_feriado, \n"; $stSql .= " to_char(cf.dt_feriado, 'dd/mm/yyyy') as dt_feriado, \n"; $stSql .= " cf.dt_feriado as dt_feriado_order, \n"; $stSql .= " cf.descricao, \n"; $stSql .= " CASE abrangencia \n"; $stSql .= " WHEN 'E' THEN 'Estadual' \n"; $stSql .= " WHEN 'F' THEN 'Federal' \n"; $stSql .= " WHEN 'M' THEN 'Municipal' \n"; $stSql .= " END as abrangencia, \n"; $stSql .= " CASE tipoferiado \n"; $stSql .= " WHEN 'D' THEN 'Dia compensado' \n"; $stSql .= " WHEN 'F' THEN 'Fixo' \n"; $stSql .= " WHEN 'P' THEN 'Ponto facultativo' \n"; $stSql .= " WHEN 'V' THEN 'Variável' \n"; $stSql .= " END as tipoferiado, \n"; // $stSql .= " calendario".Sessao::getEntidade().".tipo_feriado(to_char(dt_feriado,'dd/mm/yyyy')) as tipo_cor \n"; $stSql .= " tipo_feriado_calendario(to_char(dt_feriado,'dd/mm/yyyy'),'".$this->getDado("cod_calendar")."','".Sessao::getEntidade()."') as tipo_cor \n"; $stSql .= " \n"; $stSql .= " from \n"; $stSql .= " calendario.ponto_facultativo cpf, \n"; $stSql .= " calendario.calendario_ponto_facultativo ccpf, \n"; $stSql .= " calendario.feriado cf \n"; $stSql .= " where \n"; $stSql .= " cpf.cod_feriado = ccpf.cod_feriado \n"; $stSql .= " and cf.cod_feriado = cpf.cod_feriado \n"; $stSql .= " and ccpf.cod_calendar = ".$this->getDado("cod_calendar")." \n"; if ($this->getDado("dt_feriado")) { $stSql .= "and dt_feriado = to_date('". $this->getDado("dt_feriado") ."','dd/mm/yyyy')"; } if ($this->getDado("dt_inicial") && $this->getDado("dt_inicial")) { $stSql .=" and ( dt_feriado BETWEEN to_date('".$this->getDado("dt_inicial")."','dd/mm,yyyy') AND to_date('".$this->getDado("dt_final")."','dd/mm/yyyy') )\n"; } $stSql .= "union \n"; $stSql .= " \n"; $stSql .= " select \n"; $stSql .= " cf.cod_feriado, \n"; $stSql .= " to_char(cf.dt_feriado, 'dd/mm/yyyy') as dt_feriado, \n"; $stSql .= " cf.dt_feriado as dt_feriado_order, \n"; $stSql .= " cf.descricao, \n"; $stSql .= " CASE abrangencia \n"; $stSql .= " WHEN 'E' THEN 'Estadual' \n"; $stSql .= " WHEN 'F' THEN 'Federal' \n"; $stSql .= " WHEN 'M' THEN 'Municipal' \n"; $stSql .= " END as abrangencia, \n"; $stSql .= " CASE tipoferiado \n"; $stSql .= " WHEN 'D' THEN 'Dia compensado' \n"; $stSql .= " WHEN 'F' THEN 'Fixo' \n"; $stSql .= " WHEN 'P' THEN 'Ponto facultativo' \n"; $stSql .= " WHEN 'V' THEN 'Variável' \n"; $stSql .= " END as tipoferiado, \n"; // $stSql .= " calendario".Sessao::getEntidade().".tipo_feriado(to_char(dt_feriado,'dd/mm/yyyy')) as tipo_cor \n"; $stSql .= " tipo_feriado_calendario(to_char(dt_feriado,'dd/mm/yyyy'),'".$this->getDado("cod_calendar")."','".Sessao::getEntidade()."') as tipo_cor \n"; $stSql .= " from \n"; $stSql .= " calendario.dia_compensado cdc, \n"; $stSql .= " calendario.calendario_dia_compensado ccdc, \n"; $stSql .= " calendario.feriado cf \n"; $stSql .= " where \n"; $stSql .= " cdc.cod_feriado = ccdc.cod_feriado \n"; $stSql .= " and cf.cod_feriado = cdc.cod_feriado \n"; $stSql .= " and ccdc.cod_calendar = ".$this->getDado("cod_calendar")." \n"; if ($this->getDado("dt_feriado")) { $stSql .= "and dt_feriado = to_date('". $this->getDado("dt_feriado") ."','dd/mm/yyyy')"; } if ($this->getDado("dt_inicial") && $this->getDado("dt_inicial")) { $stSql .=" and ( dt_feriado BETWEEN to_date('".$this->getDado("dt_inicial")."','dd/mm,yyyy') AND to_date('".$this->getDado("dt_final")."','dd/mm/yyyy') )\n"; } $stSql .= " order by dt_feriado_order \n"; return $stSql; } }