Acho que vc nao entendeu o conceito, Saulo! Funciona sim, pode testar.
2013/9/6 Saulo Brito <saulo.brit...@gmail.com> > ** > > > Aqui na empresa é 11g. > > Milton, realmente ele deu tudo mastigado, acontece que só seria executado > nos meses de 10 a 31. Os meses de fevereiro e que terminam em 30 não > funcionariam. Isso é basicamente uma dúvida que tenho, funcionaria? > > O meu problema é justamente esse 'repeat_interval', tenho que cria-lo de > uma forma que pegue sempre o dia 10 ao ultimo dia do mês. Todos os meses do > ano. > > =/ > > > Em 6 de setembro de 2013 15:47, Milton Bastos Henriquis Jr. < > miltonbas...@gmail.com> escreveu: > > ** >> >> >> Não entendi, "dar bastante trabalho" por que? >> O Chiappa já praticamente te passou a receita prontinha de como fazer, é >> só copiar o código dele e adaptar colocando a tua proc! >> >> Claro, isso considerando que vc tenha versão 10g ou mais atual, conforme >> ele explicou no e-mail dele, já que vc não especificou a versão no seu >> e-mail e por isso não tem como a gente adivinhar.... >> >> Tua solução realmente ficou uma gambiarra, pois vc vai executar um JOB >> todos os dias, inclusive nos dias que vc não precisa, consumindo assim >> recursos de forma desnecessária. >> Tudo bem que com a sua lógica de programação vc não vai executar a proc >> inteira, mas de qualquer maneira vc vai ter um job sendo disparado e um >> trecho da proc sendo executada. >> >> Da maneira que o Chiappa colocou ele só executa nos dias que vc realmente >> precisa. >> >> >> >> >> >> 2013/9/6 Saulo Brito <saulo.brit...@gmail.com> >> >>> ** >>> >>> >>> J. Laurindo, acho que essa seria a forma correta de fazer só que iria me >>> dar bastante trabalho e consequentemente consumir um tempo que já não tenho. >>> >>> Bom, resolvi de outra forma o problema. Fiz uma validação dentro da PROC >>> mesmo, só verifico se a data atual está entre o dia 10 e o ultimo dia do >>> mês atual, se a condição for valida eu executo o resto da proc. O JOB >>> coloquei para executar todo dia. >>> >>> Acho que não ficou legal e que não é o correto. Enfim, o que você acha >>> disso? é uma gambiarra? >>> >>> Abraços >>> Saulo Brito >>> >>> >>> Em 6 de setembro de 2013 15:22, J. Laurindo Chiappa < >>> jlchia...@yahoo.com.br> escreveu: >>> >>> ** >>>> >>>> >>>> Primeira coisa, para agendamentos mais complexos do tipo o ** IDEAL **, >>>> mais simples / menos trabalhoso, é vc usar a opção de executar JOBs pelo >>>> ORACLE SCHEDULER, que foi introduzido na versão 10g : caso vc esteja com >>>> RDBMS em versão mais antiga que isso, aí vai ser bem mais trabalhoso, >>>> provavelmente o que vc faria no caso seria criar e manter uma TABELA com os >>>> dias em que a procedure deve rodar e criar um JOB que dispare todo dia mas >>>> a cada vez leia a tabela e veja se "hoje é dia" da proc rodar, se não for >>>> não roda... >>>> >>>> Sendo banco 10g ou superior : pelo que vejo vc quer rodar Mensalmente, >>>> nos dias dos meses de 10 até 31 , então ficaria + ou - assim : >>>> >>>> >>>> BEGIN >>>> DBMS_SCHEDULER.create_job ( >>>> job_name => 'nomedoteujob', >>>> job_type => 'PLSQL_BLOCK', >>>> job_action => 'BEGIN nomedaprocedureaserrodada; END;', >>>> start_date => TO_DATE('10/09/2013 ....', >>>> repeat_interval => 'FREQ=MONTHLY; BYMONTHDAY=10,11,12,13,14.....31;', >>>> end_date => TO_DATE('30/11/2013....', >>>> enabled => TRUE, >>>> comments => 'Comentários do teu job.'); >>>> END; >>>> / >>>> >>>> Blz ? qquer dúvida mais sobre sintaxes e conceitos, dá um look em >>>> http://www.oracle-base.com/articles/10g/scheduler-10g.php e no manual >>>> "Oracle® Database Administrator's Guide" da tua versão de RDBMS, que vc >>>> terá um capítulo "Scheduling Jobs with Oracle Scheduler" , e se ainda assim >>>> não conseguir, retorna com os detalhes de versão que a gente tenta te >>>> ajudar mais... >>>> >>>> []s >>>> >>>> Chiappa >>>> >>>> OBS : só um detalhe : para se poder criar jobs normalmente o DBA ** tem >>>> ** que te dar privilégios específicos, então Confira com o teu DBA se o seu >>>> usuário no banco os tem, yep ?? >>>> >>>> --- Em oracle_br@yahoogrupos.com.br, Saulo Brito <saulo.brito01@...> >>>> escreveu >>>> >>>> > >>>> > Olá, sou desenvolvedor e me passaram uma tarefa de criar um JOB que >>>> executa >>>> > uma proc. >>>> > >>>> > Já fiz a proc só que nunca fiz um JOB na vida, e estou com a seguinte >>>> > dúvida: >>>> > >>>> > - Como faço a regra pro JOB ser executado de uma data X até o final >>>> do mês >>>> > consecutivamente? >>>> > >>>> > Por exemplo: >>>> > >>>> > dia 10/09 até dia 30/09 >>>> > >>>> > e continuar >>>> > >>>> > dia 10/10 até dia 31/10 >>>> > dia 10/11 até dia 30/11 >>>> > >>>> > >>>> > Pesquisei no google e tentei algumas coisas sem sucesso. >>>> > Poderiam me ajudar? Só a regra mesmo. >>>> > >>>> > >>>> > Obrigado, >>>> > >>>> > Saulo Brito >>>> > >>>> >>>> >>> >> > >