Regression: Activities export results in DB error
Version: 5.28.0
Steps to replicate:
- Find Activities
- Select all activities (wont replicate if you select check box or limited activities)
- Choose export activities action
Expected behaviour: Should able to see export screen
Actual Behaviour: DB Error: no such field
Sql error detail:
Database Error Code: Unknown column 'activity_type.component_id' in 'where clause', 1054
Additional Details:
Array
(
[callback] => Array
(
[0] => CRM_Core_Error
[1] => handle
)
[code] => -19
[message] => DB Error: no such field
[mode] => 16
[debug_info] => SELECT ( civicrm_activity.id ), contact_a.id as contact_id, contact_a.contact_type as `contact_type`, contact_a.contact_sub_type as `contact_sub_type`, contact_a.sort_name as `sort_name`, contact_a.display_name as `display_name`, civicrm_activity.id as activity_id, civicrm_activity.activity_type_id, civicrm_activity.subject as activity_subject, civicrm_activity.activity_date_time as activity_date_time, 1, civicrm_activity.duration as activity_duration, civicrm_activity.location as activity_location, civicrm_activity.details as activity_details, civicrm_activity.source_record_id as source_record_id, civicrm_activity.is_test as activity_is_test, civicrm_activity.campaign_id as activity_campaign_id, civicrm_activity.engagement_level as activity_engagement_level, source_contact.sort_name as source_contact, activity_priority.label as activity_priority,
civicrm_activity.priority_id as priority_id, civicrm_activity.status_id as `status_id`, civicrm_activity.engagement_level as `engagement_level` FROM civicrm_contact contact_a LEFT JOIN civicrm_activity_contact
ON ( civicrm_activity_contact.contact_id = contact_a.id ) LEFT JOIN civicrm_activity
ON ( civicrm_activity.id = civicrm_activity_contact.activity_id
AND civicrm_activity.is_deleted = 0 AND civicrm_activity.is_current_revision = 1 ) INNER JOIN civicrm_contact
ON ( civicrm_activity_contact.contact_id = civicrm_contact.id and civicrm_contact.is_deleted != 1 ) LEFT JOIN civicrm_option_group option_group_activity_priority ON (option_group_activity_priority.name = 'priority') LEFT JOIN civicrm_option_value activity_priority ON (civicrm_activity.priority_id = activity_priority.value
AND option_group_activity_priority.id = activity_priority.option_group_id ) LEFT JOIN civicrm_activity AS parent_id ON civicrm_activity.id = parent_id.parent_id LEFT JOIN civicrm_activity_contact source_activity
ON (source_activity.activity_id = civicrm_activity_contact.activity_id
AND source_activity.record_type_id = 2)
LEFT JOIN civicrm_contact source_contact ON (source_activity.contact_id = source_contact.id) WHERE ( civicrm_activity.status_id IN ("1", "2") AND civicrm_activity.is_test = 0 ) AND (contact_a.is_deleted = 0) AND (civicrm_activity.activity_type_id IN (1, 2, 3, 4, 5, 6, 7, 8, 9, 12, 17, 19, 22, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 54, 55)) AND (activity_type.component_id IS NULL OR activity_type.component_id <> 5) AND (activity_type.component_id IS NULL OR activity_type.component_id <> 6) AND (activity_type.component_id IS NULL OR activity_type.component_id <> 9) GROUP BY civicrm_activity.id ORDER BY `contact_a`.`sort_name` ASC, `contact_a`.`id` [nativecode=1054 ** Unknown column 'activity_type.component_id' in 'where clause']
[type] => DB_Error
[user_info] => SELECT ( civicrm_activity.id ), contact_a.id as contact_id, contact_a.contact_type as `contact_type`, contact_a.contact_sub_type as `contact_sub_type`, contact_a.sort_name as `sort_name`, contact_a.display_name as `display_name`, civicrm_activity.id as activity_id, civicrm_activity.activity_type_id, civicrm_activity.subject as activity_subject, civicrm_activity.activity_date_time as activity_date_time, 1, civicrm_activity.duration as activity_duration, civicrm_activity.location as activity_location, civicrm_activity.details as activity_details, civicrm_activity.source_record_id as source_record_id, civicrm_activity.is_test as activity_is_test, civicrm_activity.campaign_id as activity_campaign_id, civicrm_activity.engagement_level as activity_engagement_level, source_contact.sort_name as source_contact, activity_priority.label as activity_priority,
civicrm_activity.priority_id as priority_id, civicrm_activity.status_id as `status_id`, civicrm_activity.engagement_level as `engagement_level` FROM civicrm_contact contact_a LEFT JOIN civicrm_activity_contact
ON ( civicrm_activity_contact.contact_id = contact_a.id ) LEFT JOIN civicrm_activity
ON ( civicrm_activity.id = civicrm_activity_contact.activity_id
AND civicrm_activity.is_deleted = 0 AND civicrm_activity.is_current_revision = 1 ) INNER JOIN civicrm_contact
ON ( civicrm_activity_contact.contact_id = civicrm_contact.id and civicrm_contact.is_deleted != 1 ) LEFT JOIN civicrm_option_group option_group_activity_priority ON (option_group_activity_priority.name = 'priority') LEFT JOIN civicrm_option_value activity_priority ON (civicrm_activity.priority_id = activity_priority.value
AND option_group_activity_priority.id = activity_priority.option_group_id ) LEFT JOIN civicrm_activity AS parent_id ON civicrm_activity.id = parent_id.parent_id LEFT JOIN civicrm_activity_contact source_activity
ON (source_activity.activity_id = civicrm_activity_contact.activity_id
AND source_activity.record_type_id = 2)
LEFT JOIN civicrm_contact source_contact ON (source_activity.contact_id = source_contact.id) WHERE ( civicrm_activity.status_id IN ("1", "2") AND civicrm_activity.is_test = 0 ) AND (contact_a.is_deleted = 0) AND (civicrm_activity.activity_type_id IN (1, 2, 3, 4, 5, 6, 7, 8, 9, 12, 17, 19, 22, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 54, 55)) AND (activity_type.component_id IS NULL OR activity_type.component_id <> 5) AND (activity_type.component_id IS NULL OR activity_type.component_id <> 6) AND (activity_type.component_id IS NULL OR activity_type.component_id <> 9) GROUP BY civicrm_activity.id ORDER BY `contact_a`.`sort_name` ASC, `contact_a`.`id` [nativecode=1054 ** Unknown column 'activity_type.component_id' in 'where clause']
[to_string] => [db_error: message="DB Error: no such field" code=-19 mode=callback callback=CRM_Core_Error::handle prefix="" info="SELECT ( civicrm_activity.id ), contact_a.id as contact_id, contact_a.contact_type as `contact_type`, contact_a.contact_sub_type as `contact_sub_type`, contact_a.sort_name as `sort_name`, contact_a.display_name as `display_name`, civicrm_activity.id as activity_id, civicrm_activity.activity_type_id, civicrm_activity.subject as activity_subject, civicrm_activity.activity_date_time as activity_date_time, 1, civicrm_activity.duration as activity_duration, civicrm_activity.location as activity_location, civicrm_activity.details as activity_details, civicrm_activity.source_record_id as source_record_id, civicrm_activity.is_test as activity_is_test, civicrm_activity.campaign_id as activity_campaign_id, civicrm_activity.engagement_level as activity_engagement_level, source_contact.sort_name as source_contact, activity_priority.label as activity_priority,
civicrm_activity.priority_id as priority_id, civicrm_activity.status_id as `status_id`, civicrm_activity.engagement_level as `engagement_level` FROM civicrm_contact contact_a LEFT JOIN civicrm_activity_contact
ON ( civicrm_activity_contact.contact_id = contact_a.id ) LEFT JOIN civicrm_activity
ON ( civicrm_activity.id = civicrm_activity_contact.activity_id
AND civicrm_activity.is_deleted = 0 AND civicrm_activity.is_current_revision = 1 ) INNER JOIN civicrm_contact
ON ( civicrm_activity_contact.contact_id = civicrm_contact.id and civicrm_contact.is_deleted != 1 ) LEFT JOIN civicrm_option_group option_group_activity_priority ON (option_group_activity_priority.name = 'priority') LEFT JOIN civicrm_option_value activity_priority ON (civicrm_activity.priority_id = activity_priority.value
AND option_group_activity_priority.id = activity_priority.option_group_id ) LEFT JOIN civicrm_activity AS parent_id ON civicrm_activity.id = parent_id.parent_id LEFT JOIN civicrm_activity_contact source_activity
ON (source_activity.activity_id = civicrm_activity_contact.activity_id
AND source_activity.record_type_id = 2)
LEFT JOIN civicrm_contact source_contact ON (source_activity.contact_id = source_contact.id) WHERE ( civicrm_activity.status_id IN ("1", "2") AND civicrm_activity.is_test = 0 ) AND (contact_a.is_deleted = 0) AND (civicrm_activity.activity_type_id IN (1, 2, 3, 4, 5, 6, 7, 8, 9, 12, 17, 19, 22, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 54, 55)) AND (activity_type.component_id IS NULL OR activity_type.component_id <> 5) AND (activity_type.component_id IS NULL OR activity_type.component_id <> 6) AND (activity_type.component_id IS NULL OR activity_type.component_id <> 9) GROUP BY civicrm_activity.id ORDER BY `contact_a`.`sort_name` ASC, `contact_a`.`id` [nativecode=1054 ** Unknown column 'activity_type.component_id' in 'where clause']"]
)
Other information:
- Can be replicated on https://dmaster.demo.civicrm.org/
- Cannot replicate with user 1