diff --git a/.gitignore b/.gitignore
index 1b58a932618a4de5ed7cea69c5b4ac23fd04787a..585abce2b3edb78d0d5e1b4aa2f0db528c23fccb 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,2 +1,3 @@
 vendor/*
 !vendor/.htaccess
+.vscode/*
\ No newline at end of file
diff --git a/modules/Settings/Roles/actions/Save.php b/modules/Settings/Roles/actions/Save.php
index 62124df5dd03a3815b90262f311bfb90b1e17aa9..5b2587ea4455a2eae77a656d59cef4de1de57f96 100644
--- a/modules/Settings/Roles/actions/Save.php
+++ b/modules/Settings/Roles/actions/Save.php
@@ -25,6 +25,10 @@ class Settings_Roles_Save_Action extends Vtiger_Action_Controller {
 		$recordId = $request->get('record');
 		$roleName = $request->get('rolename');
 		$allowassignedrecordsto = $request->get('allowassignedrecordsto');
+		$duplicate = Settings_Roles_Record_Model::getInstanceByName($roleName,array($recordId));
+		if($duplicate) {
+			throw new Exception(vtranslate('LBL_DUPLICATES_EXIST',$request->getModule(false)));
+		}
 
 		$moduleModel = Settings_Vtiger_Module_Model::getInstance($qualifiedModuleName);
 		if(!empty($recordId)) {