I have a before update trigger on Opportunity that uses this query to get values ->
List<Opportunity> opportunities = [SELECT Id, StageName, Probability, Project_Manager__c, Opportunity_Line_of_Business__c, RecordType.Name,(SELECT Id FROM OpportunityContactRoles) FROM Opportunity WHERE Id IN : Trigger.newMap.keySet()];
The value for Project_Manager__c is returned correctly if the trigger fires from doing an edit on the Opportunity, but when a new product is added to the Opportunity and the trigger fires the Project_Manager__c field is null. All other fields in the query seem to be returned correctly but the Project_Manager__c field. The Project_Manager__c is just a custom field on the Opportunity just like the Opportunity_Line_of_Business__c field is so why would it not be returned in the trigger when a new product is added to the Opportunity?