• br.gabriel
  • NEWBIE
  • 10 Points
  • Member since 2012

  • Chatter
    Feed
  • 0
    Best Answers
  • 0
    Likes Received
  • 0
    Likes Given
  • 1
    Questions
  • 2
    Replies
Hi guys I need help to solve this error:
InsertMilestonesDeploymentProject: execution of AfterUpdate caused by: System.NullPointerException: Attempt to de-reference a null object: Trigger.InsertMilestonesDeploymentProject: line 31, column 1

trigger InsertMilestonesDeploymentProject on Projeto_Implantacao__c (after insert, after update) {
	List<Etapas_Projeto_de_implantacao__c> mList = new List<Etapas_Projeto_de_implantacao__c>();	
	Etapas_Projeto_de_implantacao__c milestone1;
	Etapas_Projeto_de_implantacao__c milestone2;
	Etapas_Projeto_de_implantacao__c milestone3;
	Etapas_Projeto_de_implantacao__c milestone4;
	Etapas_Projeto_de_implantacao__c milestone5;
	Etapas_Projeto_de_implantacao__c milestone6;
	Etapas_Projeto_de_implantacao__c milestone7;
	Etapas_Projeto_de_implantacao__c milestone8;
	
	//Set of accounts
	Set<Id> accountIds =  new Set<Id>();
	
	for(Projeto_Implantacao__c p:Trigger.new){
		accountIds.add(p.Implantacao__c);//Implantacao__c is a lookup field
	}
	//Map of accounts
	Map<Id, Account> accountMap = new Map<Id, Account>([SELECT Id,Name,Unidade_de_atendimento__c FROM Account WHERE Id IN :accountIds]);
	
	
	
	if(Trigger.isAfter) {
    if(Trigger.isUpdate) {
       for(Projeto_Implantacao__c p: Trigger.new) {
       	for(Projeto_Implantacao__c old: Trigger.old) {
           
             milestone1 = new Etapas_Projeto_de_implantacao__c();
             milestone1.Name = '01 - Contato inicial';
             //restore info account master-detail Account>>Projeto_Implantacao__c>>Implantacao
             if(accountMap.get(p.Implantacao__r.Id).Unidade_de_atendimento__c == 'Campo Grande')//The problem It´s here
             	milestone1.Responsavel__c = '005G0000003oWY2';
             milestone1.Data_inicial_prevista__c = Date.today();
             milestone1.Data_final_prevista__c = Date.today().addDays(3);
             milestone1.Projeto_de_Implantacao__c = p.Id;
             mList.add(milestone1);
             
             milestone2 = new Etapas_Projeto_de_implantacao__c();
             milestone2.Name = '02 - Levantamento/Coleta de dados';
             milestone2.Data_inicial_prevista__c = Date.today().addDays(4);
             milestone2.Data_final_prevista__c = Date.today().addDays(10);
             milestone2.Projeto_de_Implantacao__c = p.Id;
             mList.add(milestone2);
             
             milestone3 = new Etapas_Projeto_de_implantacao__c();
             milestone3.Name = '03 - Conversão de dados';
             milestone3.Data_inicial_prevista__c = Date.today().addDays(11);
             milestone3.Data_final_prevista__c = Date.today().addDays(20);
             milestone3.Projeto_de_Implantacao__c = p.Id;
             mList.add(milestone3);
             
             milestone4 = new Etapas_Projeto_de_implantacao__c();
             milestone4.Name = '04 - Capacitação';
             milestone4.Data_inicial_prevista__c = Date.today().addDays(21);
             milestone4.Data_final_prevista__c = Date.today().addDays(30);
             milestone4.Projeto_de_Implantacao__c = p.Id;
             mList.add(milestone4);
             
             milestone5 = new Etapas_Projeto_de_implantacao__c();
             milestone5.Name = '05 - Instalação/Acompanhamento';
             milestone5.Data_inicial_prevista__c = Date.today().addDays(31);
             milestone5.Data_final_prevista__c = Date.today().addDays(44);
             milestone5.Projeto_de_Implantacao__c = p.Id;
             mList.add(milestone5);
             
             milestone6 = new Etapas_Projeto_de_implantacao__c();
             milestone6.Name = '06 - Ativação financeira';
             milestone6.Data_inicial_prevista__c = Date.today().addDays(45);
             milestone6.Data_final_prevista__c = Date.today().addDays(45);
             milestone6.Projeto_de_Implantacao__c = p.Id;
             mList.add(milestone6);
             
             milestone7 = new Etapas_Projeto_de_implantacao__c();
             milestone7.Name = '07 - Ativação do Service Desk';
             milestone7.Data_inicial_prevista__c = Date.today().addDays(49);
             milestone7.Data_final_prevista__c = Date.today().addDays(50);
             milestone7.Projeto_de_Implantacao__c = p.Id;
             mList.add(milestone7);                
             
             milestone8 = new Etapas_Projeto_de_implantacao__c();
             milestone8.Name = '08 - Encerramento da implantação';
             milestone8.Data_inicial_prevista__c = Date.today().addDays(46);
             milestone8.Data_final_prevista__c = Date.today().addDays(50);
             milestone8.Projeto_de_Implantacao__c = p.Id;
             mList.add(milestone8);                 
                        
           
       	}   
       }       
    }
    if(!mList.IsEmpty())
    { 
		insert milestone1;
		insert milestone2;
		insert milestone3;
		insert milestone4;
		insert milestone5;
		insert milestone6;
		insert milestone7;
		insert milestone8;
    }
      
  }
}


Hi guys I need help to solve this error:
InsertMilestonesDeploymentProject: execution of AfterUpdate caused by: System.NullPointerException: Attempt to de-reference a null object: Trigger.InsertMilestonesDeploymentProject: line 31, column 1

