Bom dia galera.. Hoje vou estar compartilhando aqui um conhecimento que aprendi.
Estou em um projeto em que eu necessitava adicionar sharing rules based in criteria para o objeto Opportunity. O problema é que no salesfoce tem um limite de criação, e no nesse projeto, é muita regra, muita mesmo. Ai fui a milhares de fóruns até achar o que precisava, e que acabou sendo mais simples que pensei.
O problema de criar sharing rules em apex é que o role/user com quem vc vai compartilhar o objeto deve ser sempre um grupo. E isso que me fez perder um tempo gigante, porque pensei que era o id do objeto que devia colocar.
Bom segue o que eu fiz para funcionar1 2 3 4 5 6 7 | opt = new OpportunityShare(); opt.OpportunityAccessLevel = 'Edit'; opt.RowCause = 'Manual'; opt.OpportunityId = opp.Id; groupId = groupList.get('CAM'); opt.UserOrGroupId = groupId; insert opt; |
Espero que isso ajudem vocês.
Qualquer coisa, dúvida ou critica, comentem, assim que possível eu responderei.
Próximo post falarei um pouco mais sobre trigger em salesforce.
Valeu galera, até a próxima.