Имя: Пароль:
1C
1С v8
СКД, автофиксация и отмена автофиксации. Есть ли способ проще?
0 Fragster
 
гуру
07.05.13
21:23
Нашел способ с обработкой ожидания, посчитал его методологически неправильным, тем более что "Реализована возможность автоматической установки фиксации строк и колонок в сформированном отчете. Реализованы свойства ФиксироватьСлева и ФиксироватьСверху для объекта ОформлениеЯчейкиТаблицыОбластиКомпоновкиДанных." (с) 1с.

Попробовал воспользоваться этим самым ФиксироватьСлева/Сверху, нашел только как программно это сделать, соответственно, получилось примерно так:


Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка)
   КомпоновщикМакета = Новый КомпоновщикМакетаКомпоновкиДанных;
   МакетКомпоновки = КомпоновщикМакета.Выполнить(СхемаКомпоновкиДанных, КомпоновщикНастроек.Настройки);
   
   Для каждого ОписаниеМакета Из МакетКомпоновки.Макеты Цикл
       Для каждого СтрокаТаблицы Из ОписаниеМакета.Макет Цикл
           Для каждого Ячейка Из СтрокаТаблицы.Ячейки Цикл
               А = Ячейка.Оформление.НайтиЗначениеПараметра(Новый ПараметрКомпоновкиДанных("ФиксироватьСлева"));
               Если А <> Неопределено Тогда
                   А.Значение = Ложь;
               КонецЕсли;
           КонецЦикла;
       КонецЦикла;
   КонецЦикла;
   
   ПроцессорКомпоновкиДанных = Новый ПроцессорКомпоновкиДанных;
   ПроцессорКомпоновкиДанных.Инициализировать(МакетКомпоновки, ВнешниеНаборыДанных, ДанныеРасшифровки, Истина);
   
   ПроцессорВывода = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВТабличныйДокумент;
   ПроцессорВывода.УстановитьДокумент(ДокументРезультат);
   ПроцессорВывода.Вывести(ПроцессорКомпоновкиДанных);
   
   СтандартнаяОбработка = Ложь;
КонецПроцедуры


Но мне такой вариант не нравится, должен же быть способ проще (а в идеале - вообще мышкой натыкать).
1 zladenuw
 
08.05.13
00:17
ЭлементыФормы.ИмяТабличнойЧасти.ФиксацияСлева = ЭлементыФормы.ТабличноеПоле1.Колонки.Количество()
; // -количесво столбцов;

А так не ?
2 Fragster
 
гуру
08.05.13
08:37
(1) формы нет :)
3 Fragster
 
гуру
08.05.13
08:37
и таб части нет :)
4 zladenuw
 
08.05.13
10:25
жаль. :)
5 Fragster
 
гуру
08.05.13
11:27
ну вообще ДокументРезультат.ФиксацияСлева = 0; после вывода тоже работает, но получается, все равно ручной вывод отчета нужен, мышкой не натыкать?
6 zladenuw
 
08.05.13
12:28
(5) а разве через форму настроек нельзя сделать фиксацию строк и столбцов?
7 Fragster
 
гуру
08.05.13
12:29
(6) скрин покажи, я не нашел
8 zladenuw
 
08.05.13
13:29
(7) нема. нашел что
1cvirus  10.09.11 11:30
В 8.2.14 добавили
Реализована возможность автоматической установки фиксации строк и колонок в сформированном отчете. Реализованы свойства "ФиксироватьСлева" и "ФиксироватьСверху" для объекта "ОформлениеЯчейкиТаблицыОбластиКомпоновкиДанных".

По умолчанию ВКЛЮЧЕНА.

Ждите, обещают дать возможность управления фиксацией.

только нету ее до сих пор ужас :(