Итак: Для того чтоб добавлять новый штрихкод для номенклатуры, просто открыв форму элемента номенклатуры, открываем в конфигураторе -Справочники - Номенклатура - ФормаЭлемента, находим функцию СШКНеизвестныйКод и заменяем её код на следующий:

Функция СШКНеизвестныйКод(Штрихкод, ТипКода, СШК) Экспорт

    Если ЭтоНовый() И РаботаСДиалогами.ЗаписатьНовыйОбъектВФорме(ЭтаФорма) Тогда
        ЭлементыФормы.Штрихкоды.ДобавитьСтроку();
    КонецЕсли;

    ТекущиеДанные = ЭлементыФормы.Штрихкоды.ТекущиеДанные;

    Если ТекущиеДанные = Неопределено Тогда
        //Предупреждение("Не выбрана строка таблицы штрихкодов, для которой регистрируется штрихкод.");
     Ответ=Вопрос("Добавить новый штрихкод для номенклатуры",РежимДиалогаВопрос.ДаНет,,,"Добавить новый штрихкод?");
        Если Ответ=КодВозвратаДиалога.Да Тогда
            ТекЗапись = РегистрыСведений.Штрихкоды.СоздатьМенеджерЗаписи();
        
            ТекЗапись.Владелец         = Ссылка;
            ТекЗапись.ЕдиницаИзмерения = ЕдиницаХраненияОстатков;
            ТекЗапись.ТипШтрихкода     = ТипКода;
            ТекЗапись.Качество         = Справочники.Качество.Новый;
            ТекЗапись.Штрихкод         = Штрихкод;

            Попытка
                ТекЗапись.Записать();
            Исключение
            КонецПопытки;
        
        КонецЕсли;
        
        Возврат Истина;
    КонецЕсли;

    ТекЗапись = РегистрыСведений.Штрихкоды.СоздатьМенеджерЗаписи();
    ЗаполнитьЗначенияСвойств(ТекЗапись, ТекущиеДанные);
    ТекЗапись.Прочитать();
    
    //Если активная строка уже имеет штрихкод - спросим заменять или добавить новый
    Если ЗначениеЗаполнено(ТекЗапись.Штрихкод)=Истина Тогда
        //Спросим заменить штрихкод или добавить новый
        Ответ=Вопрос("Выбранное поле уже содержит штрих код." + Символы.ПС + "ДА: Заменить штрихкод новым" + Символы.ПС + "НЕТ: Добавить новый штрихкод"+ Символы.ПС + "ОТМЕНА: Отменить все действия",РежимДиалогаВопрос.ДаНетОтмена,,,"Хотите заменить штрих код?");
        
        //Если ответ Да - заменяем текущую строку
        Если Ответ=КодВозвратаДиалога.Да Тогда
            ТекЗапись.ТипШтрихкода = ТипКода;
            ТекЗапись.Штрихкод     = ШтрихКод;
            
        //Если ответ Нет - добавляем новую строку    
        ИначеЕсли Ответ=КодВозвратаДиалога.Нет Тогда
            ТекЗапись = РегистрыСведений.Штрихкоды.СоздатьМенеджерЗаписи();
        
            ТекЗапись.Владелец         = Ссылка;
            ТекЗапись.ЕдиницаИзмерения = ЕдиницаХраненияОстатков;
            ТекЗапись.ТипШтрихкода     = ТипКода;
            ТекЗапись.Качество         = Справочники.Качество.Новый;
            ТекЗапись.Штрихкод         = Штрихкод;

            Попытка
                ТекЗапись.Записать();
            Исключение
            КонецПопытки;
            Возврат Истина;
            
        //Если Отмена - ничего не делаем
        Иначе
            Возврат Истина;
        КонецЕсли;
    //Если текущая строка пустая, добавляем новый штрихкод    
    Иначе
        ТекЗапись.ТипШтрихкода = ТипКода;
        ТекЗапись.Штрихкод     = ШтрихКод;
    КонецЕсли;
    
    Попытка
        ТекЗапись.Записать();
    Исключение
    КонецПопытки;

    Возврат Истина;

КонецФункции // СШКНеизвестныйКод()


Теперь при открытии номенкларуты не прийдется выбирать вкладку Штрихкоды и добавлять новую запись, можно сразу просканировать код, и нажать Да, если его нужно добавить.


P.S. Расписал так подробно только потому, чтоб было понятно и начинающим программистам, вроде меня smile.gif