1- &НаКлиенте
2- Перем КонтекстЯдра ;
3-
4- // { Plugin interface
5-
6- &НаКлиенте
7- Функция ОписаниеПлагина (ВозможныеТипыПлагинов ) Экспорт
8- Возврат ОписаниеПлагинаНаСервере(ВозможныеТипыПлагинов);
9- КонецФункции
10-
11- &НаКлиенте
12- Процедура Инициализация (КонтекстЯдраПараметр ) Экспорт
13- КонтекстЯдра = КонтекстЯдраПараметр;
14- КонецПроцедуры
15-
16- &НаСервере
17- Функция ОписаниеПлагинаНаСервере (ВозможныеТипыПлагинов )
18- Возврат Объект().ОписаниеПлагина(ВозможныеТипыПлагинов);
19- КонецФункции
20-
21- // } Plugin interface
22-
23- // { Settings interface
24-
25- &НаКлиенте
26- Функция ПолучитьНастройки () Экспорт
27- Если Объект.Настройки = Неопределено Тогда
28- ПутьФайлаНастроек = КонтекстЯдра.ПутьФайлаНастроек();
29-
30- Объект.Настройки = Новый Структура();
31- ФайлНастроек = Новый Файл(ПутьФайлаНастроек);
32- Если ФайлНастроек.Существует() Тогда
33- ЧтениеJSON = Новый ЧтениеJSON;
34- ЧтениеJSON.ОткрытьФайл(ПутьФайлаНастроек);
35-
36- Настройки = ПрочитатьJSON (ЧтениеJSON, Ложь );
37- КонецЕсли ;
38- Объект.Настройки = Новый ФиксированнаяСтруктура(Настройки);
39- КонецЕсли ;
40- Возврат Объект.Настройки;
41- КонецФункции
42-
43- &НаКлиенте
44- Функция ПолучитьНастройку (Знач КлючНастройки ) Экспорт
45-
46- ПолучитьНастройки();
47-
48- Результат = Неопределено ;
49- Объект.Настройки.Свойство(КлючНастройки, Результат);
50- Возврат Результат;
51-
52- КонецФункции
53-
54- // } Settings interface
55-
56- &НаСервере
57- Функция Объект ()
58- Возврат РеквизитФормыВЗначение("Объект" );
59- КонецФункции
60-
61- // } Settings interface
62- .Настройки = Новый ФиксированнаяСтруктура(Настройки);
63- КонецЕсли ;
64- Возврат Объект.Настройки;
65- КонецФункции
66-
67- &НаКлиенте
68- Функция ПолучитьНастройку (Знач КлючНастройки ) Экспорт
69-
70- ПолучитьНастройки();
71-
72- Результат = Неопределено ;
73- Объект.Настройки.Свойство(КлючНастройки, Результат);
74- Возврат Результат;
75-
76- КонецФункции
77-
78- // } Settings interface
79-
80- &НаСервере
81- Функция Объект ()
82- Возврат РеквизитФормыВЗначение("" Объект"" );
83- КонецФункции
84-
85- // } Settings interface
86- ",
87- {4,1,
88- {9,
89- {1},0," Объект",
90- {1,0},
91- {" Pattern",
92- {" #",85629dd2-6be4-49c6-9a69-13411102aa57}
93- },
94- {0,
95- {0,
96- {" B",1},0}
97- },
98- {0,
99- {0,
100- {" B",1},0}
101- },
102- {0,0},
103- {0,0},1,0,0,0,
104- {0,0},
105- {0,0}
106- },0,0,
107- {#base64:77u/PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4NCjxTZXR0
108- aW5ncyB4bWxucz0iaHR0cDovL3Y4LjFjLnJ1LzguMS9kYXRhLWNvbXBvc2l0aW9u
109- LXN5c3RlbS9zZXR0aW5ncyIgeG1sbnM6ZGNzY29yPSJodHRwOi8vdjguMWMucnUv
110- OC4xL2RhdGEtY29tcG9zaXRpb24tc3lzdGVtL2NvcmUiIHhtbG5zOnN0eWxlPSJo
111- dHRwOi8vdjguMWMucnUvOC4xL2RhdGEvdWkvc3R5bGUiIHhtbG5zOnN5cz0iaHR0
112- cDovL3Y4LjFjLnJ1LzguMS9kYXRhL3VpL2ZvbnRzL3N5c3RlbSIgeG1sbnM6djg9
113- Imh0dHA6Ly92OC4xYy5ydS84LjEvZGF0YS9jb3JlIiB4bWxuczp2OHVpPSJodHRw
114- Oi8vdjguMWMucnUvOC4xL2RhdGEvdWkiIHhtbG5zOndlYj0iaHR0cDovL3Y4LjFj
115- LnJ1LzguMS9kYXRhL3VpL2NvbG9ycy93ZWIiIHhtbG5zOndpbj0iaHR0cDovL3Y4
116- LjFjLnJ1LzguMS9kYXRhL3VpL2NvbG9ycy93aW5kb3dzIiB4bWxuczp4cz0iaHR0
117- cDovL3d3dy53My5vcmcvMjAwMS9YTUxTY2hlbWEiIHhtbG5zOnhzaT0iaHR0cDov
118- L3d3dy53My5vcmcvMjAwMS9YTUxTY2hlbWEtaW5zdGFuY2UiPg0KCTxvdXRwdXRQ
119- YXJhbWV0ZXJzLz4NCjwvU2V0dGluZ3M+}
120- },
121- {0,0},
122- {0,0},
123- {0,0},
124- {0,0},0,0}
1+ &НаКлиенте
2+ Перем КонтекстЯдра ;
3+
4+ // { Plugin interface
5+
6+ &НаКлиенте
7+ Функция ОписаниеПлагина (ВозможныеТипыПлагинов ) Экспорт
8+ Возврат ОписаниеПлагинаНаСервере(ВозможныеТипыПлагинов);
9+ КонецФункции
10+
11+ &НаКлиенте
12+ Процедура Инициализация (КонтекстЯдраПараметр ) Экспорт
13+ КонтекстЯдра = КонтекстЯдраПараметр;
14+ КонецПроцедуры
15+
16+ &НаСервере
17+ Функция ОписаниеПлагинаНаСервере (ВозможныеТипыПлагинов )
18+ Возврат Объект().ОписаниеПлагина(ВозможныеТипыПлагинов);
19+ КонецФункции
20+
21+ // } Plugin interface
22+
23+ // { Settings interface
24+
25+ &НаКлиенте
26+ Функция ПолучитьНастройки () Экспорт
27+ ИмяКлючаФайлаНастройки = "configpath" ;
28+
29+ Если Объект.Настройки = Неопределено Тогда
30+ ПутьФайлаНастроек = КонтекстЯдра.ПутьФайлаНастроек();
31+ ФайлНастройки = Новый Файл(ПутьФайлаНастроек);
32+
33+ Настройки = ПрочитатьНастройкиИзФайлаJSon(ПутьФайлаНастроек);
34+ Настройки = ДобавитьВНастройкиДанныеИзВложенныхФайловНастроек(Настройки, ИмяКлючаФайлаНастройки, ФайлНастройки.Путь);
35+ Объект.Настройки = Новый ФиксированнаяСтруктура(Настройки);
36+ КонецЕсли ;
37+ Возврат Объект.Настройки;
38+ КонецФункции
39+
40+ &НаКлиенте
41+ Функция ПолучитьНастройку (Знач КлючНастройки ) Экспорт
42+
43+ ПолучитьНастройки();
44+
45+ Результат = Неопределено ;
46+ Объект.Настройки.Свойство(КлючНастройки, Результат);
47+ Возврат Результат;
48+
49+ КонецФункции
50+
51+ // } Settings interface
52+
53+ &НаСервере
54+ Функция Объект ()
55+ Возврат РеквизитФормыВЗначение("Объект" );
56+ КонецФункции
57+
58+ // } Settings interface
59+
60+ &НаКлиенте
61+ Функция ДобавитьВНастройкиДанныеИзВложенныхФайловНастроек (Знач Настройки , Знач ИмяКлючаФайлаНастройки ,
62+ Знач КаталогРодительскойНастройки )
63+
64+ Результат = Новый Структура;
65+ Для каждого Настройка Из Настройки Цикл
66+ Значение = Настройка.Значение;
67+ Если ТипЗнч (Значение) = Тип ("Структура" ) Тогда
68+ ПутьДопФайлаНастроек = Неопределено ;
69+ Если Значение.Свойство(ИмяКлючаФайлаНастройки, ПутьДопФайлаНастроек) Тогда
70+ Значение = ПрочитатьНастройкиИзФайлаJSon(КаталогРодительскойНастройки + "/" + ПутьДопФайлаНастроек);
71+ КонецЕсли ;
72+ КонецЕсли ;
73+ Результат.Вставить(Настройка.Ключ, Значение);
74+ КонецЦикла ;
75+ Возврат Результат;
76+
77+ КонецФункции
78+
79+ &НаКлиенте
80+ Функция ПрочитатьНастройкиИзФайлаJSon (Знач ПутьФайлаНастроек )
81+ Результат = Новый Структура();
82+ ФайлНастроек = Новый Файл(ПутьФайлаНастроек);
83+ Если ФайлНастроек.Существует() Тогда
84+ ЧтениеJSON = Новый ЧтениеJSON;
85+ ЧтениеJSON.ОткрытьФайл(ПутьФайлаНастроек);
86+
87+ Результат = ПрочитатьJSON (ЧтениеJSON, Ложь );
88+ КонецЕсли ;
89+ Возврат Результат;
90+ КонецФункции
0 commit comments