Имя: Пароль:
1C
 
Открытие списка документов по двойному клику на ячейке макета СКД
,
0 falselight
 
02.12.19
06:29
Есть отчет на СКД. Вывод данных сделан в макет. У одной ячейки нужно сделать вывод содержимого.
то есть по двойному клику на этой ячейке, выполнить запрос, и открыть таблицу с выбранными данными.
Подскажите пожалуйста как это сделать?
1 falselight
 
02.12.19
06:35
Задал в параметре макета расшифровку этого поля. http://joxi.ru/Q2KbdNVCLKzGkm
Как по двойному клику обработать его открытие? Должно быть увеличительное стекло на поле появляться.
Как его сделать?
2 shadow_sw
 
02.12.19
06:36
3 falselight
 
02.12.19
07:39
(2) Я формирую макет, но по двойному щелчку ничего не происходит ((((((
Сформировал уже процедуры, и поставил в них точки останова.
4 falselight
 
02.12.19
07:39
На макете нет лупы. Вро де как по средством неё, все открываться может.
5 falselight
 
02.12.19
07:50
Как по двойному клику на ячейке мне вызвать какое либо действие что бы обработать открытие подформы?
6 falselight
 
02.12.19
08:00
(2) Это если выводится не макет, а средствами СКД, а если я выводу в макете, как мне обработать двойной клик на одной ячейке?
7 falselight
 
02.12.19
08:07
Я вот добавил, но все равно лупа не появляется     Результат.ТолькоПросмотр = Истина;
КонецПроцедуры
8 Мимохожий Однако
 
02.12.19
08:08
(3) Табличный документ должен быть в режиме Просмотр=Истина.
9 falselight
 
02.12.19
08:12
(8) Я же вот его так поставил -> (7)
10 falselight
 
02.12.19
08:14
(8) Если он у меня истина почему не позволяется открыть расшифровку? Или обработать дабл клик по табличной части документа?
11 Мимохожий Однако
 
02.12.19
08:15
(9) Приведи код процедуры при обработке события выбора ячейки. Там точка остановки отрабатывает?
12 falselight
 
02.12.19
08:15
(11) /На макете лупа не появляется, кода пока никакого нет, я так понимаю, даже не сработает он.
13 falselight
 
02.12.19
08:16
&НаКлиенте
Процедура ЛистВыполнениеОбработкаРасшифровки(Элемент, Расшифровка, СтандартнаяОбработка, ДополнительныеПараметры)
    й=1;
КонецПроцедуры


Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка)
    й=1;
КонецПроцедуры


й - для точек останова, но они не срабатывают
14 Мимохожий Однако
 
02.12.19
08:17
(12) Отстань от лупы. Включи отладчик и посмотри как отрабатывается событие выбора ячейки.В (2) всё доступно
15 Мимохожий Однако
 
02.12.19
08:18
Покажи код Процедура РезультатОбработкаРасшифровки
16 Мимохожий Однако
 
02.12.19
08:18
(7) Эту процедуру тоже покажи
17 falselight
 
02.12.19
08:20
(16)

&НаСервере
Процедура ВыводВТабличныйДокументОтчетаПоСКД(СКД, Результат, ПараметрыОтчета)
    
    НастройкиКомпоновщика = СКД.НастройкиПоУмолчанию;
    ПараметрыНастройки = НастройкиКомпоновщика.ПараметрыДанных;
    
    ДанныеРасшифровки = Новый ДанныеРасшифровкиКомпоновкиДанных;
    
    // Устанавливаем параметры отчета.
    ЗначениеПараметра = ПараметрыНастройки.НайтиЗначениеПараметра(Новый ПараметрКомпоновкиДанных("Период"));
    Если ЗначениеПараметра<>Неопределено Тогда
        ЗначениеПараметра.Значение = ПараметрыОтчета["НачалоПериода"];
    КонецЕсли;    
    
    ЗначениеПараметра = ПараметрыНастройки.НайтиЗначениеПараметра(Новый ПараметрКомпоновкиДанных("НачалоПериода"));
    Если ЗначениеПараметра<>Неопределено Тогда
        ЗначениеПараметра.Значение = ПараметрыОтчета["ОкончаниеПериода"];
    КонецЕсли;

    ЗначениеПараметра = ПараметрыНастройки.НайтиЗначениеПараметра(Новый ПараметрКомпоновкиДанных("ОкончаниеПериода"));
    Если ЗначениеПараметра<>Неопределено Тогда
        ЗначениеПараметра.Значение = ПараметрыОтчета["ОкончаниеПериода"];
    КонецЕсли;
    
    //ЗначениеПараметра = ПараметрыНастройки.НайтиЗначениеПараметра(Новый ПараметрКомпоновкиДанных("Организация"));
    //Если ЗначениеПараметра<>Неопределено Тогда
    //    ЗначениеПараметра.Значение = ПараметрыОтчета["Организация"];
    //КонецЕсли;
    
    ЗначениеПараметра = ПараметрыНастройки.НайтиЗначениеПараметра(Новый ПараметрКомпоновкиДанных("Ответственный"));
    Если ЗначениеПараметра<>Неопределено Тогда
        ЗначениеПараметра.Значение = ПараметрыОтчета["Ответственный"];
    КонецЕсли;
    
    ЗначениеПараметра = ПараметрыНастройки.НайтиЗначениеПараметра(Новый ПараметрКомпоновкиДанных("ОрганизацияДивизион"));
    Если ЗначениеПараметра <> Неопределено Тогда
        ЗначениеПараметра.Значение = ПараметрыОтчета["ОрганизацияДивизион"];
    КонецЕсли;
    //
    ЗначениеПараметра = ПараметрыНастройки.НайтиЗначениеПараметра(Новый ПараметрКомпоновкиДанных("ОбъектФормированияОтчетаТекстом"));
    Если ЗначениеПараметра <> Неопределено Тогда
        ЗначениеПараметра.Значение = ПараметрыОтчета["ОбъектФормированияОтчетаТекстом"];
    КонецЕсли;
    
    КомпоновщикМакета = Новый КомпоновщикМакетаКомпоновкиДанных;
    МакетКомпоновки = КомпоновщикМакета.Выполнить(СКД, НастройкиКомпоновщика, ДанныеРасшифровки);    
    
    ПроцессорКомпоновкиДанных = Новый ПроцессорКомпоновкиДанных;
    ПроцессорКомпоновкиДанных.Инициализировать(МакетКомпоновки,,, Истина);
    
    Результат.Очистить();
    
    ПроцессорВывода = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВТабличныйДокумент;
    ПроцессорВывода.УстановитьДокумент(Результат);
    ПроцессорВывода.Вывести(ПроцессорКомпоновкиДанных);
    
    Результат.ОриентацияСтраницы = ОриентацияСтраницы.Ландшафт;
    Результат.АвтоМасштаб = Истина;
    Результат.ТолькоПросмотр = Истина;
КонецПроцедуры
18 falselight
 
02.12.19
08:21
(15) Там я только сделал заготовку для точки останова но она не срабатывает.

НаКлиенте
Процедура ЛистВыполнениеОбработкаРасшифровки(Элемент, Расшифровка, СтандартнаяОбработка, ДополнительныеПараметры)
    й=1;
КонецПроцедуры
19 Мимохожий Однако
 
02.12.19
08:29
Эти процедуры в модуле формы или  в модуле отчета? Какие видишь события при выборе ячейки в табличном поле?
20 Пузан
 
02.12.19
08:29
Табличный документ с результатом помещен на форму как элемент формы?
21 Мимохожий Однако
 
02.12.19
08:30
из (2) "Что бы получить доступ к этому событию, необходимо сначала сгенерировать основную форму отчета. Затем ПолеТабличногоДокумента > Свойства > События."
22 falselight
 
02.12.19
08:35
у меня вот что появилось в параметрах макета, что там нужно задатьhttp://joxi.ru/EA4geP9fo7d1O2 ?
23 falselight
 
02.12.19
08:37
24 falselight
 
02.12.19
08:43
25 falselight
 
02.12.19
08:51
почему не срабатывает точка останова, и почему не показывается лупа не понятно
26 falselight
 
02.12.19
09:03
Почему у меня не срабатывает обработка расшифровки?
27 Ёпрст
 
02.12.19
09:10
(26) недостоин
28 Ёпрст
 
02.12.19
09:12
29 Мимохожий Однако
 
02.12.19
09:27
(28) ага. Это (2).
30 falselight
 
02.12.19
09:35
(28)(29) У меня все это сгенерировано!
31 falselight
 
02.12.19
09:38
(28)(29) Если все есть, почему не работает?
32 hhhh
 
02.12.19
09:52
(31) понедельник - день тяжелый. Завтра попробуй.
33 toypaul
 
гуру
02.12.19
09:55
34 falselight
 
02.12.19
11:07
(33) Если у меня данные выводятся в макет скд, какие там могут быть особенности?
35 falselight
 
02.12.19
11:13
Бесполезно, лупа не появляется. Обработчики расшифровки не срабатывают
36 toypaul
 
гуру
02.12.19
11:14
(34) напиши адрес куда приехать - бригада скорой СКДшной помощи приедет и все за тебя сделает
37 Престарелый Заяц
 
02.12.19
11:20
(33) С ума сошел, Ливингстар и что то читать. :)
38 falselight
 
02.12.19
12:47
(37) Нужно читать и видео смотреть!!!!
Тут так сложилось что пока нет времени на это. Это пока.

У меня в табличный документ выводится макет, вот в нем не срабатывает обработка расшифровки, хотя как нужно все сделал
39 hhhh
 
02.12.19
12:51
(38) значит, не сделал. проверяй еще раз.
40 DrZombi
 
гуру
02.12.19
13:07
(0) Подмени текст расшифровки на ссылку
41 DrZombi
 
гуру
02.12.19
13:08
+ или на строку, которая будет олицетворять твою хотелку :)
42 falselight
 
02.12.19
13:25
(41) Сама процедура обработка расшифровки не запускается.
43 hhhh
 
02.12.19
13:32
(42) проверь ячейку макета. Может там расшифровка не задана.
44 falselight
 
02.12.19
13:37
(43) Я же её сам задал, что бы проверить.
45 falselight
 
03.12.19
09:38
(40)(41) А как это сделать?
46 falselight
 
03.12.19
09:55
вот выводится макет, макет нарисован на вкладке скд
задаю поле расшифровки, а процедура обработка расшифровки этого поля не срабытывает
давно не касался этого, не пойму что тут не так

&НаКлиенте
Процедура ЛистВыполнениеОбработкаРасшифровки(Элемент, Расшифровка, СтандартнаяОбработка, ДополнительныеПараметры)
47 falselight
 
03.12.19
10:34
Смотрите, вот запрос в СКД

ВЫБРАТЬ
    1 КАК ПолеСборки,
    КОЛИЧЕСТВО(*) КАК Просрочены
ИЗ
    Документ.РеализацияМероприятийСписка1.ПунктыПредписаний КАК ПунктыПредписания
ГДЕ
    ПунктыПредписания.ДатаПредписания <= КОНЕЦПЕРИОДА(&НачалоПериода, МЕСЯЦ)
    И ПунктыПредписания.Ссылка.Организация = &ОрганизацияДивизион
    И ПунктыПредписания.Ссылка.Проведен
    И НЕ ПунктыПредписания.Мероприятие.Выполнено
    И ПунктыПредписания.Мероприятие.СрокИсполнения < &ТекущаяДата
    И НЕ ПунктыПредписания.Мероприятие.Отменено


Значения выводятся в макете СКД вот сюда http://joxi.ru/VrwRa43H7xXXPA, как по дабл клику в доступных словах открыть расшифровку, что бы отбработать её программно?
48 falselight
 
03.12.19
10:36
Только просмотр задан

    Результат.ОриентацияСтраницы = ОриентацияСтраницы.Ландшафт;
    Результат.АвтоМасштаб = Истина;
    Результат.ТолькоПросмотр = Истина;
КонецПроцедуры


Форма у отчета есть http://joxi.ru/YmEbex8CwEDqE2


Что нужно сделать что бы расшифровку вывести?

табличное поле на форме есть http://joxi.ru/eAObaQlC9Ya7l2
49 falselight
 
03.12.19
10:45
Все заработала!!!!!!!!!!!!! Я в расшифровке написал ОтветственныйДолжность, и появилась лупа на этом поле и
сработала процедура. Тоесть туда нужно прописывать значение ссылочного типа из выборки. Простите если не соображал долго.
50 falselight
 
03.12.19
10:47
Интересно, это получается в расшифровку нужно прописать не важно какое поле ссылочного типа? Главное что бы запустить обработку расшифровки? Например мне в том поле ОтветственныйДолжность вообще не зачем и не к чему, не по вопросу!
51 Ёпрст
 
03.12.19
12:51
(50) не угадал. В расшифровку можно положить что угодно и потом это обработать.