we use the [source] and [external ID] heavily. They are standard civi fields however they do not appear on the report template (detail or summary versions).
Pointers on where to go to update the standard template much appreciated!
These two fields would be generally useful to many CiviCRM users, so I'd recommend adding them to the core report just before https://github.com/civicrm/civicrm-core/blob/master/CRM/Report/Form/Contact/Detail.php#L85.
Here are some instructions on using GitHub to contribute to core CiviCRM: https://wiki.civicrm.org/confluence/display/CRMDOC/Contributing+to+CiviCRM+using+GitHub
You can get the names of the fields at https://github.com/civicrm/civicrm-core/blob/master/xml/schema/Contact/Contact.xml#L162 and https://github.com/civicrm/civicrm-core/blob/master/xml/schema/Contact/Contact.xml#L359.
Just adding the field definitions should be sufficient to add them as data columns...a bit more work is required to make them available as order by fields. Once you have tested the changes, please submit a PR. You can ask me for help reviewing the contribution by mentioning @JoeMurray in a comment on the PR. Good luck!
You can achive this by two ways
Easy and Best way of doing this. Is to create two custom fields against contact (source and external ID) - write a hooks to copy all the value stored again original source and external ID into the custom field which gets included to the report by default
Other way of doing is to override the core file and also including the soruce and external ID to the list (if you need more help in this please let me know) - also you can raise a ticket regarding the issue so this gets included to the next release
I guess this helps !!!
I would create a customized version of the report and add the fields to the list of available fields. There is an instruction on how to achieve this on https://wiki.civicrm.org/confluence/display/CRMDOC/CiviReport+Reference