sábado, 27 de agosto de 2016

Removendo link da data atual do

A ideia desse post é mostrar a forma de remover o link da data atual, no componente <apex:Inputfield /> quando esse está referenciado uma data, em uma página Visualforce, no Salesforce.










Bem, para remover a data atual, precisamos usar o seguinte código CSS:


   <style>  
     div.hideCurrDate span.dateInput span.dateFormat{  
       display:none;  
     }  
   </style>  

E colocarmos o nosso <apex:Inputfield /> dentro de uma div, referenciando a classe CSS:


      <div class="hideCurrDate">  
           <apex:inputField value="{!acc.DataUltimaCompra__c}"/>  
      </div>  


Dessa forma, temos o seguinte resultado:









quinta-feira, 25 de agosto de 2016

Validação de CPF e CNPJ com regra de validação

Hoje vai uma dica rápida para criar uma regra de validação para validar um campo que contenha CPF ou CPNJ no Salesforce. Criamos para esse exemplo um campo cuja o nome de API é CNPJ_CPF__c, no objeto que desejo realizar a validação (Account - Conta, por exemplo).

Dei um nome para a regra de validação e na formula para validação, inseri o seguinte código:


   

 IF( LEN( CNPJ_CPF__c )= 14   
 ,   
 NOT(   
 OR(   
 LEN(CNPJ_CPF__c)=0,   
 AND( NOT(CNPJ_CPF__c = "00000000000000"),   
 MOD(MOD(11-MOD(VALUE(MID(CNPJ_CPF__c,1,1))*5+VALUE(MID(CNPJ_CPF__c,2,1))*4+VALUE(MID(CNPJ_CPF__c,3,1))*3+VALUE(MID(CNPJ_CPF__c,4,1))*2+VALUE(MID(CNPJ_CPF__c,5,1))*9+VALUE(MID(CNPJ_CPF__c,6,1))*8+VALUE(MID(CNPJ_CPF__c,7,1))*7+VALUE(MID(CNPJ_CPF__c,8,1))*6+VALUE(MID(CNPJ_CPF__c,9,1))*5+VALUE(MID(CNPJ_CPF__c,10,1))*4+VALUE(MID(CNPJ_CPF__c,11,1))*3+VALUE(MID(CNPJ_CPF__c,12,1))*2,11),11),10) =   
 VALUE(MID(CNPJ_CPF__c,13,1)),   
 MOD(MOD(11-MOD(VALUE(MID(CNPJ_CPF__c,1,1))*6+VALUE(MID(CNPJ_CPF__c,2,1))*5+VALUE(MID(CNPJ_CPF__c,3,1))*4+VALUE(MID(CNPJ_CPF__c,4,1))*3+VALUE(MID(CNPJ_CPF__c,5,1))*2+VALUE(MID(CNPJ_CPF__c,6,1))*9+VALUE(MID(CNPJ_CPF__c,7,1))*8+VALUE(MID(CNPJ_CPF__c,8,1))*7+VALUE(MID(CNPJ_CPF__c,9,1))*6+VALUE(MID(CNPJ_CPF__c,10,1))*5+VALUE(MID(CNPJ_CPF__c,11,1))*4+VALUE(MID(CNPJ_CPF__c,12,1))*3+VALUE(MID(CNPJ_CPF__c,13,1))*2,11),11),10) =   
 VALUE(MID(CNPJ_CPF__c,14,1))   
 )))   
 ,
 IF(LEN(CNPJ_CPF__c) < 11, TRUE, 
 NOT AND (CNPJ_CPF__c <> '00000000000',CNPJ_CPF__c <> '11111111111',   
 CNPJ_CPF__c <> '22222222222',CNPJ_CPF__c <> '33333333333',CNPJ_CPF__c <> '44444444444',CNPJ_CPF__c <> '55555555555',CNPJ_CPF__c <> '66666666666',CNPJ_CPF__c <> '77777777777',CNPJ_CPF__c <> '88888888888',CNPJ_CPF__c <> '99999999999',   
 IF ((MID(CNPJ_CPF__c , 10, 1) =   
 IF (MOD(((VALUE(MID(CNPJ_CPF__c , 1, 1))*10)+   
 (VALUE(MID(CNPJ_CPF__c , 2, 1))*9)+   
 (VALUE(MID(CNPJ_CPF__c , 3, 1))*8)+   
 (VALUE(MID(CNPJ_CPF__c , 4, 1))*7)+   
 (VALUE(MID(CNPJ_CPF__c , 5, 1))*6)+   
 (VALUE(MID(CNPJ_CPF__c , 6, 1))*5)+   
 (VALUE(MID(CNPJ_CPF__c , 7, 1))*4)+   
 (VALUE(MID(CNPJ_CPF__c , 8, 1))*3)+   
 (VALUE(MID(CNPJ_CPF__c , 9, 1))*2)),11) < 2,'0',   
 TEXT(11 - MOD(((VALUE(MID(CNPJ_CPF__c , 1, 1))*10)+   
 (VALUE(MID(CNPJ_CPF__c , 2, 1))*9)+   
 (VALUE(MID(CNPJ_CPF__c , 3, 1))*8)+   
 (VALUE(MID(CNPJ_CPF__c , 4, 1))*7)+   
 (VALUE(MID(CNPJ_CPF__c , 5, 1))*6)+   
 (VALUE(MID(CNPJ_CPF__c , 6, 1))*5)+   
 (VALUE(MID(CNPJ_CPF__c , 7, 1))*4)+   
 (VALUE(MID(CNPJ_CPF__c , 8, 1))*3)+   
 (VALUE(MID(CNPJ_CPF__c , 9, 1))*2)),11))   
 )),TRUE,FALSE),   
 IF ((MID(CNPJ_CPF__c , 11, 1) =   
 IF (MOD(((VALUE(MID(CNPJ_CPF__c , 1, 1))*11)+   
 (VALUE(MID(CNPJ_CPF__c , 2, 1))*10)+   
 (VALUE(MID(CNPJ_CPF__c , 3, 1))*9)+   
 (VALUE(MID(CNPJ_CPF__c , 4, 1))*8)+   
 (VALUE(MID(CNPJ_CPF__c , 5, 1))*7)+   
 (VALUE(MID(CNPJ_CPF__c , 6, 1))*6)+   
 (VALUE(MID(CNPJ_CPF__c , 7, 1))*5)+   
 (VALUE(MID(CNPJ_CPF__c , 8, 1))*4)+   
 (VALUE(MID(CNPJ_CPF__c , 9, 1))*3)+   
 (VALUE(MID(CNPJ_CPF__c , 10, 1))*2)),11) < 2,'0',   
 TEXT(11 - MOD(((VALUE(MID(CNPJ_CPF__c , 1, 1))*11)+   
 (VALUE(MID(CNPJ_CPF__c , 2, 1))*10)+   
 (VALUE(MID(CNPJ_CPF__c , 3, 1))*9)+   
 (VALUE(MID(CNPJ_CPF__c , 4, 1))*8)+   
 (VALUE(MID(CNPJ_CPF__c , 5, 1))*7)+   
 (VALUE(MID(CNPJ_CPF__c , 6, 1))*6)+   
 (VALUE(MID(CNPJ_CPF__c , 7, 1))*5)+   
 (VALUE(MID(CNPJ_CPF__c , 8, 1))*4)+   
 (VALUE(MID(CNPJ_CPF__c , 9, 1))*3)+   
 (VALUE(MID(CNPJ_CPF__c , 10, 1))*2)),11))   
 )),TRUE,FALSE)   
 )   
 )
 )


Coloquei a mensagem de "CPF ou CNPJ inválido!", preenchi onde eu gostaria que exibisse o erro e salvei.




Observação importante: Essa validação não permite a utilização pontos, hífens e barras na composição do CPF/CNPJ. Apenas números. Apesar disso, o campo criado é Texto. Agora nada de CPFs ou CNPJs inválidos na sua Org.

Agradeço ao Allan Pecli por me alertar e corrigir alguns itens nessa validação. Se alguém perceber algum problema e quiser colaborar, fique a vontade para me notificar. Valeu Allan!


* Está precisando de um suporte ou consultoria para customização de regras de validação da sua plataforma Salesforce? Entre em contato conosco - CbCloud: http://www.cbcloud.com.br/