trigger InsertMilestonesDeploymentProject on Projeto_Implantacao__c (after insert, after update) {
	List<Etapas_Projeto_de_implantacao__c> mList = new List<Etapas_Projeto_de_implantacao__c>();	
	Etapas_Projeto_de_implantacao__c milestone1;
	Etapas_Projeto_de_implantacao__c milestone2;
	Etapas_Projeto_de_implantacao__c milestone3;
	Etapas_Projeto_de_implantacao__c milestone4;
	Etapas_Projeto_de_implantacao__c milestone5;
	Etapas_Projeto_de_implantacao__c milestone6;
	Etapas_Projeto_de_implantacao__c milestone7;
	Etapas_Projeto_de_implantacao__c milestone8;
	
	//Set of accounts
	Set<Id> accountIds =  new Set<Id>();
	
	for(Projeto_Implantacao__c p:Trigger.new){
		accountIds.add(p.Implantacao__c);//Implantacao__c is a lookup field
	}
	//Map of accounts
	Map<Id, Account> accountMap = new Map<Id, Account>([SELECT Id,Name,Unidade_de_atendimento__c FROM Account WHERE Id IN :accountIds]);
	
	
	
	if(Trigger.isAfter) {
    if(Trigger.isUpdate) {
       for(Projeto_Implantacao__c p: Trigger.new) {
       	for(Projeto_Implantacao__c old: Trigger.old) {
           
             milestone1 = new Etapas_Projeto_de_implantacao__c();
             milestone1.Name = '01 - Contato inicial';
             //restore info account master-detail Account>>Projeto_Implantacao__c>>Implantacao
             if(accountMap.get(p.Implantacao__r.Id).Unidade_de_atendimento__c == 'Campo Grande')//The problem It´s here
             	milestone1.Responsavel__c = '005G0000003oWY2';
             milestone1.Data_inicial_prevista__c = Date.today();
             milestone1.Data_final_prevista__c = Date.today().addDays(3);
             milestone1.Projeto_de_Implantacao__c = p.Id;
             mList.add(milestone1);
             
             milestone2 = new Etapas_Projeto_de_implantacao__c();
             milestone2.Name = '02 - Levantamento/Coleta de dados';
             milestone2.Data_inicial_prevista__c = Date.today().addDays(4);
             milestone2.Data_final_prevista__c = Date.today().addDays(10);
             milestone2.Projeto_de_Implantacao__c = p.Id;
             mList.add(milestone2);
             
             milestone3 = new Etapas_Projeto_de_implantacao__c();
             milestone3.Name = '03 - Conversão de dados';
             milestone3.Data_inicial_prevista__c = Date.today().addDays(11);
             milestone3.Data_final_prevista__c = Date.today().addDays(20);
             milestone3.Projeto_de_Implantacao__c = p.Id;
             mList.add(milestone3);
             
             milestone4 = new Etapas_Projeto_de_implantacao__c();
             milestone4.Name = '04 - Capacitação';
             milestone4.Data_inicial_prevista__c = Date.today().addDays(21);
             milestone4.Data_final_prevista__c = Date.today().addDays(30);
             milestone4.Projeto_de_Implantacao__c = p.Id;
             mList.add(milestone4);
             
             milestone5 = new Etapas_Projeto_de_implantacao__c();
             milestone5.Name = '05 - Instalação/Acompanhamento';
             milestone5.Data_inicial_prevista__c = Date.today().addDays(31);
             milestone5.Data_final_prevista__c = Date.today().addDays(44);
             milestone5.Projeto_de_Implantacao__c = p.Id;
             mList.add(milestone5);
             
             milestone6 = new Etapas_Projeto_de_implantacao__c();
             milestone6.Name = '06 - Ativação financeira';
             milestone6.Data_inicial_prevista__c = Date.today().addDays(45);
             milestone6.Data_final_prevista__c = Date.today().addDays(45);
             milestone6.Projeto_de_Implantacao__c = p.Id;
             mList.add(milestone6);
             
             milestone7 = new Etapas_Projeto_de_implantacao__c();
             milestone7.Name = '07 - Ativação do Service Desk';
             milestone7.Data_inicial_prevista__c = Date.today().addDays(49);
             milestone7.Data_final_prevista__c = Date.today().addDays(50);
             milestone7.Projeto_de_Implantacao__c = p.Id;
             mList.add(milestone7);                
             
             milestone8 = new Etapas_Projeto_de_implantacao__c();
             milestone8.Name = '08 - Encerramento da implantação';
             milestone8.Data_inicial_prevista__c = Date.today().addDays(46);
             milestone8.Data_final_prevista__c = Date.today().addDays(50);
             milestone8.Projeto_de_Implantacao__c = p.Id;
             mList.add(milestone8);                 
                        
           
       	}   
       }       
    }
    if(!mList.IsEmpty())
    { 
		insert milestone1;
		insert milestone2;
		insert milestone3;
		insert milestone4;
		insert milestone5;
		insert milestone6;
		insert milestone7;
		insert milestone8;
    }
      
  }
}


I'm currently testing out Survey Force from Force.com Labs http://appexchange.salesforce.com/listingDetail?listingId=a0N30000003I2gDEAS

I
've manage to install, deploy and create my first survey, however when I select 'Email link with Contact & Case merge' it is not finding any sites to expose to. The only option I have is internal despite the fact I have a site enabled with the required vforce pages.

I am doing this in a sandbox, would this cause this to happen?

If anyone can advise, I would be very grateful!

Cheers,

Graeme

  • February 23, 2012
  • Like
  • 0