def salesforce_attributes_to_update(include_all = false)
      {}.tap do |hash|
        self.class.salesforce_sync_attribute_mapping.each do |key, value|
          if self.respond_to?(value)

            #Checkboxes in SFDC Cannot be nil.  Here we check for boolean field type and set nil values to be false
            attribute_value = self.send(value)
            if is_boolean?(value) && attribute_value.nil?
              attribute_value = false
            end

            hash[key] = attribute_value if include_all || salesforce_should_update_attribute?(value)
          end
        end
      end
    end
def salesforce_attributes_to_update(include_all = false)
      {}.tap do |hash|
        self.class.salesforce_sync_attribute_mapping.each do |key, value|
          if self.respond_to?(value)

            #Checkboxes in SFDC Cannot be nil.  Here we check for boolean field type and set nil values to be false
            attribute_value = self.send(value)
            if is_boolean?(value) && attribute_value.nil?
              attribute_value = false
            end

            hash[key] = attribute_value if include_all || salesforce_should_update_attribute?(value)
          end
        end
      end
    end
create a hash of updates to send to salesforce