Monday, February 27, 2012

Salesforce Converting 15digits ID to 18 digits ID via Formula

Sometimes you'll need to convert the 15 digits ID to 18 digits for external programs to compare IDs.


ExistingFifteenDigitsId 
& MID("ABCDEFGHIJKLMNOPQRSTUVWXYZ012345",( 
IF(FIND(MID(audit_survey__r.audit__r.Id,1,1), "ABCDEFGHIJKLMNOPQRSTUVWXYZ")>0,1,0) 
+IF(FIND(MID(audit_survey__r.audit__r.Id,2,1), "ABCDEFGHIJKLMNOPQRSTUVWXYZ")>0,2,0) 
+IF(FIND(MID(audit_survey__r.audit__r.Id,3,1), "ABCDEFGHIJKLMNOPQRSTUVWXYZ")>0,4,0) 
+IF(FIND(MID(audit_survey__r.audit__r.Id,4,1), "ABCDEFGHIJKLMNOPQRSTUVWXYZ")>0,8,0) 
+IF(FIND(MID(audit_survey__r.audit__r.Id,5,1), "ABCDEFGHIJKLMNOPQRSTUVWXYZ")>0,16,0) 
)+1,1) 
& MID("ABCDEFGHIJKLMNOPQRSTUVWXYZ012345",( 
IF(FIND(MID(audit_survey__r.audit__r.Id,6,1), "ABCDEFGHIJKLMNOPQRSTUVWXYZ")>0,1,0) 
+IF(FIND(MID(audit_survey__r.audit__r.Id,7,1), "ABCDEFGHIJKLMNOPQRSTUVWXYZ")>0,2,0) 
+IF(FIND(MID(audit_survey__r.audit__r.Id,8,1), "ABCDEFGHIJKLMNOPQRSTUVWXYZ")>0,4,0) 
+IF(FIND(MID(audit_survey__r.audit__r.Id,9,1), "ABCDEFGHIJKLMNOPQRSTUVWXYZ")>0,8,0) 
+IF(FIND(MID(audit_survey__r.audit__r.Id,10,1), "ABCDEFGHIJKLMNOPQRSTUVWXYZ")>0,16,0) 
)+1,1) 
& MID("ABCDEFGHIJKLMNOPQRSTUVWXYZ012345",( 
IF(FIND(MID(audit_survey__r.audit__r.Id,11,1), "ABCDEFGHIJKLMNOPQRSTUVWXYZ")>0,1,0) 
+IF(FIND(MID(audit_survey__r.audit__r.Id,12,1), "ABCDEFGHIJKLMNOPQRSTUVWXYZ")>0,2,0) 
+IF(FIND(MID(audit_survey__r.audit__r.Id,13,1), "ABCDEFGHIJKLMNOPQRSTUVWXYZ")>0,4,0) 
+IF(FIND(MID(audit_survey__r.audit__r.Id,14,1), "ABCDEFGHIJKLMNOPQRSTUVWXYZ")>0,8,0) 
+IF(FIND(MID(audit_survey__r.audit__r.Id,15,1), "ABCDEFGHIJKLMNOPQRSTUVWXYZ")>0,16,0) 
)+1,1)

No comments:

Post a Comment