When all the choice list items of a field on an extended table is inactive, REST API still validates the update value against these items causing confusion.
Confirmed on London, and also on previous release families.
Steps to Reproduce
- On an out of the box instance, go to the dictionary and find table=task, column=state
- Add a choice list item for table=sc_task, value=1 mark it as inactive=true
- Creating a "sc_task" record and notice that the "State" choice list shows the "Task" table's choices, ignoring the inactive choice list item.
- Send a PUT request to this record via Table API (/api/now/table/sc_task/<sys_id>) with a payload that contains state=3
- Observe that the state will not be updated.
Remove the inactive choice list record completely to make the Table API processor consider the base table choice list values.
Related Problem: PRB1345123