Database Column Offrow Migration may cause a NullPointerException on M2M table reports from DBQuery.checkChoiceField depending on the order of of the offrow fields in the listDescription A list or report on a many-to-many table containing fields that have been migrated onto an offrow storage table may encounter this problem which prevents the list/report contents from being displayed. If this issue is encountered with a list, then it may prevent all the UI elements of the list from loading, and functionalities such as the right-click context menu on the list header to not be available. Whether the issue is experienced is dependent on the ordering of the fields being displayed on the list or report. Steps to Reproduce Common steps: 1. Create a Many-to-Many table from change_request to core_company (resulting M2M table should be named u_m2m_companies_change_requests) 2. Add a single record to the many-to-many table so there is data to report on - you can pick any arbitrary change request and company to populate the fields. Save. 3. Activate the 'Database Column Offrow Migration' plugin. 4. Navigate to the dictionary records for task.description and change_request.change_plan and move them both offrow. List Example: 5. Navigate the the Many-to-Many table (u_m2m_companies_change_requests) 6. Right-click on the list header and configure List Layout. 7. Remove 'Change Request' and 'Company' from the 'Selected' column. 8. Expand 'Change Request' and move 'Change Request.Change Plan' and 'Change Request.Description' in to the Selected column. 9. The list will work with the fields in the order: - change_request.change_plan - change_request.description (task.description is offrow) 10. Change the order to the following and the report will return no records: - change_request.description (task.description is offrow) - change_request.change_plan NOTE: If the list right-context menu is not available you will need to locate table's default view list in sys_ui_list and modify the order of the list elements, and use cache.do to recover. Report Example: 11. Create a new report on the M2M table (e.g. u_m2m_companies_change_requests) 12. Expand 'Change Request' and make the selected order - this will successfully display the record(s) in the M2M table: - change_request.change_plan - change_request.description (task.description is offrow) 13. Change the order of the fields to and the report will fail to display any rows: - change_request.description (task.description is offrow) - change_request.change_plan Workaround After carefully considering the severity and frequency of the issue, and the cost and risk of attempting a fix, it has been decided to not address this issue in any current or near future releases. We do not make these decisions lightly, and we apologize for any inconvenience. As a workaround, change the order of the fields, moving any fields inherited from a parent table (e.g. task), that have been migrated offrow, after the child table's (e.g. change_request) offrow fields. Related Problem: PRB1261791