Имя: Пароль:
1C
1С v8
Порядок команды печати внешней печатной формы
0 Demanufactyre
 
18.02.22
08:36
Здравствуйте, как определить порядок команды печати в списке команд печати в документах, списках и т.д.?
*.Порядок = 1; не помогает.
Или я его не там пишу.
Передаю в параметры вместе с представлением, идентификатором, модификатором и т.п.
1 Мимохожий Однако
 
18.02.22
08:53
Сортировка идёт по Порядку и Представлению. Попробуй изменить представление команды. Код показывай, не стесняйся.
2 Demanufactyre
 
18.02.22
09:03
(1)Дело в том, что наименование нельзя менять (условие заказчика). 1С говорит, что сортировка идет вначале по порядку, потом наименование. У меня есть еще (Метро Счет-Фактура), но они в расширении конфигурации, с ними все в порядке. Порядка слушаются. Внешние печатные не хотят.

Вот код:

#Область СлужебныеПроцедурыИФункции
    
    Функция СведенияОВнешнейОбработке() Экспорт
        
        ПараметрыРегистрации = Новый Структура;
        ПараметрыРегистрации.Вставить("Вид","ПечатнаяФорма");
        ПараметрыРегистрации.Вставить("Наименование","Метро Акт (прочие услуги)");
        ПараметрыРегистрации.Вставить("Версия","1.0");
        ПараметрыРегистрации.Вставить("Информация","Метро Акт (прочие услуги)");
        ПараметрыРегистрации.Вставить("БезопасныйРежим",Истина);
        
        Команды = ПолучитьТаблицуКоманд();
        ПараметрыРегистрации.Вставить("Назначение",ПолучитьНазначениеОбработки());
        ПараметрыРегистрации.Вставить("Команды",Команды);
        
        ДобавитьКоманду(Команды, "Метро Акт (прочие услуги)", "АктИТССвязь", "ВызовСерверногоМетода", Ложь, "ПечатьMXL");
        
        Возврат ПараметрыРегистрации;
        
    КонецФункции
    
    Функция ПолучитьНазначениеОбработки()    
        
        Массив = Новый Массив;
        Массив.Добавить("Документ.РеализацияТоваровИУслуг");    
        Возврат Массив;
        
    КонецФункции
    
    Функция ПолучитьТаблицуКоманд()
        
        Команды = Новый ТаблицаЗначений;
        Команды.Колонки.Добавить("Представление", Новый ОписаниеТипов("Строка"));
        Команды.Колонки.Добавить("Идентификатор", Новый ОписаниеТипов("Строка"));
        Команды.Колонки.Добавить("Использование", Новый ОписаниеТипов("Строка"));
        Команды.Колонки.Добавить("ПоказыватьОповещение", Новый ОписаниеТипов("Булево"));
        Команды.Колонки.Добавить("Модификатор", Новый ОписаниеТипов("Строка"));
        Команды.Колонки.Добавить("Порядок", Новый ОписаниеТипов("Число"));
        
        Возврат Команды;
        
    КонецФункции
    
    Процедура ДобавитьКоманду(ТаблицаКоманд,
        Представление,
        Идентификатор,
        Использование = "ОткрытиеФормы",
        ПоказыватьОповещение = Ложь,
        Модификатор = "ПечатьMXL")
        
        НоваяКоманда = ТаблицаКоманд.Добавить();
        НоваяКоманда.Представление = Представление;
        НоваяКоманда.Идентификатор = Идентификатор;
        НоваяКоманда.Использование = Использование;
        НоваяКоманда.ПоказыватьОповещение = ПоказыватьОповещение;
        НоваяКоманда.Модификатор = Модификатор;
        НоваяКоманда.Порядок = 1;
    КонецПроцедуры
    
    #КонецОбласти
3 hhhh
 
18.02.22
09:57
(2) вставь в начало наименования пробел
4 Demanufactyre
 
18.02.22
10:28
(3) На одну строку поднялось и все. Ну и выглядит как будто криво. Как сделать чтоб не стыдно было.
Выдавать глобальные идеи — это удовольствие; искать сволочные маленькие ошибки — вот настоящая работа. Фредерик Брукс-младший