0

I'm trying to write the following formula: All the states have its own rate, but for Amazonas I have more than 1 rate that dependes on the engine(motor). So, if the state is Amazonas and the engine contains 1.0 , then the rate (formula field) is 2.0, otherwise, 3.0. Here is my formula:

IF(ISPICKVAL(Conta_Propriet_ria_do_Veiculo__r.Estado__c , "São Paulo"), 0.04, IF(ISPICKVAL(Conta_Propriet_ria_do_Veiculo__r.Estado__c , "Rio de Janeiro"), 0.04, IF(ISPICKVAL(Conta_Propriet_ria_do_Veiculo__r.Estado__c , "Minas Gerais"), 0.04, IF(ISPICKVAL(Conta_Propriet_ria_do_Veiculo__r.Estado__c , "Rio Grande do Sul"), 0.03, IF(ISPICKVAL(Conta_Propriet_ria_do_Veiculo__r.Estado__c , "Roraima"), 0.03, IF(ISPICKVAL(Conta_Propriet_ria_do_Veiculo__r.Estado__c , "Amapá"), 0.03, IF(ISPICKVAL(Conta_Propriet_ria_do_Veiculo__r.Estado__c , "Paraná"), 0.025, IF(ISPICKVAL(Conta_Propriet_ria_do_Veiculo__r.Estado__c , "Pará"), 0.025, IF(ISPICKVAL(Conta_Propriet_ria_do_Veiculo__r.Estado__c , "Bahia"), 0.025, IF(ISPICKVAL(Conta_Propriet_ria_do_Veiculo__r.Estado__c , "Alagoas"), 0.025, IF(ISPICKVAL(Conta_Propriet_ria_do_Veiculo__r.Estado__c , "Pernambuco"),0.025, IF(ISPICKVAL(Conta_Propriet_ria_do_Veiculo__r.Estado__c , "Maranhão"), 0.025, IF(ISPICKVAL(Conta_Propriet_ria_do_Veiculo__r.Estado__c , "Ceará"), 0.025, IF(ISPICKVAL(Conta_Propriet_ria_do_Veiculo__r.Estado__c , "Piauí"), 0.025, IF(ISPICKVAL(Conta_Propriet_ria_do_Veiculo__r.Estado__c , "Rio Grande do Norte"), 0.025, IF(ISPICKVAL(Conta_Propriet_ria_do_Veiculo__r.Estado__c , "Santa Catarina"),0.02, IF(ISPICKVAL(Conta_Propriet_ria_do_Veiculo__r.Estado__c , "Acre"), 0.02, IF(ISPICKVAL(Conta_Propriet_ria_do_Veiculo__r.Estado__c , "Sergipe"), 0.02, IF(ISPICKVAL(Conta_Propriet_ria_do_Veiculo__r.Estado__c , "Espírito Santo"), 0.01, IF(ISPICKVAL(Conta_Propriet_ria_do_Veiculo__r.Estado__c , "Rondônia"), 0.01, IF(ISPICKVAL(Conta_Propriet_ria_do_Veiculo__r.Estado__c , "Paraíba"), 0.01, IF(ISPICKVAL(Conta_Propriet_ria_do_Veiculo__r.Estado__c , "Mato Grosso do Sul"), 0.00, IF(ISPICKVAL(Conta_Propriet_ria_do_Veiculo__r.Estado__c , "Mato Grosso"), 0.00, IF(ISPICKVAL(Conta_Propriet_ria_do_Veiculo__r.Estado__c , "Tocantins"), 0.00, IF(ISPICKVAL(Conta_Propriet_ria_do_Veiculo__r.Estado__c , "Goiás"), 0.00, IF(AND(ISPICKVAL(Conta_Propriet_ria_do_Veiculo__r.Estado__c , "Amazonas"),(CONTAINS(Vers_o_do_Ve_culo__c , "1.0")), 0.02, 0.03))))))))))))))))))))))))))

Error: Incorrect parameter type for function 'AND()'. Expected Boolean, received Number

If I take off the AND( , I receive other syntax error message: Error: Incorrect number of parameters for function 'IF()'. Expected 3, received 4

What I'm doing wrong? :(

Thanks !!!

-1

IF(ISPICKVAL(Conta_Propriet_ria_do_Veiculo__r.Estado__c , "São Paulo"), 0.04, IF(ISPICKVAL(Conta_Propriet_ria_do_Veiculo__r.Estado__c , "Rio de Janeiro"), 0.04, IF(ISPICKVAL(Conta_Propriet_ria_do_Veiculo__r.Estado__c , "Minas Gerais"), 0.04, IF(ISPICKVAL(Conta_Propriet_ria_do_Veiculo__r.Estado__c , "Rio Grande do Sul"), 0.03, IF(ISPICKVAL(Conta_Propriet_ria_do_Veiculo__r.Estado__c , "Roraima"), 0.03, IF(ISPICKVAL(Conta_Propriet_ria_do_Veiculo__r.Estado__c , "Amapá"), 0.03, IF(ISPICKVAL(Conta_Propriet_ria_do_Veiculo__r.Estado__c , "Paraná"), 0.025, IF(ISPICKVAL(Conta_Propriet_ria_do_Veiculo__r.Estado__c , "Pará"), 0.025, IF(ISPICKVAL(Conta_Propriet_ria_do_Veiculo__r.Estado__c , "Bahia"), 0.025, IF(ISPICKVAL(Conta_Propriet_ria_do_Veiculo__r.Estado__c , "Alagoas"), 0.025, IF(ISPICKVAL(Conta_Propriet_ria_do_Veiculo__r.Estado__c , "Pernambuco"),0.025, IF(ISPICKVAL(Conta_Propriet_ria_do_Veiculo__r.Estado__c , "Maranhão"), 0.025, IF(ISPICKVAL(Conta_Propriet_ria_do_Veiculo__r.Estado__c , "Ceará"), 0.025, IF(ISPICKVAL(Conta_Propriet_ria_do_Veiculo__r.Estado__c , "Piauí"), 0.025, IF(ISPICKVAL(Conta_Propriet_ria_do_Veiculo__r.Estado__c , "Rio Grande do Norte"), 0.025, IF(ISPICKVAL(Conta_Propriet_ria_do_Veiculo__r.Estado__c , "Santa Catarina"),0.02, IF(ISPICKVAL(Conta_Propriet_ria_do_Veiculo__r.Estado__c , "Acre"), 0.02, IF(ISPICKVAL(Conta_Propriet_ria_do_Veiculo__r.Estado__c , "Sergipe"), 0.02, IF(ISPICKVAL(Conta_Propriet_ria_do_Veiculo__r.Estado__c , "Espírito Santo"), 0.01, IF(ISPICKVAL(Conta_Propriet_ria_do_Veiculo__r.Estado__c , "Rondônia"), 0.01, IF(ISPICKVAL(Conta_Propriet_ria_do_Veiculo__r.Estado__c , "Paraíba"), 0.01, IF(ISPICKVAL(Conta_Propriet_ria_do_Veiculo__r.Estado__c , "Mato Grosso do Sul"), 0.00, IF(ISPICKVAL(Conta_Propriet_ria_do_Veiculo__r.Estado__c , "Mato Grosso"), 0.00, IF(ISPICKVAL(Conta_Propriet_ria_do_Veiculo__r.Estado__c , "Tocantins"), 0.00, IF(ISPICKVAL(Conta_Propriet_ria_do_Veiculo__r.Estado__c , "Goiás"), 0.00, IF(AND(ISPICKVAL(Conta_Propriet_ria_do_Veiculo__r.Estado__c , "Amazonas"),CONTAINS(Vers_o_do_Ve_culo__c , "1.0")), 0.02, 0.03))))))))))))))))))))))))))

| improve this answer | |
  • Sorry, I didn't paste the complete formula. The other states have its own rate, but the Amazonas State have more than 1, that depends on the engine. If the engine contains 1.0 , so the rate is 2% , otherwise it will be 3%. – Barbara Moraes Nov 27 '15 at 13:37
  • No problem. I edited my answer. – Martin Lezer Nov 27 '15 at 13:48
  • I received a syntax error: Incorrect number of parameters for function 'CASE()'. Expected 50, received 51 – Barbara Moraes Nov 27 '15 at 14:58
  • Ok. I think my last update is the one! I hope so. – Martin Lezer Nov 27 '15 at 15:05

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.