O problema é o valor da configuração da mascara.
Configurações da máscara :
Após inserir a máscara, é necessário inserir as configurações da máscara, estas configurações são separadas da máscara e entre si pelo caractere ponto-e-vírgula ( ; ), existem duas configurações para a máscara :
A primeira configuração indica se os caracteres de edição devem ser incluidos no texto. O valor 1, significa incluir. O valor 0, significa que não deve ser incluido.O padrão é o valor 1.
A segunda condiguração é o caractere que deve ser inserido no lugar de espaços em branco. O padrão é o valor 0.
Exemplos:
Considerando a seguinte mascára informada "999.999.999.999"
Como esstá sem o as configurações, assume "999.999.999.999;1; "
Neste primeiro exemplo o valor salvo na base de dados deverá conter os "." informados.
Ou seja, o valor salvo deverão ser:
149.962.605.118
123.456.789.901
Considerando a mascára informada "999.999.999.999;0;_"
Agora o valor da base vai suprimir os "." informados. Valores salvo com "." podem ser exibidos equivocadamentes.
Ou seja, o valor salvo deverão ser:
149962605118
123456789901
http://wiki.benner.com.br/wiki/index.php?title=Mascaras_de_campos_texto
http://docs.embarcadero.com/products/rad_studio/delphiAndcpp2009/HelpUpdate2/EN/html/delphivclwin32/MaskUtils_TEditMask.html