sábado, março 30, 2013

Trabalhando com uma tabela de Contadores no MySQL

HI,

Essa dica é fresquinha, acabei de implementar agora.

Estou fazendo um sistema de suporte usando o banco MySQL e para criar o código do protocolo minha intenção é que em cada ano o contador comece do 1.

Exemplo: 201300001, 201300002,  201300...
Quando for 2014 que comece tudo de novo, 201400001, 201400002, ...

Crie uma tabela com dois campo, Ano e Valor.

Incrementar o valor com +1 é tranquilo, mas como garantir que dois usuários não peguem o mesmo valor?

Pensei em bloquear o registro para dar um update e pegar o valor atual. Pesquisando como fazer isso, achei dessa maneira que pensei em fazer e uma muito melhor.

Achei a dica aqui

MySQL How To Select and Update in Single Statement - Increment Counter avoiding Race Condition
http://www.sqlines.com/mysql/how-to/select-update-single-statement-race-condition

Usei essa solução


UPDATE counters
SET value = LAST_INSERT_ID(value) + 1
WHERE id = 1;

SELECT LAST_INSERT_ID();


Mas eu não quis usar pegando o valor atual, e sim ele +1

Ficou assim meu update

DECLARE novo_valor INT;


UPDATE seq_protoco
SET valor = LAST_INSERT_ID(valor + 1)
WHERE ano = 2013;

SELECT LAST_INSERT_ID() INTO novo_valor;




Fiquem na Paz!!!

quarta-feira, março 27, 2013

Barra de Progresso no Android

HI,

Precisei melhorar uma tela de comunicação de um programa que fiz. Nessa tela é recebido um arquivo compactado com os arquivos para atualização e é transmitido outro arquivo compactado com as informações que foram coletadas.

Pois bem, a tela tinha uma mensagem de dialogo apenas exibindo aquela bolinha girando e uma mensagem pedindo pra aguardar. Decidir modificar para ir mostrando cada etapa do processo na tela e resolvi modificar o dialogo para Progress Bar.

Usei esses exemplos para modificar a minha rotina.

Android Progress Bar Example
http://www.mkyong.com/android/android-progress-bar-example/

android progress dialog example
http://mobile-development.org/index.php/android/android-progress-dialog-example




Fiquem na Paz!!!

domingo, março 24, 2013

Adicionando leitura de código de barras ao nosso projeto no Android

HI,

Essa é pra quem não quer ficar acessando um programa de leitura de código de barras à partir do nosso programa.

Com a lib ZXing é possível incorporar esse recurso ao nosso projeto.

Achei como fazer essa integração nesse blog:

Utilizando Zxing para ler código de barras.
http://maicon.strey.nom.br/blog/2012/04/27/utilizando-zxing-para-ler-codigo-de-barras/


Fiquem na Paz!!!

domingo, março 17, 2013

Instalação manual do Apache e do PHP no Windows

HI,

Mais um pró resolvido, graças a Deus e as pessoas que disponibilizaram a solução.

Eu já tinha instalado o MySQL no meu  notebook para acessá-lo no Visual Studio. Baixei a versão 64bit e a instalação é manual.

E hoje encontrei um sistema de pesquisa em php e decidi estudar seu funcionamento, mas para testá-lo não queria instalar o Wamp, por exemplo, já que tenho o MySQL instalado. Então decidi baixar o Apache e o PHP.

Apache (no meu caso é 64bits)
http://www.apachelounge.com/download/win64/

PHP
http://windows.php.net/download/#php-5.4


Instalei o Apache como serviço, testei no browser, tudo OK.

Descompactei o PHP, segui os passos de configuração do Apache, decidir instalar o PHP como módulo do Apache.

Quando fui iniciar o serviço do Apache deu o seguinte erro:

The Apache service named
reported the following error: >>>
httpd.exe: Syntax error on line 497 of C:/Apache24/conf/httpd.conf: Cannot load C:/php/php5apache2_4.dll into server: %1 n\xe3o \xe9 um aplicativo Win32 v\xe1lido.



Depois de alguns muitos minutos de busca no Google, consegui achar o caminho para resolver esse probleminha.

Nesse resposta consegui o link da versão 64bits do PHP, da versão atual.
http://stackoverflow.com/questions/8263297/cannot-load-php5apache2-2-dll/13510720#13510720

Tem um link para esse endereço
http://www.apachelounge.com/download/additional/


Fui na sessão Members e baixei a versão 64bits do PHP

PHP 5.4.13 available (x64 & x86)
http://www.apachelounge.com/viewtopic.php?p=24113



Fiquem na Paz!!!

domingo, março 10, 2013

Voltando as atividades aqui no Blog

HI,

Depois de alguns meses sem publicar uma só linha aqui nesse espaço que costumo compartilhar as soluções de problemas (na área da nossa profissão) que vou encontrando soluções pelo caminho, voltei a publicar.

Porque tanto tempo afastado?

Acabei ficando sem tempo. Tava numa época de preparativos pro meu casamento. Casei em fevereiro. Graças a Deus tá tudo uma maravilha.



Fiquem na Paz!!!

Instalação manual do MySQL

HI,

Baixei a versão atual do MySQL Community Server e só tinha a versão 64 bits em zip pra baixar.

Segui essa receita de bolo e minha versão tá funcionando beleza.
http://dev.mysql.com/doc/refman/5.6/en/windows-install-archive.html

Pra manipular meu banco de dados instalei o MySQL Workbench
http://www.mysql.com/downloads/workbench/


Fiquem na Paz!!!