Olá pessoal,
Boa tarde!
Neste post, vou seguir a dica de um leitor e utilizar a excelente API gratuita do site Calendario.com.br para retornar a listagem de feriados nacionais, estaduais, municipais e facultativos do Brasil, permitindo filtrar por ano, estado e/ou cidade. Eu já havia comentado sobre este assunto no post How to create a table with holidays (national, state and mobile) in SQL Server, mas acho que esse post vai trazer mais uma forma de se realizar essa tarefa.
Acredito que a solução deste post é mais completa que a do meu post anterior de feriados, por ter até os feriados municipais e facultativos. Entretanto, cada consulta gera uma requisição HTTP, o que aplicado para uma lista grande de cidades/anos, poderia demorar vários segundos, enquanto a solução do outro post já calcula e armazena todos os dados em uma tabela, o que não impede que isso seja feito também com a solução via API.
Para saber mais sobre o recurso OLE Automation, clique neste link.
Utilizando OLE Automation
A forma mais rápida de implementar isso, é utilizando o objeto MSXML2.ServerXMLHTTP do OLE Automation, que permite realizar requisições XML através do protocolo HTTP.
Como já havia comentado em outros posts, por motivos de segurança e estabilidade do ambiente, NÃO recomendo a ativação e utilização do recurso OLE Automation, mas quis demonstrar aqui uma solução de como utilizar esse poderoso, mas perigoso, recurso do banco de dados.
Visualizar código-fonteUtilizando o SQL CLR (C#)
Já velho conhecido aqui das postagens do blog, o CLR permite utilizar código C# ou VB.NET do .NET Framework dentro do banco de dados SQL Server, e assim, obter novos recursos e estender a capacidade do banco de dados.
Se você não conhece o CLR, ou não sabe como funciona e o que é, acesse este link.
Visualizar código-fonteAnd that's it, folks!
Obrigado pela visita, espero que tenham gostado e até o próximo post.
Olá,
Parace que o site http://www.calendario.com.br/api/api_feriados.php? não fornece mais os dados, ao tentar acessar retorna a seguinte mensagem.
“Olá, infelizmente não fornecemos mais o serviço de API de Feriados.”
Alguma outra api gratuita?