Pular para o conteúdo principal

Postagens

Mostrando postagens de novembro, 2015

Passar valores nulos para oracle procedures com fluent nhibernate

Algumas vezes criamos procedures em base de dados Oracle que tem parâmetros do tipo Input e são opcionais. E dentro desse parâmetro opcional podemos programar internamente na procedure alguma lógica como por exemplo em campo de data se não receber data especificada utilizar data atual.  O modo mais lógico de chamar parametro sem especificar valor seria simplesmente passar null, mas ao fazer isto prepare-se para receber uma Exception . :) A solução nestes casos é então passar o valor DBNull .Value. Segue exemplo abaixo utilizando drive C# da Oracle com sessão de Fluent Nhibernate : using (var command = (OracleCommand)Session.Connection.CreateCommand()) {     command.CommandText = "sp_procedure001";     command.CommandType = CommandType.StoredProcedure;     if (inicio == DateTime.MinValue && termino == DateTime.MinValue)     {          command.Parameters.Add("pi_dt_inicio", OracleDbType.Date, DBNull.Value, ParameterDirection.Input);        

Buscar Cep via webservice javascript

Algumas vezes precisamos em um cadastro de usuário por exemplo, preencher e validar automaticamente alguns campos. Neste post veremos um exemplo com buscador de dados do CEP. Para buscar cep via webservice com jQuery você poderia criar os campos input text para Cidade, Complemento, Endereço e UF alem do campo CEP. Com estes campos declarados podemos utilizar algum webservice para consulta e obtenção de dados. Existem muitos webservices disponíveis gratuitamente no mercado... no exemplo abaixo utilizarei o Viacep . Segue código jQuery: $("#Cep").keyup(function (e) {             e.preventDefault();             var cep = $(this).val().replace("-", "");             if (cep.length == 8) {                 $.getJSON("https://viacep.com.br/ws/" + cep + "/json/", {},                     function (data) {                         if (data.ibge) {                             $("#Cidade").val(data.localidade);