Arquivo

Posts Tagged ‘texto’

Dica do dia – Validar CPF Pascal ou Javascript? Que tal os dois!

maio 4, 2011 2 comentários

Olá,

Você irá ver agora o que é uma ferramenta versátil!
Uma das principais vantagens de Morfik é de ser uma ferramenta que lhe permite escolher a linguagem que você domina ou mesmo que já tem alguma biblioteca ou função e pretende implementar em sua aplicação. Isto quer dizer que você simplesmente pode ao mesmo tempo utilizar uma chamada a uma DLL externa, uma unit feita no delphi, ou melhor, ainda! Caso tenha necessidade pode escrever seus códigos em javascript como se estivesse escrevendo em Object Pascal, isto é, no final das contas Morfik irá gerar o código para o client em javascript mesmo.

Observem a função abaixo:

function vercpf(cpf : String) : boolean; JavaScript;
(*!
if ( cpf.length != 11 ||
cpf == “00000000000” ||
cpf == “11111111111” ||
cpf == “22222222222” ||
cpf == “33333333333” ||
cpf == “44444444444” ||
cpf == “55555555555” ||
cpf == “66666666666” ||
cpf == “77777777777” ||
cpf == “88888888888” ||
cpf == “99999999999”)
return false;
add = 0;
for (i=0; i < 9; i ++)
add += parseInt(cpf.charAt(i)) * (10 – i);
rev = 11 – (add % 11);
if (rev == 10 || rev == 11)
rev = 0;
if (rev != parseInt(cpf.charAt(9)))
return false;
add = 0;
for (i = 0; i < 10; i ++)
add += parseInt(cpf.charAt(i)) * (11 – i);
rev = 11 – (add % 11);
if (rev == 10 || rev == 11)
rev = 0;
if (rev != parseInt(cpf.charAt(10)))
return false;

return true;
*)

No cabeçalho da função informamos para Morfik que será um código Javascript, em seguida implementamos a função com todos os recursos do editor, ou seja, autocomplete, intellisense e tudo mais. Agora em uma função disparada por um evento qualquer podemos utilizar esta função como tivesse sido escrita em Object Pascal.

Exemplo de utilização:

Procedure frmRoot.Button1Click(Event: TDOMEvent);
Begin
if vercpf(TextEdit1.text) then
Showmessage('CPF OK')
else
Showmessage('CPF Invalido');
End;

Prontinho! Não é fácil?

Claro que geralmente iremos implementar nossas funções em uma linguagem só, mas imaginem se em um projeto compartilhado com um desenvolvedor web que não conheça Object Pascal por exemplo, ou então outros casos em que você está reutilizando uma regra complexa que já existe em um javascript e que seja de difícil tradução.

Este foi mais um exemplo do poder de Morfik.

Carlos Eduardo
cadumicro@hotmail.com

[MorfikBR]
Blogs : http://www.morfikbr.wordpress.com / http://www.morfikbr.blogspot.com
Grupo :
http://br.groups.yahoo.com/group/Morfikbr/

https://groups.google.com/group/morfikbr?hl=pt-BR

Twitter : http://www.twitter.com/morfikbr
Youtube : http://www.youtube.com/morfikbr
Contato : morfikbr@gmail.com / morfikbr@yahoo.com.br

Dica do Dia- Checar se uma string é uma Sigla UF válida

Olá,

Aqui vai uma dica rápida para verificar se uma string é uma sigla UF válida:

Função

function ChecarUF(UF : String) : boolean;
const
Estados = ‘SPMGRJRSSCPRESDFMTMSGOTOBASEALPBPEMARNCEPIPAAMAPFNACRRRO’;
var
Posicao : integer;
begin
Posicao := Pos(UpperCase(UF), Estados);
Result := ( Posicao <> 0) and ( Not (Posicao mod 2) = 0);
end;

Exemplo de utilização:

if Not ChecarUF(TextEdit1.Text) then
Showmessage(‘Sigla UF inválida’);

Simples não é?

Carlos Eduardo Paulino
cadumicro@hotmail.com

Operações com Strings Métodos Auxiliares.

Um dos principais recursos no Morfik é a implementação de métodos auxiliares em suas bibliotecas. Morfik contém a SystemHelperMethods, métodos auxiliares que  são, essencialmente, as funções que estão associadas com o tipo e estão disponíveis para chamadas através de uma variável ou uma referência. No caso de strings que apesar de se comportarem como um value type na verdade se tornam um reference type. Apesar disso, devemos considerar que estamos trabalhando com um value type quando estamos manipulando strings, mesmo porque foi programado para tal.

As classes helper possuem uma série de métodos estáticos e não estáticos, que são utilizados para formatação, concatenação, desmembramento, substring etc. Irei demonstrar na prática alguns dos recursos que podemos utilizar.

Leia mais…