quinta-feira, abril 26, 2012

Erro ORA-06502 usando function do Oracle no Asp.Net

HI,

Mais um erro que deu um pouco de trabalho.

Ao chamar uma function do oracle que retorna um valor string deu o erro ORA-06502. Já tinha usando uma que retornava um valor do tipo data e não deu problema nenhum.

Recorrendo ao google, encontrei essa solução:

ORA-06502: PL/SQL: numeric or value error: character string buffer too small – Solution
http://maniish.wordpress.com/2007/05/16/ora-06502-plsql-numeric-or-value-error-character-string-buffer-too-small-solution/


Foi só definir o tamanho Size do parâmetro de retorno que ficou beleza.


command.Parameters.Add(new OracleParameter("valor_config", OracleDbType.Varchar2, ParameterDirection.ReturnValue));
command.Parameters["valor_config"].Size = 100;




Fiquem na Paz!!!

quarta-feira, abril 25, 2012

Exclamação Vermelha no Eclipse

HI,

Vocês já viram uma exclamação vermelha ao lado do nome do seu projeto android no eclipse?

Ontem me deparei com uma, acredito que foi pela segunda vez. Como não caiu a ficha do que se tratava, fui pesquisar no google.

Para achar a solução, erá só verificar na aba problems.

achei aqui
http://www.portalandroid.org/comunidade/viewtopic.php?f=5&t=12100


No meu caso, o problema é que faltava uma pasta Test. É que eu importei esse projeto, exemplo de um livro.

Fiquem na Paz!!!!

Autonomous Transactions - ORACLE

HI,

Ontem precisei criar uma trigger que de acordo com determinada condição iria provocar um raise_application_error e com isso abortar o processo de um sistema web adquirido aqui na empresa que trabalho.

Como a mensagem de erro desse raise não estava sendo exibida para o usuário, resolvi criar uma tabela de log para gravar um registro quando acontecesse esse erro. Percebi que mesmo desabilitando o comando raise, estava provocando erro na aplicação web, então deduzi que seria o COMMIT para salvar os dados dessa tabela de log.

Fui pesquisar como realizar esse commit sem afetar a transação da aplicação web. Foi aí que descobrir esse tal de Autonomous Transactions.

Autonomous Transactions
http://www.oracle-base.com/articles/misc/autonomous-transactions.php

Implementei uma procedure para gravar o registro e ficou na medida usando esse recurso de transação autônoma.

Para maiores informações tem esse site aqui.
http://pscoliveira.blogspot.com.br/2007/11/autonomous-transactions.html


Tem uma dica aqui de como criar a sua exceção
http://stackoverflow.com/questions/6020450/oracle-pl-sql-raise-user-defined-exception-with-custom-sqlerrm



Fiquem na Paz!!!!


PS: De acordo com contador do blog esse é o Post de número 200. Ebaaaaaaaaaa!!!!!!


segunda-feira, abril 23, 2012

Criptografia em C#

HI,

Depois de enfrentar vários problemas com a rotina de criptografia que estava usando, consegui achar uma nova.

Dava erro de invalid length, error base 64.

Estava usando o algoritmo DES e depois passei a usar o Rijndael.

Agora estou usando esse código:

Criptografando a Senha em C# – Classe Criptografia
http://profwendellrs.wordpress.com/2011/08/25/criptografando-a-senha-em-c-classe-criptografia/



Fiquem na Paz!!!

segunda-feira, abril 09, 2012

Android spinner (drop down list) exemplo

HI,

Um exemplo que achei certa vez que estava com dúvidas sobre o spinner. Estou compartilhando o link





Android spinner (drop down list) example
http://www.mkyong.com/android/android-spinner-drop-down-list-example/


Fiquem na Paz!!!!

Operador de conjunto IN no C#

HI,

Precisei testar se um número fazia parte de um conjunto de números.

No delphi teria feito assim:

Numero := '12';

If (Numero IN ('36,187,358,378,240,50,248,96')) then begin
  //número existe no conjunto
end;

E no C# ? Bem, no C# não tem o IN, tive que buscar no Google uma solução. Encontrei usando For, Contains, etc. Mas acabei optando pelo IndexOf


Numero = "12";

If ("36,187,358,378,240,50,248,96".IndexOf(Numero) != -1 )
{
  //número existe no conjunto
}



Sobre a funcionalidade do IndexOf
http://www.mundoasp.net/indexof-c-sharp/


Fiquem na Paz!!!

TreeView em Asp.Net com alguns recursos a mais

HI,

Caso alguém esteja precisando de um treeview com opção de excluir, editar, menu popup, checkbox

Odyssey.Web - ASP.NET Ajax Control Library
http://odysseyweb.codeplex.com/

Mais informações aqui
http://www.codeproject.com/KB/ajax/OdcTreeView.aspx


Fiquem na Paz!!!

Obter o retorno de uma procedure do oracle através de parâmetro no C#

HI,

Estava precisando obter a matrícula de um usuário que foi criado no banco de dados, para exibir em um dialogo no navegador.

Já sabia como receber o resultado de uma query para exibir em um grid, por exemplo, utilizando procedure, mas obter apenas um valor, ainda não.

Achei essa dica aqui sobre o assunto

Getting values back from Oracle Procedures in C# .Net
http://csharpdeveloper.wordpress.com/2009/01/14/getting-values-back-from-oracle-procedures-in-c-net/

Nessa dica também tem como pegar o resultado de uma função do Oracle.


Fiquem na Paz!!!