Situation:
We have a content type with a field of type entity reference.
The allowed options are passed along by a basic view, 3 fields with a filter for a specific selected tag, no arguments.
The view has a display of type entity reference.
The view previews and view page work as expected.
But:
When using the auto complete widget: the complete list of entities is available, no filter applied
When using the auto complete (tagging) widget: the list is ok
When using drop down widget list is ok.
Export of the view
$view = new view();
$view->name = 'usi_zap_user_id';
$view->description = 'ZAP reference used in USI';
$view->tag = 'usi, zap, user';
$view->base_table = 'users';
$view->human_name = 'USI_ZAP_User_id';
$view->core = 7;
$view->api_version = '3.0';
$view->disabled = FALSE; /* Edit this to true to make a default view disabled initially */
/* Display: Master */
$handler = $view->new_display('default', 'Master', 'default');
$handler->display->display_options['use_more_always'] = FALSE;
$handler->display->display_options['access']['type'] = 'role';
$handler->display->display_options['access']['role'] = array(
22 => '22',
);
$handler->display->display_options['cache']['type'] = 'none';
$handler->display->display_options['query']['type'] = 'views_query';
$handler->display->display_options['exposed_form']['type'] = 'basic';
$handler->display->display_options['pager']['type'] = 'full';
$handler->display->display_options['style_plugin'] = 'default';
$handler->display->display_options['row_plugin'] = 'fields';
/* Field: Realname: Real name */
$handler->display->display_options['fields']['realname']['id'] = 'realname';
$handler->display->display_options['fields']['realname']['table'] = 'realname';
$handler->display->display_options['fields']['realname']['field'] = 'realname';
$handler->display->display_options['fields']['realname']['label'] = '';
$handler->display->display_options['fields']['realname']['exclude'] = TRUE;
$handler->display->display_options['fields']['realname']['element_label_colon'] = FALSE;
$handler->display->display_options['fields']['realname']['link_to_user'] = FALSE;
/* Field: User: Name */
$handler->display->display_options['fields']['name']['id'] = 'name';
$handler->display->display_options['fields']['name']['table'] = 'users';
$handler->display->display_options['fields']['name']['field'] = 'name';
$handler->display->display_options['fields']['name']['label'] = '';
$handler->display->display_options['fields']['name']['exclude'] = TRUE;
$handler->display->display_options['fields']['name']['alter']['word_boundary'] = FALSE;
$handler->display->display_options['fields']['name']['alter']['ellipsis'] = FALSE;
$handler->display->display_options['fields']['name']['element_label_colon'] = FALSE;
/* Field: User: CAS user name */
$handler->display->display_options['fields']['cas_name']['id'] = 'cas_name';
$handler->display->display_options['fields']['cas_name']['table'] = 'cas_user';
$handler->display->display_options['fields']['cas_name']['field'] = 'cas_name';
$handler->display->display_options['fields']['cas_name']['label'] = '';
$handler->display->display_options['fields']['cas_name']['exclude'] = TRUE;
$handler->display->display_options['fields']['cas_name']['element_label_colon'] = FALSE;
/* Field: User: User ID */
$handler->display->display_options['fields']['field_serial_user_id_account']['id'] = 'field_serial_user_id_account';
$handler->display->display_options['fields']['field_serial_user_id_account']['table'] = 'field_data_field_serial_user_id_account';
$handler->display->display_options['fields']['field_serial_user_id_account']['field'] = 'field_serial_user_id_account';
$handler->display->display_options['fields']['field_serial_user_id_account']['label'] = '';
$handler->display->display_options['fields']['field_serial_user_id_account']['alter']['alter_text'] = TRUE;
$handler->display->display_options['fields']['field_serial_user_id_account']['alter']['text'] = '[realname] - [cas_name] ([field_serial_user_id_account])';
$handler->display->display_options['fields']['field_serial_user_id_account']['element_label_colon'] = FALSE;
/* Sort criterion: User: Created date */
$handler->display->display_options['sorts']['created']['id'] = 'created';
$handler->display->display_options['sorts']['created']['table'] = 'users';
$handler->display->display_options['sorts']['created']['field'] = 'created';
$handler->display->display_options['sorts']['created']['order'] = 'DESC';
/* Filter criterion: User: Roles */
$handler->display->display_options['filters']['rid']['id'] = 'rid';
$handler->display->display_options['filters']['rid']['table'] = 'users_roles';
$handler->display->display_options['filters']['rid']['field'] = 'rid';
$handler->display->display_options['filters']['rid']['value'] = array(
42 => '42',
);
/* Display: Entity Reference */
$handler = $view->new_display('entityreference', 'Entity Reference', 'entityreference_1');
$handler->display->display_options['defaults']['title'] = FALSE;
$handler->display->display_options['pager']['type'] = 'some';
$handler->display->display_options['defaults']['style_plugin'] = FALSE;
$handler->display->display_options['style_plugin'] = 'entityreference_style';
$handler->display->display_options['style_options']['search_fields'] = array(
'realname' => 'realname',
'cas_name' => 'cas_name',
'field_serial_user_id_account' => 'field_serial_user_id_account',
'name' => 0,
);
$handler->display->display_options['defaults']['style_options'] = FALSE;
$handler->display->display_options['defaults']['row_plugin'] = FALSE;
$handler->display->display_options['row_plugin'] = 'entityreference_fields';
$handler->display->display_options['row_options']['inline'] = array(
'realname' => 'realname',
'cas_name' => 'cas_name',
'field_serial_user_id_account' => 'field_serial_user_id_account',
);
$handler->display->display_options['row_options']['separator'] = ' - ';
$handler->display->display_options['defaults']['row_options'] = FALSE;