Имя: Пароль:
1C
1С v8
Определить при открытии Обработки нужно ли запускать авторегистрацию обработки
0 sergey0703ua
 
28.03.14
16:01
Добрый день, во внешней обработке в модуле формы добавил процедуру:
Процедура ПередОткрытием(Отказ, СтандартнаяОбработка)
    СтандартнаяОбработка = Ложь;
// Отказ = Истина;
Эл = Справочники.ВнешниеОбработки.НайтиПоНаименованию(ЭтотОбъект.Метаданные().Синоним);
    Режим = "";
    Если Эл = Справочники.ВнешниеОбработки.ПустаяСсылка() Тогда
        Режим = "Создать";
    Иначе
        Если Вопрос("В информационной базе уже зарегистрирована такая обработка. Обновить существующую?", РежимДиалогаВопрос.ДаНет) = КодВозвратаДиалога.Да Тогда
            Режим = "Обновить";
        КонецЕсли;
    КонецЕсли;    
    Если Режим = "" Тогда
        Возврат;
    КонецЕсли;
    Если Режим = "Создать" Тогда
        ЭлСпрВнОбр = Справочники.ВнешниеОбработки.СоздатьЭлемент();
    КонецЕсли;    
    Если Режим = "Обновить" Тогда
        ЭлСпрВнОбр = Эл.ПолучитьОбъект();
    КонецЕсли;
    ЭлСпрВнОбр.ВидОбработки = Перечисления.ВидыДополнительныхВнешнихОбработок.Обработка;
    ЭлСпрВнОбр.Наименование = ЭтотОбъект.Метаданные().Синоним;
    ЭлСпрВнОбр.ХранилищеВнешнейОбработки = Новый ХранилищеЗначения(Новый ДвоичныеДанные(ИспользуемоеИмяФайла));
    ЭлСпрВнОбр.Принадлежность.Очистить();
    Прин = ЭлСпрВнОбр.Принадлежность.Добавить();
ЭлСпрВнОбр.Записать();
    Предупреждение("Внешняя обработка документов ""Проверка Контрагентов ФОП""
                             |зарегистрирована в справочнике ""Внешние обработки""",10);
КонецПроцедуры

     И замечательно проходит авторегистрация, обработка самостоятельно заносится в справочник "ВнешниеОбработки", а при повторном открытии через "Файл открыть" находит себя в справочнике "Внешние обработки"
и обновляет.
     Однако когда пользователь открывает данную обработку уже из справочника "Внешние обработки" для того чтобы ее использовать -опять запускается процедура авторегистрации из "ПередОткрытием()", возможно ли программно определить что обработка открывается не через меню "Файл-Открыть" а через справочник "Внешние обработки" чтобы в этом случае НЕ запускалась процедура "ПередОткрытием"???
1 sergey0703ua
 
30.03.14
17:32
Попробую поднять тему
2 Поpyчик-4
 
30.03.14
18:01
(1)
http://infostart.ru/public/75166/
http://infostart.ru/public/181707/
http://infostart.ru/public/238428/
Скачиваешь какую надо и смотришь, как правильно делать авторегистрацию/обновление