Еще один способ нестандартной расшифровки отчета. Без использования обработчиков формы. Для ленивых

26.05.19

Разработка - СКД

Лень+ СКД. Еще один нестандартный способ расшифровки отчета. Без использования обработчиков формы. Только макет компоновки и модуль отчета. Весь исходный текст в статье.

   Статью написать сподвиг вопрос Слишком сложно для меня по уже стандартно нестандартной расшифровке. В свое время тоже требовалось оное и естественно набрел на Это. Все здорово. Но! Статья то о СКД + Лень. Последняя пылала пожаром и отказывалась нажимать последовательность cntr+C, alt+Tab, cntr+V многократно.

Я её уговаривал, грамотно же статья написана. Нет, отвечает Лень. Там нужна форма, а в БСП это Общая форма и она может измениться со следующим релизом, будет тебе лишняя головная боль при обновлении. В общем, Лень странная девочка. Когда творческий поиск, сложный запрос - ядерным взрывом не разбудишь, а тут бунт и в условиях цейтнота.

   Пришлось идти на поводу у Матери всея прогресса. Спросил у Яндекса, тот мне честно: “Ты б еще у Гугела идиот спросил”. Пришлось включать творческий процесс и метод “Научного тыка”. Чем научный от ненаучного знаете, чем отличается? Ставишь точку останова и смотришь в табло. Не нужное само отметается, а нужное обязательно найдется. А где ее ставить как не в  ПриКомпоновкеРезультата.  В уже стандартных строчках:

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

	КомпоновщикМакета = Новый КомпоновщикМакетаКомпоновкиДанных;
	МакетКомпоновки = КомпоновщикМакета.Выполнить(СхемаКомпоновкиДанных, Настройки, ДанныеРасшифровки);
	
	ПроцессорКомпоновки = Новый ПроцессорКомпоновкиДанных;
	ПроцессорКомпоновки.Инициализировать(МакетКомпоновки,, ДанныеРасшифровки);
	
	ПроцессорВывода = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВТабличныйДокумент;
	ПроцессорВывода.УстановитьДокумент(ДокументРезультат);
	ПроцессорВывода.Вывести(ПроцессорКомпоновки);
КонецПроцедуры

И вот ОНО. Нужное! После строчки: 

МакетКомпоновки = КомпоновщикМакета.Выполнить(СхемаКомпоновкиДанных, Настройки, ДанныеРасшифровки);

Под пытками, ЕЁ Величества Точки останова, ДанныеРасшифровки сознаются в своих параметрах, отборах и остальных "грехах". Остается только проверить, а расшифровка ли это

ЭтоРасшифровка = Не ДанныеРасшифровки.Настройки.Отбор.Элементы.Количество()= 0;

Накидываем седло с уздечкой на коня и вуаля. Шорты превращаются в брюки:

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

Вроде бы просто. Но не тут то было. Моя Лень требует большего. Шорты не превращаются в брюки.  При выборе поля расшифровки нет строчки. "Остатки товаров", а есть другие поля, которые мне абсолютно не нужны. С ненужными полями все просто. Идем на закладку "Наборы данный" и ставим ограничение поля  на "Не доступно для группировки". Но и с выводом нужной мне строки в диалоге выбора поля, тоже банально. Добавляем в вычисляемые поля "ОтчетОстаткиТоваров" с заголовком "Остатки товаров" и в диалоге выбора поля уже ее наблюдаем. Остается только обработать в процедуре ПриКомпоновкеРезультата именно её:

Если ЭтоРасшифровка Тогда
	ИмяРашифровки = МакетКомпоновки.Тело[МакетКомпоновки.Тело.Количество()-1].Группировка[0].ИмяПоля;
	Если ИмяРашифровки  = "ОтчетОстаткиТоваров" Тогда
		Отчет = Отчеты.ОстаткиТоваров.Создать();
		Настройки = Отчет.КомпоновщикНастроек.Настройки;
		//Устанавливаем отборы и параметры из ДанныеРасшифровки в Настройки(
		//....
		//)
		МакетКомпоновки = КомпоновщикМакета.Выполнить(Отчет.СхемаКомпоновкиДанных, Настройки, ДанныеРасшифровки);
	КонецЕсли;
