|
Расшифровка в СКД УФ | ☑ | ||
---|---|---|---|---|
0
1СКонсультант
24.03.14
✎
17:11
|
Есть отчет, хочу добавить дополнительное меню расшифровки. Прописываю:
Перем ВыполненноеДействие, ПараметрВыполненногоДействия; СтандартнаяОбработка = Ложь; СписокДополнительныхДействий = Новый СписокЗначений; ДоступныеДействия = Новый Массив; ДоступныеДействия.Добавить(ДействиеОбработкиРасшифровкиКомпоновкиДанных.Расшифровать); ДоступныеДействия.Добавить(ДействиеОбработкиРасшифровкиКомпоновкиДанных.ОткрытьЗначение); ИсточникНастроек = Новый ИсточникДоступныхНастроекКомпоновкиДанных(Отчет); МенюРасшифровки = Новый ОбработкаРасшифровкиКомпоновкиДанных(ДанныеРасшифровки, ИсточникНастроек); МенюРасшифровки.ВыбратьДействие(Расшифровка,ВыполненноеДействие,ПараметрВыполненногоДействия,,СписокДополнительныхДействий); После этого не работает стандартный пункт меню расшифровать. Что не так? Или его теперь только вручную прописывать? |
|||
1
1СКонсультант
24.03.14
✎
17:33
|
все уже по домам, что ли?
|
|||
2
VikingKosmo
24.03.14
✎
17:37
|
СтандартнаяОбработка = Ложь;
ни о чем не говорит? |
|||
3
1СКонсультант
24.03.14
✎
17:54
|
(2) говорит, но если ее не ставить, то выскакивает два раза диалог расшифровки(
|
|||
4
vmv
24.03.14
✎
17:57
|
(3) значит нужно скопировать стандартные расшифровки, добавить свои и все это добро в меню расшифровки
просто, красиво, логично да |
|||
5
1СКонсультант
24.03.14
✎
18:12
|
(4) переведите? Что есть стандартные расшифровки?
|
|||
6
1СКонсультант
24.03.14
✎
22:20
|
ап
|
|||
7
Ksandr
24.03.14
✎
22:21
|
Доступа к ИТС я так полагаю нет?
|
|||
8
1СКонсультант
24.03.14
✎
22:51
|
(7) есть
|
|||
9
1СКонсультант
25.03.14
✎
13:04
|
Ладно, я так понимаю стандартная расшифровка не работает в таком случае. Как мне обработать расшифровку стандартную во внешнем отчете? я получил настройки применил их и дальше забтычка в том, что мне нужно открыть новый этот же внешний отчет
|
|||
10
1СКонсультант
25.03.14
✎
18:35
|
&НаКлиенте
Процедура РезультатОбработкаРасшифровки(Элемент, Расшифровка, СтандартнаяОбработка) Перем ВыполненноеДействие, ПараметрВыполненногоДействия; СтандартнаяОбработка = Ложь; СписокДополнительныхДействий = Новый СписокЗначений; МассивДействий = Новый Массив; МассивДействий.Добавить(ДействиеОбработкиРасшифровкиКомпоновкиДанных.ОткрытьЗначение); МассивДействий.Добавить(ДействиеОбработкиРасшифровкиКомпоновкиДанных.Расшифровать); ИсточникНастроек = Новый ИсточникДоступныхНастроекКомпоновкиДанных(Отчет); МенюРасшифровки = Новый ОбработкаРасшифровкиКомпоновкиДанных(ДанныеРасшифровки, ИсточникНастроек); МенюРасшифровки.ВыбратьДействие(Расшифровка,ВыполненноеДействие,ПараметрВыполненногоДействия,МассивДействий,,Истина,Элемент); Если ВыполненноеДействие = ДействиеОбработкиРасшифровкиКомпоновкиДанных.ОткрытьЗначение Тогда ОткрытьЗначение(ВыполненноеДействие); ИначеЕсли ВыполненноеДействие = ДействиеОбработкиРасшифровкиКомпоновкиДанных.Расшифровать Тогда ИмяФайлаОтчета = ""; НастройкиРасшифровки = ПолучитьНастройкиРасшифровки(Расшифровка,ПараметрВыполненногоДействия,ИмяФайлаОтчета); АдресВХранилищеДляФайла = ""; ФалйПомещен = ПоместитьФайл(АдресВХранилищеДляФайла,ИмяФайлаОтчета,,Ложь); Если ФалйПомещен Тогда ИмяОтчет = ПодключитьВнешнийОтчет(АдресВХранилищеДляФайла); Форма = ПолучитьФорму("ВнешнийОтчет." + ИмяОтчет + ".Форма.ФормаОтчета"); Форма.Отчет.КомпоновщикНастроек.ЗагрузитьНастройки(НастройкиРасшифровки); Форма.ДанныеРасшифровки = ДанныеРасшифровки; Форма.КлючНазначенияИспользования = Расшифровка; Форма.СкомпоноватьРезультат(РежимКомпоновкиРезультата.Авто); Форма.Открыть(); КонецЕсли; КонецЕсли; КонецПроцедуры &НаСервере Функция ПолучитьНастройкиРасшифровки(Расшифровка,настройкиРасшифровки,ИмяФайлаОтчета) // ИмяФайлаОтчета = РеквизитФормыВЗначение("Отчет").ИспользуемоеИмяФайла; ОбработкаРасшифровки = Новый ОбработкаРасшифровкиКомпоновкиДанных(ДанныеРасшифровки,Новый ИсточникДоступныхНастроекКомпоновкиДанных(Отчет)); Возврат ОбработкаРасшифровки.ПрименитьНастройки(Расшифровка,НастройкиРасшифровки); КонецФункции &НаСервереБезКонтекста Функция ПодключитьВнешнийОтчет(АдресВХранилищеДляФайла) Возврат ВнешниеОтчеты.Подключить(АдресВХранилищеДляФайла,"РасшифровкаОтчета"); КонецФункции |
|||
11
1СКонсультант
25.03.14
✎
18:36
|
(10) отчет открывается но выдает не те данные которые в настройках отчета(
|
|||
12
1СКонсультант
25.03.14
✎
18:47
|
он будто параметры не видит(
|
|||
13
1СКонсультант
25.03.14
✎
18:52
|
Я так понял где то что то не вижу вот здесь
Форма = ПолучитьФорму("ВнешнийОтчет." + ИмяОтчет + ".Форма.ФормаОтчета"); Форма.Отчет.КомпоновщикНастроек.ЗагрузитьНастройки(НастройкиРасшифровки); Форма.ДанныеРасшифровки = ДанныеРасшифровки; Форма.КлючНазначенияИспользования = Расшифровка; Форма.СкомпоноватьРезультат(РежимКомпоновкиРезультата.Авто); Форма.Открыть(); |
|||
14
1СКонсультант
25.03.14
✎
19:06
|
кто нить на мисте скд знает?
|
|||
15
1СКонсультант
25.03.14
✎
19:58
|
Продолжу тихо сам с собой))
Получается настройки передаются. Но по ходу он запоминает пользовательские настройки |
|||
16
1СКонсультант
25.03.14
✎
20:20
|
а не пользовательские настройки тоже работают
|
|||
17
1СКонсультант
25.03.14
✎
20:21
|
все равно выводит какую то хрень вместо загруженных настроек
|
|||
18
EvgeniuXP
25.03.14
✎
23:05
|
нихто тут ничего не знает.
|
|||
19
zladenuw
25.03.14
✎
23:12
|
||||
20
1СКонсультант
26.03.14
✎
18:16
|
все оказалось намного проще) Читайте книги, ибо в них мудрость))))
http://v8.1c.ru/metod/books/book.jsp?id=389 |
|||
21
1СКонсультант
26.03.14
✎
18:17
|
(20) стр 215-216. Только маленькая проблемка - у мну отчет внешний, поэтому получилось что то типа такого:
&НаСервереБезКонтекста Функция ПодключитьВнешнийОтчет(АдресВХранилищеДляФайла,ИмяФайлаРасшифровки) Возврат ВнешниеОтчеты.Подключить(АдресВХранилищеДляФайла,ИмяФайлаРасшифровки); КонецФункции &НаСервере Функция ПолучитьИмяФайла() Возврат РеквизитФормыВЗначение("Отчет").ИспользуемоеИмяФайла; КонецФункции &НаКлиенте Процедура РезультатОбработкаДополнительнойРасшифровки(Элемент, Расшифровка, СтандартнаяОбработка) Перем ВыполненноеДействие, ПараметрВыполненногоДействия; СтандартнаяОбработка = Ложь; ИсточникНастроек = Новый ИсточникДоступныхНастроекКомпоновкиДанных(Отчет); МенюРасшифровки = Новый ОбработкаРасшифровкиКомпоновкиДанных(ДанныеРасшифровки, ИсточникНастроек); МенюРасшифровки.ВыбратьДействие(Расшифровка,ВыполненноеДействие,ПараметрВыполненногоДействия); Если ВыполненноеДействие = ДействиеОбработкиРасшифровкиКомпоновкиДанных.ОткрытьЗначение Тогда ОткрытьЗначение(ПараметрВыполненногоДействия); Иначе ИмяФайлаОтчета = ПолучитьИмяФайла(); ИмяФайлаРасшифровки = ПолучитьИмяВременногоФайла("erf"); КопироватьФайл(ИмяФайлаОтчета,ИмяФайлаРасшифровки); ФайлРасшифровки = Новый Файл(ИмяФайлаРасшифровки); Если Не ФайлРасшифровки.Существует() Тогда Возврат; КонецЕсли; АдресВХранилищеДляФайла = ""; ФалйПомещен = ПоместитьФайл(АдресВХранилищеДляФайла,ИмяФайлаРасшифровки,,Ложь); Если ФалйПомещен Тогда ПараметрыФормы = Новый Структура; ПараметрыФормы.Вставить("СформироватьПриОткрытии",Истина); ПараметрыФормы.Вставить("Расшифровка",Новый ОписаниеОбработкиРасшифровкиКомпоновкиДанных(ДанныеРасшифровки,Расшифровка,ПараметрВыполненногоДействия)); ИмяОтчет = ПодключитьВнешнийОтчет(АдресВХранилищеДляФайла,ФайлРасшифровки.ИмяБезРасширения); Форма = ОткрытьФорму("ВнешнийОтчет." + ИмяОтчет + ".Форма.ФормаОтчета",параметрыформы); КонецЕсли; КонецЕсли; КонецПроцедуры |
|||
22
1СКонсультант
26.03.14
✎
18:17
|
(19) эту ссылку кстати тоже использовал, спасибо.
|
|||
23
1СКонсультант
26.03.14
✎
18:18
|
(21) вот по этому варианту может можно как то проще сделать?
|
|||
24
1СКонсультант
26.03.14
✎
19:34
|
Обнаружил что расшифровка расшифровки не работает(((((
|
|||
25
1СКонсультант
26.03.14
✎
19:42
|
В общем вопрос - есть отчет ВНЕШНИЙ на скд. Нужно свою расшифровку сделать, что бы открывалась тоже в внешнем отчете. Не получается (
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |