Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Preciso levar o campo CD_SAFRA de suas respectiva data para a tabela de calendario_safra.
Segue abaixo script que estou fazendo:
SQL SELECT CD_SAFRA,
DT_INI_SAFRA,
DT_FIM_SAFRA,
DT_CORTE
FROM PIMSPRD.SAFRAS_PER
WHERE FG_TIPO ='AGR'
AND CD_SAFRA >=21617
AND TO_CHAR(DT_CORTE,'YYYY') <=TO_CHAR(SYSDATE,'YYYY')
ORDER BY CD_SAFRA DESC;
TmpCalendario:
LOAD
Max(DT_FIM_SAFRA) As MaxData,
Min(DT_INI_SAFRA) As MinData
Resident SAFRAS_PER;
LET vMaxData = Peek('MaxData');
LET vMinData = Peek('MinData');
Drop Table TmpCalendario;
calendario_safra:
Load
Date(DT_INI_SAFRA, 'DD/MM/YYYY') As Data,
Day(DT_INI_SAFRA) As Dia,
Month(DT_INI_SAFRA) As Mes,
Year(DT_INI_SAFRA) As Ano,
MonthName(DT_INI_SAFRA) As MesAno,
Ceil(Month(DT_INI_SAFRA)/3) & 'º Trimestre' As Quartil,
Weekday(DT_INI_SAFRA) As DiaSemana;
Load
Date('$(vMinData)' + Recno() - 1,'DD/MM/YYYY') As DT_INI_SAFRA
AutoGenerate (monthEnd(vMaxData) - vMinData + 1);
drop table SAFRAS_PER;
Como você usa o DT_INI_SAFRA para criar seu calendário safra, que tal adicionar mais um campo na sua tabela safra e renomear como Data (igual no calendário safra).
DT_INI_SAFRA as Data
Thiago, desse jeito não iria funcionar, pois a tabela de safra_per só tem 3 linhas de registro, assim como a DT_INI_SAFRA.
Segue anexo print da estrutura de dados.