КонецЕсли;

Вот собственно и все. Наивную девочку Расшифровка обманули и она выдала все что мне нужно, при минимальных затратах и обработчиков формы "Выбор" и "ОбработкаРасшифровки". Лень успокоилась на время.

Тестировалось на платформах 8.3.10 и 8.3.13. Но думаю будет работать и на более ранних релизах.

СКД Расшифровка отчет

См. также

SALE! %

Инструментарий разработчика Роли и права Запросы СКД Программист Платформа 1С v8.3 Управляемые формы Запросы Система компоновки данных Конфигурации 1cv8 Платные (руб)

Набор инструментов программиста и специалиста 1С для всех конфигураций на управляемых формах. В состав входят инструменты: Консоль запросов, Консоль СКД, Консоль кода, Редактор объекта, Анализ прав доступа, Метаданные, Поиск ссылок, Сравнение объектов, Все функции, Подписки на события и др. Редактор запросов и кода с раскраской и контекстной подсказкой. Доработанный конструктор запросов тонкого клиента. Продукт хорошо оптимизирован и обладает самым широким функционалом среди всех инструментов, представленных на рынке.

12000 10000 руб.

02.09.2020    164029    910    402    

884

Запросы СКД Программист Стажер Система компоновки данных Россия Бесплатно (free)

Часто при разработке отчетов в СКД возникает ситуация, когда не совсем понятно, почему отчет выводит не те данные, которые нужны, либо не выводит вовсе. Возникает потребность увидеть конечный запрос, который формирует СКД. Как это сделать, рассмотрим в этой статье.

15.05.2024    9525    implecs_team    6    

47

Инструментарий разработчика СКД Программист Платформа 1С v8.3 Конфигурации 1cv8 Абонемент ($m)

По выбранной схеме компоновки данных генерирует программный код, который генерирует СКД, аналогичную исходной схеме. Есть дополнительные инструменты для просмотра дерева схемы, сравнение исходной схемы и полученной по коду, а также сравнение изменений в сгенерированном коде для исходной схемы и для измененной.

3 стартмани

05.02.2024    7457    56    obmailok    21    

79

Запросы СКД Программист Платформа 1С v8.3 Управляемые формы Конфигурации 1cv8 Абонемент ($m)

Есть список полей в виде текста, или запрос - закидываем в набор СКД.

1 стартмани

31.01.2024    3242    5    Yashazz    1    

34

СКД WEB-интеграция Программист Платформа 1С v8.3 Конфигурации 1cv8 Абонемент ($m)

Долгое время поддерживаю web-портал, в котором появилась необходимость создавать отчеты. Просмотрев различные фреймворки на js, я решил сделать свое решение, которое позволяло бы быстро разрабатывать и добавлять новые отчеты на web-портал.

2 стартмани

11.12.2023    11150    24    John_d    25    

125

СКД Программист Платформа 1С v8.3 Система компоновки данных Конфигурации 1cv8 Бесплатно (free)

Рассмотрим еще не получивший широкого распространения способ работы с внешними данным в СКД. В процессе обсуждения работы с СКД выяснилось, что многие не знакомы со способом помещения туда временной таблицы, полученной предварительно. Статья будет полезна разработчикам, знакомым с программным созданием СКД.

05.12.2023    8464    PROSTO-1C    15    

