Come recuperare i dati dalla org e aggiornarli

Lo scenario è: Abbiamo introdotto un nuovo campo nell’oggetto ma questo non è valorizzato. Tutti i record devono avere valorizzato questo campo.

La soluzione è una bonifica. La bonifica consiste nel valorizzare il campo che ci si aspetta sia valorizzato.

Come procedere ad una bonifica dati in Salesforce?

Le soluzioni sono:

  • Data loader
  • Excell connector
  • Apex

Come aggiornare un campo su tutti i record di un oggetto

//1. ottengo tutti i wo che non hanno il campo Company__c valorizzato
List <WorkOrder> lwo = [SELECT id,
                              	     AccountId,
                                     ParentWorkOrderId,
                                     Master_Company__c 
                              FROM WorkOrder 
                              where  Company__c = null];

System.Debug('Lista WO: '+lwo);

// creo la nuova lista dove inserirò il valore aggiornato della Company_c
List <WorkOrder> updateLwo = new List <WorkOrder>();

for(WorkOrder itemWo : lwo){
    
    updateLwoMaster.add(new WorkOrder(
        Company__c = itemWo.AccountId
    ));        
}

System.debug('Nuovo Lista da: ' + updateLwo);

// DML
update updateLwoMaster;