You need to sign in to do that
Don't have an account?
Chad Reynolds
Scoring Field Too Big to Compile
Created a formula field on my account object to assign an account score based on the first 3 digits of the NAICS code. Cannot get it under 5,000 characters! Currently sitting at 7,300. Formula works as expected when I split it up into two fields, however the business wants to see the calc in one field. I know the worst case scenario is creating a workflow rule to update a static field and then reference that in the formula, but wanted to see if anyone can point out where I can save some characters in this bad boy! Thank you for helping in advance.
IF(BEGINS( NaicsCode , "221") || BEGINS( NaicsCode , "333")|| BEGINS( NaicsCode , "519")|| BEGINS( NaicsCode , "523")|| BEGINS( NaicsCode , "531"),95,
IF(BEGINS( NaicsCode , "525"),85,
IF(BEGINS( NaicsCode , "211")|| BEGINS( NaicsCode , "237")|| BEGINS( NaicsCode , "326")|| BEGINS( NaicsCode , "517")|| BEGINS( NaicsCode , "533")|| BEGINS( NaicsCode , "999"),80,
IF(BEGINS( NaicsCode , "236")|| BEGINS( NaicsCode , "321")|| BEGINS( NaicsCode , "322")|| BEGINS( NaicsCode , "325")|| BEGINS( NaicsCode , "332")|| BEGINS( NaicsCode , "424")|| BEGINS( NaicsCode , "518")|| BEGINS( NaicsCode , "524"),75,
IF(BEGINS( NaicsCode , "113"),72,
IF(BEGINS( NaicsCode , "454")|| BEGINS( NaicsCode , "511")|| BEGINS( NaicsCode , "522")|| BEGINS( NaicsCode , "562"),70,
IF(BEGINS( NaicsCode , "327")|| BEGINS( NaicsCode , "334")|| BEGINS( NaicsCode , "481")|| BEGINS( NaicsCode , "492"),65,
IF(BEGINS( NaicsCode , "487"),62,
IF(BEGINS( NaicsCode , "238")|| BEGINS( NaicsCode , "337")|| BEGINS( NaicsCode , "446")|| BEGINS( NaicsCode , "541")|| BEGINS( NaicsCode , "561"),60,
IF(BEGINS( NaicsCode , "444")|| BEGINS( NaicsCode , "493")|| BEGINS( NaicsCode , "711")|| BEGINS( NaicsCode , "924"),55,
IF(BEGINS( NaicsCode , "311"),52,
IF(BEGINS( NaicsCode , "313")|| BEGINS( NaicsCode , "323")|| BEGINS( NaicsCode , "324")|| BEGINS( NaicsCode , "622"),50,
IF(BEGINS( NaicsCode , "486"),47,
IF(BEGINS( NaicsCode , "339") || BEGINS( NaicsCode , "423")|| BEGINS( NaicsCode , "442")|| BEGINS( NaicsCode , "488")|| BEGINS( NaicsCode , "515")|| BEGINS( NaicsCode , "551")|| BEGINS( NaicsCode , "721")|| BEGINS( NaicsCode , "811")|| BEGINS( NaicsCode , "812")|| BEGINS( NaicsCode , "921"),45,
IF(BEGINS( NaicsCode , "312") || BEGINS( NaicsCode , "443")|| BEGINS( NaicsCode , "448")|| BEGINS( NaicsCode , "451")|| BEGINS( NaicsCode , "452")|| BEGINS( NaicsCode , "512")|| BEGINS( NaicsCode , "621")|| BEGINS( NaicsCode , "624")|| BEGINS( NaicsCode , "813")|| BEGINS( NaicsCode , "925"),40,
IF(BEGINS( NaicsCode , "482"),37,
IF(BEGINS( NaicsCode , "212")|| BEGINS( NaicsCode , "213")|| BEGINS( NaicsCode , "315")|| BEGINS( NaicsCode , "336"),35,
IF(BEGINS( NaicsCode , "453")|| BEGINS( NaicsCode , "532")|| BEGINS( NaicsCode , "926"),30,
IF(BEGINS( NaicsCode , "111") || BEGINS( NaicsCode , "112")|| BEGINS( NaicsCode , "115")|| BEGINS( NaicsCode , "335")|| BEGINS( NaicsCode , "484")|| BEGINS( NaicsCode , "485")|| BEGINS( NaicsCode , "611")|| BEGINS( NaicsCode , "713")|| BEGINS( NaicsCode , "922"),25,
IF(BEGINS( NaicsCode , "483"),22,
IF(BEGINS( NaicsCode , "331")|| BEGINS( NaicsCode , "491")|| BEGINS( NaicsCode , "623")|| BEGINS( NaicsCode , "722"),20,
IF(BEGINS( NaicsCode , "928"),17,
IF(BEGINS( NaicsCode , "114")|| BEGINS( NaicsCode , "441")|| BEGINS( NaicsCode , "445")|| BEGINS( NaicsCode , "447")|| BEGINS( NaicsCode , "712")|| BEGINS( NaicsCode , "923"),15,
IF(BEGINS( NaicsCode , "316"),12,
IF(BEGINS( NaicsCode , "314"),10,
NULL)))))))))))))))))))))))))
IF(BEGINS( NaicsCode , "221") || BEGINS( NaicsCode , "333")|| BEGINS( NaicsCode , "519")|| BEGINS( NaicsCode , "523")|| BEGINS( NaicsCode , "531"),95,
IF(BEGINS( NaicsCode , "525"),85,
IF(BEGINS( NaicsCode , "211")|| BEGINS( NaicsCode , "237")|| BEGINS( NaicsCode , "326")|| BEGINS( NaicsCode , "517")|| BEGINS( NaicsCode , "533")|| BEGINS( NaicsCode , "999"),80,
IF(BEGINS( NaicsCode , "236")|| BEGINS( NaicsCode , "321")|| BEGINS( NaicsCode , "322")|| BEGINS( NaicsCode , "325")|| BEGINS( NaicsCode , "332")|| BEGINS( NaicsCode , "424")|| BEGINS( NaicsCode , "518")|| BEGINS( NaicsCode , "524"),75,
IF(BEGINS( NaicsCode , "113"),72,
IF(BEGINS( NaicsCode , "454")|| BEGINS( NaicsCode , "511")|| BEGINS( NaicsCode , "522")|| BEGINS( NaicsCode , "562"),70,
IF(BEGINS( NaicsCode , "327")|| BEGINS( NaicsCode , "334")|| BEGINS( NaicsCode , "481")|| BEGINS( NaicsCode , "492"),65,
IF(BEGINS( NaicsCode , "487"),62,
IF(BEGINS( NaicsCode , "238")|| BEGINS( NaicsCode , "337")|| BEGINS( NaicsCode , "446")|| BEGINS( NaicsCode , "541")|| BEGINS( NaicsCode , "561"),60,
IF(BEGINS( NaicsCode , "444")|| BEGINS( NaicsCode , "493")|| BEGINS( NaicsCode , "711")|| BEGINS( NaicsCode , "924"),55,
IF(BEGINS( NaicsCode , "311"),52,
IF(BEGINS( NaicsCode , "313")|| BEGINS( NaicsCode , "323")|| BEGINS( NaicsCode , "324")|| BEGINS( NaicsCode , "622"),50,
IF(BEGINS( NaicsCode , "486"),47,
IF(BEGINS( NaicsCode , "339") || BEGINS( NaicsCode , "423")|| BEGINS( NaicsCode , "442")|| BEGINS( NaicsCode , "488")|| BEGINS( NaicsCode , "515")|| BEGINS( NaicsCode , "551")|| BEGINS( NaicsCode , "721")|| BEGINS( NaicsCode , "811")|| BEGINS( NaicsCode , "812")|| BEGINS( NaicsCode , "921"),45,
IF(BEGINS( NaicsCode , "312") || BEGINS( NaicsCode , "443")|| BEGINS( NaicsCode , "448")|| BEGINS( NaicsCode , "451")|| BEGINS( NaicsCode , "452")|| BEGINS( NaicsCode , "512")|| BEGINS( NaicsCode , "621")|| BEGINS( NaicsCode , "624")|| BEGINS( NaicsCode , "813")|| BEGINS( NaicsCode , "925"),40,
IF(BEGINS( NaicsCode , "482"),37,
IF(BEGINS( NaicsCode , "212")|| BEGINS( NaicsCode , "213")|| BEGINS( NaicsCode , "315")|| BEGINS( NaicsCode , "336"),35,
IF(BEGINS( NaicsCode , "453")|| BEGINS( NaicsCode , "532")|| BEGINS( NaicsCode , "926"),30,
IF(BEGINS( NaicsCode , "111") || BEGINS( NaicsCode , "112")|| BEGINS( NaicsCode , "115")|| BEGINS( NaicsCode , "335")|| BEGINS( NaicsCode , "484")|| BEGINS( NaicsCode , "485")|| BEGINS( NaicsCode , "611")|| BEGINS( NaicsCode , "713")|| BEGINS( NaicsCode , "922"),25,
IF(BEGINS( NaicsCode , "483"),22,
IF(BEGINS( NaicsCode , "331")|| BEGINS( NaicsCode , "491")|| BEGINS( NaicsCode , "623")|| BEGINS( NaicsCode , "722"),20,
IF(BEGINS( NaicsCode , "928"),17,
IF(BEGINS( NaicsCode , "114")|| BEGINS( NaicsCode , "441")|| BEGINS( NaicsCode , "445")|| BEGINS( NaicsCode , "447")|| BEGINS( NaicsCode , "712")|| BEGINS( NaicsCode , "923"),15,
IF(BEGINS( NaicsCode , "316"),12,
IF(BEGINS( NaicsCode , "314"),10,
NULL)))))))))))))))))))))))))
After sleeping on the issue above, I was able to solve it using the CASE function (duh!).
I created a new formula field that gave me the first 3 digits of the NAICS code. Then in my second field, I simply used the case function to give me the score I wanted based on the first three digits of the naics.
CASE( NAICS_First_3__c , 221, 95, 333, 95,519,95,523,95,531,95,525,85,211,80,237,80,326,80,517,80,533,80,999,80,236,75,321,75,322,75,325,75,332,75,424,75,518,75,524,75,113,72,454,70,511,70,522,70,562,70,327,65,334,65,481,65,492,65,487,62,238,60,337,60,446,60,541,60,561,60,444,55,493,55,711,55,924,55,311,52,313,50,323,50,324,50,622,50,486,47,339,45,423,45,442,45,488,45,515,45,551,45,721,45,811,45,812,45,921,45,312,40,443,40,448,40,451,40,452,40,512,40,621,40,624,40,813,40,925,40,482,37,212,35,213,35,315,35,336,35,453,30,532,30,926,30,111,25,112,25,115,25,335,25,484,25,485,25,611,25,713,25,922,25,483,22,331,20,491,20,623,20,722,20,928,17,114,15,441,15,445,15,447,15,712,15,923,15,316,12,314,10,
42
)