68
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. bulpi 217 16.05.19 11:35 Сейчас в теме
Все хорошо, но у Вас 2 раза вызывается
МакетКомпоновки = КомпоновщикМакета.Выполнить...
Один раз лишний. Перепишите для красоты.
2. tusv 212 16.05.19 11:48 Сейчас в теме
(1)Нет Второй не лишний. Первый раз, чтобы получить значения ДанныеРасшифровки и тело. Второй раз уже к выводу отчета расшифровки относиться
МакетКомпоновки = КомпоновщикМакета.Выполнить(Отчет.СхемаКомпоновкиДанных, Настройки, ДанныеРасшифровки);
В общем, то что я в статье назвал обманом девочки по имени Расшифровка
3. John_d 5898 16.05.19 14:17 Сейчас в теме
Надо запомнить. Пригодится.
4. sergathome 4 16.05.19 15:00 Сейчас в теме
Албанский прям какой-то. Ничего не понял. Особенно понравилась конструкция
ЭтоРасшифровка = Не ДанныеРасшифровки.Настройки.Отбор.Элементы.Количество()= 0;
5. tusv 212 16.05.19 15:20 Сейчас в теме
(4)Албанский не албанский, но работает при минимуме строчек кода.
А Вы думаете проверять расшифровку через Тело лучше
Если формируется отчет у ДанныеРасшифровки.Настройки.Отбор.Элементы.Количество() =0.
Если расшифровка Количество отборов больше нуля
Все просто
7. sergathome 4 16.05.19 15:46 Сейчас в теме
(5)
ЭтоРасшифровка = ДанныеРасшифровки.Настройки.Отбор.Элементы.Количество() > 0;

Не, религия не позволяет ? ж))

Это, вообще, чья процедура рассматривается - основного отчета или отчета-расшифровки ?
8. Bazil 560 16.05.19 15:54 Сейчас в теме
(7) А чем это
 ЭтоРасшифровка = ДанныеРасшифровки.Настройки.Отбор.Элементы.Количество() > 0;

лучше чем это?
ЭтоРасшифровка = Не ДанныеРасшифровки.Настройки.Отбор.Элементы.Количество()= 0;
kentavr27; tusv; +2 Ответить
12. sergathome 4 16.05.19 17:01 Сейчас в теме
(8) адназначна лучше. Те, кто не только на 1С пишет, сразу о такое спотыкаются. Потому как операторные скобки. Автоматически запускается ненужный вспоминатор - а как 1С разбирает логические выражения....
14. Bazil 560 16.05.19 17:08 Сейчас в теме
15. sergathome 4 16.05.19 17:11 Сейчас в теме
16. Bazil 560 16.05.19 17:13 Сейчас в теме
56. RustIG 1752 22.12.21 21:42 Сейчас в теме
(8) вот так тоже можно
ЭтоРасшифровка = Булево(ДанныеРасшифровки.Настройки.Отбор.Элементы.Количество());
9. tusv 212 16.05.19 15:59 Сейчас в теме
(7) (8)Статья о чем? О Лени + СКД:). Переключится на английский, и написать лишние 2 символа, потом переключится обратно.Это жеж непосильный труд, когда 1С числовые значения понимает как булево.
Я исчо в запросах пишу Значение(Справочник.Контрагенты.). А почему бы нет, если ПустаяССылка писать не надо
Sekator; Andreeei; shushik; stas1976; ben19791010; starik-2005; +6 Ответить
31. stas1976 15 20.05.19 11:17 Сейчас в теме
(9)О Великий !!! я даже не знал что так можно .
Varozh; shushik; A_Max; +3 Ответить
10. tusv 212 16.05.19 16:32 Сейчас в теме
(7)
Это, вообще, чья процедура рассматривается - основного отчета или отчета-расшифровки ?

Основного отчета
13. sergathome 4 16.05.19 17:07 Сейчас в теме
(10) Тогда я не понимаю, как это работает. Допустим, есть ячейка со ссылкой. При клике на неё будет вызвана ПриКомпоновкеРезультата? Да ладно ?!
17. tusv 212 16.05.19 17:26 Сейчас в теме
(13)Ячейку со ссылкой откроет. Но вычисляемое поле, которое я добавил - строка. Вот оно и ползет в ПриКомпоновкеРезультата.
Ну а так то можно через вычисляемое поле принудительно и ссылку отправить на выполнение расшифровки. Пример на скрине
Прикрепленные файлы:
20. sergathome 4 17.05.19 10:00 Сейчас в теме
(17) Я всегда думал, что ПриКомпоновкеРезультата запускается один раз и после заполнения результата больше не вызывается. Я не прав ? Ну давно я в это не ковырялся, не помню уже, а интересно...
21. tusv 212 17.05.19 10:08 Сейчас в теме
(20)
ПриКомпоновкеРезультата запускается один раз и после заполнения результата больш

