We would like to support the following use case:
- User is entering data
 - Then looking up something in a combo-box drop down list
 - Then doesn’t find the desired record
 - Then is allowed to create the record using a modal dialog
 - Then continues working on data entry
 
Set Up
The functionality should be set up by modelling a new lookup binding element and optionally a specific data entry screen.
Model Changes
A New Record Screen Binding model element should be created under a a lookup similar to a menu binding.
This should contain the following properties:
- Roles
 - Menu
 - DialogWidth
 - DialogHeight
 
UI Changes
When a new record binding exists for the current user (by evaluating Roles) the combo box should display a new button left to the drop down arrow. By clicking on this button a modal dialog is opened. Alternatively if filtering in the dropdown results in zero results a Add new… should be presented as the only drop down item.
The process of opening the screen
- It should not load any data
 - It should switch the root entity section to detail view and disable (+) and (-) buttons. This would allow reusing the standard data entry screens e.g. for simple one-field lists.
 - It should add a new record automatically to the master entity (screens with multiple root entities should not be allowed by model consistency check).
 - Potential action buttons should show as usual in the bottom of the modal dialog as standard buttons (we already do this in modal dialogs)
 - Save and Cancel buttons should show
 
The process of leaving the screen
- After clicking on Save the 
SAVEaction should be called on the server like with a standard data screens. - All standard situations for saving should work (executing a validation rule before saving, handling exceptions after saving, e.g. displaying rule exceptions)
 - The modal dialog should close
 - An id of a record from the root entity should be selected in the combo-box
 - Clicking on Cancel should simply close the screen without selecting anything in the combo-box
 
Mobile version
Everything should be standard and should work by the current responsive design rules (e.g. modal dialogs).
Modelling notes
If the combo-box is filtered so adding a new record would require a specific value pre-filled, this can be handled using a default-set in the menu item specified in the binding. This way when a new record is added in the modal dialog it would also contain the right values.