Document toolboxDocument toolbox

(v1.1-en) Custom Field Types

Custom Field Types

Custom Field Types are used in Go2Group's CRM Plugin to store the unique identifier of the CRM object in a JIRA issue. For example to store the contact ?John Doe? in a JIRA issue, the Contact field would store the internal id of the contact (e.g. 001R000000BEFto).

Q: Why did you choose to store the id in JIRA instead of all the data about the Contact?
A:

  1. Not as much storage space is required in the JIRA database.
  2. If the contact is stored in multiple JIRA issues only the id needs to be stored, ie., the contact's name is not stored over and over again.
  3. When the contact's data changes, eg, their email address, the data in JIRA does not have to be synchronized, ie, only Case and Issue data has be synchronized, not Account, Contact, Opportunity. Etc. This minimizes the amount of data that has to be transferred between JIRA and your CRM system.
  4. If the administrator changes the field mapping the existing data in JIRA issues does not have to be changed, i.e., the new fields are simply queried for and rendered at the time an issue is viewed.

Q: Storing only the ID in JIRA means every time the Contact data is displayed the plugin has to query the CRM system and transfer the data over the network – right?
A: This was true in the very first version of the plugin written in 2006 but now we uses a (v1.1-en) cache so that once a query is done to the CRM system, the data remains in JIRA until the cache times out (by default 30 minutes).

Q: Storing only the ID in JIRA means that searches can only be done on the name field for the CRM object.
A: This is true – in the future with the advanced search capabilities in JIRA 4 this will be expanded to a more general search facility.