Это правда. Вызывается один раз. Но вывод расшифровки это как бэ новый отчет, следовательно идет в ПриКомпоновкеРезультата с заполненными ДанныеРасшифровки. Собственно на этом метод и построен
22. sergathome 4 17.05.19 10:28 Сейчас в теме
(21) Блин, ну не вкуриваю я тада, почему оно пойдёт в свой же ПриКомпоновке при попытке расшифровки. Там своё событие было на форме типа ПриРасшифровке или что-то в этом духе.
23. tusv 212 17.05.19 10:35 Сейчас в теме
(22)Событие формы ОбработкаРасшифровки, если СтандартнаяОбработка = Истина Пойдет в ПриКомпоновкеРезультата.
sergathome; +1 Ответить
25. sergathome 4 17.05.19 10:40 Сейчас в теме
27. deGreese 18.05.19 14:48 Сейчас в теме
(7)
ЭтоРасшифровка = ДанныеРасшифровки.Настройки.Отбор.Элементы.Количество() > 0;


Ну строго говоря сократить нужно можно вообще так.

Вместо этого

	ЭтоРасшифровка = Не ДанныеРасшифровки.Настройки.Отбор.Элементы.Количество()= 0;

	Если ЭтоРасшифровка Тогда		


написать это

	
	Если ДанныеРасшифровки.Настройки.Отбор.Элементы.Количество() Тогда


Однако у одинэсников откуда-то дичайшая любовь создавать тонны лишних переменных.
Andreeei; Yashazz; +2 Ответить
28. tusv 212 18.05.19 14:55 Сейчас в теме
(27)
Если ДанныеРасшифровки.Настройки.Отбор.Элементы.Количество() Тогда

"Не" забыли иначе будер расшифровывать основной отчет:) В статье так для наглядности
30. sergathome 4 20.05.19 10:13 Сейчас в теме
(27) Когда-то, давным-давно, был такой контупер БК-0010. И был у него "вильнюсский бейсик". И была у этого бейсика особенность - операторы идентифицировались по 2-3 первым символам, что позволяло экономить ОЗУ, которого там было аж 16 килобайт... Оправдано было, ага. Чего не скажешь про сабж...
32. tusv 212 20.05.19 11:26 Сейчас в теме
(30)Когда то, давным - давно, еще на первых Семерках, после обновления, перестало работать "<>", а вот Не Блабала =0, работало. В общем какая разница, если и то и другое возвращает булево
33. A_Max 20 20.05.19 18:11 Сейчас в теме
(30) Аж всплакнул. Перетыкание пзу с фокал на бэйсик и изучение устройства телевизора на 3усцт для подключения rgb
26. veri123 17.05.19 14:10 Сейчас в теме
(4) а мне нравится
Если  ДанныеРасшифровки.Настройки.Отбор.Элементы.Количество()Тогда
deGreese; +1 Ответить
6. Darklight 33 16.05.19 15:44 Сейчас в теме
Интересное решение - надо будет попробовать
11. Glebis 13 16.05.19 16:40 Сейчас в теме
Мне было лень прочитать эту статью. Тема Лени не раскрыта.Пишу комментарий, потому - что лень работать. Если дочитал мой комментарий и статью до конца - ты трудоголик:).
З.Ы. Мне лень дописывать этот комме
muskul; SeiOkami; Gendelf; s0u1; Merkalov; mark_oilbass; CratosX; gubanoff; Sergant; FesenkoA; Lazio; pbabincev; maxopik2; sergathome; +14 Ответить
18. tusv 212 16.05.19 17:43 Сейчас в теме
(11)
ты трудоголик:)

