Имя: Пароль:
1C
 
Новая БСП - Форма отчета - убрали "Копировать" из контекстного меню.
0 RomaH
 
naïve
10.03.21
10:52
Убираю код из
"ОбработкаДополнительнойРасшифровки" и ставлю флаг "Автозаполнение" в контекстном меню ТП - кнопка "Копировать" есть

восстанавливаю код обработчика

- "Копировать" нету

для пользователей Ctrl+C - это недостижимо

как вернуть автозаполнение оставив функционал БСП?

Процедура ОбработкаДополнительнойРасшифровки(Форма, Данные, Элемент, Расшифровка, СтандартнаяОбработка) Экспорт
    
    Если Данные = Неопределено Тогда
        Возврат;
    КонецЕсли;
    
    СтандартнаяОбработка = Ложь;
    
    ОсновноеМеню = Новый Массив;
    
    СвойстваОбласти = СвойстваОбластиРасшифровки(Форма, Элемент.ТекущаяОбласть, Данные.Поле);
    
    Если СвойстваОбласти.ЭтоЗаголовок Тогда
        
        СвойстваЗаголовка = СвойстваОбласти.СвойстваЗаголовка;
        
        Если ТипЗнч(СвойстваЗаголовка.Поле) <> Тип("ПолеКомпоновкиДанных")
            Или СвойстваЗаголовка.ТипЗначения.Типы().Количество() = 0 Тогда
            
            Возврат;
        КонецЕсли;
        
        ДополнительноеМеню = КонтекстноеМенюОбластиЗаголовка();
    Иначе
        ОсновноеМеню.Добавить(ДействиеОбработкиРасшифровкиКомпоновкиДанных.Расшифровать);
        ДополнительноеМеню = КонтекстноеМенюОбластиДанных(СвойстваОбласти.СвойстваЗаголовка, Данные.ДоступныеВидыСравнения);
    КонецЕсли;
    
    ОбработкаРасшифровки = Новый ОбработкаРасшифровкиКомпоновкиДанных(
        Форма.ОтчетДанныеРасшифровки, Новый ИсточникДоступныхНастроекКомпоновкиДанных(Форма.НастройкиОтчета.АдресСхемы));
    
    ДополнительныеПараметры = Новый Структура;
    ДополнительныеПараметры.Вставить("Форма", Форма);
    ДополнительныеПараметры.Вставить("Данные", Данные);
    ДополнительныеПараметры.Вставить("Расшифровка", Расшифровка);
    ДополнительныеПараметры.Вставить("ОбработкаРасшифровки", ОбработкаРасшифровки);
    ДополнительныеПараметры.Вставить("СвойстваОбласти", СвойстваОбласти);
    ДополнительныеПараметры.Вставить("Меню", ДополнительноеМеню);
    
    Обработчик = Новый ОписаниеОповещения("ВыполнитьРасшифровку", ЭтотОбъект, ДополнительныеПараметры);
    //ОбработкаРасшифровки.ПоказатьВыборДействия(Обработчик, Расшифровка, ОсновноеМеню, ДополнительноеМеню);
    ОбработкаРасшифровки.ПоказатьВыборДействия(Обработчик, Расшифровка);
    
КонецПроцедуры
1 RomaH
 
naïve
10.03.21
10:54
//ОбработкаРасшифровки.ПоказатьВыборДействия(Обработчик, Расшифровка, ОсновноеМеню, ДополнительноеМеню);
    ОбработкаРасшифровки.ПоказатьВыборДействия(Обработчик, Расшифровка);

вот тут вот смущает:

<ДоступныеДействия> (необязательный)
Тип: Массив.
Доступные действия обработки. Элементами массива должны быть значения перечисления ДействиеОбработкиРасшифровкиКомпоновкиДанных.
Если параметр не указан, разрешены все действия.
<ДополнительныеПунктыМеню> (необязательный)
Тип: СписокЗначений.
Позволяет передать обработке расшифровки набор дополнительных действий.
На основе списка значений будут построены пункты меню, которые добавятся к стандартным.

убрал же "ДоступныеДействия" - а "разрешены все действия" - где?
Требовать и эффективности, и гибкости от одной и той же программы — все равно, что искать очаровательную и скромную жену... по-видимому, нам следует остановиться на чем-то одном из двух. Фредерик Брукс-младший