Menu com links Html e PL/SQL.

Dúvidas, dicas e truques de PL/SQL. Aqui também vão assuntos relacionados a pacotes, triggers, funções, Java-Stored Procedures, etc
Trancado
Rafael_Santos
Rank: Analista Júnior
Rank: Analista Júnior
Mensagens: 72
Registrado em: Sex, 18 Nov 2011 4:51 pm

Caros colegas,
estou enfrentando uma dificuldade na construção de um sql.
A ideia desse sql é que ele construa os links que ficarão no menu de um blog que direciona para uma pagina com as noticias referentes ao mês indicado.
O pl/sql desenvolvido e de uma aplicação apex, por isso o link aparece dessa forma.
Me disponho para qualquer dúvida e desde já agradeço a ajuda.

Selecionar tudo

declare

dataini date;
datafim date;
intervalo number;
cont number;

begin

--Seleciona o primeiro dia da tabela DATA_CADASTRO onde o COD é 1
select trunc(data_cadastro,'month') into dataini
from noticia
where cod = 1;

--Seleciona o primeiro dia da tabela DATA_CADASTRO onde o COD é o ultimo
select trunc(data_cadastro,'month') into datafim
from noticia
WHERE cod=(SELECT max(cod) FROM noticia);

--Seleciona a diferença entre as variaveis datafim e dataini
select months_between(datafim,dataini) into intervalo
from dual;

if intervalo = 0 then

--Link que aparecerá no menu, onde P13_DATA_INICIAL recebe o primeiro dia do mês
--é P13_DATA_FINAL recebe o ultimo dia do mesmo mês
--to_char(sysdate, 'Month yyyy') é o nome que aparecerá no link
select '<a href="f?p=xxxx:13:&APP_SESSION.::NO::P13_DATA_INICIAL,P13_DATA_FINAL:'
|| to_date('01/'||to_char(sysdate,'mm/yyyy'),'dd/mm/yyyy') ||  '%2C'
|| to_date(sysdate, 'dd/mm/yyyy') || '">' || to_char(sysdate, 'Month
yyyy') || '</a>' as Selecione_sua_Noticia_por_Data
from dual;

else

--Essa parte do link sempre será fixa
select '<a href="f?p=2780:13:&APP_SESSION.::NO::P13_DATA_INICIAL,P13_DATA_FINAL:'
|| to_date('01/'||to_char(sysdate,'mm/yyyy'),'dd/mm/yyyy') ||  '%2C'
|| to_date(sysdate, 'dd/mm/yyyy') || '">' || to_char(sysdate, 'Month
yyyy') || '</a>'

for cont 1..intervalo loop

--Essa parte do link muda a quantidade que a função ADD_MONTHS irá
subtrair do mês
|| '<a href="f?p=xxxx:13:&APP_SESSION.::NO::P13_DATA_INICIAL,P13_DATA_FINAL:'
|| add_months(to_date('01/'||to_char(sysdate,'mm/yyyy'),'dd/mm/yyyy'),-(CONT))
||  '%2C' || last_day(add_months(to_date('01/'||to_char(sysdate,'mm/yyyy'),'dd/mm/yyyy'),-(CONT)))
|| '">' || to_char(add_months(current_date,-(CONT)), 'Month yyyy') ||
'</a>' || '<br>'

end loop;

--Essa parte do link também é fixa
as Selecione_sua_Noticia_por_Data
from dual

end if;

end;
Como disse, sou novo no desenvolvimento apex, e na área de desenvolvimento em geral, caso tenha algum erro de logica ou sintaxe, por gentileza, me corrijam.

Att,

Rafael R
Avatar do usuário
dr_gori
Moderador
Moderador
Mensagens: 5018
Registrado em: Seg, 03 Mai 2004 3:08 pm
Localização: Portland, OR USA
Contato:
Thomas F. G

Você já respondeu a dúvida de alguém hoje?
https://glufke.net/oracle/search.php?search_id=unanswered

Tópico DUPLICADO. Será trancado.
http://glufke.net/oracle/viewtopic.php?f=31&t=8312
Trancado
  • Informação
  • Quem está online

    Usuários navegando neste fórum: Nenhum usuário registrado e 4 visitantes