Ес ай эм. Ленивый трудоголик:)
24. FesenkoA 59 17.05.19 10:37 Сейчас в теме
19. HAMMER_59 254 17.05.19 07:05 Сейчас в теме
Где бы мне такую лень найти, чтобы писать так статьи кратко и ясно.
29. tusv 212 18.05.19 21:13 Сейчас в теме
(19)Э брат. Мне бы научиться у юзера этого сайта по нику dhurricane, четкостью мысли и правильным ответа Цены мнеб не было:)
34. user598128_able123 5 23.05.19 02:41 Сейчас в теме
а как сделать расшифровку по значению?
Чтобы при нажатии на значение, значение расшифровалось например по номенклатуре и по складу.

До расшифровки:
Склад Номенклатура 12 11 10


После расшифровки
10Дт - 60Кт Склад Номенклатура.3
10Дт - 60Кт Склад Номенклатура.8
35. tusv 212 23.05.19 04:11 Сейчас в теме
(34)Так Склад и номенклатура должны сидеть в ДанныеРасшифровки.Настройки.Отбор. Вы просто переносите нужные значения из расшифровки в Настройки.Отбор
36. user598128_able123 5 23.05.19 07:46 Сейчас в теме
Когда нажимаю на значение при расшифровке. Открывается форма выбора поля(см. рис.) можно ли как то его обойти чтобы он не вызывался или вызывался только с одним значением в списке?
Прикрепленные файлы:
37. tusv 212 23.05.19 09:58 Сейчас в теме
(36)Вы не внимательно прочитали статью. Чтобы не попадало лишнее в поля Выбора расшифровки
Идем на закладку "Наборы данный" и ставим ограничение поля на "Не доступно для группировки".
Чтобы вообще не выходил Диалог выбора, без использования обработчика формы Выбор, победить не удалось. Задавал вопрос на этом форуме. Ни кто не знает
38. user598128_able123 5 24.05.19 09:07 Сейчас в теме
Возможно ли расшифровать на СКД по значению колонки?

Склад Номенклатура Приход Расход

Нажали на значение колонки Приход расшифровался по определенным проводкам
Нажали на значение колонки Расход расшифровался по определенным проводкам.
39. tusv 212 26.05.19 02:53 Сейчас в теме
(38)Проверил. Добавил Два Вычисляемых поля, Я назвал их Дебет и Кредит, Выражение - "", Ограничение по группировке - Истина(Чтобы не показывало в выборе расшифровки)
Добавил макет поля: Заполнение - Параметр, Параметр - ИмяПоля, Параметр расшифровки(от балды) - П1
Заполнил выражения параметров макета:
И в список расшифровки добавил Дебет и Кредит, Выражения "10,41"; "60,79,76"
В общем В отбор расшифровки попадает, как надо
Прикрепленные файлы:
52. user598128_able123 5 28.05.19 10:39 Сейчас в теме
(39)

В макете СКД добавил макет поля.
<Приход БУ>.
В параметре расшифровки указал Номенклатура и склад.
При формировании СКД выдает ошибку, "Поле "Склад" не может быть использовано в группировке "Номенклатура""
В настройках стоит группировка сначала по номенклатуре, далее группировка по складу.
Вопрос, как такую ошибку можно обойти?
Чтобы при расшифровке брал значение еще и склада.


(39)
Прикрепленные файлы:
53. tusv 212 28.05.19 12:38 Сейчас в теме
(52)Составной группировкой. Номенклатура, Склад
40. Xershi 1551 26.05.19 10:21 Сейчас в теме
Про штаны и лень можно было бы и убрать. А так сплошная вода и бесовщина, за сленг минус. По коду надо проверять.
41. tusv 212 26.05.19 11:37 Сейчас в теме
(40)
По коду надо проверять

