diff --git a/include/ListView/ListViewController.php b/include/ListView/ListViewController.php
index ccc648e90cf4e447b3c132095bad43438ae5bf77..c496d13eb429bcd4e59bcf4118671fbf3ee06f16 100644
--- a/include/ListView/ListViewController.php
+++ b/include/ListView/ListViewController.php
@@ -57,7 +57,7 @@ class ListViewController {
 		$isRoleBased = vtws_isRoleBasedPicklist($name);
 		$this->picklistRoleMap[$name] = $isRoleBased;
 		if ($this->picklistRoleMap[$name]) {
-			$this->picklistValueMap[$name] = getAssignedPicklistValues($name,$this->user->roleid, $this->db);
+			$this->picklistValueMap[$name] = getAllPickListValues($name,$this->user->roleid, $this->db);
 		}
 	}
 
@@ -339,11 +339,6 @@ class ListViewController {
 					if($module == 'Calendar' && ($fieldName == 'taskstatus' || $fieldName == 'eventstatus' || $fieldName == 'activitytype')) {
 						$value = Vtiger_Language_Handler::getTranslatedString($value,$module);
 						$value = textlength_check($value);
-					}
-					else if ($value != '' && !$is_admin && $this->picklistRoleMap[$fieldName] &&
-							!in_array($value, $this->picklistValueMap[$fieldName]) && strtolower($value) != '--none--' && strtolower($value) != 'none' ) {
-						$value = "<font color='red'>". Vtiger_Language_Handler::getTranslatedString('LBL_NOT_ACCESSIBLE',
-								$module)."</font>";
 					} else {
 						$value =  Vtiger_Language_Handler::getTranslatedString($value,$module);
 						$value = textlength_check($value);
@@ -440,33 +435,7 @@ class ListViewController {
 				} elseif($field->getUIType() == 98) {
 					$value = '<a href="index.php?module=Roles&parent=Settings&view=Edit&record='.$value.'">'.textlength_check(getRoleName($value)).'</a>';
 				} elseif($fieldDataType == 'multipicklist') {
-					if(!$is_admin && $value != '') {
-						$valueArray = ($rawValue != "") ? explode(' |##| ',$rawValue) : array();
-						$notaccess = '<font color="red">'.getTranslatedString('LBL_NOT_ACCESSIBLE',
-								$module)."</font>";
-						$tmp = '';
-						$tmpArray = array();
-						foreach($valueArray as $index => $val) {
-							$val = decode_html($val);
-							if(!$listview_max_textlength ||
-									!(strlen(preg_replace("/(<\/?)(\w+)([^>]*>)/i","",$tmp)) >
-											$listview_max_textlength)) {
-								if (!$is_admin && $this->picklistRoleMap[$fieldName] &&
-										!in_array(trim($val), $this->picklistValueMap[$fieldName])) {
-									$tmpArray[] = $notaccess;
-									$tmp .= ', '.$notaccess;
-								} else {
-									$tmpArray[] = $val;
-									$tmp .= ', '.$val;
-								}
-							} else {
-								$tmpArray[] = '...';
-								$tmp .= '...';
-							}
-						}
-						$value = implode(', ', $tmpArray);
-						$value = textlength_check($value);
-					} else if ($value != '') {
+					if ($value != '') {
 						$moduleName = getTabModuleName($field->getTabId());
 						$value = explode(' |##| ', $value);
 						foreach ($value as $key => $val) {
diff --git a/languages/en_us/Settings/Picklist.php b/languages/en_us/Settings/Picklist.php
index d765d3e1f635b4c9b5ed8edf8cc0f60b04ff3ec3..881663a0ce30ff9b5c13f5c69bd8d3d3129ea198 100644
--- a/languages/en_us/Settings/Picklist.php
+++ b/languages/en_us/Settings/Picklist.php
@@ -24,7 +24,8 @@ $languageStrings = array(
 	'LBL_DELETE_PICKLIST_ITEMS' => 'Delete PickList Items',
 	'LBL_ITEMS_TO_DELETE' => 'Items to Delete',
 	'LBL_REPLACE_IT_WITH' => 'Replace it with',
-	'LBL_ASSIGN_TO_ROLE' => 'Assign to Role',
+	'LBL_ASSIGN_TO_ROLE' => 'Who can assign this value to a record?',
+	'LBL_ASSIGN_TO_ROLE_INFO' => 'Only users with selected roles will be able to assign this value to a record. Once assigned, all users with access to record can view the value. The value will be available for selection to all users in list filters',
 	'LBL_ALL_ROLES' => 'All Roles',
 	'LBL_CHOOSE_ROLES' => 'Choose Roles',
 	'LBL_ALL_VALUES' => 'All values',
diff --git a/layouts/v7/modules/Settings/Picklist/CreateView.tpl b/layouts/v7/modules/Settings/Picklist/CreateView.tpl
index c0b16e443b42f7d1caf25b991bc6a77910853c20..19ab0849034891651a3bb6f6e47a9ce3d7394f0f 100644
--- a/layouts/v7/modules/Settings/Picklist/CreateView.tpl
+++ b/layouts/v7/modules/Settings/Picklist/CreateView.tpl
@@ -25,24 +25,32 @@
                 {include file="ModalHeader.tpl"|vtemplate_path:$MODULE TITLE=$HEADER_TITLE}
                 <div class="modal-body">
                     <div class="form-group">
-                        <div class="control-label col-sm-3 col-xs-3">{vtranslate('LBL_ITEM_VALUE',$QUALIFIED_MODULE)}&nbsp;<span class="redColor">*</span></div>
+                        <div class="control-label col-sm-4 col-xs-4">{vtranslate('LBL_ITEM_VALUE',$QUALIFIED_MODULE)}&nbsp;<span class="redColor">*</span></div>
                         <div class="controls col-sm-3 col-xs-3"><input style="min-width: 220px;" name="newValue" class="form-control select2" data-rule-required="true"/></div>
                     </div>
                     {if $SELECTED_PICKLIST_FIELDMODEL->isRoleBased()}
                         <div class="form-group">	
-                            <div class="control-label col-sm-3 col-xs-3">{vtranslate('LBL_ASSIGN_TO_ROLE',$QUALIFIED_MODULE)}</div>
+                            <div class="control-label col-sm-4 col-xs-4">
+                                {vtranslate('LBL_ASSIGN_TO_ROLE',$QUALIFIED_MODULE)}
+                                <span class="input-info-addon cursorPointer"> 
+                                    <i class="fa fa-info-circle" data-toggle="tooltip" data-placement="bottom" title="{vtranslate('LBL_ASSIGN_TO_ROLE_INFO',$QUALIFIED_MODULE)}"></i>
+                                </span>
+                            </div>
                             <div class="controls col-sm-3 col-xs-3">
                                 <select class="rolesList form-control" name="rolesSelected[]" multiple style="min-width: 220px" data-placeholder="{vtranslate('LBL_CHOOSE_ROLES',$QUALIFIED_MODULE)}">
                                     <option value="all" selected>{vtranslate('LBL_ALL_ROLES',$QUALIFIED_MODULE)}</option>
                                     {foreach from=$ROLES_LIST item=ROLE}
                                         <option value="{$ROLE->get('roleid')}">{$ROLE->get('rolename')}</option>
                                     {/foreach}
-                                </select>	
+                                </select>
+                            </div>
+                            <div class="input-info-addon cursorPointer" style='line-height: 2;'> 
+                                <i class="fa fa-info-circle" data-toggle="tooltip" data-placement="bottom" title="{vtranslate('LBL_ASSIGN_TO_ROLE_INFO',$QUALIFIED_MODULE)}"></i>	
                             </div>
                         </div>
                     {/if}
                     <div class="form-group">
-                        <div class="control-label col-sm-3 col-xs-3">{vtranslate('LBL_SELECT_COLOR', $QUALIFIED_MODULE)}</div>
+                        <div class="control-label col-sm-4 col-xs-4">{vtranslate('LBL_SELECT_COLOR', $QUALIFIED_MODULE)}</div>
                         <div class="controls col-sm-3 col-xs-3">
                             <input type="hidden" name="selectedColor" />
                             <div class="colorPicker">
diff --git a/layouts/v7/modules/Vtiger/resources/AdvanceFilter.js b/layouts/v7/modules/Vtiger/resources/AdvanceFilter.js
index b49f4b5b8fa9ca19e88108f011c86ef277374163..38383c60844494473fe149eecef4e7a322e49e3e 100644
--- a/layouts/v7/modules/Vtiger/resources/AdvanceFilter.js
+++ b/layouts/v7/modules/Vtiger/resources/AdvanceFilter.js
@@ -675,6 +675,12 @@ Vtiger_Currencylist_Field_Js('AdvanceFilter_Currencylist_Field_Js',{},{
 
 Vtiger_Picklist_Field_Js('AdvanceFilter_Picklist_Field_Js',{},{
 
+    /**
+	 * Function to get the picklist values
+	 */
+	getPickListValues : function() {
+            return this.get('picklistvalues');
+	},
 	getUi : function(){
 		var comparatorSelectedOptionVal = this.get('comparatorElementVal');
 		if(comparatorSelectedOptionVal == 'e' || comparatorSelectedOptionVal =='n'){
@@ -716,6 +722,12 @@ Vtiger_Picklist_Field_Js('AdvanceFilter_Picklist_Field_Js',{},{
 
 Vtiger_Multipicklist_Field_Js('AdvanceFilter_Multipicklist_Field_Js',{},{
     
+    /**
+    * Function to get the picklist values
+    */
+    getPickListValues : function() {
+       return this.get('picklistvalues');
+    },
     getSelectedOptions : function(selectedOption){
         var valueArray = selectedOption.split(',');
         var selectedOptionsArray = [];
diff --git a/layouts/v7/modules/Vtiger/resources/Field.js b/layouts/v7/modules/Vtiger/resources/Field.js
index 75a0fc4936eae69926373fa02aa8e7bc7dfdb639..a9bd9ee360a3bc582dfb05b41e44ce78f63c0a38 100644
--- a/layouts/v7/modules/Vtiger/resources/Field.js
+++ b/layouts/v7/modules/Vtiger/resources/Field.js
@@ -229,7 +229,7 @@ Vtiger_Field_Js('Vtiger_Picklist_Field_Js',{},{
 	 * @return <object> key value pair of options
 	 */
 	getPickListValues : function() {
-		return this.get('picklistvalues');
+		return this.get('editablepicklistvalues');
 	},
 
 	/**
@@ -469,7 +469,7 @@ Vtiger_Field_Js('Vtiger_Owner_Field_Js',{},{
 	 * Function to get the picklist values
 	 */
 	getPickListValues : function() {
-		return this.get('picklistvalues');
+		return this.get('editablepicklistvalues');
 	},
 
 	getUi : function() {
diff --git a/layouts/v7/modules/Vtiger/uitypes/MultiPicklist.tpl b/layouts/v7/modules/Vtiger/uitypes/MultiPicklist.tpl
index bf1e30c8f8a44310ada4a6b8854cef1821411f0e..6a3b0aa03af145d8cf9cf14075134d11da5f14e6 100644
--- a/layouts/v7/modules/Vtiger/uitypes/MultiPicklist.tpl
+++ b/layouts/v7/modules/Vtiger/uitypes/MultiPicklist.tpl
@@ -13,7 +13,7 @@
 	{assign var="FIELD_INFO" value=$FIELD_MODEL->getFieldInfo()}
 	{assign var="SPECIAL_VALIDATOR" value=$FIELD_MODEL->getValidator()}
 	{assign var="FIELD_VALUE_LIST" value=explode(' |##| ',$FIELD_MODEL->get('fieldvalue'))}
-	{assign var=PICKLIST_VALUES value=$FIELD_INFO['picklistvalues']}
+	{assign var=PICKLIST_VALUES value=$FIELD_INFO['editablepicklistvalues']}
 	{assign var=PICKLIST_COLORS value=$FIELD_INFO['picklistColors']}
 	<input type="hidden" name="{$FIELD_MODEL->getFieldName()}" value=""  data-fieldtype="multipicklist"/>
 	<select id="{$MODULE}_{$smarty.request.view}_fieldName_{$FIELD_MODEL->getFieldName()}" multiple class="select2" name="{$FIELD_MODEL->getFieldName()}[]" data-fieldtype="multipicklist" style='width:210px;height:30px;' 
diff --git a/layouts/v7/modules/Vtiger/uitypes/Picklist.tpl b/layouts/v7/modules/Vtiger/uitypes/Picklist.tpl
index 0ab5518e2b71ca4847d4a700cf25553214709178..a508a0ed75839e7b2d39fdb52e98291b2e5d6095 100644
--- a/layouts/v7/modules/Vtiger/uitypes/Picklist.tpl
+++ b/layouts/v7/modules/Vtiger/uitypes/Picklist.tpl
@@ -10,7 +10,7 @@
 {strip}
 {assign var="FIELD_INFO" value=$FIELD_MODEL->getFieldInfo()}
 {assign var="SPECIAL_VALIDATOR" value=$FIELD_MODEL->getValidator()}
-{assign var=PICKLIST_VALUES value=$FIELD_INFO['picklistvalues']}
+{assign var=PICKLIST_VALUES value=$FIELD_INFO['editablepicklistvalues']}
 {assign var=PICKLIST_COLORS value=$FIELD_INFO['picklistColors']}
 <select data-fieldname="{$FIELD_MODEL->getFieldName()}" data-fieldtype="picklist" class="inputElement select2 {if $OCCUPY_COMPLETE_WIDTH} row {/if}" type="picklist" name="{$FIELD_MODEL->getFieldName()}" {if !empty($SPECIAL_VALIDATOR)}data-validator='{Zend_Json::encode($SPECIAL_VALIDATOR)}'{/if} data-selected-value='{$FIELD_MODEL->get('fieldvalue')}'
 	{if $FIELD_INFO["mandatory"] eq true} data-rule-required="true" {/if}
diff --git a/layouts/v7/modules/Vtiger/uitypes/Salutation.tpl b/layouts/v7/modules/Vtiger/uitypes/Salutation.tpl
index 864bc972b37e9c47387bd08526c4011ced7d477a..cf98283d12e9e37ac256dfbdbff1ca48ff9c2e5a 100644
--- a/layouts/v7/modules/Vtiger/uitypes/Salutation.tpl
+++ b/layouts/v7/modules/Vtiger/uitypes/Salutation.tpl
@@ -9,7 +9,7 @@
 
 {strip}
 	{if $SALUTATION_FIELD_MODEL}
-		{assign var=PICKLIST_VALUES value=$SALUTATION_FIELD_MODEL->getPicklistValues()}
+		{assign var=PICKLIST_VALUES value=$SALUTATION_FIELD_MODEL->getEditablePicklistValues()}
 		{assign var="SALUTATION_VALIDATOR" value=$SALUTATION_FIELD_MODEL->getValidator()}
 		<select class="inputElement select2" style="width:78px;" name="{$SALUTATION_FIELD_MODEL->get('name')}" >
 			{if $SALUTATION_FIELD_MODEL->isEmptyPicklistOptionAllowed()}<option value="">{vtranslate('LBL_NONE', $MODULE)}</option>{/if}
diff --git a/modules/Calendar/models/DetailRecordStructure.php b/modules/Calendar/models/DetailRecordStructure.php
index 87821fe0104fa80cd39c12aa06e999f0a4210c5f..c86ea71416634d0ad6728f76d1745eb08c012f6a 100644
--- a/modules/Calendar/models/DetailRecordStructure.php
+++ b/modules/Calendar/models/DetailRecordStructure.php
@@ -45,32 +45,6 @@ class Calendar_DetailRecordStructure_Model extends Vtiger_DetailRecordStructure_
                             if(!$currentUsersModel->isAdminUser() && ($fieldModel->getFieldDataType() == 'picklist' || $fieldModel->getFieldDataType() == 'multipicklist')) {
                                 $value = decode_html($value);
                                 $this->setupAccessiblePicklistValueList($fieldName);
-                                if($fieldModel->getFieldDataType() == 'picklist') {
-                                    if ($value != '' && $this->picklistRoleMap[$fieldName] && !in_array($value, $this->picklistValueMap[$fieldName]) && strtolower($value) != '--none--' && strtolower($value) != 'none' ) {
-                                        $value = "<font color='red'>". vtranslate('LBL_NOT_ACCESSIBLE',
-                                        $moduleModel->getName())."</font>";
-                                    }
-                                }
-                                if($fieldModel->getFieldDataType() == 'multipicklist') {
-                                    if(!$currentUsersModel->isAdminUser() && $value != '') {
-                                        $valueArray = ($value != "") ? explode(' |##| ',$value) : array();
-                                        $notaccess = '<font color="red">'.  vtranslate('LBL_NOT_ACCESSIBLE',
-                                                $moduleModel->getName())."</font>";
-                                        $tmp = '';
-                                        $tmpArray = array();
-                                        foreach($valueArray as $val) {
-                                                if (!$currentUsersModel->isAdminUser() && $this->picklistRoleMap[$fieldName] &&
-                                                        !in_array(trim($val), $this->picklistValueMap[$fieldName])) {
-                                                    $tmpArray[] = $notaccess;
-                                                    $tmp .= ', '.$notaccess;
-                                                } else {
-                                                    $tmpArray[] = $val;
-                                                    $tmp .= ', '.$val;
-                                                }
-                                        }
-                                        $value = implode(' |##| ', $tmpArray);
-                                    }
-                                }
                             } 
 							$fieldModel->set('fieldvalue', $value);
 						}
@@ -82,15 +56,4 @@ class Calendar_DetailRecordStructure_Model extends Vtiger_DetailRecordStructure_
 		$this->structuredValues = $values;
 		return $values;
 	}
-    
-    public function setupAccessiblePicklistValueList($name) {
-        $db = PearDatabase::getInstance();
-        $currentUsersModel = Users_Record_Model::getCurrentUserModel();
-        $roleId = $currentUsersModel->getRole();
-        $isRoleBased = vtws_isRoleBasedPicklist($name);
-        $this->picklistRoleMap[$name] = $isRoleBased;
-        if ($this->picklistRoleMap[$name]) {
-            $this->picklistValueMap[$name] = getAssignedPicklistValues($name,$roleId, $db);
-        }
-    }
 }
\ No newline at end of file
diff --git a/modules/HelpDesk/models/Module.php b/modules/HelpDesk/models/Module.php
index 7f82378012e17cef4242631fc027c3b3a5d1e8d5..f933f9c3b1a04ea0c467dba2dbed736f110bb04a 100644
--- a/modules/HelpDesk/models/Module.php
+++ b/modules/HelpDesk/models/Module.php
@@ -65,11 +65,9 @@ class HelpDesk_Module_Model extends Vtiger_Module_Model {
 		$db = PearDatabase::getInstance();
 		//TODO need to handle security
 		$params = array();
-		if(vtws_isRoleBasedPicklist('ticketstatus')) {
-			$currentUserModel = Users_Record_Model::getCurrentUserModel();
-			$picklistvaluesmap = getAssignedPicklistValues("ticketstatus",$currentUserModel->getRole(), $db);
-			if(in_array('Open', $picklistvaluesmap)) $params[] = 'Open';
-		}
+		$picklistvaluesmap = getAllPickListValues("ticketstatus");
+        if(in_array('Open', $picklistvaluesmap)) $params[] = 'Open';
+        
 		if(count($params) > 0) {
 		$result = $db->pquery('SELECT count(*) AS count, COALESCE(vtiger_groups.groupname,concat(vtiger_users.first_name, " " ,vtiger_users.last_name)) as name, COALESCE(vtiger_groups.groupid,vtiger_users.id) as id  FROM vtiger_troubletickets
 						INNER JOIN vtiger_crmentity ON vtiger_troubletickets.ticketid = vtiger_crmentity.crmid
@@ -107,11 +105,10 @@ class HelpDesk_Module_Model extends Vtiger_Module_Model {
 			$params[] = $dateFilter['start'];
 			$params[] = $dateFilter['end'];
 		}
-		if(vtws_isRoleBasedPicklist('ticketstatus')) {
-			$currentUserModel = Users_Record_Model::getCurrentUserModel();
-			$picklistvaluesmap = getAssignedPicklistValues("ticketstatus",$currentUserModel->getRole(), $db);
-			foreach($picklistvaluesmap as $picklistValue) $params[] = $picklistValue;
-		}
+		$picklistvaluesmap = getAllPickListValues("ticketstatus");
+        foreach($picklistvaluesmap as $picklistValue) {
+            $params[] = $picklistValue;
+        }
 
 		$result = $db->pquery('SELECT COUNT(*) as count, CASE WHEN vtiger_troubletickets.status IS NULL OR vtiger_troubletickets.status = "" THEN "" ELSE vtiger_troubletickets.status END AS statusvalue 
 							FROM vtiger_troubletickets INNER JOIN vtiger_crmentity ON vtiger_troubletickets.ticketid = vtiger_crmentity.crmid AND vtiger_crmentity.deleted=0
diff --git a/modules/Leads/models/Module.php b/modules/Leads/models/Module.php
index 2f3126412e0792089babc7304bcb6c1a28026ee7..d64ae21b5ca3b05152580ec7057ac341658fe0fc 100644
--- a/modules/Leads/models/Module.php
+++ b/modules/Leads/models/Module.php
@@ -143,10 +143,9 @@ class Leads_Module_Model extends Vtiger_Module_Model {
 			$params[] = $dateFilter['start'];
 			$params[] = $dateFilter['end'];
 		}
-        if(vtws_isRoleBasedPicklist('leadstatus')) {
-            $currentUserModel = Users_Record_Model::getCurrentUserModel();
-            $picklistvaluesmap = getAssignedPicklistValues("leadstatus",$currentUserModel->getRole(), $db);
-            foreach($picklistvaluesmap as $picklistValue) $params[] = $picklistValue;
+        $picklistvaluesmap = getAllPickListValues("leadstatus");
+        foreach($picklistvaluesmap as $picklistValue) {
+            $params[] = $picklistValue;
         }
 
 		$result = $db->pquery('SELECT COUNT(*) as count, CASE WHEN vtiger_leadstatus.leadstatus IS NULL OR vtiger_leadstatus.leadstatus = "" THEN "" ELSE 
@@ -192,10 +191,9 @@ class Leads_Module_Model extends Vtiger_Module_Model {
 			$params[] = $dateFilter['start'];
 			$params[] = $dateFilter['end'];
 		}
-        if(vtws_isRoleBasedPicklist('leadsource')) {
-            $currentUserModel = Users_Record_Model::getCurrentUserModel();
-            $picklistvaluesmap = getAssignedPicklistValues("leadsource",$currentUserModel->getRole(), $db);
-            foreach($picklistvaluesmap as $picklistValue) $params[] = $picklistValue;
+        $picklistvaluesmap = getAllPickListValues("leadsource");
+        foreach($picklistvaluesmap as $picklistValue) {
+            $params[] = $picklistValue;
         }
         
 		$result = $db->pquery('SELECT COUNT(*) as count, CASE WHEN vtiger_leaddetails.leadsource IS NULL OR vtiger_leaddetails.leadsource = "" THEN "" 
@@ -240,10 +238,9 @@ class Leads_Module_Model extends Vtiger_Module_Model {
 			$params[] = $dateFilter['start'];
 			$params[] = $dateFilter['end'];
 		}
-        if(vtws_isRoleBasedPicklist('industry')) {
-            $currentUserModel = Users_Record_Model::getCurrentUserModel();
-            $picklistvaluesmap = getAssignedPicklistValues("industry",$currentUserModel->getRole(), $db);
-            foreach($picklistvaluesmap as $picklistValue) $params[] = $picklistValue;
+        $picklistvaluesmap = getAllPickListValues("industry");
+        foreach($picklistvaluesmap as $picklistValue) {
+            $params[] = $picklistValue;
         }
 		
 		$result = $db->pquery('SELECT COUNT(*) as count, CASE WHEN vtiger_leaddetails.industry IS NULL OR vtiger_leaddetails.industry = "" THEN "" 
diff --git a/modules/Potentials/models/Module.php b/modules/Potentials/models/Module.php
index 9ea4f242bc3a1335bf6d010698e5b00f5f148f77..15616aa7cafd1bcaab982de5de4d787495cdbba0 100644
--- a/modules/Potentials/models/Module.php
+++ b/modules/Potentials/models/Module.php
@@ -61,11 +61,10 @@ class Potentials_Module_Model extends Vtiger_Module_Model {
 			$params[] = $dateFilter['start'];
 			$params[] = $dateFilter['end'];
 		}
-        if(vtws_isRoleBasedPicklist('sales_stage')) {
-            $currentUserModel = Users_Record_Model::getCurrentUserModel();
-            $picklistvaluesmap = getAssignedPicklistValues("sales_stage",$currentUserModel->getRole(), $db);
-            unset($picklistvaluesmap['Closed Won']);unset($picklistvaluesmap['Closed Lost']);
-            foreach($picklistvaluesmap as $picklistValue) $params[] = $picklistValue;
+        $picklistvaluesmap = getAllPickListValues("sales_stage");
+        unset($picklistvaluesmap['Closed Won']);unset($picklistvaluesmap['Closed Lost']);
+        foreach($picklistvaluesmap as $picklistValue) {
+            $params[] = $picklistValue;
         }
         
 		$result = $db->pquery('SELECT COUNT(*) count, vtiger_potential.sales_stage FROM vtiger_potential
@@ -95,11 +94,11 @@ class Potentials_Module_Model extends Vtiger_Module_Model {
 		$db = PearDatabase::getInstance();
 		//TODO need to handle security
 		$params = array();
-        if(vtws_isRoleBasedPicklist('sales_stage')) {
-            $currentUserModel = Users_Record_Model::getCurrentUserModel();
-            $picklistvaluesmap = getAssignedPicklistValues("sales_stage",$currentUserModel->getRole(), $db);
-            foreach($picklistvaluesmap as $picklistValue) $params[] = $picklistValue;
+        $picklistvaluesmap = getAllPickListValues("sales_stage");
+        foreach($picklistvaluesmap as $picklistValue) {
+            $params[] = $picklistValue;
         }
+        
 		$result = $db->pquery('SELECT COUNT(*) AS count, concat(first_name," ",last_name) as last_name, vtiger_potential.sales_stage, vtiger_groups.groupname FROM vtiger_potential
 						INNER JOIN vtiger_crmentity ON vtiger_potential.potentialid = vtiger_crmentity.crmid AND vtiger_crmentity.deleted = 0
 						LEFT JOIN vtiger_users ON vtiger_users.id=vtiger_crmentity.smownerid AND vtiger_users.status="ACTIVE"
@@ -131,12 +130,10 @@ class Potentials_Module_Model extends Vtiger_Module_Model {
 		$db = PearDatabase::getInstance();
 		//TODO need to handle security
 		$params = array();
-        if(vtws_isRoleBasedPicklist('sales_stage')) {
-            $currentUserModel = Users_Record_Model::getCurrentUserModel();
-            $picklistvaluesmap = getAssignedPicklistValues("sales_stage",$currentUserModel->getRole(), $db);
-            unset($picklistvaluesmap['Closed Won']);unset($picklistvaluesmap['Closed Lost']);
-            foreach($picklistvaluesmap as $picklistValue) $params[] = $picklistValue;
-        }
+        $picklistvaluesmap = getAllPickListValues("sales_stage");
+        unset($picklistvaluesmap['Closed Won']);unset($picklistvaluesmap['Closed Lost']);
+        foreach($picklistvaluesmap as $picklistValue) $params[] = $picklistValue;
+        
 		$result = $db->pquery('SELECT sum(amount) AS amount, concat(first_name," ",last_name) as last_name, vtiger_potential.sales_stage FROM vtiger_potential
 						INNER JOIN vtiger_crmentity ON vtiger_potential.potentialid = vtiger_crmentity.crmid
 						INNER JOIN vtiger_users ON vtiger_users.id=vtiger_crmentity.smownerid AND vtiger_users.status="ACTIVE"
@@ -302,10 +299,7 @@ class Potentials_Module_Model extends Vtiger_Module_Model {
 		//$currentUser = Users_Record_Model::getCurrentUserModel();
 		$db = PearDatabase::getInstance();
 
-        if(vtws_isRoleBasedPicklist('sales_stage')) {
-            $currentUserModel = Users_Record_Model::getCurrentUserModel();
-            $picklistValues = getAssignedPicklistValues("sales_stage",$currentUserModel->getRole(), $db);
-        }
+        $picklistValues = getAllPickListValues("sales_stage");
 		$data = array();
 		foreach ($picklistValues as $key => $picklistValue) {
 			$result = $db->pquery('SELECT SUM(amount) AS amount FROM vtiger_potential
diff --git a/modules/Reports/ReportUtils.php b/modules/Reports/ReportUtils.php
index dc0bf74408a7a57556744a15307a00c864859d40..bbd40c0fd41ad3678a77608806175770fa8b59b8 100644
--- a/modules/Reports/ReportUtils.php
+++ b/modules/Reports/ReportUtils.php
@@ -202,30 +202,13 @@ function getReportFieldValue ($report, $picklistArray, $dbField, $valueArray, $f
 			$fieldvalue = $value;
 		}
 	} elseif( $fieldType == "picklist" && !empty($value) ) {
-		if(is_array($picklistArray)) {
-			if(is_array($picklistArray[$dbField->name]) &&
-					$field->getFieldName() != 'activitytype' && !in_array(
-					$value, $picklistArray[$dbField->name])){
-				$fieldvalue =$app_strings['LBL_NOT_ACCESSIBLE'];
-			} else {
-				$fieldvalue = getTranslatedString($value, $module);
-			}
-		} else {
 			$fieldvalue = getTranslatedString($value, $module);
-		}
 	} elseif( $fieldType == "multipicklist" && !empty($value) ) {
 		if(is_array($picklistArray[1])) {
 			$valueList = explode(' |##| ', $value);
 			$translatedValueList = array();
 			foreach ( $valueList as $value) {
-				if(is_array($picklistArray[1][$dbField->name]) && !in_array(
-						$value, $picklistArray[1][$dbField->name])) {
-					$translatedValueList[] =
-							$app_strings['LBL_NOT_ACCESSIBLE'];
-				} else {
-					$translatedValueList[] = getTranslatedString($value,
-							$module);
-				}
+				$translatedValueList[] = getTranslatedString($value, $module);
 			}
 		}
 		if (!is_array($picklistArray[1]) || !is_array($picklistArray[1][$dbField->name])) {
diff --git a/modules/Reports/models/Chart.php b/modules/Reports/models/Chart.php
index cc50b2f28be865bde5960d07fc8baf845a7139aa..9cfb3c6b78ccd30f0fcc0224f52327a520f637e7 100644
--- a/modules/Reports/models/Chart.php
+++ b/modules/Reports/models/Chart.php
@@ -497,9 +497,8 @@ class PieChart extends Base_Chart {
 		$currentUserModel = Users_Record_Model::getCurrentUserModel();
 		$currencyRateAndSymbol = getCurrencySymbolandCRate($currentUserModel->currency_id);
 
-		if(($legendField->getFieldDataType() == 'picklist' || $legendField->getFieldDataType() == 'multipicklist') && vtws_isRoleBasedPicklist($legendField->getName())){
-			$currentUserModel = Users_Record_Model::getCurrentUserModel();
-			$picklistvaluesmap = getAssignedPicklistValues($legendField->getName(),$currentUserModel->getRole(), $db);
+		if($legendField->getFieldDataType() == 'picklist' || $legendField->getFieldDataType() == 'multipicklist'){
+			$picklistvaluesmap = getAllPickListValues($legendField->getName(),$currentUserModel->getRole(), $db);
 		}
 
 		$sector = trim($sector, '`'); // remove backticks from sector
@@ -596,9 +595,9 @@ class VerticalbarChart extends Base_Chart {
 
 		$groupByColumnsByFieldModel = $this->getGroupbyColumnsByFieldModel();
 		foreach($groupByColumnsByFieldModel as $eachGroupByField) {
-			if($eachGroupByField->getFieldDataType() == 'picklist' && vtws_isRoleBasedPicklist($eachGroupByField->getName())){
+			if($eachGroupByField->getFieldDataType() == 'picklist'){
 				$currentUserModel = Users_Record_Model::getCurrentUserModel();
-				$picklistValueMap[$eachGroupByField->getName()] = getAssignedPicklistValues($eachGroupByField->getName(),$currentUserModel->getRole(), $db);
+				$picklistValueMap[$eachGroupByField->getName()] = getAllPickListValues($eachGroupByField->getName(),$currentUserModel->getRole(), $db);
 			}
 		}
 		$currentUserModel = Users_Record_Model::getCurrentUserModel();
diff --git a/modules/Settings/LayoutEditor/models/Field.php b/modules/Settings/LayoutEditor/models/Field.php
index 25f7b080ac42d192a1af4bdd3e6a414ad231c7c3..aa5812a1b64834bd2f5aa46b17650de7f25edf60 100644
--- a/modules/Settings/LayoutEditor/models/Field.php
+++ b/modules/Settings/LayoutEditor/models/Field.php
@@ -354,6 +354,20 @@ class Settings_LayoutEditor_Field_Model extends Vtiger_Field_Model {
 			$picklistValues = array(' '=> vtranslate('LBL_SELECT_OPTION'));
 			$fieldInfo['picklistvalues'] = $picklistValues;
 		}
+        
+        if (isset($fieldInfo['editablepicklistvalues'])) {
+            if ($fieldInfo['type'] != 'multipicklist') {
+                $picklistValues = $fieldInfo['editablepicklistvalues'];
+                $emptyOption = array(' ' => vtranslate('LBL_SELECT_OPTION'));
+
+                $picklistValues = $emptyOption + $picklistValues;
+                $fieldInfo['editablepicklistvalues'] = $picklistValues;
+            }
+        } else {
+            $picklistValues = array(' ' => vtranslate('LBL_SELECT_OPTION'));
+            $fieldInfo['editablepicklistvalues'] = $picklistValues;
+        }
+        
 		//for new field we need to have all attributes
 		$currentUser = Users_Record_Model::getCurrentUserModel();
 		$fieldInfo['date-format'] = $currentUser->get('date_format');
diff --git a/modules/Settings/MailConverter/models/Field.php b/modules/Settings/MailConverter/models/Field.php
index 65ad41de1b0e20150bd1419a52e4d271f35eaa3f..609e4e36eb5b7947b6b9d9b3a74968da115bd1c3 100644
--- a/modules/Settings/MailConverter/models/Field.php
+++ b/modules/Settings/MailConverter/models/Field.php
@@ -68,6 +68,10 @@ class Settings_MailConverter_Field_Model extends Vtiger_Field_Model {
         return $pickListValues;
     }
     
+    public function getEditablePicklistValues() {
+        return $this->getPickListValues();
+    }
+    
     public function getRadioOptions() {
         $fieldName = $this->getName();
         if($fieldName == 'ssltype') {
diff --git a/modules/Settings/Picklist/models/Field.php b/modules/Settings/Picklist/models/Field.php
index 182d8054bfe09edca6b96f8949d0dd57260626a3..f7b64bd6b702fb1320bf7560e9b2737157b88028 100644
--- a/modules/Settings/Picklist/models/Field.php
+++ b/modules/Settings/Picklist/models/Field.php
@@ -102,7 +102,7 @@ class Settings_Picklist_Field_Model extends Vtiger_Field_Model {
      * @param type $fieldName -- string
      * @return type -- array of values
      */
-	public static function getEditablePicklistValues($fieldName){
+	public function getEditablePicklistValues($fieldName){
 		$cache = Vtiger_Cache::getInstance();
 		$EditablePicklistValues = $cache->get('EditablePicklistValues', $fieldName);
         if($EditablePicklistValues) {
diff --git a/modules/Settings/Picklist/models/Module.php b/modules/Settings/Picklist/models/Module.php
index ca39d3f3ca46914420fb2fd5303bc1564f4daf07..cc317bd83de7b4327f1df393c053c6c9bdc08360 100644
--- a/modules/Settings/Picklist/models/Module.php
+++ b/modules/Settings/Picklist/models/Module.php
@@ -468,7 +468,7 @@ class Settings_Picklist_Module_Model extends Vtiger_Module_Model {
 		$db = PearDatabase::getInstance();
 		$picklistValues = array();
 		if (vtws_isRoleBasedPicklist($name)) {
-			$picklistValues = getAssignedPicklistValues($name, $currentUser->roleid, $db);
+			$picklistValues = getAllPickListValues($name, $currentUser->roleid, $db);
 		}
 
 		return $picklistValues;
diff --git a/modules/Users/models/Field.php b/modules/Users/models/Field.php
index 1fea24da81efe5daad3a209c53e18147c7cbe3be..c460f1c2ce6dc19e4a119c16ccad14febc408b01 100644
--- a/modules/Users/models/Field.php
+++ b/modules/Users/models/Field.php
@@ -92,6 +92,14 @@ class Users_Field_Model extends Vtiger_Field_Model {
 		}
 		return parent::getPicklistValues();
 	}
+    
+    /**
+	 * Function to get all the available picklist values for the current field
+	 * @return <Array> List of picklist values if the field is of type picklist or multipicklist, null otherwise.
+	 */
+	public function getEditablePicklistValues() {
+		return $this->getPicklistValues();
+	}
 
 	/**
 	 * Function to returns all skins(themes)
diff --git a/modules/Vtiger/models/DetailRecordStructure.php b/modules/Vtiger/models/DetailRecordStructure.php
index f825977a59db580f06a843fcc15b8ebfc3a592af..bab9261023f95ec3e45708a38c3681172819aaaa 100644
--- a/modules/Vtiger/models/DetailRecordStructure.php
+++ b/modules/Vtiger/models/DetailRecordStructure.php
@@ -41,31 +41,7 @@ class Vtiger_DetailRecordStructure_Model extends Vtiger_RecordStructure_Model {
 							$value = $recordModel->get($fieldName);
 							if(!$currentUsersModel->isAdminUser() && ($fieldModel->getFieldDataType() == 'picklist' || $fieldModel->getFieldDataType() == 'multipicklist')) {
 								$value = decode_html($value);
-								$this->setupAccessiblePicklistValueList($fieldName);
-								if($fieldModel->getFieldDataType() == 'picklist') {
-									if ($value != '' && $this->picklistRoleMap[$fieldName] && !in_array($value, $this->picklistValueMap[$fieldName]) && strtolower($value) != '--none--' && strtolower($value) != 'none' ) {
-										$value = "<font color='red'>". vtranslate('LBL_NOT_ACCESSIBLE',
-										$moduleModel->getName())."</font>";
-									}
-								}
-								if($fieldModel->getFieldDataType() == 'multipicklist') {
-									if (!$currentUsersModel->isAdminUser() && $value != '') {
-										$valueArray = ($value != "") ? explode(' |##| ', $value) : array();
-										$notaccess = '<font color="red">'.vtranslate('LBL_NOT_ACCESSIBLE', $moduleModel->getName())."</font>";
-										$tmp = '';
-										$tmpArray = array();
-										foreach ($valueArray as $val) {
-											if (!$currentUsersModel->isAdminUser() && $this->picklistRoleMap[$fieldName] && !in_array(trim($val), $this->picklistValueMap[$fieldName])) {
-													$tmpArray[] = $notaccess;
-													$tmp .= ', '.$notaccess;
-												} else {
-													$tmpArray[] = $val;
-													$tmp .= ', '.$val;
-												}
-										}
-										$value = implode(' |##| ', $tmpArray);
-									}
-								}
+								$this->setupAccessiblePicklistValueList($fieldModel);
 							} 
 							$fieldModel->set('fieldvalue', $value);
 						}
@@ -78,14 +54,15 @@ class Vtiger_DetailRecordStructure_Model extends Vtiger_RecordStructure_Model {
 		return $values;
 	}
 
-	public function setupAccessiblePicklistValueList($name) {
+	public function setupAccessiblePicklistValueList($fieldModel) {
 		$db = PearDatabase::getInstance();
 		$currentUsersModel = Users_Record_Model::getCurrentUserModel();
 		$roleId = $currentUsersModel->getRole();
+        $name = $fieldModel->getName();
 		$isRoleBased = vtws_isRoleBasedPicklist($name);
 		$this->picklistRoleMap[$name] = $isRoleBased;
 		if ($this->picklistRoleMap[$name]) {
-			$this->picklistValueMap[$name] = getAssignedPicklistValues($name, $roleId, $db);
+			$this->picklistValueMap[$name] = $fieldModel->getPicklistValues();
 		}
 	}
 
diff --git a/modules/Vtiger/models/Field.php b/modules/Vtiger/models/Field.php
index dea6331f1ad960e05fa95b4e421713af95377e1d..3f51052850b729154bc7228fddbc5ed25b7b4900 100644
--- a/modules/Vtiger/models/Field.php
+++ b/modules/Vtiger/models/Field.php
@@ -264,22 +264,53 @@ class Vtiger_Field_Model extends Vtiger_Field {
 
 		if($fieldName == 'hdnTaxType' || ($fieldName == 'region_id' && $this->get('displaytype') == 5)) return null;
 
-		if($fieldDataType == 'picklist' || $fieldDataType == 'multipicklist') {
-			$fieldPickListValues = array();
-			$currentUser = Users_Record_Model::getCurrentUserModel();
-			if($this->isRoleBased()) {
-				$userModel = Users_Record_Model::getCurrentUserModel();
-				$picklistValues = Vtiger_Util_Helper::getRoleBasedPicklistValues($fieldName, $userModel->get('roleid'));
-			}else{
-				$picklistValues = Vtiger_Util_Helper::getPickListValues($fieldName);
+        if($fieldDataType == 'picklist' || $fieldDataType == 'multipicklist' || $fieldDataType == 'metricpicklist' || $fieldDataType == 'timestring') {
+            $fieldPickListValues = array();
+            $picklistValues = Vtiger_Util_Helper::getPickListValues($fieldName);
+            
+            foreach($picklistValues as $value) {
+                $fieldPickListValues[$value] = vtranslate($value,$this->getModuleName());
 			}
-			foreach($picklistValues as $value) {
-				$fieldPickListValues[$value] = vtranslate($value,$this->getModuleName());
+            return $fieldPickListValues;
+		}
+		return null;
+    }
+    
+    
+    /**
+	 * Function to get all editable  picklist values for the current user
+	 * @return <Array> List of picklist values if the field is of type picklist or multipicklist, null otherwise.
+	 */
+	public function getEditablePicklistValues() {
+        $fieldDataType = $this->getFieldDataType();
+		$fieldName = $this->getName();
+        $permission = true;
+
+		// for reference fields the field name will be in the format of (referencefieldname;(module)fieldname)
+		preg_match('/(\w+) ; \((\w+)\) (\w+)/', $fieldName, $matches);
+		if(count($matches) > 0) {
+			list($full, $referenceParentField, $referenceModule, $referenceFieldName) = $matches;
+			$fieldName = $referenceFieldName;
+		}
+
+		if($fieldName == 'hdnTaxType' || ($fieldName == 'region_id' && $this->get('displaytype') == 5)) return null;
+
+        if($fieldDataType == 'picklist' || $fieldDataType == 'multipicklist') {
+            $fieldPickListValues = array();
+            if($this->isRoleBased()) {
+                $userModel = Users_Record_Model::getCurrentUserModel();
+                $picklistValues = Vtiger_Util_Helper::getRoleBasedPicklistValues($fieldName, $userModel->get('roleid'));
+            }else{
+                $picklistValues = Vtiger_Util_Helper::getPickListValues($fieldName);
+            }
+            
+            foreach($picklistValues as $value) {
+                    $fieldPickListValues[$value] = vtranslate($value,$this->getModuleName());
 			}
-			return $fieldPickListValues;
+            return $fieldPickListValues;
 		}
 		return null;
-	}
+    }
 
 	/**
 	 * Function to check if the current field is mandatory or not
@@ -533,11 +564,18 @@ class Vtiger_Field_Model extends Vtiger_Field {
 
 		if($fieldDataType == 'picklist' || $fieldDataType == 'multipicklist' || $fieldDataType == 'multiowner') {
 			$pickListValues = $this->getPicklistValues();
+            $editablePicklistValues = $this->getEditablePicklistValues();
 			if(!empty($pickListValues)) {
 				$this->fieldInfo['picklistvalues'] = $pickListValues;
 			} else {
 				$this->fieldInfo['picklistvalues'] = array();
 			}
+            
+            if(!empty($editablePicklistValues)) {
+                $this->fieldInfo['editablepicklistvalues'] = $editablePicklistValues;
+            } else {
+				$this->fieldInfo['editablepicklistvalues'] = array();
+			}
 
 			$this->fieldInfo['picklistColors'] = array();
 			$picklistColors = $this->getPicklistColors();
diff --git a/modules/Vtiger/models/SummaryRecordStructure.php b/modules/Vtiger/models/SummaryRecordStructure.php
index 9c47744ac94a24f2c7571a33ddd846ed9f652b85..216b56fa9631aff8dfd5cc7e0054ec53919aa92c 100644
--- a/modules/Vtiger/models/SummaryRecordStructure.php
+++ b/modules/Vtiger/models/SummaryRecordStructure.php
@@ -46,36 +46,6 @@ class Vtiger_SummaryRecordStructure_Model extends Vtiger_DetailRecordStructure_M
 					$blockSequence = $fieldModel->block->sequence;
 					if(!$currentUsersModel->isAdminUser() && ($fieldModel->getFieldDataType() == 'picklist' || $fieldModel->getFieldDataType() == 'multipicklist')) {
 						$this->setupAccessiblePicklistValueList($fieldName);
-						$value = decode_html($fieldModel->get('fieldvalue'));
-						$moduleModel = $fieldModel->getModule();
-						if($fieldModel->getFieldDataType() == 'picklist') {
-							if ($value != '' && $this->picklistRoleMap[$fieldName] && !in_array($value, $this->picklistValueMap[$fieldName]) && strtolower($value) != '--none--' && strtolower($value) != 'none' ) {
-								$value = '<font color="red">'. vtranslate('LBL_NOT_ACCESSIBLE',
-								$moduleModel->getName()).'</font>';
-								$fieldModel->set('fieldvalue', $value);
-							}
-						}
-						if($fieldModel->getFieldDataType() == 'multipicklist') {
-							if(!$currentUsersModel->isAdminUser() && $value != '') {
-								$valueArray = ($value != "") ? explode(' |##| ',$value) : array();
-								$notaccess = '<font color="red">'.  vtranslate('LBL_NOT_ACCESSIBLE',
-										$moduleModel->getName())."</font>";
-								$tmp = '';
-								$tmpArray = array();
-								foreach($valueArray as $val) {
-										if (!$currentUsersModel->isAdminUser() && $this->picklistRoleMap[$fieldName] &&
-												!in_array(trim($val), $this->picklistValueMap[$fieldName])) {
-											$tmpArray[] = $notaccess;
-											$tmp .= ', '.$notaccess;
-										} else {
-											$tmpArray[] = $val;
-											$tmp .= ', '.$val;
-										}
-								}
-								$value = implode(' |##| ', $tmpArray);
-								$fieldModel->set('fieldvalue', $value);
-							}
-						}
 					}
 					$blockSeqSortSummaryFields[$blockSequence]['SUMMARY_FIELDS'][$fieldName] = $fieldModel;
 				}
diff --git a/pkg/vtiger/modules/EmailTemplates/modules/EmailTemplates/models/Field.php b/pkg/vtiger/modules/EmailTemplates/modules/EmailTemplates/models/Field.php
index 70328297963921c9e2e83b3634370d0c73045cc2..0d33c981f71c22226443b156f0f05e0f02cbdb32 100644
--- a/pkg/vtiger/modules/EmailTemplates/modules/EmailTemplates/models/Field.php
+++ b/pkg/vtiger/modules/EmailTemplates/modules/EmailTemplates/models/Field.php
@@ -49,5 +49,9 @@ class EmailTemplates_Field_Model extends Vtiger_Field_Model {
 	public function isNameField() {
 		return false;
 	}
+    
+    public function getEditablePicklistValues() {
+    	return $this->getPicklistValues();
+    }
 
 }
\ No newline at end of file
diff --git a/pkg/vtiger/modules/Webforms/settings/models/Field.php b/pkg/vtiger/modules/Webforms/settings/models/Field.php
index 42d3e185258d2e520c9cfb638c960cdd4a6f856c..eb1383223bf927ea6bdd7fe19072ef4ed5b995de 100644
--- a/pkg/vtiger/modules/Webforms/settings/models/Field.php
+++ b/pkg/vtiger/modules/Webforms/settings/models/Field.php
@@ -73,6 +73,14 @@ class Settings_Webforms_Field_Model extends Vtiger_Field_Model {
 		}
 		return array();
 	}
+    
+    /**
+	 * Function to get Editable Picklist values
+	 * @return <Array> Editable Picklist values
+	 */
+	public function getEditablePicklistValues() {
+		return $this->getPicklistValues();
+	}
 	
 	public function getDisplayValue($value) {
 		if ($this->getName() === 'enabled') {
diff --git a/pkg/vtiger/modules/Webforms/settings/models/ModuleField.php b/pkg/vtiger/modules/Webforms/settings/models/ModuleField.php
index 15a4912f2f01f8d65d7d3a882848fb0c0e2d1167..23cf0f564c63fcf9fd153a83787e4dcfc5872ec6 100644
--- a/pkg/vtiger/modules/Webforms/settings/models/ModuleField.php
+++ b/pkg/vtiger/modules/Webforms/settings/models/ModuleField.php
@@ -41,6 +41,7 @@ class Settings_Webforms_ModuleField_Model extends Vtiger_Field_Model {
 		$pickListValues = $this->getPicklistValues();
 		if(!empty($pickListValues)) {
 			$fieldInfo['picklistvalues'] = $pickListValues;
+            $fieldInfo['editablepicklistvalues'] = $pickListValues;
 		}
 
 		if($this->getFieldDataType() == 'date' || $this->getFieldDataType() == 'datetime'){
@@ -91,7 +92,7 @@ class Settings_Webforms_ModuleField_Model extends Vtiger_Field_Model {
 		}
 		$pickListValues = array();
 		$pickListValues[""] = vtranslate("LBL_SELECT_OPTION", 'Settings:Webforms');
-		return ($pickListValues + parent::getPicklistValues());
+		return ($pickListValues + parent::getEditablePicklistValues());
 	}
 
 	/**