Extend syntax to allow users to fill custom fields with values
codescape opened this issue · comments
As a user I want to provide data for custom fields as they are an important aspect of most Jira instances.
Format
- task name
customfield_12345: value
customfield_12345: second value
customfield_10000: another field
Tasks
First...
- extend syntax validation
- validate existence of provided custom field ids
- handle unsupported custom field types
- handle invalid data (like multiple data for single field or text for number field or illegal option for select and option fields)
- apply data correctly if supported
Consideration: We could create a validation-phase before creating the subtask where these aspects are checked. Otherwise as custom fields can be complicated things we could ignore and just log errors to the user. Current idea: behind ever created subtask we will list the errors that orrured but did not stop the plugin from creating the tasks.
Later...
- update syntax documentation
Name: CustomFieldName
Alias: cf[CustomFieldID]
inspiration for field names here. https://support.atlassian.com/jira-software-cloud/docs/advanced-search-reference-jql-fields/
Hi!
I'd like to propose the following syntax for customfields:
- Test CustomFields Date Picker
customfield_11111: 2023-01-01 - Test CustomFields Radio Buttons
customfield_22222: Selected Option - Test CustomFields Select List (multiple choices)
customfield_33333: Option 1
customfield_33333: Option 2
customfield_33333: Option 3
@GennadyM73 Thank you. Your proposal would solve the problem that names do not need to be unique among custom fields but the ID is. The downside is, that people need to know how to find the ID of the custom field in question.
Just to let you know. I started development on this issue.
Great!
Atlassian has this document for users how to find custom field IDs:
https://confluence.atlassian.com/jirakb/how-to-find-any-custom-field-s-ids-744522503.html
Also users can open the issue view page, run the following script in Developer tools console and move mouse pointer to the custom field name to see custom field id.
$("[id^=rowForcustomfield_] .wrap .name").each(function(index, value) { this.title = $(this).children('label').prop("for") });
Probably you can put a special button somewhere to run this code to automate the process for users.