Щаз было обидно.
Всем сленгом не угодишь,не литературное произведение. Для того вставки кода написаны подробно, что бы было понятно.
А код работает, не сомневайся. Причем я могу вызвать кучу своих расшифровок, создавая Вычисляемые поля и проверяя какое вычисляемое поле было выбрано для расшифровки
42. Xershi 1551 26.05.19 12:20 Сейчас в теме
(41) кто будет искать код его сложно будет найти по такому тексту заголовка и описания. А затем прочитать чтобы понять, что имел автор! Поработайте над описанием!
43. tusv 212 26.05.19 16:12 Сейчас в теме
(42)Не ну Максим. Шесть лет назад мой сленг тебе охотно нравился. Кто тебя по конвертации то гонял. Забыл?
Ну и ребята. моя статья абсолютно бесплатная
А так. Этой статьи в запросе у яндекса я не нашел. Приму к сведению. Но тут дело не стиле, а в ключевых словах.
ЗЫ: Попробуешь код на зуб - спасибо скажешь ибо он легок и быстр и ему наплевать, есть форма или нет
44. Xershi 1551 26.05.19 18:13 Сейчас в теме
(43) так об этом и речь. Воду убрать оставить только то что по теме.
Смысл отсебятину кидать. В статье важен смысл и простота понимания. Ты же не как Белокаменцев рассказы о жизни пилишь, а что-то в массы!
45. tusv 212 26.05.19 20:06 Сейчас в теме
(44)Все дело в ключевых полях. Проверил. Моя статья на первом месте
46. Xershi 1551 26.05.19 21:30 Сейчас в теме
(45) поиск да. А смысл статьи?
Я конечно тоже иногда читаю между строк. Но блин поработать же можно над текстом?
47. tusv 212 26.05.19 21:39 Сейчас в теме
(46)Смысл? Мало я тебя 6 лет назад гонял:) Зырь не в инструкцию, а в код. Формы нет, а расшифровка есть, причём, как мне вздумается. Код минимален и он рабочий
И ваще нормальный человек смотрит в RTFM, когда все сломано)))
48. Xershi 1551 26.05.19 22:29 Сейчас в теме
(47) вопросов по коду нету, написал еще в (40).
49. tusv 212 26.05.19 22:32 Сейчас в теме
(48)Ну так покупай проверяй. Я дарую этот код "бездвоздмездно, то есть дадом":)
50. Xershi 1551 26.05.19 22:35 Сейчас в теме
(49) повторяю еще раз вопрос в том что это уровень статьи. А у вас это статья уровня комментарий на форуме. Мне кажется разница есть?
51. tusv 212 26.05.19 22:48 Сейчас в теме
(50)Разница, Максим большущая. И я и ты на форуме особо высоким языком не блещем:) Я только не понимаю, что в заголовке то не так?."Без использования обработчиков формы. Только макет компоновки и модуль отчета. "
Лень убрать? Так люди точки останова перестануть ставить и Нас раздербанят на вопросы почему.
Не трогай мой стиль. Меня по нему узнают плюсы и минусы ставят.
Радоваться люди должны, что я за Них догадался, что так все просто.
Не нравиться стиль, да божеж мой, пользуйся, что я придумал, не нравиться пройди мимо. Но код читать обязательно
54. Casey1984 3 17.09.19 17:01 Сейчас в теме
Привет!

ЭтоРасшифровка = Не ДанныеРасшифровки.Настройки.Отбор.Элементы.Количество()= 0;

У меня этот код выдает Истина, если добавляю отбор в пользовательском режиме. Заменил на:

ЭтоРасшифровка = ДанныеРасшифровки.Настройки.Структура[0].Имя = "Расшифровка";
55. tusv 212 18.09.19 11:26 Сейчас в теме
(54)А устарело.
Достаточно
Настройки = КомпоновщикНастроек.ПолучитьНастройки();
ЭтоРасшифровка =  Настройки.Структура.Количество() и Настройки.Структура[0].Имя ="Расшифровка"
Оставьте свое сообщение