Чтобы не ходить по кругу с разного рода обработками чистки справочников, не встречать проблем при обменах (например, насторону - с сайтом), можно приделать приведенный ниже контроль интерактивного ввода. А если вставить это во все типовые учетные конфигурации 1С, то через полгода будет экономия управленческих трудозатрат на тысячи денег.
ФормаЭлемента Справочника Контрагенты
Поле Наименование
Событие ПриИзмененииТекстаРедактирования
&НаКлиенте
Процедура НаименованиеИзменениеТекстаРедактирования(Элемент, Текст, СтандартнаяОбработка)
МассивБуковок = Новый Массив;
МассивБуковок.Добавить("ИП "); //ru
МассивБуковок.Добавить("ОАО ");//ru
МассивБуковок.Добавить("ЗАО ");//ru
МассивБуковок.Добавить("ООО ");//ru
МассивБуковок.Добавить("OAO ");//en
МассивБуковок.Добавить("OOO ");//en
МассивБуковок.Добавить("ИП""");//ru
МассивБуковок.Добавить("ОАО""");//ru
МассивБуковок.Добавить("ЗАО""");//ru
МассивБуковок.Добавить("ООО""");//ru
МассивБуковок.Добавить("OAO""");//en
МассивБуковок.Добавить("OOO""");//en
Оповестить = Ложь;
Если МассивБуковок.Найти(ВРег(Лев(Текст,3))) <> Неопределено или
МассивБуковок.Найти(ВРег(Лев(Текст,4))) <> Неопределено Тогда
Параметр = Новый Структура;
Параметр.Вставить("Элемент", Элемент);
Параметр.Вставить("Действие", "УбратьБуквы");
Оповещение = Новый ОписаниеОповещения("ПредупреждениеЗакрыть", ЭтаФорма, Параметр);
ПредупреждениеТекст = "Не надо начинать с ""ООО"", ""ИП"" и т.д.
|Как вы потом контрагента искать, если все названия будут начинаться с ""ООО""?
|Вводите так: Призма ООО, Иванова ИП, и т.д.";
Оповестить = Истина;
КонецЕсли;
Если СтрНайти(Текст, """") > 0 или
СтрНайти(Текст, "'") > 0 Тогда
Параметр = Новый Структура;
Параметр.Вставить("Элемент", Элемент);
Параметр.Вставить("Действие","УбратьКавычки");
Оповещение = Новый ОписаниеОповещения("ПредупреждениеЗакрыть", ЭтаФорма, Параметр);
ПредупреждениеТекст = "Не надо кавычек.
|Потом вам искать контрагента будет затруднительно.";
Оповестить = Истина;
КонецЕсли;
Если Оповестить Тогда
ПоказатьПредупреждение(Оповещение, ПредупреждениеТекст, 1000);
КонецЕсли;
КонецПроцедуры
&НаКлиенте
Процедура ПредупреждениеЗакрыть(Параметр) Экспорт
Если Параметр.Действие = "УбратьКавычки" Тогда
//Текст не доступен программно. Жаль
//Объект.Наименование = СтрЗаменить(Объект.Наименование, """", "");
//Параметр.Элемент.ТекстРедактирования = СтрЗаменить(Параметр.Элемент.ТекстРедактирования,"""","");
ИначеЕсли Параметр.Действие = "УбратьБуквы" Тогда
Объект.Наименование = "";
//Параметр.Элемент.ТекстРедактирования = "";
КонецЕсли;
КонецПроцедуры