mirror of
https://github.com/tormozit/RDT1C.git
synced 2025-12-21 07:04:12 +00:00
Compare commits
354 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
63f2f29257 | ||
|
|
79ca2dd91f | ||
|
|
45fc40291a | ||
|
|
2579ca3642 | ||
|
|
631359a351 | ||
|
|
c549e705f5 | ||
|
|
cfec2d001b | ||
|
|
b5c9b00c1a | ||
|
|
1c3f286bda | ||
|
|
3bd64b8211 | ||
|
|
1d3d2e831a | ||
|
|
070e28ca21 | ||
|
|
201aeb190a | ||
|
|
125308346c | ||
|
|
8625cf5191 | ||
|
|
69e03f9c05 | ||
|
|
192a47d271 | ||
|
|
773162b59e | ||
|
|
bdde37fa82 | ||
|
|
65045b141f | ||
|
|
31a5f8dd6f | ||
|
|
4be8af1c34 | ||
|
|
689f2fc139 | ||
|
|
e8d9a756ca | ||
|
|
578d1ab870 | ||
|
|
3504dea3db | ||
|
|
d9c5f7e968 | ||
|
|
3eb51dd5c5 | ||
|
|
fb0a6e254a | ||
|
|
f181498eda | ||
|
|
87530b6b52 | ||
|
|
6e82ac816b | ||
|
|
5ab46206ff | ||
|
|
71e64d89c3 | ||
|
|
22d95bcb79 | ||
|
|
b811031fa6 | ||
|
|
814468519f | ||
|
|
a796c44faf | ||
|
|
5f0cf232b6 | ||
|
|
cb8d4136a9 | ||
|
|
db80c2feec | ||
|
|
46794e7f3d | ||
|
|
9eb667a3e0 | ||
|
|
2138fddf67 | ||
|
|
b3a40a7a27 | ||
|
|
e1423dc415 | ||
|
|
0a7de11668 | ||
|
|
a22fc152fb | ||
|
|
31533a9b62 | ||
|
|
37125f1065 | ||
|
|
d6a04d522b | ||
|
|
b190dc919d | ||
|
|
a20333d794 | ||
|
|
9f4583a4da | ||
|
|
4979a0f3ae | ||
|
|
28ed541ff5 | ||
|
|
da8f0951e1 | ||
|
|
3895d06c0b | ||
|
|
317aa66a61 | ||
|
|
32ad86be77 | ||
|
|
620686edc6 | ||
|
|
32f0ca7b68 | ||
|
|
a584b9460b | ||
|
|
abd1d6a211 | ||
|
|
7ddddf2852 | ||
|
|
83d069627c | ||
|
|
94a6890876 | ||
|
|
dc6b4c1e79 | ||
|
|
436e2a335b | ||
|
|
14528e3291 | ||
|
|
a54011baa7 | ||
|
|
a3cc839c81 | ||
|
|
1e16f8a491 | ||
|
|
b873a4e303 | ||
|
|
57cae32f4b | ||
|
|
3dc5714d74 | ||
|
|
d4683f4e22 | ||
|
|
1899274752 | ||
|
|
ff1bbf108a | ||
|
|
314730534b | ||
|
|
986e67905a | ||
|
|
4a36955554 | ||
|
|
407b501a9d | ||
|
|
f31adc995c | ||
|
|
53ce282f26 | ||
|
|
26ef8527e8 | ||
|
|
30b69f3579 | ||
|
|
420188c90d | ||
|
|
90bd2be600 | ||
|
|
b7e16fa9c7 | ||
|
|
64fb1c8961 | ||
|
|
055590597e | ||
|
|
801f23d453 | ||
|
|
b99c23c76d | ||
|
|
2c06c4ba74 | ||
|
|
adfb81ef7f | ||
|
|
1e3ff35bec | ||
|
|
f01d508915 | ||
|
|
80eeaef21a | ||
|
|
5b5fb92cc3 | ||
|
|
e41d4c1b31 | ||
|
|
435c4dba4f | ||
|
|
49c42c67b6 | ||
|
|
3993fb6275 | ||
|
|
fda85a03da | ||
|
|
30da76eaaf | ||
|
|
e00729bd73 | ||
|
|
4d8f2087bd | ||
|
|
bd28f590ba | ||
|
|
122854764f | ||
|
|
c762e219ab | ||
|
|
af6d563b41 | ||
|
|
825277142c | ||
|
|
92d8236be4 | ||
|
|
57190c2cfe | ||
|
|
e1c7a527cc | ||
|
|
118c0259e6 | ||
|
|
dca235fbca | ||
|
|
c0e7868c5e | ||
|
|
a6f635117a | ||
|
|
67dc576c57 | ||
|
|
f5cbcc2e23 | ||
|
|
2fcb6c5763 | ||
|
|
2548042809 | ||
|
|
2104ec9b81 | ||
|
|
3dc31232e0 | ||
|
|
bf0fd85272 | ||
|
|
7d03e70195 | ||
|
|
9be432afc2 | ||
|
|
adaeaabf68 | ||
|
|
a34c4c856d | ||
|
|
66919a63e6 | ||
|
|
f2d7e9f95a | ||
|
|
6080466485 | ||
|
|
c2c755b44e | ||
|
|
cf1a3bee5a | ||
|
|
5210d1be90 | ||
|
|
4d6bd2a54f | ||
|
|
db2d43d6e9 | ||
|
|
9ff8836118 | ||
|
|
65f2af8d4f | ||
|
|
3cd1023835 | ||
|
|
daa395c2f6 | ||
|
|
bff551c4d4 | ||
|
|
fa9f3b5697 | ||
|
|
3fd4841660 | ||
|
|
d578c3e3ad | ||
|
|
6297fbc048 | ||
|
|
1ee9dcb1c0 | ||
|
|
57baa7b7dc | ||
|
|
fa59bf250f | ||
|
|
b0526fb52f | ||
|
|
26339f02c8 | ||
|
|
1b3d455ce9 | ||
|
|
a547e1b487 | ||
|
|
c76ec261c2 | ||
|
|
75b1460563 | ||
|
|
7a8f2ba7fa | ||
|
|
a662a5d10c | ||
|
|
2106aade49 | ||
|
|
588b98ff07 | ||
|
|
cde61351a8 | ||
|
|
7dc22b5440 | ||
|
|
30b38a1d40 | ||
|
|
da9135e4c9 | ||
|
|
1f1a771d95 | ||
|
|
37c321ce6b | ||
|
|
db068cb7b2 | ||
|
|
dbc71e8959 | ||
|
|
a5b2458619 | ||
|
|
18cffe8451 | ||
|
|
56eed46f21 | ||
|
|
42a4a198e1 | ||
|
|
09fb761587 | ||
|
|
9c8068446f | ||
|
|
f86ebcfd20 | ||
|
|
e6138a9c3d | ||
|
|
e97067bf81 | ||
|
|
b827161724 | ||
|
|
e59184f886 | ||
|
|
a2c5169eeb | ||
|
|
74ef035eec | ||
|
|
99a2a9a9f2 | ||
|
|
c9e7ba74ad | ||
|
|
85d85cc5c3 | ||
|
|
9b8d8bdc88 | ||
|
|
3953b7f8c5 | ||
|
|
059bfd180b | ||
|
|
8c1cda5fdf | ||
|
|
d209491a0f | ||
|
|
d4e2a600ff | ||
|
|
6e3502634f | ||
|
|
67cd01a57e | ||
|
|
0d26140573 | ||
|
|
45b877fd34 | ||
|
|
35ede8d2a0 | ||
|
|
55bd6a70df | ||
|
|
bb21934098 | ||
|
|
63b3c8964c | ||
|
|
b4254249f9 | ||
|
|
09a6894f5a | ||
|
|
908f4c5e27 | ||
|
|
7b7fe64005 | ||
|
|
c5ac28b122 | ||
|
|
5f64347870 | ||
|
|
fa2383137e | ||
|
|
60ca393ddf | ||
|
|
f7005870ee | ||
|
|
a8ea20d3e9 | ||
|
|
d4bbdf2527 | ||
|
|
b2bc7c17d0 | ||
|
|
57866f59bd | ||
|
|
6728cf247a | ||
|
|
239af5e920 | ||
|
|
de0bdeb71e | ||
|
|
50170e1f49 | ||
|
|
c030de3329 | ||
|
|
78e20465f3 | ||
|
|
88dfaec325 | ||
|
|
5d09c44c62 | ||
|
|
f19bd71245 | ||
|
|
a6c146fbb0 | ||
|
|
10b0dc6cb2 | ||
|
|
567abd063b | ||
|
|
1e56d1ed83 | ||
|
|
9df4ec530c | ||
|
|
4f420dd7db | ||
|
|
6856e523bb | ||
|
|
2754aa04f3 | ||
|
|
9b904c00a9 | ||
|
|
9c4bb4b193 | ||
|
|
c24aad0038 | ||
|
|
95acc53999 | ||
|
|
357e42a48b | ||
|
|
6a547ae5ea | ||
|
|
5c494fa59d | ||
|
|
45e5f4b90a | ||
|
|
f5f47c81b6 | ||
|
|
5c0f3e8b14 | ||
|
|
6573f3775e | ||
|
|
91abfef833 | ||
|
|
faab1ec98d | ||
|
|
5f7ef601bb | ||
|
|
37866bd376 | ||
|
|
62cf77b3eb | ||
|
|
2457e9ca74 | ||
|
|
c9c9d7a1bd | ||
|
|
586adbc006 | ||
|
|
76a22365ef | ||
|
|
f741c25936 | ||
|
|
a9ee477fa4 | ||
|
|
c831379afe | ||
|
|
3cd85b5df4 | ||
|
|
1d9c59019e | ||
|
|
450cc28c46 | ||
|
|
8cdd35c06d | ||
|
|
343a172195 | ||
|
|
2fe0c4d4ef | ||
|
|
d7e20b962d | ||
|
|
ceb601b312 | ||
|
|
6c711bb5fc | ||
|
|
3b70c4966b | ||
|
|
4625108459 | ||
|
|
306d5ae324 | ||
|
|
fcca06618c | ||
|
|
42da279c06 | ||
|
|
6dc6b15b0d | ||
|
|
49044e4faf | ||
|
|
43f5f53f59 | ||
|
|
13e222ffd5 | ||
|
|
3973c441a8 | ||
|
|
0f747801ca | ||
|
|
e8ba3230bb | ||
|
|
4ed071af15 | ||
|
|
ff151555c4 | ||
|
|
ca9bdfb49d | ||
|
|
803e9b1408 | ||
|
|
fceb46620d | ||
|
|
42e4cc7e4c | ||
|
|
4ee600d2f7 | ||
|
|
fc850a670a | ||
|
|
cd805e4ea7 | ||
|
|
161d9b038d | ||
|
|
0e390e3eaf | ||
|
|
015afca327 | ||
|
|
9838d6d298 | ||
|
|
41c1a5c436 | ||
|
|
48110fb2c0 | ||
|
|
0fa2719c4f | ||
|
|
a8cf89cace | ||
|
|
35b45794e3 | ||
|
|
4439896158 | ||
|
|
cd85f61bd9 | ||
|
|
43332ad16f | ||
|
|
3f045880b8 | ||
|
|
b570e9f1c9 | ||
|
|
f058921830 | ||
|
|
4299b0478b | ||
|
|
5b548f27d4 | ||
|
|
3dc701748d | ||
|
|
0f3fdf72a5 | ||
|
|
8517b23dc6 | ||
|
|
e917c64589 | ||
|
|
264a870209 | ||
|
|
9071e633a6 | ||
|
|
4ef9d2e4c5 | ||
|
|
145c2a8f18 | ||
|
|
ea72ee97b0 | ||
|
|
3a7cda13cf | ||
|
|
8b5cf1f79c | ||
|
|
8ff7823fc8 | ||
|
|
15ef48a57d | ||
|
|
5f650f6a29 | ||
|
|
8f968eda23 | ||
|
|
5d7d54aabd | ||
|
|
4e6bf5ce82 | ||
|
|
0d96ccb2c4 | ||
|
|
7317afb5fe | ||
|
|
13a60347c4 | ||
|
|
3dcee11de1 | ||
|
|
4a7a9fc85c | ||
|
|
05cb8931fe | ||
|
|
34093b8952 | ||
|
|
051e40aaf3 | ||
|
|
f741a69090 | ||
|
|
97fbb056f5 | ||
|
|
acafd0fdc1 | ||
|
|
c61d78d404 | ||
|
|
8194ef77a3 | ||
|
|
416c70ff0c | ||
|
|
9ba5dd2c8b | ||
|
|
7245563b5b | ||
|
|
df659d97b6 | ||
|
|
c330d07c88 | ||
|
|
c3dae5af40 | ||
|
|
320e372f00 | ||
|
|
d77479078c | ||
|
|
15912caef3 | ||
|
|
b7dffd8cec | ||
|
|
19e56390cb | ||
|
|
851eaf378a | ||
|
|
6f3b86d51e | ||
|
|
278fa19a07 | ||
|
|
4f6ffb39e0 | ||
|
|
a6c349ce96 | ||
|
|
b2b90c5f9f | ||
|
|
3822c53539 | ||
|
|
9b30887ccb | ||
|
|
a1e5ded073 | ||
|
|
1f8f6575bc | ||
|
|
d861f574ff | ||
|
|
4e73118d21 | ||
|
|
84bd1605d0 | ||
|
|
e6d3261963 |
20
.github/ISSUE_TEMPLATE/bug_report.md
vendored
Normal file
20
.github/ISSUE_TEMPLATE/bug_report.md
vendored
Normal file
|
|
@ -0,0 +1,20 @@
|
||||||
|
---
|
||||||
|
name: Проблема
|
||||||
|
about: Неожиданное поведение программы
|
||||||
|
title: ''
|
||||||
|
labels: проблема
|
||||||
|
assignees: ''
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
**Программное окружение**
|
||||||
|
|
||||||
|
Получить эту информацию можно кнопкой "Техническая информация" в окне "О подсистеме" http://devtool1c.ucoz.ru/forum/2-2-1
|
||||||
|
|
||||||
|
**Воспроизведение проблемы**
|
||||||
|
1. Открыл инструмент ААА
|
||||||
|
2. Нажал кнопку БББ
|
||||||
|
3. Получил окно с ошибкой ВВВ
|
||||||
|
|
||||||
|
**Ожидаемое поведение**
|
||||||
|
Какая реакция программы ожидалась?
|
||||||
10
.github/ISSUE_TEMPLATE/feature_request.md
vendored
Normal file
10
.github/ISSUE_TEMPLATE/feature_request.md
vendored
Normal file
|
|
@ -0,0 +1,10 @@
|
||||||
|
---
|
||||||
|
name: Пожелание
|
||||||
|
about: Желание нового поведения программы
|
||||||
|
title: ''
|
||||||
|
labels: пожелание
|
||||||
|
assignees: ''
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
Опиши в каком инструменте при каких условия что должно происходить.
|
||||||
0
.gitignore
vendored
Normal file
0
.gitignore
vendored
Normal file
|
|
@ -1,7 +0,0 @@
|
||||||
|
|
||||||
&НаКлиенте
|
|
||||||
Процедура ОбработкаКоманды(ПараметрКоманды, ПараметрыВыполненияКоманды)
|
|
||||||
|
|
||||||
ирОбщий.ОткрытьНастройкиАлгоритмовЛкс();
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
@ -1,272 +0,0 @@
|
||||||
Перем мТелоПозиционногоМетода;
|
|
||||||
Перем мТелоПоименногоМетода;
|
|
||||||
Перем ДатаИзмененияКонтекста Экспорт;
|
|
||||||
Перем мСтруктураВнешнейОбработки Экспорт;
|
|
||||||
Перем ИндивидуальнаяВнешняяОбработка Экспорт;
|
|
||||||
|
|
||||||
//Процедура ДобавитьПараметрыВСтруктуру(СтруктураПараметров) Экспорт
|
|
||||||
|
|
||||||
// Для Каждого СтрокаПараметра Из Параметры Цикл
|
|
||||||
// Если Не СтруктураПараметров.Свойство(СтрокаПараметра.Имя) Тогда
|
|
||||||
// СтруктураПараметров.Вставить(СтрокаПараметра.Имя, СтрокаПараметра.Значение);
|
|
||||||
// КонецЕсли;
|
|
||||||
// КонецЦикла;
|
|
||||||
|
|
||||||
// ИмяПараметра = "Результат";
|
|
||||||
// Если Не СтруктураПараметров.Свойство(ИмяПараметра) Тогда
|
|
||||||
// СтруктураПараметров.Вставить(ИмяПараметра);
|
|
||||||
// КонецЕсли;
|
|
||||||
|
|
||||||
//КонецПроцедуры // ПолучитьСтруктуруПараметров()
|
|
||||||
|
|
||||||
Функция ПолучитьСтартовуюСтрокуАлгоритмаВТексте() Экспорт
|
|
||||||
|
|
||||||
Возврат Параметры.Количество();
|
|
||||||
|
|
||||||
КонецФункции // ПолучитьСтартовуюСтрокуАлгоритмаВМодуле()
|
|
||||||
|
|
||||||
Функция ПолучитьСтартовуюСтрокуМетодаВМодуле() Экспорт
|
|
||||||
|
|
||||||
Результат = 1 + СтрЧислоСтрок(ПолучитьШапкуОпределенияМетода() + ПолучитьШапкуТелаМетода());
|
|
||||||
Возврат Результат;
|
|
||||||
|
|
||||||
КонецФункции // ПолучитьСтартовуюСтрокуАлгоритмаВМодуле()
|
|
||||||
|
|
||||||
Функция ПолучитьОбъявлениеСлужебныхПеременных()
|
|
||||||
|
|
||||||
МассивСлужебныхПеременных = Новый Массив;
|
|
||||||
МассивСлужебныхПеременных.Добавить("ЭтотОбъект");
|
|
||||||
МассивСлужебныхПеременных.Добавить("ИспользуемоеИмяФайла");
|
|
||||||
МассивСлужебныхПеременных.Добавить("Результат");
|
|
||||||
Разделитель = ", ";
|
|
||||||
Результат = "";
|
|
||||||
Для Каждого СлужебнаяПеременная Из МассивСлужебныхПеременных Цикл
|
|
||||||
Результат = Результат + Разделитель + СлужебнаяПеременная;
|
|
||||||
КонецЦикла;
|
|
||||||
Результат = Сред(Результат, СтрДлина(Разделитель) + 1);
|
|
||||||
Результат = "Перем " + Результат + ";";
|
|
||||||
Возврат Результат;
|
|
||||||
|
|
||||||
КонецФункции // ПолучитьОбъявлениеСлужебныхПеременных()
|
|
||||||
|
|
||||||
Функция ПолучитьТекстМодуляОбработки() Экспорт
|
|
||||||
|
|
||||||
Результат = "";
|
|
||||||
Результат = Результат + "// " + Наименование + Символы.ПС;
|
|
||||||
Результат = Результат + ПолучитьОпределениеМетода();
|
|
||||||
Возврат Результат;
|
|
||||||
|
|
||||||
КонецФункции // ПолучитьТекстМодуляОбработки()
|
|
||||||
|
|
||||||
Функция ПолучитьОпределениеМетода(УниверсальныеИменаПараметров = Ложь) Экспорт
|
|
||||||
|
|
||||||
Результат = ПолучитьШапкуОпределенияМетода();
|
|
||||||
Результат = Результат + ПолучитьТелоМетода() + Символы.ПС;
|
|
||||||
Результат = Результат + Символы.Таб + "Возврат Результат;" + Символы.ПС;
|
|
||||||
Результат = Результат + "КонецФункции" + Символы.ПС;
|
|
||||||
Возврат Результат;
|
|
||||||
|
|
||||||
КонецФункции // ПолучитьОпределениеМетода()
|
|
||||||
|
|
||||||
Функция ПолучитьШапкуОпределенияМетода()
|
|
||||||
|
|
||||||
Результат = "Функция мМетод(_АлгоритмОбъект, _Режим";
|
|
||||||
Для Счетчик = 0 По 9 Цикл
|
|
||||||
ИмяПараметра = "_П" + Счетчик;
|
|
||||||
Результат = Результат + ", " + ИмяПараметра;
|
|
||||||
КонецЦикла;
|
|
||||||
Результат = Результат + ") Экспорт" + Символы.ПС;
|
|
||||||
Результат = Результат + Символы.Таб + ПолучитьОбъявлениеСлужебныхПеременных();
|
|
||||||
Возврат Результат;
|
|
||||||
|
|
||||||
КонецФункции // ПолучитьШапкуОпределенияМетода()
|
|
||||||
|
|
||||||
Функция ПолучитьШапкуТелаМетода()
|
|
||||||
|
|
||||||
Результат = "";
|
|
||||||
МассивТаблицПараметров = Новый Массив;
|
|
||||||
Результат = Результат + "
|
|
||||||
| _Параметры = _АлгоритмОбъект.Параметры;";
|
|
||||||
//Для Индекс = 0 ПО Параметры.Количество() - 1 Цикл
|
|
||||||
// СтрокаПеременной = Параметры[Индекс];
|
|
||||||
// ИмяПеременной = СтрокаПеременной.Имя;
|
|
||||||
// Результат = Результат + "
|
|
||||||
// | " + ИмяПеременной + " = ?(_П0.Свойство(""" + ИмяПеременной + """), _П0." + ИмяПеременной + ", _Параметры[" + Индекс + "].Значение);";
|
|
||||||
//КонецЦикла;
|
|
||||||
Результат = Результат + "
|
|
||||||
| Если _Режим = 0 Тогда";
|
|
||||||
Для Индекс = 0 ПО Параметры.Количество() - 1 Цикл
|
|
||||||
СтрокаПеременной = Параметры[Индекс];
|
|
||||||
Если Индекс < 10 Тогда
|
|
||||||
ИмяПараметра = "_П" + Индекс;
|
|
||||||
Иначе
|
|
||||||
ИмяПараметра = "Null";
|
|
||||||
КонецЕсли;
|
|
||||||
ИмяПеременной = СтрокаПеременной.Имя;
|
|
||||||
Результат = Результат + "
|
|
||||||
| " + ИмяПеременной + " = ?(" + ИмяПараметра + " = Null, _Параметры[" + (Индекс) + "].Значение, "
|
|
||||||
+ ИмяПараметра + ");";
|
|
||||||
КонецЦикла;
|
|
||||||
Результат = Результат + "
|
|
||||||
| Иначе";
|
|
||||||
Для Индекс = 0 ПО Параметры.Количество() - 1 Цикл
|
|
||||||
СтрокаПеременной = Параметры[Индекс];
|
|
||||||
ИмяПеременной = СтрокаПеременной.Имя;
|
|
||||||
Результат = Результат + "
|
|
||||||
| " + ИмяПеременной + " = ?(_П0.Свойство(""" + ИмяПеременной + """), _П0." + ИмяПеременной +
|
|
||||||
", _Параметры[" + (Индекс) + "].Значение);";
|
|
||||||
КонецЦикла;
|
|
||||||
Результат = Результат + "
|
|
||||||
| КонецЕсли;";
|
|
||||||
|
|
||||||
Результат = Результат + Символы.ПС + ирКэш.Получить().МаркерНачалаАлгоритма;
|
|
||||||
Возврат Результат;
|
|
||||||
|
|
||||||
КонецФункции // ПолучитьШапкуТелаМетода()
|
|
||||||
|
|
||||||
Функция ПолучитьТелоМетода(Кэшировать = Ложь) Экспорт
|
|
||||||
|
|
||||||
Результат = ПолучитьШапкуТелаМетода();
|
|
||||||
ТекстАлгоритмаТД = Новый ТекстовыйДокумент;
|
|
||||||
ТекстАлгоритмаТД.УстановитьТекст(ТекстАлгоритма);
|
|
||||||
Для Сч1 = 1 По ТекстАлгоритмаТД.КоличествоСтрок() Цикл
|
|
||||||
Результат = Результат + Символы.Таб + ТекстАлгоритмаТД.ПолучитьСтроку(Сч1) + Символы.ПС;
|
|
||||||
КонецЦикла;
|
|
||||||
Результат = Результат + ирКэш.Получить().МаркерКонцаАлгоритма;
|
|
||||||
Результат = Результат + Символы.Таб + "; ~Конец:";
|
|
||||||
|
|
||||||
//Для Каждого СтрокаПараметра Из Параметры Цикл
|
|
||||||
// Индекс = Параметры.Индекс(СтрокаПараметра);
|
|
||||||
// ИмяПеременной = СтрокаПараметра.Имя;
|
|
||||||
// Результат = Результат + "
|
|
||||||
// | _П0." + ИмяПеременной + " = " + ИмяПеременной + ";";
|
|
||||||
//КонецЦикла;
|
|
||||||
Результат = Результат + "
|
|
||||||
| Если _Режим = 0 Тогда";
|
|
||||||
Для Каждого СтрокаПараметра Из Параметры Цикл
|
|
||||||
Индекс = Параметры.Индекс(СтрокаПараметра);
|
|
||||||
Результат = Результат + "
|
|
||||||
| _П" + Индекс + " = " + СтрокаПараметра.Имя + ";";
|
|
||||||
КонецЦикла;
|
|
||||||
Результат = Результат + "
|
|
||||||
| Иначе";
|
|
||||||
Для Каждого СтрокаПараметра Из Параметры Цикл
|
|
||||||
Индекс = Параметры.Индекс(СтрокаПараметра);
|
|
||||||
ИмяПеременной = СтрокаПараметра.Имя;
|
|
||||||
Результат = Результат + "
|
|
||||||
| _П0.Вставить(""" + ИмяПеременной + """, " + ИмяПеременной + ");";
|
|
||||||
КонецЦикла;
|
|
||||||
Результат = Результат + "
|
|
||||||
| КонецЕсли;";
|
|
||||||
|
|
||||||
Возврат Результат;
|
|
||||||
|
|
||||||
КонецФункции // ПолучитьТелоМетода()
|
|
||||||
|
|
||||||
Функция ПолучитьТекстМакетаПараметров() Экспорт
|
|
||||||
|
|
||||||
Возврат "";
|
|
||||||
|
|
||||||
КонецФункции // ПолучитьТекстМакетаПараметров()
|
|
||||||
|
|
||||||
Функция ВыполнитьЛокально(ТекстДляВыполнения, ЛиСинтаксическийКонтроль = Ложь) Экспорт
|
|
||||||
|
|
||||||
Возврат ирКэш.Получить().ВыполнитьЛокально(ТекстДляВыполнения);
|
|
||||||
|
|
||||||
КонецФункции // ВыполнитьЛокально()
|
|
||||||
|
|
||||||
Функция ПроверитьДанные() Экспорт
|
|
||||||
|
|
||||||
ДанныеКорректны = Истина;
|
|
||||||
|
|
||||||
// Проверка шапки
|
|
||||||
ЧистоеНаименование = СокрЛП(Наименование);
|
|
||||||
ирОбщий.ПрисвоитьЕслиНеРавноЛкс(Наименование, ЧистоеНаименование);
|
|
||||||
Если Не ирОбщий.ЛиИмяПеременнойЛкс(Наименование) Тогда
|
|
||||||
ДанныеКорректны = Ложь;
|
|
||||||
Сообщить("Имя алгоритма не отвечает правилам формирования имен переменных встроенного языка", СтатусСообщения.Важное);
|
|
||||||
КонецЕсли;
|
|
||||||
Запрос = Новый Запрос;
|
|
||||||
Запрос.Текст = "ВЫБРАТЬ
|
|
||||||
| Алгоритмы.Ссылка
|
|
||||||
|ИЗ
|
|
||||||
| " + Метаданные().ПолноеИмя() + " КАК Алгоритмы
|
|
||||||
|ГДЕ
|
|
||||||
| Алгоритмы.Наименование = &Наименование
|
|
||||||
| И Алгоритмы.Ссылка <> &Ссылка";
|
|
||||||
Запрос.УстановитьПараметр("Наименование", Наименование);
|
|
||||||
Запрос.УстановитьПараметр("Ссылка", Ссылка);
|
|
||||||
Результат = Запрос.Выполнить();
|
|
||||||
Если Не Результат.Пустой() Тогда
|
|
||||||
ДанныеКорректны = Ложь;
|
|
||||||
Сообщить("В справочнике """ + Метаданные().Имя + """ уже существует элемент с наименованием """ + Наименование + """",
|
|
||||||
СтатусСообщения.Важное);
|
|
||||||
КонецЕсли;
|
|
||||||
ДанныеКорректны = ДанныеКорректны И ирОбщий.ПроверитьТаблицуПараметровЛкс(Параметры.Выгрузить(, "Имя"));
|
|
||||||
Возврат ДанныеКорректны;
|
|
||||||
|
|
||||||
КонецФункции // ПроверитьДанные()
|
|
||||||
|
|
||||||
//Функция ПроверитьТЧ(Параметры)
|
|
||||||
|
|
||||||
// ДанныеКорректны = Истина;
|
|
||||||
// МетаданныеТЧ = ирОбщий.ПолучитьМетаданныеЛкс(Параметры);
|
|
||||||
// КопияТЧ = Параметры.Выгрузить();
|
|
||||||
// КопияТЧ.Свернуть("Имя");
|
|
||||||
// Если КопияТЧ.Количество() <> Параметры.Количество() Тогда
|
|
||||||
// Параметры.Сортировать("Имя");
|
|
||||||
// Сообщить("Строки табличной части """ + МетаданныеТЧ.Представление() + """ должны иметь уникальные имена",
|
|
||||||
// СтатусСообщения.Важное);
|
|
||||||
// ДанныеКорректны = Ложь;
|
|
||||||
// КонецЕсли;
|
|
||||||
// Для Каждого СтрокаПараметра Из Параметры Цикл
|
|
||||||
// Если Не ирОбщий.ЛиИмяПеременнойЛкс(СтрокаПараметра.Имя) Тогда
|
|
||||||
// ДанныеКорректны = Ложь;
|
|
||||||
// Сообщить("Имя параметра """ + СтрокаПараметра.Имя + """ не отвечает правилам формирования имен встроенного языка",
|
|
||||||
// СтатусСообщения.Важное);
|
|
||||||
// КонецЕсли;
|
|
||||||
// КонецЦикла;
|
|
||||||
// Возврат ДанныеКорректны;
|
|
||||||
|
|
||||||
//КонецФункции // ПроверитьТЧ()
|
|
||||||
|
|
||||||
Процедура СобратьКонтекст() Экспорт
|
|
||||||
|
|
||||||
ДатаИзмененияКонтекста = ДатаИзменения;
|
|
||||||
|
|
||||||
КонецПроцедуры // ПрочитатьКонтекст()
|
|
||||||
|
|
||||||
Процедура ПередЗаписью(Отказ)
|
|
||||||
|
|
||||||
Если Не ОбменДанными.Загрузка Тогда
|
|
||||||
ДатаИзменения = ТекущаяДата();
|
|
||||||
СобратьКонтекст();
|
|
||||||
Отказ = Отказ Или Не ПроверитьДанные();
|
|
||||||
КонецЕсли;
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ПриЗаписи(Отказ)
|
|
||||||
|
|
||||||
Если Не ОбменДанными.Загрузка Тогда
|
|
||||||
мТекстАлгоритмаСПараметрами = "";
|
|
||||||
мПлатформа = ирКэш.Получить();
|
|
||||||
Если мПлатформа <> Неопределено Тогда
|
|
||||||
#Если Клиент Тогда
|
|
||||||
мПлатформа.ОбновитьАлгоритмВКеше(ЭтотОбъект);
|
|
||||||
#КонецЕсли
|
|
||||||
КонецЕсли;
|
|
||||||
КонецЕсли;
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ПриКопировании(ОбъектКопирования)
|
|
||||||
|
|
||||||
Наименование = Наименование + "1";
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
ДатаИзмененияКонтекста = ДатаИзменения;
|
|
||||||
мТекстАлгоритмаСПараметрами = "";
|
|
||||||
ИндивидуальнаяВнешняяОбработка = Истина;
|
|
||||||
|
|
||||||
Binary file not shown.
|
|
@ -1,76 +0,0 @@
|
||||||
|
|
||||||
Процедура ДействияФормыМенеджерТабличногоПоля(Кнопка)
|
|
||||||
|
|
||||||
ирОбщий.ОткрытьМенеджерТабличногоПоляЛкс(ЭлементыФормы.СправочникСписок, ЭтаФорма);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ДействияФормыОПодсистеме(Кнопка)
|
|
||||||
|
|
||||||
ирОбщий.ОткрытьСправкуПоПодсистемеЛкс(ТипЗнч(СправочникСписок));
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура СправочникСписокПриАктивизацииСтроки(Элемент)
|
|
||||||
|
|
||||||
ирОбщий.ТабличноеПолеПриАктивизацииСтрокиЛкс(ЭтаФорма, Элемент);
|
|
||||||
Если Элемент.ТекущаяСтрока <> Неопределено Тогда
|
|
||||||
Текст = Элемент.ТекущаяСтрока.ТекстАлгоритма;
|
|
||||||
Иначе
|
|
||||||
Текст = "";
|
|
||||||
КонецЕсли;
|
|
||||||
ЭлементыФормы.ПолеТекста.УстановитьТекст(Текст);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ДействияФормыКонсольКода(Кнопка)
|
|
||||||
|
|
||||||
Ссылка = ЭлементыФормы.СправочникСписок.ТекущаяСтрока;
|
|
||||||
Если Ссылка = Неопределено Тогда
|
|
||||||
Возврат;
|
|
||||||
КонецЕсли;
|
|
||||||
Справочники[Метаданные.НайтиПоТипу(ТипЗнч(ЭлементыФормы.СправочникСписок.Значение)).Имя].ОткрытьКонсольКодаДляАлгоритма(Ссылка);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ТекстАлгоритмаПриИзменении(Элемент)
|
|
||||||
|
|
||||||
СправочникСписок.Отбор.ТекстАлгоритма.Использование = Истина;
|
|
||||||
СправочникСписок.Отбор.ТекстАлгоритма.ВидСравнения = ВидСравнения.Содержит;
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ОткрытьНастройкиАлгоритмов(Кнопка)
|
|
||||||
|
|
||||||
ирОбщий.ОткрытьНастройкиАлгоритмовЛкс();
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура СправочникСписокПриВыводеСтроки(Элемент, ОформлениеСтроки, ДанныеСтроки) Экспорт
|
|
||||||
|
|
||||||
ирОбщий.ТабличноеПолеПриВыводеСтрокиЛкс(ЭтаФорма, Элемент, ОформлениеСтроки, ДанныеСтроки);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ВнешнееСобытие(Источник, Событие, Данные) Экспорт
|
|
||||||
|
|
||||||
ирОбщий.Форма_ВнешнееСобытиеЛкс(ЭтаФорма, Источник, Событие, Данные);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ПриОткрытии()
|
|
||||||
ирОбщий.Форма_ПриОткрытииЛкс(ЭтаФорма);
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ПриЗакрытии()
|
|
||||||
ирОбщий.Форма_ПриЗакрытииЛкс(ЭтаФорма);
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ОбработкаОповещения(ИмяСобытия, Параметр, Источник) Экспорт
|
|
||||||
|
|
||||||
ирОбщий.Форма_ОбработкаОповещенияЛкс(ЭтаФорма, ИмяСобытия, Параметр, Источник);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
ирОбщий.ИнициироватьФормуЛкс(ЭтаФорма, "Справочник.ирАлгоритмы.Форма.ФормаСписка");
|
|
||||||
Порядок.Установить("ДатаИзменения Убыв");
|
|
||||||
File diff suppressed because it is too large
Load Diff
|
|
@ -1,208 +0,0 @@
|
||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<Form xmlns="http://v8.1c.ru/8.3/xcf/logform" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:dcscor="http://v8.1c.ru/8.1/data-composition-system/core" xmlns:dcsset="http://v8.1c.ru/8.1/data-composition-system/settings" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" xmlns:style="http://v8.1c.ru/8.1/data/ui/style" xmlns:sys="http://v8.1c.ru/8.1/data/ui/fonts/system" xmlns:v8="http://v8.1c.ru/8.1/data/core" xmlns:v8ui="http://v8.1c.ru/8.1/data/ui" xmlns:web="http://v8.1c.ru/8.1/data/ui/colors/web" xmlns:win="http://v8.1c.ru/8.1/data/ui/colors/windows" xmlns:xr="http://v8.1c.ru/8.3/xcf/readable" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.9">
|
|
||||||
<VerticalScroll>useIfNecessary</VerticalScroll>
|
|
||||||
<AutoCommandBar name="ФормаКоманднаяПанель" id="-1">
|
|
||||||
<ChildItems>
|
|
||||||
<Button name="ФормаКонсольКода" id="12">
|
|
||||||
<Type>CommandBarButton</Type>
|
|
||||||
<CommandName>Form.Command.КонсольКода</CommandName>
|
|
||||||
<ExtendedTooltip name="ФормаКонсольКодаРасширеннаяПодсказка" id="13"/>
|
|
||||||
</Button>
|
|
||||||
<Button name="ФормаОбщаяКомандаирОПодсистеме" id="8001">
|
|
||||||
<Type>CommandBarButton</Type>
|
|
||||||
<CommandName>0:60b48362-4a19-4a23-95da-9a9ce4ad14c5</CommandName>
|
|
||||||
<ExtendedTooltip name="ФормаОбщаяКомандаирОПодсистемеРасширеннаяПодсказка" id="8002"/>
|
|
||||||
</Button>
|
|
||||||
</ChildItems>
|
|
||||||
</AutoCommandBar>
|
|
||||||
<ChildItems>
|
|
||||||
<Table name="Список" id="1">
|
|
||||||
<Representation>List</Representation>
|
|
||||||
<CommandBarLocation>None</CommandBarLocation>
|
|
||||||
<DefaultItem>true</DefaultItem>
|
|
||||||
<Height>5</Height>
|
|
||||||
<UseAlternationRowColor>true</UseAlternationRowColor>
|
|
||||||
<InitialTreeView>ExpandTopLevel</InitialTreeView>
|
|
||||||
<EnableStartDrag>true</EnableStartDrag>
|
|
||||||
<FileDragMode>AsFile</FileDragMode>
|
|
||||||
<DataPath>Список</DataPath>
|
|
||||||
<RowPictureDataPath>Список.DefaultPicture</RowPictureDataPath>
|
|
||||||
<SearchStringLocation>None</SearchStringLocation>
|
|
||||||
<ViewStatusLocation>None</ViewStatusLocation>
|
|
||||||
<SearchControlLocation>None</SearchControlLocation>
|
|
||||||
<AutoRefresh>false</AutoRefresh>
|
|
||||||
<AutoRefreshPeriod>60</AutoRefreshPeriod>
|
|
||||||
<Period>
|
|
||||||
<v8:variant xsi:type="v8:StandardPeriodVariant">Custom</v8:variant>
|
|
||||||
<v8:startDate>0001-01-01T00:00:00</v8:startDate>
|
|
||||||
<v8:endDate>0001-01-01T00:00:00</v8:endDate>
|
|
||||||
</Period>
|
|
||||||
<ChoiceFoldersAndItems>Items</ChoiceFoldersAndItems>
|
|
||||||
<RestoreCurrentRow>false</RestoreCurrentRow>
|
|
||||||
<TopLevelParent xsi:nil="true"/>
|
|
||||||
<ShowRoot>true</ShowRoot>
|
|
||||||
<AllowRootChoice>false</AllowRootChoice>
|
|
||||||
<UpdateOnDataChange>Auto</UpdateOnDataChange>
|
|
||||||
<ContextMenu name="СписокКонтекстноеМеню" id="2"/>
|
|
||||||
<AutoCommandBar name="СписокКоманднаяПанель" id="3">
|
|
||||||
<Autofill>false</Autofill>
|
|
||||||
</AutoCommandBar>
|
|
||||||
<ExtendedTooltip name="СписокРасширеннаяПодсказка" id="14"/>
|
|
||||||
<SearchStringAddition name="СписокСтрокаПоиска" id="15">
|
|
||||||
<AdditionSource>
|
|
||||||
<Item>Список</Item>
|
|
||||||
<Type>SearchStringRepresentation</Type>
|
|
||||||
</AdditionSource>
|
|
||||||
<ContextMenu name="СписокСтрокаПоискаКонтекстноеМеню" id="16"/>
|
|
||||||
<ExtendedTooltip name="СписокСтрокаПоискаРасширеннаяПодсказка" id="17"/>
|
|
||||||
</SearchStringAddition>
|
|
||||||
<ViewStatusAddition name="СписокСостояниеПросмотра" id="18">
|
|
||||||
<AdditionSource>
|
|
||||||
<Item>Список</Item>
|
|
||||||
<Type>ViewStatusRepresentation</Type>
|
|
||||||
</AdditionSource>
|
|
||||||
<ContextMenu name="СписокСостояниеПросмотраКонтекстноеМеню" id="19"/>
|
|
||||||
<ExtendedTooltip name="СписокСостояниеПросмотраРасширеннаяПодсказка" id="20"/>
|
|
||||||
</ViewStatusAddition>
|
|
||||||
<SearchControlAddition name="СписокУправлениеПоиском" id="21">
|
|
||||||
<AdditionSource>
|
|
||||||
<Item>Список</Item>
|
|
||||||
<Type>SearchControl</Type>
|
|
||||||
</AdditionSource>
|
|
||||||
<ContextMenu name="СписокУправлениеПоискомКонтекстноеМеню" id="22"/>
|
|
||||||
<ExtendedTooltip name="СписокУправлениеПоискомРасширеннаяПодсказка" id="23"/>
|
|
||||||
</SearchControlAddition>
|
|
||||||
<ChildItems>
|
|
||||||
<LabelField name="Наименование" id="4">
|
|
||||||
<DataPath>Список.Description</DataPath>
|
|
||||||
<DefaultItem>true</DefaultItem>
|
|
||||||
<ContextMenu name="НаименованиеКонтекстноеМеню" id="5"/>
|
|
||||||
<ExtendedTooltip name="НаименованиеРасширеннаяПодсказка" id="24"/>
|
|
||||||
</LabelField>
|
|
||||||
<LabelField name="ДатаИзменения" id="6">
|
|
||||||
<DataPath>Список.ДатаИзменения</DataPath>
|
|
||||||
<ContextMenu name="ДатаИзмененияКонтекстноеМеню" id="7"/>
|
|
||||||
<ExtendedTooltip name="ДатаИзмененияРасширеннаяПодсказка" id="25"/>
|
|
||||||
</LabelField>
|
|
||||||
<LabelField name="Комментарий" id="8">
|
|
||||||
<DataPath>Список.Комментарий</DataPath>
|
|
||||||
<ContextMenu name="КомментарийКонтекстноеМеню" id="9"/>
|
|
||||||
<ExtendedTooltip name="КомментарийРасширеннаяПодсказка" id="26"/>
|
|
||||||
</LabelField>
|
|
||||||
</ChildItems>
|
|
||||||
</Table>
|
|
||||||
<TextDocumentField name="ТекстАлгоритма" id="10">
|
|
||||||
<DataPath>Items.Список.CurrentData.ТекстАлгоритма</DataPath>
|
|
||||||
<ReadOnly>true</ReadOnly>
|
|
||||||
<Height>5</Height>
|
|
||||||
<ContextMenu name="ТекстАлгоритмаКонтекстноеМеню" id="11"/>
|
|
||||||
<ExtendedTooltip name="ТекстАлгоритмаРасширеннаяПодсказка" id="27"/>
|
|
||||||
</TextDocumentField>
|
|
||||||
</ChildItems>
|
|
||||||
<Attributes>
|
|
||||||
<Attribute name="Список" id="1">
|
|
||||||
<Type>
|
|
||||||
<v8:Type>cfg:DynamicList</v8:Type>
|
|
||||||
</Type>
|
|
||||||
<MainAttribute>true</MainAttribute>
|
|
||||||
<Settings xsi:type="DynamicList">
|
|
||||||
<ManualQuery>false</ManualQuery>
|
|
||||||
<DynamicDataRead>true</DynamicDataRead>
|
|
||||||
<MainTable>Catalog.ирАлгоритмы</MainTable>
|
|
||||||
<ListSettings>
|
|
||||||
<dcsset:filter>
|
|
||||||
<dcsset:viewMode>Normal</dcsset:viewMode>
|
|
||||||
<dcsset:userSettingID>dfcece9d-5077-440b-b6b3-45a5cb4538eb</dcsset:userSettingID>
|
|
||||||
</dcsset:filter>
|
|
||||||
<dcsset:order>
|
|
||||||
<dcsset:item xsi:type="dcsset:OrderItemField">
|
|
||||||
<dcsset:field>ДатаИзменения</dcsset:field>
|
|
||||||
<dcsset:orderType>Desc</dcsset:orderType>
|
|
||||||
</dcsset:item>
|
|
||||||
<dcsset:viewMode>Normal</dcsset:viewMode>
|
|
||||||
<dcsset:userSettingID>88619765-ccb3-46c6-ac52-38e9c992ebd4</dcsset:userSettingID>
|
|
||||||
</dcsset:order>
|
|
||||||
<dcsset:conditionalAppearance>
|
|
||||||
<dcsset:viewMode>Normal</dcsset:viewMode>
|
|
||||||
<dcsset:userSettingID>b75fecce-942b-4aed-abc9-e6a02e460fb3</dcsset:userSettingID>
|
|
||||||
</dcsset:conditionalAppearance>
|
|
||||||
</ListSettings>
|
|
||||||
</Settings>
|
|
||||||
</Attribute>
|
|
||||||
</Attributes>
|
|
||||||
<Commands>
|
|
||||||
<Command name="КонсольКода" id="1">
|
|
||||||
<Title>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>ru</v8:lang>
|
|
||||||
<v8:content>Консоль кода</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>en</v8:lang>
|
|
||||||
<v8:content>Консоль кода</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>uk</v8:lang>
|
|
||||||
<v8:content>Консоль кода</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
</Title>
|
|
||||||
<ToolTip>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>ru</v8:lang>
|
|
||||||
<v8:content>Консоль кода</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>en</v8:lang>
|
|
||||||
<v8:content>Консоль кода</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>uk</v8:lang>
|
|
||||||
<v8:content>Консоль кода</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
</ToolTip>
|
|
||||||
<Picture>
|
|
||||||
<xr:Ref>CommonPicture.ирКонсольКода</xr:Ref>
|
|
||||||
<xr:LoadTransparent>false</xr:LoadTransparent>
|
|
||||||
</Picture>
|
|
||||||
<Action>КонсольКода</Action>
|
|
||||||
<Representation>TextPicture</Representation>
|
|
||||||
<CurrentRowUse>DontUse</CurrentRowUse>
|
|
||||||
</Command>
|
|
||||||
<Command name="НастройкиАлгоритмов" id="2">
|
|
||||||
<Title>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>ru</v8:lang>
|
|
||||||
<v8:content>Настройки справочника</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>en</v8:lang>
|
|
||||||
<v8:content>Настройки справочника</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>uk</v8:lang>
|
|
||||||
<v8:content>Настройки справочника</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
</Title>
|
|
||||||
<ToolTip>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>ru</v8:lang>
|
|
||||||
<v8:content>Настройки справочника</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>en</v8:lang>
|
|
||||||
<v8:content>Настройки справочника</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>uk</v8:lang>
|
|
||||||
<v8:content>Настройки справочника</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
</ToolTip>
|
|
||||||
<Picture>
|
|
||||||
<xr:Ref>CommonPicture.ирНастройкиАлгоритмов</xr:Ref>
|
|
||||||
<xr:LoadTransparent>true</xr:LoadTransparent>
|
|
||||||
</Picture>
|
|
||||||
<Action>НастройкиВыполненияАлгоритмов</Action>
|
|
||||||
<CurrentRowUse>DontUse</CurrentRowUse>
|
|
||||||
</Command>
|
|
||||||
</Commands>
|
|
||||||
</Form>
|
|
||||||
|
|
@ -1,23 +0,0 @@
|
||||||
&НаКлиенте
|
|
||||||
Процедура КонсольКода(Команда)
|
|
||||||
|
|
||||||
#Если ВебКлиент Тогда
|
|
||||||
Сообщить("Команда недоступна в вебклиенте");
|
|
||||||
#ИначеЕсли ТонкийКлиент Тогда
|
|
||||||
ОткрытьФорму("Обработка.ирПортативный.Форма.ЗапускСеансаУправляемая");
|
|
||||||
#Иначе
|
|
||||||
ТекущаяСтрока = Элементы.Список.ТекущаяСтрока;
|
|
||||||
Если ТекущаяСтрока = Неопределено Тогда
|
|
||||||
Возврат;
|
|
||||||
КонецЕсли;
|
|
||||||
Справочники.ирАлгоритмы.ОткрытьКонсольКодаДляАлгоритма(ТекущаяСтрока.Ссылка);
|
|
||||||
#КонецЕсли
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
&НаКлиенте
|
|
||||||
Процедура НастройкиВыполненияАлгоритмов(Команда)
|
|
||||||
|
|
||||||
ирОбщий.ОткрытьНастройкиАлгоритмовЛкс();
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
Binary file not shown.
|
|
@ -1,489 +0,0 @@
|
||||||
Перем ПолеТекстаПрограммы;
|
|
||||||
Перем мЗначенияПараметров;
|
|
||||||
|
|
||||||
Процедура ПередЗаписью(Отказ)
|
|
||||||
|
|
||||||
Если Не ПроверитьДанные() Тогда
|
|
||||||
Отказ = Истина;
|
|
||||||
Возврат;
|
|
||||||
КонецЕсли;
|
|
||||||
СинтаксическийКонтрольПередЗаписью = ирКэш.Получить().СинтаксическийКонтрольПередЗаписью;
|
|
||||||
Если СинтаксическийКонтрольПередЗаписью = Истина Тогда
|
|
||||||
ОбновитьКонтекстПодсказкиИПолучитьСтруктуруПараметров();
|
|
||||||
Если Не ПолеТекстаПрограммы.ПроверитьПрограммныйКод() Тогда
|
|
||||||
Ответ = Вопрос("При проверке текста алгоритма обнаружены ошибки. Продолжить?", РежимДиалогаВопрос.ОКОтмена);
|
|
||||||
Если Ответ = КодВозвратаДиалога.Отмена Тогда
|
|
||||||
Отказ = Истина;
|
|
||||||
КонецЕсли;
|
|
||||||
КонецЕсли;
|
|
||||||
КонецЕсли;
|
|
||||||
Если Не Отказ Тогда
|
|
||||||
ТекстАлгоритма = ПолеТекстаПрограммы.ПолеТекста.ПолучитьТекст();
|
|
||||||
КонецЕсли;
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ПриИзмененииДанных()
|
|
||||||
|
|
||||||
ПолеТекстаПрограммы.ПолеТекста.УстановитьТекст(ТекстАлгоритма);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Функция ОбновитьКонтекстПодсказкиИПолучитьСтруктуруПараметров()
|
|
||||||
|
|
||||||
ирОбщий.ИнициироватьГлобальныйКонтекстПодсказкиЛкс(ПолеТекстаПрограммы);
|
|
||||||
|
|
||||||
// Локальный
|
|
||||||
СтруктураПараметров = Новый Структура;
|
|
||||||
Для Каждого СтрокаПараметра Из Параметры Цикл
|
|
||||||
СтруктураПараметров.Вставить(СтрокаПараметра.Имя, СтрокаПараметра.Значение);
|
|
||||||
Если СтрокаПараметра.Значение <> Неопределено Тогда
|
|
||||||
МассивТипов = Новый Массив;
|
|
||||||
МассивТипов.Добавить(ТипЗнч(СтрокаПараметра.Значение));
|
|
||||||
ПолеТекстаПрограммы.ДобавитьСловоЛокальногоКонтекста(
|
|
||||||
СтрокаПараметра.Имя, "Свойство", Новый ОписаниеТипов(МассивТипов), , , СтрокаПараметра.Значение);
|
|
||||||
КонецЕсли;
|
|
||||||
//Если Не ПустаяСтрока(СтрокаПараметра.ДопустимыеТипы) Тогда
|
|
||||||
ПолеТекстаПрограммы.ДобавитьПеременнуюЛокальногоКонтекста(
|
|
||||||
СтрокаПараметра.Имя, СтрокаПараметра.ДопустимыеТипы);
|
|
||||||
//КонецЕсли;
|
|
||||||
КонецЦикла;
|
|
||||||
|
|
||||||
// Результат
|
|
||||||
ПолеТекстаПрограммы.ДобавитьСловоЛокальногоКонтекста(
|
|
||||||
"Результат", "Свойство", Новый ОписаниеТипов(Новый Массив));
|
|
||||||
|
|
||||||
Возврат СтруктураПараметров;
|
|
||||||
|
|
||||||
КонецФункции // ОбновитьКонтекстПодсказкиИПолучитьСтруктуруПараметров()
|
|
||||||
|
|
||||||
// @@@.КЛАСС.ПолеТекстаПрограммы
|
|
||||||
Процедура КлсПолеТекстаПрограммыНажатие(Кнопка)
|
|
||||||
|
|
||||||
СтруктураПараметров = ОбновитьКонтекстПодсказкиИПолучитьСтруктуруПараметров();
|
|
||||||
// Специальная обработка команд компоненты ДО
|
|
||||||
КомпонентаТекстаАлгоритма = ПолеТекстаПрограммы;
|
|
||||||
Если Ложь
|
|
||||||
Или Кнопка = ирОбщий.КнопкаКоманднойПанелиЭкземпляраКомпонентыЛкс(ПолеТекстаПрограммы, "Выполнить")
|
|
||||||
Или Кнопка = ирОбщий.КнопкаКоманднойПанелиЭкземпляраКомпонентыЛкс(ПолеТекстаПрограммы, "Проверить")
|
|
||||||
Тогда
|
|
||||||
Если Не ПроверитьДанные() Тогда
|
|
||||||
Возврат;
|
|
||||||
КонецЕсли;
|
|
||||||
КонецЕсли;
|
|
||||||
Если Кнопка = ирОбщий.КнопкаКоманднойПанелиЭкземпляраКомпонентыЛкс(ПолеТекстаПрограммы, "Выполнить") Тогда
|
|
||||||
Если ПолеТекстаПрограммы.ПроверитьПрограммныйКод() Тогда
|
|
||||||
Если Модифицированность Тогда
|
|
||||||
Ответ = Вопрос("Перед выполнением алгоритм необходимо сохранить. Выполнить сохранение?", РежимДиалогаВопрос.ОКОтмена);
|
|
||||||
Если Ответ = КодВозвратаДиалога.Отмена Тогда
|
|
||||||
Возврат;
|
|
||||||
КонецЕсли;
|
|
||||||
Если Не ЗаписатьВФорме() Тогда
|
|
||||||
Возврат;
|
|
||||||
КонецЕсли;
|
|
||||||
КонецЕсли;
|
|
||||||
ирКэш.Получить().ВыполнитьМетодАлгоритма(ЭтотОбъект, 1, СтруктураПараметров);
|
|
||||||
КонецЕсли;
|
|
||||||
Иначе
|
|
||||||
ПолеТекстаПрограммы.Нажатие(Кнопка);
|
|
||||||
КонецЕсли;
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
// @@@.КЛАСС.ПолеТекстаПрограммы
|
|
||||||
Процедура КлсПолеТекстаПрограммыАвтоОбновитьСправку()
|
|
||||||
|
|
||||||
#Если Сервер И Не Сервер Тогда
|
|
||||||
ПолеТекстаПрограммы = Обработки.ирКлсПолеТекстаПрограммы.Создать();
|
|
||||||
#КонецЕсли
|
|
||||||
ПолеТекстаПрограммы.АвтоОбновитьСправку();
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
// @@@.КЛАСС.ПолеТекстаПрограммы
|
|
||||||
Процедура ВнешнееСобытие(Источник, Событие, Данные) Экспорт
|
|
||||||
|
|
||||||
Если ПолеТекстаПрограммы = Неопределено Тогда
|
|
||||||
Возврат;
|
|
||||||
КонецЕсли;
|
|
||||||
#Если Сервер И Не Сервер Тогда
|
|
||||||
ПолеТекстаПрограммы = Обработки.ирКлсПолеТекстаПрограммы.Создать();
|
|
||||||
#КонецЕсли
|
|
||||||
ПолеТекстаПрограммы.ВнешнееСобытиеОбъекта(Источник, Событие, Данные);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Функция ПоказатьОшибкуВыполнения(ИнформацияОбОшибке, Знач ТекстСообщения = "", РежимВыполненияАлгоритма = 0, СтартоваяСтрока = 0) Экспорт
|
|
||||||
|
|
||||||
Если Не Открыта() Тогда
|
|
||||||
Открыть();
|
|
||||||
КонецЕсли;
|
|
||||||
Если Не ВводДоступен() Тогда
|
|
||||||
ирОбщий.Форма_АктивироватьОткрытьЛкс(ЭтаФорма);
|
|
||||||
КонецЕсли;
|
|
||||||
ВыполнятьАлгоритмыЧерезВнешниеОбработки = ирКэш.Получить().ВыполнятьАлгоритмыЧерезВнешниеОбработки;
|
|
||||||
Если ВыполнятьАлгоритмыЧерезВнешниеОбработки Тогда
|
|
||||||
ОбновитьСвязи();
|
|
||||||
КонецЕсли;
|
|
||||||
ТекущийЭлемент = ПолеТекстаПрограммы.ПолеТекста;
|
|
||||||
Если Ложь
|
|
||||||
Или РежимВыполненияАлгоритма = 0
|
|
||||||
Или РежимВыполненияАлгоритма = 1
|
|
||||||
Тогда
|
|
||||||
ИмяМодуля = "ВнешняяОбработка." + Наименование;
|
|
||||||
Если ирКэш.НомерИзданияПлатформыЛкс() = "82" Тогда
|
|
||||||
ИмяМодуля = ИмяМодуля + ".МодульОбъекта";
|
|
||||||
КонецЕсли;
|
|
||||||
Иначе
|
|
||||||
ИмяМодуля = "";
|
|
||||||
КонецЕсли;
|
|
||||||
Если ТекстСообщения = "" Тогда
|
|
||||||
ТекстСообщения = "Ошибка при выполнении алгоритма """ + Наименование + """ в режиме " + РежимВыполненияАлгоритма;
|
|
||||||
КонецЕсли;
|
|
||||||
Сообщить(ТекстСообщения, СтатусСообщения.Важное);
|
|
||||||
ТекстИстиннойОшибки = ирОбщий.ПоказатьОшибкуВТекстеПрограммыЛкс(ПолеТекстаПрограммы.ПолеТекста,
|
|
||||||
СтартоваяСтрока, , , МодальныйРежим, ИнформацияОбОшибке, ИмяМодуля);
|
|
||||||
Возврат ТекстИстиннойОшибки;
|
|
||||||
|
|
||||||
КонецФункции // ПоказатьОшибкуВыполнения()
|
|
||||||
|
|
||||||
Процедура ОбновитьСвязи()
|
|
||||||
|
|
||||||
ФайлНовее = Ложь;
|
|
||||||
ДобавокЗаголовка = "";
|
|
||||||
ФайлВнешнейОбработки = ирКэш.Получить().ПолучитьФайлВнешнейОбработкиАлгоритма(ЭтотОбъект);
|
|
||||||
Если ФайлВнешнейОбработки.Существует() Тогда
|
|
||||||
Если ФайлВнешнейОбработки.ПолучитьВремяИзменения() + ирКэш.ПолучитьСмещениеВремениЛкс() > ДатаИзменения Тогда
|
|
||||||
ДобавокЗаголовка = " [файл новее!]";
|
|
||||||
ФайлНовее = Истина;
|
|
||||||
КонецЕсли;
|
|
||||||
КонецЕсли;
|
|
||||||
Если ФайлНовее Тогда
|
|
||||||
НовыйЦветРамки = WebЦвета.Красный;
|
|
||||||
Иначе
|
|
||||||
НовыйЦветРамки = WebЦвета.Зеленый;
|
|
||||||
КонецЕсли;
|
|
||||||
ПолеТекстаПрограммы.ПолеТекста.ЦветРамки = НовыйЦветРамки;
|
|
||||||
ЭлементыФормы.Наименование.ТолькоПросмотр = ФайлНовее;
|
|
||||||
Заголовок = Метаданные().Представление() + ДобавокЗаголовка;
|
|
||||||
|
|
||||||
КонецПроцедуры // ОбновитьСвязи()
|
|
||||||
|
|
||||||
Процедура ПриОткрытии()
|
|
||||||
|
|
||||||
ЭтаФорма.ЗакрыватьПриВыборе = Ложь;
|
|
||||||
ВыполнятьАлгоритмыЧерезВнешниеОбработки = ирКэш.Получить().ВыполнятьАлгоритмыЧерезВнешниеОбработки;
|
|
||||||
Если ВыполнятьАлгоритмыЧерезВнешниеОбработки Тогда
|
|
||||||
ПодключитьОбработчикОжидания("ОбновитьСвязи", 5);
|
|
||||||
ОбновитьСвязи();
|
|
||||||
КонецЕсли;
|
|
||||||
КнопкиПанели = ЭлементыФормы.КоманднаяПанельТекстАлгоритма.Кнопки;
|
|
||||||
КнопкиПанели.ОбновитьИзФайла.Доступность = ВыполнятьАлгоритмыЧерезВнешниеОбработки;
|
|
||||||
КнопкиПанели.ОткрытьВОтладчике.Доступность = ВыполнятьАлгоритмыЧерезВнешниеОбработки;
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура КоманднаяПанельТекстАлгоритмаОбновитьИзФайла(Кнопка)
|
|
||||||
|
|
||||||
ФайлВнешнейОбработки = ирКэш.Получить().ПолучитьФайлВнешнейОбработкиАлгоритма(ЭтотОбъект);
|
|
||||||
ТекстАлгоритмаИзФайла = ирКэш.Получить().ПолучитьТекстМодуляВнешнейОбработкиАлгоритма(ФайлВнешнейОбработки);
|
|
||||||
Если ТекстАлгоритмаИзФайла <> Неопределено Тогда
|
|
||||||
// %%%%% Здесь можно сделать еще и сравнение текстов
|
|
||||||
ПолеТекстаПрограммы.ПолеТекста.УстановитьТекст(ТекстАлгоритмаИзФайла);
|
|
||||||
Сообщить("Обновление из файла прошло успешно");
|
|
||||||
ДатаИзменения = ФайлВнешнейОбработки.ПолучитьВремяИзменения() + ирКэш.ПолучитьСмещениеВремениЛкс();
|
|
||||||
Модифицированность = Истина;
|
|
||||||
ОбновитьСвязи();
|
|
||||||
Иначе
|
|
||||||
Сообщить("Обновить из файла не удалось");
|
|
||||||
КонецЕсли;
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ПараметрыДопустимыеТипыНачалоВыбора(Элемент, СтандартнаяОбработка)
|
|
||||||
|
|
||||||
СтандартнаяОбработка = Ложь;
|
|
||||||
Результат = ирКэш.Получить().РедактироватьДопустимыеТипы(Элемент.Значение);
|
|
||||||
Если Результат <> Неопределено Тогда
|
|
||||||
Элемент.Значение = Результат;
|
|
||||||
ОбновитьОграничениеТипаЗначения();
|
|
||||||
КонецЕсли;
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ПараметрыПриВыводеСтроки(Элемент, ОформлениеСтроки, ДанныеСтроки) Экспорт
|
|
||||||
|
|
||||||
ОформлениеСтроки.Ячейки.ДопустимыеТипы.УстановитьТекст(ирКэш.Получить().ПредставлениеДопустимыхТипов(ДанныеСтроки.ДопустимыеТипы));
|
|
||||||
ирОбщий.ТабличноеПолеОтобразитьПиктограммыТиповЛкс(ОформлениеСтроки, "Значение");
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ПриЗакрытии()
|
|
||||||
|
|
||||||
ПолеТекстаПрограммы.Уничтожить();
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура КоманднаяПанельТекстАлгоритмаОткрытьВОтладчике(Кнопка)
|
|
||||||
|
|
||||||
ОбновитьКонтекстПодсказкиИПолучитьСтруктуруПараметров();
|
|
||||||
Если ПолеТекстаПрограммы.ПроверитьПрограммныйКод() Тогда
|
|
||||||
Если Модифицированность Тогда
|
|
||||||
Ответ = Вопрос("Перед открытием в отладчике алгоритм необходимо сохранить. Выполнить сохранение?", РежимДиалогаВопрос.ОКОтмена);
|
|
||||||
Если Ответ = КодВозвратаДиалога.Отмена Тогда
|
|
||||||
Возврат;
|
|
||||||
КонецЕсли;
|
|
||||||
Если Не ЗаписатьВФорме() Тогда
|
|
||||||
Возврат;
|
|
||||||
КонецЕсли;
|
|
||||||
КонецЕсли;
|
|
||||||
НомерСтрокиВАлгоритме = ПолеТекстаПрограммы.ПолучитьНомерТекущейСтроки();
|
|
||||||
НомерСтрокиВМодуле = НомерСтрокиВАлгоритме + ПолучитьСтартовуюСтрокуМетодаВМодуле();
|
|
||||||
ИдентификаторОтладчика = ирОбщий.ПроверитьЗапуститьОтладчик();
|
|
||||||
ирКэш.Получить().ОткрытьАлгоритмВОтладчике(ЭтотОбъект, НомерСтрокиВМодуле, ИдентификаторОтладчика);
|
|
||||||
КонецЕсли;
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура НаименованиеПриИзменении(Элемент)
|
|
||||||
|
|
||||||
Если Не ирОбщий.ЛиИмяПеременнойЛкс(Элемент.Значение) Тогда
|
|
||||||
Элемент.Значение = ирОбщий.ИдентификаторИзПредставленияЛкс(Элемент.Значение);
|
|
||||||
КонецЕсли;
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ОбработкаВыбора(РезультатВыбора, Источник)
|
|
||||||
|
|
||||||
Если ТипЗнч(РезультатВыбора) = Тип("Структура") Тогда
|
|
||||||
Если РезультатВыбора.Свойство("ИнформацияОбОшибке") Тогда
|
|
||||||
ПоказатьОшибкуВыполнения(РезультатВыбора.ИнформацияОбОшибке, , РезультатВыбора.РежимВыполненияАлгоритма, РезультатВыбора.СтартоваяСтрока);
|
|
||||||
КонецЕсли;
|
|
||||||
КонецЕсли;
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ДействияФормыОПодсистеме(Кнопка)
|
|
||||||
|
|
||||||
ирОбщий.ОткрытьСправкуПоПодсистемеЛкс(ЭтотОбъект);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ПараметрыПриНачалеРедактирования(Элемент, НоваяСтрока, Копирование)
|
|
||||||
|
|
||||||
Если Не ЗначениеЗаполнено(Элемент.ТекущиеДанные.Имя) Тогда
|
|
||||||
Элемент.ТекущиеДанные.Имя = "П" + (Элемент.Значение.Индекс(Элемент.ТекущиеДанные) + 1);
|
|
||||||
КонецЕсли;
|
|
||||||
Если НоваяСтрока И Не Копирование Тогда
|
|
||||||
Элемент.ТекущиеДанные.Вход = Истина;
|
|
||||||
КонецЕсли;
|
|
||||||
ОбновитьОграничениеТипаЗначения();
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ОбновитьОграничениеТипаЗначения()
|
|
||||||
|
|
||||||
Если ЗначениеЗаполнено(ЭлементыФормы.Параметры.ТекущиеДанные.ДопустимыеТипы) Тогда
|
|
||||||
ОграничениеТипа = ирКэш.Получить().ПолучитьОписаниеТиповИзДопустимыхТипов(ЭлементыФормы.Параметры.ТекущиеДанные.ДопустимыеТипы);
|
|
||||||
ЭлементыФормы.Параметры.Колонки.Значение.ЭлементУправления.ОграничениеТипа = ОграничениеТипа;
|
|
||||||
ЭлементыФормы.Параметры.ТекущиеДанные.Значение = ОграничениеТипа.ПривестиЗначение(ЭлементыФормы.Параметры.ТекущиеДанные.Значение);
|
|
||||||
КонецЕсли;
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ПараметрыНачалоПеретаскивания(Элемент, ПараметрыПеретаскивания, Выполнение)
|
|
||||||
|
|
||||||
Если ПараметрыПеретаскивания.Действие = ДействиеПеретаскивания.Перемещение Тогда
|
|
||||||
ПараметрыПеретаскивания.Значение = Элемент.ТекущаяСтрока.Имя;
|
|
||||||
КонецЕсли;
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура КоманднаяПанельТекстАлгоритмаСсылкаНаОбъектБД(Кнопка)
|
|
||||||
|
|
||||||
ПолеТекстаПрограммы.ВставитьСсылкуНаОбъектБД(ЭлементыФормы.Параметры);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура КоманднаяПанельПараметрыЗаполнить(Кнопка)
|
|
||||||
|
|
||||||
Пока Истина Цикл
|
|
||||||
ОбновитьКонтекстПодсказкиИПолучитьСтруктуруПараметров();
|
|
||||||
ИнформацияОбОшибке = ПолеТекстаПрограммы.ПолучитьИнформациюОбОшибке();
|
|
||||||
НеопределеннаяПеременная = ирКэш.Получить().ИмяНеопределеннойПеременнойИзИнформацииОбОшибке(ИнформацияОбОшибке);
|
|
||||||
Если Не ЗначениеЗаполнено(НеопределеннаяПеременная) Тогда
|
|
||||||
ПолеТекстаПрограммы.ПроверитьПрограммныйКод(Ложь);
|
|
||||||
Прервать;
|
|
||||||
КонецЕсли;
|
|
||||||
СтрокаПараметра = Параметры.Найти(НеопределеннаяПеременная);
|
|
||||||
Если СтрокаПараметра = Неопределено Тогда
|
|
||||||
СтрокаПараметра = Параметры.Добавить();
|
|
||||||
СтрокаПараметра.Имя = НеопределеннаяПеременная;
|
|
||||||
//СтрокаПараметра.НИмя = НРег(СтрокаПараметра.Имя);
|
|
||||||
КонецЕсли;
|
|
||||||
//СтрокаПараметра.Вход = Истина;
|
|
||||||
ЭтаФорма.Модифицированность = Истина;
|
|
||||||
КонецЦикла;
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура КоманднаяПанельТекстАлгоритмаКонсольКода(Кнопка)
|
|
||||||
|
|
||||||
СтруктураПараметров = Новый Структура;
|
|
||||||
Для Каждого СтрокаПараметра Из Параметры Цикл
|
|
||||||
СтруктураПараметров.Вставить(СтрокаПараметра.Имя, СтрокаПараметра.Значение);
|
|
||||||
КонецЦикла;
|
|
||||||
ФормаКонсолиКода = ирОбщий.ОперироватьСтруктуройЛкс(ТекстАлгоритма, , СтруктураПараметров);
|
|
||||||
ФормаКонсолиКода.ТекущийАлгоритм = Ссылка;
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура КоманднаяПанельТекстАлгоритмаСгенерироватьМетод(Кнопка)
|
|
||||||
|
|
||||||
ТекстАлгоритма = ПолеТекстаПрограммы.ПолеТекста.ПолучитьТекст();
|
|
||||||
Объект = ЭтотОбъект;
|
|
||||||
//Объект.СобратьКонтекст(); // Можно делать и снаружи, но здесь для надежности.
|
|
||||||
|
|
||||||
Результат = "Функция " + Объект.Наименование + "(";
|
|
||||||
СтрокаПараметров = "";
|
|
||||||
ПодсказкаПараметров = "";
|
|
||||||
СмещениеИндекса = 0;
|
|
||||||
Для Индекс = 0 ПО Объект.Параметры.Количество() - 1 Цикл
|
|
||||||
ВнешнийПараметр = Объект.Параметры[Индекс];
|
|
||||||
ИмяПараметра = ВнешнийПараметр.Имя;
|
|
||||||
Если СтрокаПараметров <> "" Тогда
|
|
||||||
СтрокаПараметров = СтрокаПараметров + ", ";
|
|
||||||
КонецЕсли;
|
|
||||||
//Если ВнешнийПараметр.Невозвращаемый Тогда
|
|
||||||
СтрокаПараметров = СтрокаПараметров + "Знач ";
|
|
||||||
//КонецЕсли;
|
|
||||||
СтрокаПараметров = СтрокаПараметров + ИмяПараметра;
|
|
||||||
ЗначениеПараметра = ВнешнийПараметр.Значение;
|
|
||||||
Если Типзнч(ЗначениеПараметра) = Тип("Строка") Тогда
|
|
||||||
СтрокаПараметров = СтрокаПараметров + " = """ + ЗначениеПараметра + """";
|
|
||||||
ИначеЕсли Типзнч(ЗначениеПараметра) = Тип("Булево") Тогда
|
|
||||||
СтрокаПараметров = СтрокаПараметров + " = " + ?(ЗначениеПараметра, "Истина", "Ложь");
|
|
||||||
ИначеЕсли Типзнч(ЗначениеПараметра) = Тип("Число") Тогда
|
|
||||||
СтрокаПараметров = СтрокаПараметров + " = " + Формат(ЗначениеПараметра, "ЧН=; ЧГ=");
|
|
||||||
КонецЕсли;
|
|
||||||
ТипХмл = XMLТипЗнч(ЗначениеПараметра);
|
|
||||||
Если Истина
|
|
||||||
И ТипХмл <> Неопределено
|
|
||||||
И Найти(ТипХмл.ИмяТипа, "Ref.") > 0
|
|
||||||
Тогда
|
|
||||||
ОбъектМД = ЗначениеПараметра.Метаданные();
|
|
||||||
СтрокаКлассаМД = ирКэш.Получить().ОписаниеТипаМетаОбъектов(ирОбщий.ПервыйФрагментЛкс(ОбъектМД.ПолноеИмя()));
|
|
||||||
ПодсказкаПараметров = ПодсказкаПараметров + Символы.ПС + Символы.Таб + ИмяПараметра + " = " + СтрокаКлассаМД.Множественное
|
|
||||||
+ "." + ОбъектМД.Имя + ".ПустаяСсылка();";
|
|
||||||
КонецЕсли;
|
|
||||||
КонецЦикла;
|
|
||||||
Результат = Результат + СтрокаПараметров + ") Экспорт" + Символы.ПС;
|
|
||||||
Если ПодсказкаПараметров <> "" Тогда
|
|
||||||
ПодсказкаПараметров = "
|
|
||||||
| #Если Сервер И Не Сервер Тогда" + ПодсказкаПараметров + "
|
|
||||||
| #КонецЕсли";
|
|
||||||
КонецЕсли;
|
|
||||||
Результат = Результат + Символы.Таб ;
|
|
||||||
|
|
||||||
//МассивСлужебныхПеременных = мВнешниеПараметры.Выгрузить("Наименование"); // Так не будет работать при использовании Выполнить (без функции)
|
|
||||||
МассивСлужебныхПеременных = Новый Массив;
|
|
||||||
Если МассивСлужебныхПеременных.Найти("ЭтотОбъект") = Неопределено Тогда
|
|
||||||
МассивСлужебныхПеременных.Добавить("ЭтотОбъект");
|
|
||||||
КонецЕсли;
|
|
||||||
Если МассивСлужебныхПеременных.Найти("Результат") = Неопределено Тогда
|
|
||||||
МассивСлужебныхПеременных.Добавить("Результат");
|
|
||||||
КонецЕсли;
|
|
||||||
Разделитель = ", ";
|
|
||||||
СтрокаСлужебных = "";
|
|
||||||
Для Каждого СлужебнаяПеременная Из МассивСлужебныхПеременных Цикл
|
|
||||||
СтрокаСлужебных = СтрокаСлужебных + Разделитель + СлужебнаяПеременная;
|
|
||||||
КонецЦикла;
|
|
||||||
СтрокаСлужебных = Сред(СтрокаСлужебных, СтрДлина(Разделитель) + 1);
|
|
||||||
Результат = Результат + "Перем " + СтрокаСлужебных + ";";
|
|
||||||
Результат = Результат + ПодсказкаПараметров;
|
|
||||||
|
|
||||||
мПлатформа = ирКэш.Получить();
|
|
||||||
ТекстПолученияКэшей = "";
|
|
||||||
Результат = Результат + Символы.ПС + мПлатформа.МаркерНачалаАлгоритма;
|
|
||||||
ТекстАлгоритмаТД = Новый ТекстовыйДокумент;
|
|
||||||
ТекстАлгоритмаТД.УстановитьТекст(Объект.ТекстАлгоритма);
|
|
||||||
Для Сч1 = 1 По ТекстАлгоритмаТД.КоличествоСтрок() Цикл
|
|
||||||
Результат = Результат + Символы.Таб + ТекстАлгоритмаТД.ПолучитьСтроку(Сч1) + Символы.ПС;
|
|
||||||
КонецЦикла;
|
|
||||||
//#Если Клиент Или ВнешнееСоединение Тогда
|
|
||||||
//мПлатформа = ирКэш.Получить();
|
|
||||||
//#КонецЕсли
|
|
||||||
Результат = Результат + мПлатформа.МаркерКонцаАлгоритма;
|
|
||||||
Если Найти(НРег(Объект.ТекстАлгоритма), НРег("~Конец")) > 0 Тогда
|
|
||||||
Результат = Результат + Символы.Таб + "; ~Конец:" + Символы.ПС;
|
|
||||||
КонецЕсли;
|
|
||||||
Результат = Результат + Символы.Таб + "Возврат Результат;" + Символы.ПС;
|
|
||||||
Результат = Результат + "КонецФункции" + Символы.ПС;
|
|
||||||
|
|
||||||
ирОбщий.ОткрытьТекстЛкс(Результат, , "ВстроенныйЯзык", Истина);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ПараметрыЗначениеНачалоВыбора(Элемент, СтандартнаяОбработка)
|
|
||||||
|
|
||||||
ирОбщий.ПолеВводаКолонкиРасширенногоЗначения_НачалоВыбораЛкс(ЭтаФорма, ЭлементыФормы.Параметры, СтандартнаяОбработка, , Истина);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ПараметрыПроверкаПеретаскивания(Элемент, ПараметрыПеретаскивания, СтандартнаяОбработка, Строка, Колонка)
|
|
||||||
|
|
||||||
Если ТипЗнч(ПараметрыПеретаскивания.Значение) = Тип("Массив") Тогда
|
|
||||||
СтандартнаяОбработка = Ложь;
|
|
||||||
ПараметрыПеретаскивания.ДопустимыеДействия = ДопустимыеДействияПеретаскивания.КопированиеИПеремещение;
|
|
||||||
КонецЕсли;
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ПараметрыПеретаскивание(Элемент, ПараметрыПеретаскивания, СтандартнаяОбработка, Строка, Колонка)
|
|
||||||
|
|
||||||
Если ТипЗнч(ПараметрыПеретаскивания.Значение) = Тип("Массив") Тогда
|
|
||||||
ЭлементыФормы.Параметры.ВыделенныеСтроки.Очистить();
|
|
||||||
Для Каждого ЭлементМассива Из ПараметрыПеретаскивания.Значение Цикл
|
|
||||||
Если Метаданные.НайтиПоТипу(ТипЗнч(ЭлементМассива)) = Метаданные.НайтиПоТипу(ТипЗнч(Параметры)) Тогда
|
|
||||||
НоваяСтрока = Параметры.Добавить();
|
|
||||||
ЗаполнитьЗначенияСвойств(НоваяСтрока, ЭлементМассива);
|
|
||||||
ЭлементыФормы.Параметры.ВыделенныеСтроки.Добавить(НоваяСтрока);
|
|
||||||
КонецЕсли;
|
|
||||||
КонецЦикла;
|
|
||||||
КонецЕсли;
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ДействияФормыОтображатьПараметры(Кнопка)
|
|
||||||
|
|
||||||
ПоказатьСвернутьНастройки(Не ЭлементыФормы.ДействияФормы.Кнопки.ОтображатьПараметры.Пометка);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ПоказатьСвернутьНастройки(Видимость = Истина)
|
|
||||||
|
|
||||||
ЭлементыФормы.ДействияФормы.Кнопки.ОтображатьПараметры.Пометка = Видимость;
|
|
||||||
ирОбщий.ИзменитьСвернутостьЛкс(ЭтаФорма, Видимость, ЭлементыФормы.Панель1, ЭлементыФормы.Разделитель1, ЭтаФорма.Панель, "верх");
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ПередЗакрытием(Отказ, СтандартнаяОбработка)
|
|
||||||
|
|
||||||
ПоказатьСвернутьНастройки();
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ПослеЗаписи()
|
|
||||||
|
|
||||||
ОповеститьОВыборе(Ссылка);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
// +++.КЛАСС.ПолеТекстаПрограммы
|
|
||||||
ПолеТекстаПрограммы = ирОбщий.СоздатьОбъектПоПолномуИмениМетаданныхЛкс("Обработка.ирКлсПолеТекстаПрограммы");
|
|
||||||
#Если Сервер И Не Сервер Тогда
|
|
||||||
ПолеТекстаПрограммы = Обработки.ирКлсПолеТекстаПрограммы.Создать();
|
|
||||||
#КонецЕсли
|
|
||||||
ПолеТекстаПрограммы.Инициализировать(, ЭтаФорма, ЭлементыФормы.ТекстАлгоритма,
|
|
||||||
ЭлементыФормы.КоманднаяПанельТекстАлгоритма, , "ВыполнитьЛокально", ЭтотОбъект);
|
|
||||||
// ---.КЛАСС.ПолеТекстаПрограммы
|
|
||||||
File diff suppressed because it is too large
Load Diff
Binary file not shown.
|
|
@ -1,11 +0,0 @@
|
||||||
Процедура ПередОткрытием(Отказ, СтандартнаяОбработка)
|
|
||||||
|
|
||||||
Отказ = Истина;
|
|
||||||
// Может, ссылки еще не существует? надо сначала записать объект
|
|
||||||
Если Не ЗначениеЗаполнено(ПараметрОснование) Тогда
|
|
||||||
Сообщить("Сначала запишите объект!");
|
|
||||||
Возврат;
|
|
||||||
КонецЕсли;
|
|
||||||
ирОбщий.ОткрытьСсылкуВРедактореОбъектаБДЛкс(ПараметрОснование);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
@ -1,118 +0,0 @@
|
||||||
{27,
|
|
||||||
{18,
|
|
||||||
{
|
|
||||||
{1,0},6,4294967295},
|
|
||||||
{09ccdc77-ea1a-4a6d-ab1c-3435eada2433,
|
|
||||||
{1,
|
|
||||||
{
|
|
||||||
{16,1,
|
|
||||||
{3,4,
|
|
||||||
{0}
|
|
||||||
},
|
|
||||||
{3,4,
|
|
||||||
{0}
|
|
||||||
},
|
|
||||||
{7,3,0,1,100},0,
|
|
||||||
{3,3,
|
|
||||||
{-22}
|
|
||||||
},
|
|
||||||
{3,4,
|
|
||||||
{0}
|
|
||||||
},
|
|
||||||
{3,4,
|
|
||||||
{0}
|
|
||||||
},
|
|
||||||
{3,3,
|
|
||||||
{-7}
|
|
||||||
},
|
|
||||||
{3,3,
|
|
||||||
{-21}
|
|
||||||
},
|
|
||||||
{3,0,
|
|
||||||
{0},0,0,0,48312c09-257f-4b29-b280-284dd89efc1e},
|
|
||||||
{1,0},0,0,100,0,0},26,0,0,0,0,0,0,
|
|
||||||
{8,1,
|
|
||||||
{4,0,
|
|
||||||
{0},"",-1,-1,1,0,""},
|
|
||||||
{4,0,
|
|
||||||
{0},"",-1,-1,1,0,""},
|
|
||||||
{4,0,
|
|
||||||
{0},"",-1,-1,1,0,""},100,0,0,0},0,1,
|
|
||||||
{1,1,
|
|
||||||
{4,
|
|
||||||
{1,3,
|
|
||||||
{"ru","Страница1"},
|
|
||||||
{"en","Страница1"},
|
|
||||||
{"uk","Страница1"}
|
|
||||||
},
|
|
||||||
{8,0,
|
|
||||||
{4,0,
|
|
||||||
{0},"",-1,-1,1,0,""},
|
|
||||||
{4,0,
|
|
||||||
{0},"",-1,-1,1,0,""},
|
|
||||||
{4,0,
|
|
||||||
{0},"",-1,-1,1,0,""},100,2,0,0},-1,1,1,"Страница1",1,
|
|
||||||
{3,4,
|
|
||||||
{0}
|
|
||||||
},
|
|
||||||
{3,4,
|
|
||||||
{0}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},1,1,0,4,
|
|
||||||
{2,8,1,1,1,0,0,0,0},
|
|
||||||
{2,10,0,1,2,0,0,0,0},
|
|
||||||
{2,392,1,1,3,0,0,8,0},
|
|
||||||
{2,292,0,1,4,0,0,8,0},0,4294967295,5,64,0,
|
|
||||||
{3,4,
|
|
||||||
{0}
|
|
||||||
},0,0,57,0,0},
|
|
||||||
{0}
|
|
||||||
},
|
|
||||||
{0}
|
|
||||||
},400,300,1,0,1,4,4,65,400,300,96},
|
|
||||||
{
|
|
||||||
{1},3,
|
|
||||||
{1,
|
|
||||||
{
|
|
||||||
{1},0,0,1,"ПланОбменаОбъект",
|
|
||||||
{"Pattern",
|
|
||||||
{"#",35c0e59d-d6af-46c0-9116-7e4d88e7182a}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{0}
|
|
||||||
},
|
|
||||||
{c5251418-7f99-4a2f-ba62-7f3c9e7bf914,1,
|
|
||||||
{2,0,
|
|
||||||
{0},0}
|
|
||||||
},
|
|
||||||
{1,
|
|
||||||
{70000,e1692cc2-605b-4535-84dd-28440238746c,
|
|
||||||
{3,"ПередОткрытием",
|
|
||||||
{1,"ПередОткрытием",
|
|
||||||
{1,1,
|
|
||||||
{"ru","Перед открытием"}
|
|
||||||
},
|
|
||||||
{1,1,
|
|
||||||
{"ru","Перед открытием"}
|
|
||||||
},
|
|
||||||
{1,1,
|
|
||||||
{"ru","Перед открытием"}
|
|
||||||
},
|
|
||||||
{4,0,
|
|
||||||
{0},"",-1,-1,1,0,""},
|
|
||||||
{0,0,0}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},1,4,1,0,0,0,
|
|
||||||
{0},
|
|
||||||
{0},
|
|
||||||
{8,0,
|
|
||||||
{4,0,
|
|
||||||
{0},"",-1,-1,1,0,""},
|
|
||||||
{4,0,
|
|
||||||
{0},"",-1,-1,1,0,""},
|
|
||||||
{4,0,
|
|
||||||
{0},"",-1,-1,1,0,""},100,0,0,0},1,2,0,0,1,1}
|
|
||||||
|
|
@ -1,13 +0,0 @@
|
||||||
|
|
||||||
&НаКлиенте
|
|
||||||
Процедура ОбработкаКоманды(ПараметрКоманды, ПараметрыВыполненияКоманды)
|
|
||||||
|
|
||||||
#Если ВебКлиент Тогда
|
|
||||||
Сообщить("Команда недоступна в вебклиенте");
|
|
||||||
#ИначеЕсли ТонкийКлиент Тогда
|
|
||||||
ОткрытьФорму("Обработка.ирПортативный.Форма.ЗапускСеансаУправляемая");
|
|
||||||
#Иначе
|
|
||||||
ирОбщий.ОтладитьОтложенныйОбъектЛкс(ПараметрКоманды);
|
|
||||||
#КонецЕсли
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
Binary file not shown.
|
|
@ -1,35 +0,0 @@
|
||||||
|
|
||||||
Процедура ДействияФормыМенеджерТабличногоПоля(Кнопка)
|
|
||||||
|
|
||||||
ирОбщий.ОткрытьМенеджерТабличногоПоляЛкс(ЭлементыФормы.СправочникСписок, ЭтаФорма);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ДействияФормыОПодсистеме(Кнопка)
|
|
||||||
|
|
||||||
ирОбщий.ОткрытьСправкуПоПодсистемеЛкс(ТипЗнч(СправочникСписок));
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура СправочникСписокПриАктивизацииСтроки(Элемент)
|
|
||||||
|
|
||||||
Если Элемент.ТекущаяСтрока <> Неопределено Тогда
|
|
||||||
Текст = Элемент.ТекущаяСтрока.XML;
|
|
||||||
Иначе
|
|
||||||
Текст = "";
|
|
||||||
КонецЕсли;
|
|
||||||
ЭлементыФормы.ПолеТекста.УстановитьТекст(Текст);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ДействияФормыОтладить(Кнопка)
|
|
||||||
|
|
||||||
Ссылка = ЭлементыФормы.СправочникСписок.ТекущаяСтрока;
|
|
||||||
Если Ссылка = Неопределено Тогда
|
|
||||||
Возврат;
|
|
||||||
КонецЕсли;
|
|
||||||
ирОбщий.ОтладитьОтложенныйОбъектЛкс(Ссылка);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Порядок.Установить("ДатаИзменения Убыв");
|
|
||||||
|
|
@ -1,811 +0,0 @@
|
||||||
{27,
|
|
||||||
{18,
|
|
||||||
{
|
|
||||||
{1,3,
|
|
||||||
{"ru","Справочник Объекты для отладки (ИР)"},
|
|
||||||
{"en","Справочник Объекты для отладки (ИР)"},
|
|
||||||
{"uk","Справочник Объекты для отладки (ИР)"}
|
|
||||||
},4,4294967295},
|
|
||||||
{09ccdc77-ea1a-4a6d-ab1c-3435eada2433,
|
|
||||||
{1,
|
|
||||||
{
|
|
||||||
{16,1,
|
|
||||||
{3,4,
|
|
||||||
{0}
|
|
||||||
},
|
|
||||||
{3,4,
|
|
||||||
{0}
|
|
||||||
},
|
|
||||||
{7,3,0,1,100},0,
|
|
||||||
{3,3,
|
|
||||||
{-22}
|
|
||||||
},
|
|
||||||
{3,4,
|
|
||||||
{0}
|
|
||||||
},
|
|
||||||
{3,4,
|
|
||||||
{0}
|
|
||||||
},
|
|
||||||
{3,3,
|
|
||||||
{-7}
|
|
||||||
},
|
|
||||||
{3,3,
|
|
||||||
{-21}
|
|
||||||
},
|
|
||||||
{3,0,
|
|
||||||
{0},0,0,0,48312c09-257f-4b29-b280-284dd89efc1e},
|
|
||||||
{1,0},0,0,100,0,0},26,1,
|
|
||||||
{0,3,1},2,
|
|
||||||
{0,3,1},
|
|
||||||
{0,4,1},1,
|
|
||||||
{0,2,2},4,
|
|
||||||
{0,1,3},
|
|
||||||
{0,2,3},
|
|
||||||
{0,3,3},
|
|
||||||
{0,4,3},0,0,
|
|
||||||
{8,1,
|
|
||||||
{4,0,
|
|
||||||
{0},"",-1,-1,1,0,""},
|
|
||||||
{4,0,
|
|
||||||
{0},"",-1,-1,1,0,""},
|
|
||||||
{4,0,
|
|
||||||
{0},"",-1,-1,1,0,""},100,0,0,0},0,1,
|
|
||||||
{1,1,
|
|
||||||
{4,
|
|
||||||
{1,3,
|
|
||||||
{"ru","Страница1"},
|
|
||||||
{"en","Страница1"},
|
|
||||||
{"uk","Страница1"}
|
|
||||||
},
|
|
||||||
{8,0,
|
|
||||||
{4,0,
|
|
||||||
{0},"",-1,-1,1,0,""},
|
|
||||||
{4,0,
|
|
||||||
{0},"",-1,-1,1,0,""},
|
|
||||||
{4,0,
|
|
||||||
{0},"",-1,-1,1,0,""},100,2,0,0},-1,1,1,"Страница1",1,
|
|
||||||
{3,4,
|
|
||||||
{0}
|
|
||||||
},
|
|
||||||
{3,4,
|
|
||||||
{0}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},1,1,0,4,
|
|
||||||
{2,8,1,1,1,0,0,0,0},
|
|
||||||
{2,33,0,1,2,0,0,0,0},
|
|
||||||
{2,528,1,1,3,0,0,8,0},
|
|
||||||
{2,293,0,1,4,0,0,8,0},0,4294967295,5,64,0,
|
|
||||||
{3,4,
|
|
||||||
{0}
|
|
||||||
},0,0,57,0,0},
|
|
||||||
{0}
|
|
||||||
},
|
|
||||||
{4,
|
|
||||||
{ea83fe3a-ac3c-4cce-8045-3dddf35b28b1,1,
|
|
||||||
{5,
|
|
||||||
{"Pattern",
|
|
||||||
{"#",1d72fea9-54fa-461e-ac39-325b6734c106}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
{16,1,
|
|
||||||
{3,4,
|
|
||||||
{0}
|
|
||||||
},
|
|
||||||
{3,4,
|
|
||||||
{0}
|
|
||||||
},
|
|
||||||
{7,3,0,1,100},0,
|
|
||||||
{3,3,
|
|
||||||
{-22}
|
|
||||||
},
|
|
||||||
{3,4,
|
|
||||||
{0}
|
|
||||||
},
|
|
||||||
{3,4,
|
|
||||||
{0}
|
|
||||||
},
|
|
||||||
{3,3,
|
|
||||||
{-7}
|
|
||||||
},
|
|
||||||
{3,3,
|
|
||||||
{-21}
|
|
||||||
},
|
|
||||||
{3,1,
|
|
||||||
{-18},0,0,0},
|
|
||||||
{1,0},0,0,100,2,0},
|
|
||||||
{19,117644845,
|
|
||||||
{3,4,
|
|
||||||
{0}
|
|
||||||
},
|
|
||||||
{3,4,
|
|
||||||
{0}
|
|
||||||
},
|
|
||||||
{3,4,
|
|
||||||
{0}
|
|
||||||
},
|
|
||||||
{3,4,
|
|
||||||
{0}
|
|
||||||
},
|
|
||||||
{3,3,
|
|
||||||
{-14}
|
|
||||||
},
|
|
||||||
{3,3,
|
|
||||||
{-15}
|
|
||||||
},
|
|
||||||
{3,3,
|
|
||||||
{-13}
|
|
||||||
},2,2,0,0,0,0,0,1,1,
|
|
||||||
{7,2,0,
|
|
||||||
{-20},1,100},
|
|
||||||
{7,2,0,
|
|
||||||
{-20},1,100},2,0,1,
|
|
||||||
{5,
|
|
||||||
{48a6ebc3-fcc8-4f8f-b399-459fb32aa46b,
|
|
||||||
{4,
|
|
||||||
{8,
|
|
||||||
{18,
|
|
||||||
{1,0},
|
|
||||||
{1,0},
|
|
||||||
{1,0},24,0,-1,-1,-1,12590592,
|
|
||||||
{4,0,
|
|
||||||
{0},"",-1,-1,1,0,""},
|
|
||||||
{4,0,
|
|
||||||
{0},"",-1,-1,1,0,""},
|
|
||||||
{4,0,
|
|
||||||
{0},"",-1,-1,1,0,""},16,16,d2314b5d-8da4-4e0f-822b-45e7500eae09,
|
|
||||||
{3,4,
|
|
||||||
{0}
|
|
||||||
},
|
|
||||||
{3,4,
|
|
||||||
{0}
|
|
||||||
},
|
|
||||||
{3,4,
|
|
||||||
{0}
|
|
||||||
},
|
|
||||||
{3,4,
|
|
||||||
{0}
|
|
||||||
},
|
|
||||||
{3,4,
|
|
||||||
{0}
|
|
||||||
},
|
|
||||||
{3,4,
|
|
||||||
{0}
|
|
||||||
},
|
|
||||||
{7,3,0,1,100},
|
|
||||||
{7,3,0,1,100},
|
|
||||||
{7,3,0,1,100},1,0,0,4,0,"Картинка",
|
|
||||||
{},4,1,
|
|
||||||
{1,0},
|
|
||||||
{"Pattern",
|
|
||||||
{"S",10,1}
|
|
||||||
},0,1,00000000-0000-0000-0000-000000000000,0,0,0,0,0},
|
|
||||||
{-1},
|
|
||||||
{-1},
|
|
||||||
{-1}
|
|
||||||
},1}
|
|
||||||
},
|
|
||||||
{48a6ebc3-fcc8-4f8f-b399-459fb32aa46b,
|
|
||||||
{4,
|
|
||||||
{8,
|
|
||||||
{18,
|
|
||||||
{1,3,
|
|
||||||
{"ru","Код"},
|
|
||||||
{"en","Код"},
|
|
||||||
{"uk","Код"}
|
|
||||||
},
|
|
||||||
{1,0},
|
|
||||||
{1,0},35,3,-1,-1,-1,12590592,
|
|
||||||
{4,0,
|
|
||||||
{0},"",-1,-1,1,0,""},
|
|
||||||
{4,0,
|
|
||||||
{0},"",-1,-1,1,0,""},
|
|
||||||
{4,0,
|
|
||||||
{0},"",-1,-1,1,0,""},16,16,d2314b5d-8da4-4e0f-822b-45e7500eae09,
|
|
||||||
{3,4,
|
|
||||||
{0}
|
|
||||||
},
|
|
||||||
{3,4,
|
|
||||||
{0}
|
|
||||||
},
|
|
||||||
{3,4,
|
|
||||||
{0}
|
|
||||||
},
|
|
||||||
{3,4,
|
|
||||||
{0}
|
|
||||||
},
|
|
||||||
{3,4,
|
|
||||||
{0}
|
|
||||||
},
|
|
||||||
{3,4,
|
|
||||||
{0}
|
|
||||||
},
|
|
||||||
{7,3,0,1,100},
|
|
||||||
{7,3,0,1,100},
|
|
||||||
{7,3,0,1,100},1,0,0,4,0,"Код",
|
|
||||||
{},5,0,
|
|
||||||
{1,0},
|
|
||||||
{"Pattern",
|
|
||||||
{"N",5,0,1}
|
|
||||||
},0,1,381ed624-9217-4e63-85db-c4c3cb87daae,
|
|
||||||
{
|
|
||||||
{#base64:AgFTS2/0iI3BTqDV67a9oKcNfVA7DsIwDAXGSr1EZkeyk6ZpLoFYOECBrgyoW5WT
|
|
||||||
MXAkrkBil4DKp4niPj877znrzYq/+/U2BairSe36cRwuZ8Vgq8ABAsW6ijkhm1qg
|
|
||||||
jCw0OeCTXWIPNjcDIcb0wxU2B23Mr55PLB1+mTD0yrAbTV1WSYuzBCgwqUvSInwu
|
|
||||||
4pOHTMpsUu1VLFGpUoRCz1XInKa8M6+k6Q9bbvhi8s1Q67035KA8EU8Xet829mQ0
|
|
||||||
hSHoxg1Gd12w2nR4OAYKrg9e9JcToMzALzrfyKIkZsRCfAA=},0},0,0,0,0,0},
|
|
||||||
{-2},
|
|
||||||
{-1},
|
|
||||||
{-1}
|
|
||||||
},0}
|
|
||||||
},
|
|
||||||
{48a6ebc3-fcc8-4f8f-b399-459fb32aa46b,
|
|
||||||
{4,
|
|
||||||
{8,
|
|
||||||
{18,
|
|
||||||
{1,3,
|
|
||||||
{"ru","Наименование"},
|
|
||||||
{"en","Наименование"},
|
|
||||||
{"uk","Наименование"}
|
|
||||||
},
|
|
||||||
{1,0},
|
|
||||||
{1,0},187,1,-1,-1,-1,12598784,
|
|
||||||
{4,0,
|
|
||||||
{0},"",-1,-1,1,0,""},
|
|
||||||
{4,0,
|
|
||||||
{0},"",-1,-1,1,0,""},
|
|
||||||
{4,0,
|
|
||||||
{0},"",-1,-1,1,0,""},16,16,d2314b5d-8da4-4e0f-822b-45e7500eae09,
|
|
||||||
{3,4,
|
|
||||||
{0}
|
|
||||||
},
|
|
||||||
{3,4,
|
|
||||||
{0}
|
|
||||||
},
|
|
||||||
{3,4,
|
|
||||||
{0}
|
|
||||||
},
|
|
||||||
{3,4,
|
|
||||||
{0}
|
|
||||||
},
|
|
||||||
{3,4,
|
|
||||||
{0}
|
|
||||||
},
|
|
||||||
{3,4,
|
|
||||||
{0}
|
|
||||||
},
|
|
||||||
{7,3,0,1,100},
|
|
||||||
{7,3,0,1,100},
|
|
||||||
{7,3,0,1,100},1,0,0,4,0,"Наименование",
|
|
||||||
{},27,0,
|
|
||||||
{1,0},
|
|
||||||
{"Pattern",
|
|
||||||
{"S",150,1}
|
|
||||||
},0,1,381ed624-9217-4e63-85db-c4c3cb87daae,
|
|
||||||
{
|
|
||||||
{#base64:AgFTS2/0iI3BTqDV67a9oKcNfVA7DsIwDEWwVeISmR3JTtKmuQUS4gAFujIgNpST
|
|
||||||
MXAkrkBslwLlk0Ry3rNf/JzFfCbrdrmeEyyrs1l1p1N/PBgBawNUI1BeVpkJPdQA
|
|
||||||
MfIQOOAjO8URPBQxEGIuF6nwHKxzvzSfWBVxSjh6MuLGUstdyhaWABWW7kp6VKxF
|
|
||||||
8Ip4SN5BbZqNyWM05k1U6KEKJWeJD+eNiv5kxxe+2Hyx1MQYHdUwfpLMl7rYBL93
|
|
||||||
llKfbKh7Z9s2eeta3O4SpbpLUftPJ0CdQf50eFGakppRC/kO},0},0,0,0,0,0},
|
|
||||||
{-3},
|
|
||||||
{-1},
|
|
||||||
{-1}
|
|
||||||
},0}
|
|
||||||
},
|
|
||||||
{48a6ebc3-fcc8-4f8f-b399-459fb32aa46b,
|
|
||||||
{4,
|
|
||||||
{8,
|
|
||||||
{18,
|
|
||||||
{1,3,
|
|
||||||
{"ru","Дата изменения"},
|
|
||||||
{"en","Дата изменения"},
|
|
||||||
{"uk","Дата изменения"}
|
|
||||||
},
|
|
||||||
{1,0},
|
|
||||||
{1,0},111.0000000000001,2,-1,-1,-1,12590592,
|
|
||||||
{4,0,
|
|
||||||
{0},"",-1,-1,1,0,""},
|
|
||||||
{4,0,
|
|
||||||
{0},"",-1,-1,1,0,""},
|
|
||||||
{4,0,
|
|
||||||
{0},"",-1,-1,1,0,""},16,16,d2314b5d-8da4-4e0f-822b-45e7500eae09,
|
|
||||||
{3,4,
|
|
||||||
{0}
|
|
||||||
},
|
|
||||||
{3,4,
|
|
||||||
{0}
|
|
||||||
},
|
|
||||||
{3,4,
|
|
||||||
{0}
|
|
||||||
},
|
|
||||||
{3,4,
|
|
||||||
{0}
|
|
||||||
},
|
|
||||||
{3,4,
|
|
||||||
{0}
|
|
||||||
},
|
|
||||||
{3,4,
|
|
||||||
{0}
|
|
||||||
},
|
|
||||||
{7,3,0,1,100},
|
|
||||||
{7,3,0,1,100},
|
|
||||||
{7,3,0,1,100},1,0,0,4,0,"ДатаИзменения",
|
|
||||||
{},16,0,
|
|
||||||
{1,0},
|
|
||||||
{"Pattern",
|
|
||||||
{"D"}
|
|
||||||
},0,1,381ed624-9217-4e63-85db-c4c3cb87daae,
|
|
||||||
{
|
|
||||||
{#base64:AgFTS2/0iI3BTqDV67a9oKcNfVA7EsIgENXWmVyCGmZ2gQToPYCNB4ia1sJJl+Fk
|
|
||||||
Fh7JA9gIu/koflhmlvf295bHekXnfr0NQVabQezavu8uZ0FgK2K1ifnJFxuJGRlp
|
|
||||||
s4MpWmInjYSUigAxPSjDZKe0/lXzibnClYTGhSE1Cn2ekoxYlMAwTWfSgFwMC5/N
|
|
||||||
skixF3H2QrwlJXrMAoopzDfHBRf9ieqpwxeRL8Ia55zGWs5fRNuF1jXWnLTC0AVl
|
|
||||||
604r74NR2sPhGDDUbXA8v9wAeAf60bEjDUUWwxLiEw==},0},0,0,0,0,0},
|
|
||||||
{0,ef3c7e63-7dc3-4e7a-a871-daaa0e3dd570},
|
|
||||||
{-1},
|
|
||||||
{-1}
|
|
||||||
},0}
|
|
||||||
},
|
|
||||||
{48a6ebc3-fcc8-4f8f-b399-459fb32aa46b,
|
|
||||||
{4,
|
|
||||||
{8,
|
|
||||||
{18,
|
|
||||||
{1,3,
|
|
||||||
{"ru","Число символов"},
|
|
||||||
{"en","Число символов"},
|
|
||||||
{"uk","Число символов"}
|
|
||||||
},
|
|
||||||
{1,0},
|
|
||||||
{1,0},77,4,-1,-1,-1,12590592,
|
|
||||||
{4,0,
|
|
||||||
{0},"",-1,-1,1,0,""},
|
|
||||||
{4,0,
|
|
||||||
{0},"",-1,-1,1,0,""},
|
|
||||||
{4,0,
|
|
||||||
{0},"",-1,-1,1,0,""},16,16,d2314b5d-8da4-4e0f-822b-45e7500eae09,
|
|
||||||
{3,4,
|
|
||||||
{0}
|
|
||||||
},
|
|
||||||
{3,4,
|
|
||||||
{0}
|
|
||||||
},
|
|
||||||
{3,4,
|
|
||||||
{0}
|
|
||||||
},
|
|
||||||
{3,4,
|
|
||||||
{0}
|
|
||||||
},
|
|
||||||
{3,4,
|
|
||||||
{0}
|
|
||||||
},
|
|
||||||
{3,4,
|
|
||||||
{0}
|
|
||||||
},
|
|
||||||
{7,3,0,1,100},
|
|
||||||
{7,3,0,1,100},
|
|
||||||
{7,3,0,1,100},1,0,0,4,0,"ЧислоСимволов",
|
|
||||||
{},11,0,
|
|
||||||
{1,0},
|
|
||||||
{"Pattern",
|
|
||||||
{"N",10,0,0}
|
|
||||||
},0,1,381ed624-9217-4e63-85db-c4c3cb87daae,
|
|
||||||
{
|
|
||||||
{#base64:AgFTS2/0iI3BTqDV67a9oKcNfVA7DsIwDEWwVeolMjtSnLRNcgnEwgEKdGVA3aqc
|
|
||||||
jIEjcQViuwqoBeJIzvPz5zm77YbP8/6YItTVpA79OA63q2KwV4AGsqW6ShSRix0g
|
|
||||||
IQcNucIusQeXizH3MCk/OMOR09b+qlljqfDLgMV3hNVoDDSF1BJEMALzdAk6A2vD
|
|
||||||
OYddIyrVUaXilSpZRug5yzCnkS7xSor+sKXDF5UfijrvvcUWyh/xerH3XeMuVmMc
|
|
||||||
om7aweoQotM2mNM5Ymz76GX+cgMjO/CXzh15KIoYkZBe},0},0,0,0,0,0},
|
|
||||||
{0,9f461635-e06c-4b93-8ded-ffcebdb55a8b},
|
|
||||||
{-1},
|
|
||||||
{-1}
|
|
||||||
},0}
|
|
||||||
}
|
|
||||||
},0,0,0,0,0,0,0,100,1,2}
|
|
||||||
},
|
|
||||||
{99f52caa-7b96-4bd4-a649-aedbd230a555,
|
|
||||||
{12,0,0,1,1,2,1,0,
|
|
||||||
{0},
|
|
||||||
{1,0},
|
|
||||||
{3,1},0}
|
|
||||||
},
|
|
||||||
{1,
|
|
||||||
{35,e1692cc2-605b-4535-84dd-28440238746c,
|
|
||||||
{3,"СправочникСписокПриАктивизацииСтроки",
|
|
||||||
{1,"СправочникСписокПриАктивизацииСтроки",
|
|
||||||
{1,1,
|
|
||||||
{"ru","Справочник список при активизации строки"}
|
|
||||||
},
|
|
||||||
{1,1,
|
|
||||||
{"ru","Справочник список при активизации строки"}
|
|
||||||
},
|
|
||||||
{1,1,
|
|
||||||
{"ru","Справочник список при активизации строки"}
|
|
||||||
},
|
|
||||||
{4,0,
|
|
||||||
{0},"",-1,-1,1,0,""},
|
|
||||||
{0,0,0}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{8,8,33,528,167,1,
|
|
||||||
{0,
|
|
||||||
{2,-1,6,0},
|
|
||||||
{2,-1,6,0}
|
|
||||||
},
|
|
||||||
{0,
|
|
||||||
{2,3,0,0},
|
|
||||||
{2,-1,6,0}
|
|
||||||
},
|
|
||||||
{0,
|
|
||||||
{2,-1,6,0},
|
|
||||||
{2,-1,6,0}
|
|
||||||
},
|
|
||||||
{0,
|
|
||||||
{2,0,3,-8},
|
|
||||||
{2,-1,6,0}
|
|
||||||
},
|
|
||||||
{0,
|
|
||||||
{2,-1,6,0},
|
|
||||||
{2,-1,6,0}
|
|
||||||
},
|
|
||||||
{0,
|
|
||||||
{2,-1,6,0},
|
|
||||||
{2,-1,6,0}
|
|
||||||
},0,0,0,0,0,0,0,0,2,0,0},
|
|
||||||
{14,"СправочникСписок",4294967295,0,0,0},
|
|
||||||
{0}
|
|
||||||
},
|
|
||||||
{e69bf21d-97b2-4f37-86db-675aea9ec2cb,2,
|
|
||||||
{2,
|
|
||||||
{
|
|
||||||
{16,1,
|
|
||||||
{3,4,
|
|
||||||
{0}
|
|
||||||
},
|
|
||||||
{3,4,
|
|
||||||
{0}
|
|
||||||
},
|
|
||||||
{7,3,0,1,100},0,
|
|
||||||
{3,3,
|
|
||||||
{-22}
|
|
||||||
},
|
|
||||||
{3,4,
|
|
||||||
{0}
|
|
||||||
},
|
|
||||||
{3,4,
|
|
||||||
{0}
|
|
||||||
},
|
|
||||||
{3,4,
|
|
||||||
{0}
|
|
||||||
},
|
|
||||||
{3,3,
|
|
||||||
{-21}
|
|
||||||
},
|
|
||||||
{3,0,
|
|
||||||
{0},4,1,0,00000000-0000-0000-0000-000000000000},
|
|
||||||
{1,0},0,0,100,0,0},9,2,1,0,1,1,
|
|
||||||
{5,fd3fe296-ace1-4714-8a0e-a902b716c8d3,431,1,6,
|
|
||||||
{7,9efdf08e-bae0-444f-bee8-e4cac9ff829a,1,abde0c9a-18a6-4e0c-bbaa-af26b911b3e6,
|
|
||||||
{1,9d0a2e40-b978-11d4-84b6-008048da06df,0},0,1},
|
|
||||||
{7,4b1d963b-aa07-41c4-99e2-f1fbf65e1ef7,1,e1692cc2-605b-4535-84dd-28440238746c,
|
|
||||||
{3,"ДействияФормыОтладить",
|
|
||||||
{1,"ДействияФормыОтладить",
|
|
||||||
{1,1,
|
|
||||||
{"ru","Действия формы отладить"}
|
|
||||||
},
|
|
||||||
{1,1,
|
|
||||||
{"ru","Действия формы отладить"}
|
|
||||||
},
|
|
||||||
{1,1,
|
|
||||||
{"ru","Действия формы отладить"}
|
|
||||||
},
|
|
||||||
{4,0,
|
|
||||||
{0},"",-1,-1,1,0,""},
|
|
||||||
{0,0,0}
|
|
||||||
}
|
|
||||||
},7,
|
|
||||||
{1,3,
|
|
||||||
{"ru","Отладить"},
|
|
||||||
{"en","Отладить"},
|
|
||||||
{"uk","Отладить"}
|
|
||||||
},
|
|
||||||
{1,3,
|
|
||||||
{"ru","Отладить"},
|
|
||||||
{"en","Отладить"},
|
|
||||||
{"uk","Отладить"}
|
|
||||||
},
|
|
||||||
{4,1,
|
|
||||||
{0,5f19d61d-030e-4b03-820d-c1997cb9137a},"",-1,-1,0,0,""},1},
|
|
||||||
{7,daded282-c324-4f89-80a3-3530bcd53c79,1,e1692cc2-605b-4535-84dd-28440238746c,
|
|
||||||
{3,"ДействияФормыОПодсистеме",
|
|
||||||
{1,"ДействияФормыОПодсистеме",
|
|
||||||
{1,2,
|
|
||||||
{"ru","О подсистеме"},
|
|
||||||
{"en","О подсистеме"}
|
|
||||||
},
|
|
||||||
{1,2,
|
|
||||||
{"ru","О подсистеме"},
|
|
||||||
{"en","О подсистеме"}
|
|
||||||
},
|
|
||||||
{1,2,
|
|
||||||
{"ru","О подсистеме"},
|
|
||||||
{"en","О подсистеме"}
|
|
||||||
},
|
|
||||||
{4,0,
|
|
||||||
{0},"",-1,-1,1,0,""},
|
|
||||||
{0,0,0}
|
|
||||||
}
|
|
||||||
},7,
|
|
||||||
{1,3,
|
|
||||||
{"ru","О подсистеме"},
|
|
||||||
{"en","О подсистеме"},
|
|
||||||
{"uk","О подсистеме"}
|
|
||||||
},
|
|
||||||
{1,3,
|
|
||||||
{"ru","О подсистеме"},
|
|
||||||
{"en","О подсистеме"},
|
|
||||||
{"uk","О подсистеме"}
|
|
||||||
},
|
|
||||||
{4,1,
|
|
||||||
{0,f4bd79b3-3b25-494b-99c4-74b39341e007},"",-1,-1,0,0,""},1},
|
|
||||||
{7,4cdfb69a-4d72-4d6d-aea3-5961d74622fa,1,abde0c9a-18a6-4e0c-bbaa-af26b911b3e6,
|
|
||||||
{1,9d0a2e40-b978-11d4-84b6-008048da06df,0},0,1},
|
|
||||||
{7,73ad6a67-dfa9-4aa2-b990-1b3a5209c4d5,1,e1692cc2-605b-4535-84dd-28440238746c,
|
|
||||||
{3,"ДействияФормыМенеджерТабличногоПоля",
|
|
||||||
{1,"ДействияФормыМенеджерТабличногоПоля",
|
|
||||||
{1,2,
|
|
||||||
{"ru","Менеджер табличного поля"},
|
|
||||||
{"en","Менеджер табличного поля"}
|
|
||||||
},
|
|
||||||
{1,2,
|
|
||||||
{"ru","Менеджер табличного поля"},
|
|
||||||
{"en","Менеджер табличного поля"}
|
|
||||||
},
|
|
||||||
{1,2,
|
|
||||||
{"ru","Менеджер табличного поля"},
|
|
||||||
{"en","Менеджер табличного поля"}
|
|
||||||
},
|
|
||||||
{4,0,
|
|
||||||
{0},"",-1,-1,1,0,""},
|
|
||||||
{0,0,0}
|
|
||||||
}
|
|
||||||
},7,
|
|
||||||
{1,3,
|
|
||||||
{"ru","Менеджер табличного поля"},
|
|
||||||
{"en","Менеджер табличного поля"},
|
|
||||||
{"uk","Менеджер табличного поля"}
|
|
||||||
},
|
|
||||||
{1,3,
|
|
||||||
{"ru","Менеджер табличного поля"},
|
|
||||||
{"en","Менеджер табличного поля"},
|
|
||||||
{"uk","Менеджер табличного поля"}
|
|
||||||
},
|
|
||||||
{4,3,
|
|
||||||
{0},"",-1,-1,0,
|
|
||||||
{
|
|
||||||
{#base64:R0lGODlhEAAQADMAACH5BAEAAAEALAAAAAAQABAAo////wEAAK6u5MHB60pKwoaG
|
|
||||||
1wAAzOrq+AC0AzY2oHJy0AAAAF1dyQAAAAAAAAAAAARzkMhJU7iYDMBHUYkSINil
|
|
||||||
AR4RjghZaoUqtnQZaGuwBIZuFwOC6NLrBTgCAJBwACQBhmZAQBUsC1WBAXt0KoPN
|
|
||||||
ZxRwxH4TBe9gS0YqNWHOuJxUFdLJdbr7PDS9UFJKeQOFTgaIiHwcjF6JB3QohRt5
|
|
||||||
BgxkEQA7}
|
|
||||||
},0,""},1},
|
|
||||||
{7,7d927659-5945-4446-9fa0-b60843e096c7,1,abde0c9a-18a6-4e0c-bbaa-af26b911b3e6,
|
|
||||||
{1,9d0a2e40-b978-11d4-84b6-008048da06df,0},0,1},1,
|
|
||||||
{5,b78f2e80-ec68-11d4-9dcf-0050bae2bc79,4,0,6,9efdf08e-bae0-444f-bee8-e4cac9ff829a,
|
|
||||||
{8,"Разделитель4",0,1,
|
|
||||||
{1,1,
|
|
||||||
{"ru","Действие9"}
|
|
||||||
},0,fd3fe296-ace1-4714-8a0e-a902b716c8d3,17,1e2,2,0,1,0,0,0,0},4b1d963b-aa07-41c4-99e2-f1fbf65e1ef7,
|
|
||||||
{8,"Отладить",0,2,
|
|
||||||
{1,3,
|
|
||||||
{"ru","Отладить"},
|
|
||||||
{"en","Отладить"},
|
|
||||||
{"uk","Отладить"}
|
|
||||||
},1,fd3fe296-ace1-4714-8a0e-a902b716c8d3,80,1e2,0,3,1,0,0,0,0},4cdfb69a-4d72-4d6d-aea3-5961d74622fa,
|
|
||||||
{8,"Разделитель5",0,1,
|
|
||||||
{1,1,
|
|
||||||
{"ru","Действие9"}
|
|
||||||
},0,fd3fe296-ace1-4714-8a0e-a902b716c8d3,81,1e2,2,0,1,0,0,0,0},73ad6a67-dfa9-4aa2-b990-1b3a5209c4d5,
|
|
||||||
{8,"МенеджерТабличногоПоля",0,1,
|
|
||||||
{1,3,
|
|
||||||
{"ru","Менеджер табличного поля"},
|
|
||||||
{"en","Менеджер табличного поля"},
|
|
||||||
{"uk","Менеджер табличного поля"}
|
|
||||||
},1,fd3fe296-ace1-4714-8a0e-a902b716c8d3,16,1e2,0,0,1,0,0,0,0},7d927659-5945-4446-9fa0-b60843e096c7,
|
|
||||||
{8,"Разделитель7",0,4,
|
|
||||||
{1,1,
|
|
||||||
{"ru","Действие6"}
|
|
||||||
},0,fd3fe296-ace1-4714-8a0e-a902b716c8d3,33,1e2,2,0,1,0,0,0,0},daded282-c324-4f89-80a3-3530bcd53c79,
|
|
||||||
{8,"ОПодсистеме",0,4,
|
|
||||||
{1,3,
|
|
||||||
{"ru","О подсистеме"},
|
|
||||||
{"en","О подсистеме"},
|
|
||||||
{"uk","О подсистеме"}
|
|
||||||
},1,fd3fe296-ace1-4714-8a0e-a902b716c8d3,34,1e2,0,0,1,0,0,0,0},
|
|
||||||
{0,0,
|
|
||||||
{0}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},b78f2e80-ec68-11d4-9dcf-0050bae2bc79,4,9d0a2e40-b978-11d4-84b6-008048da06df,0,0,0}
|
|
||||||
},
|
|
||||||
{8,0,0,536,25,1,
|
|
||||||
{0,
|
|
||||||
{2,-1,6,0},
|
|
||||||
{2,-1,6,0}
|
|
||||||
},
|
|
||||||
{0,
|
|
||||||
{2,2,0,25},
|
|
||||||
{2,-1,6,0}
|
|
||||||
},
|
|
||||||
{0,
|
|
||||||
{2,0,2,0},
|
|
||||||
{2,-1,6,0}
|
|
||||||
},
|
|
||||||
{0,
|
|
||||||
{2,0,3,0},
|
|
||||||
{2,-1,6,0}
|
|
||||||
},
|
|
||||||
{0,
|
|
||||||
{2,-1,6,0},
|
|
||||||
{2,-1,6,0}
|
|
||||||
},
|
|
||||||
{0,
|
|
||||||
{2,-1,6,0},
|
|
||||||
{2,-1,6,0}
|
|
||||||
},1,
|
|
||||||
{0,2,1},0,0,0,0,0,0,1,1,1,0},
|
|
||||||
{14,"ДействияФормы",0,0,0,0},
|
|
||||||
{0}
|
|
||||||
},
|
|
||||||
{36e52348-5d60-4770-8e89-a16ed50a2006,3,
|
|
||||||
{0,
|
|
||||||
{
|
|
||||||
{16,1,
|
|
||||||
{3,4,
|
|
||||||
{0}
|
|
||||||
},
|
|
||||||
{3,4,
|
|
||||||
{0}
|
|
||||||
},
|
|
||||||
{7,3,0,1,100},1,
|
|
||||||
{3,3,
|
|
||||||
{-22}
|
|
||||||
},
|
|
||||||
{3,4,
|
|
||||||
{0}
|
|
||||||
},
|
|
||||||
{3,4,
|
|
||||||
{0}
|
|
||||||
},
|
|
||||||
{3,3,
|
|
||||||
{-7}
|
|
||||||
},
|
|
||||||
{3,3,
|
|
||||||
{-21}
|
|
||||||
},
|
|
||||||
{3,0,
|
|
||||||
{-18},0,0,0,48312c09-257f-4b29-b280-284dd89efc1e},
|
|
||||||
{1,0},0,0,100,0,0},2,2,0}
|
|
||||||
},
|
|
||||||
{8,8,167,528,173,1,
|
|
||||||
{0,
|
|
||||||
{2,3,1,-6},
|
|
||||||
{2,-1,6,0}
|
|
||||||
},
|
|
||||||
{0,
|
|
||||||
{2,0,0,173},
|
|
||||||
{2,0,1,-128}
|
|
||||||
},
|
|
||||||
{0,
|
|
||||||
{2,-1,6,0},
|
|
||||||
{2,-1,6,0}
|
|
||||||
},
|
|
||||||
{0,
|
|
||||||
{2,0,3,-8},
|
|
||||||
{2,-1,6,0}
|
|
||||||
},
|
|
||||||
{0,
|
|
||||||
{2,-1,6,0},
|
|
||||||
{2,-1,6,0}
|
|
||||||
},
|
|
||||||
{0,
|
|
||||||
{2,-1,6,0},
|
|
||||||
{2,-1,6,0}
|
|
||||||
},1,
|
|
||||||
{0,1,1},2,
|
|
||||||
{0,3,0},
|
|
||||||
{0,4,0},0,0,0,0,0,2,3,0,0},
|
|
||||||
{14,"Разделитель1",4294967295,0,0,0},
|
|
||||||
{0}
|
|
||||||
},
|
|
||||||
{14c4a229-bfc3-42fe-9ce1-2da049fd0109,4,
|
|
||||||
{
|
|
||||||
{16,1,
|
|
||||||
{3,4,
|
|
||||||
{0}
|
|
||||||
},
|
|
||||||
{3,4,
|
|
||||||
{0}
|
|
||||||
},
|
|
||||||
{7,3,0,1,100},0,
|
|
||||||
{3,3,
|
|
||||||
{-22}
|
|
||||||
},
|
|
||||||
{3,4,
|
|
||||||
{0}
|
|
||||||
},
|
|
||||||
{3,4,
|
|
||||||
{0}
|
|
||||||
},
|
|
||||||
{3,3,
|
|
||||||
{-7}
|
|
||||||
},
|
|
||||||
{3,3,
|
|
||||||
{-21}
|
|
||||||
},
|
|
||||||
{3,0,
|
|
||||||
{0},0,0,0,48312c09-257f-4b29-b280-284dd89efc1e},
|
|
||||||
{1,0},0,0,100,0,0},6,1,d9c193cd-5f8a-4415-ac37-bcb084dae76e,
|
|
||||||
{0},1,0},
|
|
||||||
{8,8,174,528,293,1,
|
|
||||||
{0,
|
|
||||||
{2,3,1,1},
|
|
||||||
{2,-1,6,0}
|
|
||||||
},
|
|
||||||
{0,
|
|
||||||
{2,0,1,-8},
|
|
||||||
{2,-1,6,0}
|
|
||||||
},
|
|
||||||
{0,
|
|
||||||
{2,-1,6,0},
|
|
||||||
{2,-1,6,0}
|
|
||||||
},
|
|
||||||
{0,
|
|
||||||
{2,0,3,-8},
|
|
||||||
{2,-1,6,0}
|
|
||||||
},
|
|
||||||
{0,
|
|
||||||
{2,-1,6,0},
|
|
||||||
{2,-1,6,0}
|
|
||||||
},
|
|
||||||
{0,
|
|
||||||
{2,-1,6,0},
|
|
||||||
{2,-1,6,0}
|
|
||||||
},0,0,0,0,0,0,0,3,4,0,0},
|
|
||||||
{14,"ПолеТекста",4294967295,0,0,0},
|
|
||||||
{0}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},536,301,1,0,1,4,4,48,536,301,96},
|
|
||||||
{
|
|
||||||
{0},2,
|
|
||||||
{1,
|
|
||||||
{
|
|
||||||
{0},0,0,1,"СправочникСписок",
|
|
||||||
{"Pattern",
|
|
||||||
{"#",1d72fea9-54fa-461e-ac39-325b6734c106}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{1,
|
|
||||||
{1,
|
|
||||||
{1,
|
|
||||||
{0}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{53fb5449-841a-459c-9a83-576f05941e1f,0},
|
|
||||||
{0},1,4,1,0,0,0,
|
|
||||||
{0},
|
|
||||||
{0,d4fb5140-8838-483f-9452-47ac6138c9d1},
|
|
||||||
{8,0,
|
|
||||||
{4,0,
|
|
||||||
{0},"",-1,-1,1,0,""},
|
|
||||||
{4,0,
|
|
||||||
{0},"",-1,-1,1,0,""},
|
|
||||||
{4,0,
|
|
||||||
{0},"",-1,-1,1,0,""},100,0,0,0},1,2,0,0,1,1}
|
|
||||||
|
|
@ -1,154 +0,0 @@
|
||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<Form xmlns="http://v8.1c.ru/8.3/xcf/logform" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:dcscor="http://v8.1c.ru/8.1/data-composition-system/core" xmlns:dcsset="http://v8.1c.ru/8.1/data-composition-system/settings" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" xmlns:style="http://v8.1c.ru/8.1/data/ui/style" xmlns:sys="http://v8.1c.ru/8.1/data/ui/fonts/system" xmlns:v8="http://v8.1c.ru/8.1/data/core" xmlns:v8ui="http://v8.1c.ru/8.1/data/ui" xmlns:web="http://v8.1c.ru/8.1/data/ui/colors/web" xmlns:win="http://v8.1c.ru/8.1/data/ui/colors/windows" xmlns:xr="http://v8.1c.ru/8.3/xcf/readable" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.9">
|
|
||||||
<VerticalScroll>useIfNecessary</VerticalScroll>
|
|
||||||
<AutoCommandBar name="ФормаКоманднаяПанель" id="-1">
|
|
||||||
<ChildItems>
|
|
||||||
<Button name="ПоискВСправкеГлобальнаяИис" id="7999">
|
|
||||||
<Type>CommandBarButton</Type>
|
|
||||||
<CommandName>0</CommandName>
|
|
||||||
<DataPath>ПараметрГлобальныхКомандИис</DataPath>
|
|
||||||
<LocationInCommandBar>InAdditionalSubmenu</LocationInCommandBar>
|
|
||||||
<ExtendedTooltip name="ПоискВСправкеГлобальнаяИисРасширеннаяПодсказка" id="8000"/>
|
|
||||||
</Button>
|
|
||||||
<Button name="ФормаОбщаяКомандаирОПодсистеме" id="8001">
|
|
||||||
<Type>CommandBarButton</Type>
|
|
||||||
<CommandName>0:60b48362-4a19-4a23-95da-9a9ce4ad14c5</CommandName>
|
|
||||||
<ExtendedTooltip name="ФормаОбщаяКомандаирОПодсистемеРасширеннаяПодсказка" id="8002"/>
|
|
||||||
</Button>
|
|
||||||
</ChildItems>
|
|
||||||
</AutoCommandBar>
|
|
||||||
<Events>
|
|
||||||
<Event name="OnCreateAtServer">ПриСозданииНаСервере</Event>
|
|
||||||
</Events>
|
|
||||||
<ChildItems>
|
|
||||||
<Table name="Список" id="1">
|
|
||||||
<Representation>List</Representation>
|
|
||||||
<CommandBarLocation>None</CommandBarLocation>
|
|
||||||
<DefaultItem>true</DefaultItem>
|
|
||||||
<UseAlternationRowColor>true</UseAlternationRowColor>
|
|
||||||
<InitialTreeView>ExpandTopLevel</InitialTreeView>
|
|
||||||
<EnableStartDrag>true</EnableStartDrag>
|
|
||||||
<FileDragMode>AsFile</FileDragMode>
|
|
||||||
<DataPath>Список</DataPath>
|
|
||||||
<RowPictureDataPath>Список.DefaultPicture</RowPictureDataPath>
|
|
||||||
<SearchStringLocation>None</SearchStringLocation>
|
|
||||||
<ViewStatusLocation>None</ViewStatusLocation>
|
|
||||||
<SearchControlLocation>None</SearchControlLocation>
|
|
||||||
<AutoRefresh>false</AutoRefresh>
|
|
||||||
<AutoRefreshPeriod>60</AutoRefreshPeriod>
|
|
||||||
<Period>
|
|
||||||
<v8:variant xsi:type="v8:StandardPeriodVariant">Custom</v8:variant>
|
|
||||||
<v8:startDate>0001-01-01T00:00:00</v8:startDate>
|
|
||||||
<v8:endDate>0001-01-01T00:00:00</v8:endDate>
|
|
||||||
</Period>
|
|
||||||
<ChoiceFoldersAndItems>Items</ChoiceFoldersAndItems>
|
|
||||||
<RestoreCurrentRow>false</RestoreCurrentRow>
|
|
||||||
<TopLevelParent xsi:nil="true"/>
|
|
||||||
<ShowRoot>true</ShowRoot>
|
|
||||||
<AllowRootChoice>false</AllowRootChoice>
|
|
||||||
<UpdateOnDataChange>Auto</UpdateOnDataChange>
|
|
||||||
<ContextMenu name="СписокКонтекстноеМеню" id="2"/>
|
|
||||||
<AutoCommandBar name="СписокКоманднаяПанель" id="3">
|
|
||||||
<Autofill>false</Autofill>
|
|
||||||
</AutoCommandBar>
|
|
||||||
<ExtendedTooltip name="СписокРасширеннаяПодсказка" id="18"/>
|
|
||||||
<SearchStringAddition name="СписокСтрокаПоиска" id="19">
|
|
||||||
<AdditionSource>
|
|
||||||
<Item>Список</Item>
|
|
||||||
<Type>SearchStringRepresentation</Type>
|
|
||||||
</AdditionSource>
|
|
||||||
<ContextMenu name="СписокСтрокаПоискаКонтекстноеМеню" id="20"/>
|
|
||||||
<ExtendedTooltip name="СписокСтрокаПоискаРасширеннаяПодсказка" id="21"/>
|
|
||||||
</SearchStringAddition>
|
|
||||||
<ViewStatusAddition name="СписокСостояниеПросмотра" id="22">
|
|
||||||
<AdditionSource>
|
|
||||||
<Item>Список</Item>
|
|
||||||
<Type>ViewStatusRepresentation</Type>
|
|
||||||
</AdditionSource>
|
|
||||||
<ContextMenu name="СписокСостояниеПросмотраКонтекстноеМеню" id="23"/>
|
|
||||||
<ExtendedTooltip name="СписокСостояниеПросмотраРасширеннаяПодсказка" id="24"/>
|
|
||||||
</ViewStatusAddition>
|
|
||||||
<SearchControlAddition name="СписокУправлениеПоиском" id="25">
|
|
||||||
<AdditionSource>
|
|
||||||
<Item>Список</Item>
|
|
||||||
<Type>SearchControl</Type>
|
|
||||||
</AdditionSource>
|
|
||||||
<ContextMenu name="СписокУправлениеПоискомКонтекстноеМеню" id="26"/>
|
|
||||||
<ExtendedTooltip name="СписокУправлениеПоискомРасширеннаяПодсказка" id="27"/>
|
|
||||||
</SearchControlAddition>
|
|
||||||
<ChildItems>
|
|
||||||
<LabelField name="Код" id="14">
|
|
||||||
<DataPath>Список.Code</DataPath>
|
|
||||||
<ContextMenu name="КодКонтекстноеМеню" id="15"/>
|
|
||||||
<ExtendedTooltip name="КодРасширеннаяПодсказка" id="28"/>
|
|
||||||
</LabelField>
|
|
||||||
<LabelField name="Наименование" id="4">
|
|
||||||
<DataPath>Список.Description</DataPath>
|
|
||||||
<DefaultItem>true</DefaultItem>
|
|
||||||
<ContextMenu name="НаименованиеКонтекстноеМеню" id="5"/>
|
|
||||||
<ExtendedTooltip name="НаименованиеРасширеннаяПодсказка" id="29"/>
|
|
||||||
</LabelField>
|
|
||||||
<LabelField name="ДатаИзменения" id="6">
|
|
||||||
<DataPath>Список.ДатаИзменения</DataPath>
|
|
||||||
<ContextMenu name="ДатаИзмененияКонтекстноеМеню" id="7"/>
|
|
||||||
<ExtendedTooltip name="ДатаИзмененияРасширеннаяПодсказка" id="30"/>
|
|
||||||
</LabelField>
|
|
||||||
<LabelField name="ЧислоСимволов" id="16">
|
|
||||||
<DataPath>Список.ЧислоСимволов</DataPath>
|
|
||||||
<ContextMenu name="ЧислоСимволовКонтекстноеМеню" id="17"/>
|
|
||||||
<ExtendedTooltip name="ЧислоСимволовРасширеннаяПодсказка" id="31"/>
|
|
||||||
</LabelField>
|
|
||||||
<LabelField name="Комментарий" id="8">
|
|
||||||
<ContextMenu name="КомментарийКонтекстноеМеню" id="9"/>
|
|
||||||
<ExtendedTooltip name="КомментарийРасширеннаяПодсказка" id="32"/>
|
|
||||||
</LabelField>
|
|
||||||
</ChildItems>
|
|
||||||
</Table>
|
|
||||||
<TextDocumentField name="XML" id="10">
|
|
||||||
<DataPath>Items.Список.CurrentData.XML</DataPath>
|
|
||||||
<ReadOnly>true</ReadOnly>
|
|
||||||
<ContextMenu name="XMLКонтекстноеМеню" id="11"/>
|
|
||||||
<ExtendedTooltip name="XMLРасширеннаяПодсказка" id="33"/>
|
|
||||||
</TextDocumentField>
|
|
||||||
</ChildItems>
|
|
||||||
<Attributes>
|
|
||||||
<Attribute name="Список" id="1">
|
|
||||||
<Type>
|
|
||||||
<v8:Type>cfg:DynamicList</v8:Type>
|
|
||||||
</Type>
|
|
||||||
<MainAttribute>true</MainAttribute>
|
|
||||||
<Settings xsi:type="DynamicList">
|
|
||||||
<ManualQuery>false</ManualQuery>
|
|
||||||
<DynamicDataRead>true</DynamicDataRead>
|
|
||||||
<MainTable>Catalog.ирОбъектыДляОтладки</MainTable>
|
|
||||||
<ListSettings>
|
|
||||||
<dcsset:filter>
|
|
||||||
<dcsset:viewMode>Normal</dcsset:viewMode>
|
|
||||||
<dcsset:userSettingID>dfcece9d-5077-440b-b6b3-45a5cb4538eb</dcsset:userSettingID>
|
|
||||||
</dcsset:filter>
|
|
||||||
<dcsset:order>
|
|
||||||
<dcsset:item xsi:type="dcsset:OrderItemField">
|
|
||||||
<dcsset:field>ДатаИзменения</dcsset:field>
|
|
||||||
<dcsset:orderType>Desc</dcsset:orderType>
|
|
||||||
</dcsset:item>
|
|
||||||
<dcsset:viewMode>Normal</dcsset:viewMode>
|
|
||||||
<dcsset:userSettingID>88619765-ccb3-46c6-ac52-38e9c992ebd4</dcsset:userSettingID>
|
|
||||||
</dcsset:order>
|
|
||||||
<dcsset:conditionalAppearance>
|
|
||||||
<dcsset:viewMode>Normal</dcsset:viewMode>
|
|
||||||
<dcsset:userSettingID>b75fecce-942b-4aed-abc9-e6a02e460fb3</dcsset:userSettingID>
|
|
||||||
</dcsset:conditionalAppearance>
|
|
||||||
</ListSettings>
|
|
||||||
</Settings>
|
|
||||||
</Attribute>
|
|
||||||
<Attribute name="ПараметрГлобальныхКомандИис" id="7999">
|
|
||||||
<Type>
|
|
||||||
<v8:Type>xs:string</v8:Type>
|
|
||||||
<v8:StringQualifiers>
|
|
||||||
<v8:Length>0</v8:Length>
|
|
||||||
<v8:AllowedLength>Variable</v8:AllowedLength>
|
|
||||||
</v8:StringQualifiers>
|
|
||||||
</Type>
|
|
||||||
</Attribute>
|
|
||||||
</Attributes>
|
|
||||||
</Form>
|
|
||||||
|
|
@ -1,9 +0,0 @@
|
||||||
|
|
||||||
&НаСервере
|
|
||||||
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
|
|
||||||
|
|
||||||
Если Параметры.РежимВыбора Тогда
|
|
||||||
Элементы.Список.РежимВыбора = Истина;
|
|
||||||
КонецЕсли;
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
@ -1,27 +0,0 @@
|
||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<MetaDataObject xmlns="http://v8.1c.ru/8.3/MDClasses" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:cmi="http://v8.1c.ru/8.2/managed-application/cmi" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" xmlns:style="http://v8.1c.ru/8.1/data/ui/style" xmlns:sys="http://v8.1c.ru/8.1/data/ui/fonts/system" xmlns:v8="http://v8.1c.ru/8.1/data/core" xmlns:v8ui="http://v8.1c.ru/8.1/data/ui" xmlns:web="http://v8.1c.ru/8.1/data/ui/colors/web" xmlns:win="http://v8.1c.ru/8.1/data/ui/colors/windows" xmlns:xen="http://v8.1c.ru/8.3/xcf/enums" xmlns:xpr="http://v8.1c.ru/8.3/xcf/predef" xmlns:xr="http://v8.1c.ru/8.3/xcf/readable" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.9">
|
|
||||||
<CommandGroup uuid="081cc825-776f-4903-aad7-957fd3d5b58f">
|
|
||||||
<Properties>
|
|
||||||
<Name>ирКоманднаяПанельФормы</Name>
|
|
||||||
<Synonym>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>ru</v8:lang>
|
|
||||||
<v8:content>Общее (ИР)</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>en</v8:lang>
|
|
||||||
<v8:content>Общее (ИР)</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>uk</v8:lang>
|
|
||||||
<v8:content>Общее (ИР)</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
</Synonym>
|
|
||||||
<Comment/>
|
|
||||||
<Representation>Auto</Representation>
|
|
||||||
<ToolTip/>
|
|
||||||
<Picture/>
|
|
||||||
<Category>FormCommandBar</Category>
|
|
||||||
</Properties>
|
|
||||||
</CommandGroup>
|
|
||||||
</MetaDataObject>
|
|
||||||
|
|
@ -1,27 +0,0 @@
|
||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<MetaDataObject xmlns="http://v8.1c.ru/8.3/MDClasses" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:cmi="http://v8.1c.ru/8.2/managed-application/cmi" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" xmlns:style="http://v8.1c.ru/8.1/data/ui/style" xmlns:sys="http://v8.1c.ru/8.1/data/ui/fonts/system" xmlns:v8="http://v8.1c.ru/8.1/data/core" xmlns:v8ui="http://v8.1c.ru/8.1/data/ui" xmlns:web="http://v8.1c.ru/8.1/data/ui/colors/web" xmlns:win="http://v8.1c.ru/8.1/data/ui/colors/windows" xmlns:xen="http://v8.1c.ru/8.3/xcf/enums" xmlns:xpr="http://v8.1c.ru/8.3/xcf/predef" xmlns:xr="http://v8.1c.ru/8.3/xcf/readable" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.9">
|
|
||||||
<CommandGroup uuid="da12e011-27c3-48d5-93ee-daafe5e97b3b">
|
|
||||||
<Properties>
|
|
||||||
<Name>ирНастройки</Name>
|
|
||||||
<Synonym>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>ru</v8:lang>
|
|
||||||
<v8:content>Настройки</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>en</v8:lang>
|
|
||||||
<v8:content>Настройки</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>uk</v8:lang>
|
|
||||||
<v8:content>Настройки</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
</Synonym>
|
|
||||||
<Comment/>
|
|
||||||
<Representation>Auto</Representation>
|
|
||||||
<ToolTip/>
|
|
||||||
<Picture/>
|
|
||||||
<Category>ActionsPanel</Category>
|
|
||||||
</Properties>
|
|
||||||
</CommandGroup>
|
|
||||||
</MetaDataObject>
|
|
||||||
|
|
@ -1,54 +0,0 @@
|
||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<MetaDataObject xmlns="http://v8.1c.ru/8.3/MDClasses" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:cmi="http://v8.1c.ru/8.2/managed-application/cmi" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" xmlns:style="http://v8.1c.ru/8.1/data/ui/style" xmlns:sys="http://v8.1c.ru/8.1/data/ui/fonts/system" xmlns:v8="http://v8.1c.ru/8.1/data/core" xmlns:v8ui="http://v8.1c.ru/8.1/data/ui" xmlns:web="http://v8.1c.ru/8.1/data/ui/colors/web" xmlns:win="http://v8.1c.ru/8.1/data/ui/colors/windows" xmlns:xen="http://v8.1c.ru/8.3/xcf/enums" xmlns:xpr="http://v8.1c.ru/8.3/xcf/predef" xmlns:xr="http://v8.1c.ru/8.3/xcf/readable" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.9">
|
|
||||||
<CommonCommand uuid="531e0dd3-aa06-4578-b614-770f30d5dd3f">
|
|
||||||
<Properties>
|
|
||||||
<Name>ирОбработатьОбъекты</Name>
|
|
||||||
<Synonym>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>ru</v8:lang>
|
|
||||||
<v8:content>Обработать объекты (ИР)</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>en</v8:lang>
|
|
||||||
<v8:content>Обработать объекты (ИР)</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>uk</v8:lang>
|
|
||||||
<v8:content>Обработать объекты (ИР)</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
</Synonym>
|
|
||||||
<Comment>Для любых ссылочных объектов</Comment>
|
|
||||||
<Group>CommandGroup.ирКоманднаяПанельФормы</Group>
|
|
||||||
<Representation>Auto</Representation>
|
|
||||||
<ToolTip>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>ru</v8:lang>
|
|
||||||
<v8:content>Передать ссылки в подбор и обработку объектов</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>en</v8:lang>
|
|
||||||
<v8:content>Передать ссылки в подбор и обработку объектов</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>uk</v8:lang>
|
|
||||||
<v8:content>Передать ссылки в подбор и обработку объектов</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
</ToolTip>
|
|
||||||
<Picture>
|
|
||||||
<xr:Ref>CommonPicture.ирОбработкаОбъектов</xr:Ref>
|
|
||||||
<xr:LoadTransparent>true</xr:LoadTransparent>
|
|
||||||
<xr:TransparentPixel x="12" y="12"/>
|
|
||||||
</Picture>
|
|
||||||
<Shortcut/>
|
|
||||||
<IncludeHelpInContents>false</IncludeHelpInContents>
|
|
||||||
<CommandParameterType>
|
|
||||||
<v8:Type>cfg:CatalogRef.ирКомандаРедактироватьОбъект</v8:Type>
|
|
||||||
<v8:Type>cfg:CatalogRef.ирОбъектыДляОтладки</v8:Type>
|
|
||||||
<v8:Type>cfg:CatalogRef.ирАлгоритмы</v8:Type>
|
|
||||||
</CommandParameterType>
|
|
||||||
<ParameterUseMode>Multiple</ParameterUseMode>
|
|
||||||
<ModifiesData>false</ModifiesData>
|
|
||||||
<OnMainServerUnavalableBehavior>Auto</OnMainServerUnavalableBehavior>
|
|
||||||
</Properties>
|
|
||||||
</CommonCommand>
|
|
||||||
</MetaDataObject>
|
|
||||||
|
|
@ -1,13 +0,0 @@
|
||||||
|
|
||||||
&НаКлиенте
|
|
||||||
Процедура ОбработкаКоманды(ПараметрКоманды, ПараметрыВыполненияКоманды)
|
|
||||||
|
|
||||||
#Если ВебКлиент Тогда
|
|
||||||
Сообщить("Команда недоступна в вебклиенте");
|
|
||||||
#ИначеЕсли ТонкийКлиент Тогда
|
|
||||||
ОткрытьФорму("Обработка.ирПортативный.Форма.ЗапускСеансаУправляемая");
|
|
||||||
#Иначе
|
|
||||||
ирОбщий.ОткрытьМассивОбъектовВПодбореИОбработкеОбъектовЛкс(ПараметрКоманды);
|
|
||||||
#КонецЕсли
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
@ -1,54 +0,0 @@
|
||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<MetaDataObject xmlns="http://v8.1c.ru/8.3/MDClasses" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:cmi="http://v8.1c.ru/8.2/managed-application/cmi" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" xmlns:style="http://v8.1c.ru/8.1/data/ui/style" xmlns:sys="http://v8.1c.ru/8.1/data/ui/fonts/system" xmlns:v8="http://v8.1c.ru/8.1/data/core" xmlns:v8ui="http://v8.1c.ru/8.1/data/ui" xmlns:web="http://v8.1c.ru/8.1/data/ui/colors/web" xmlns:win="http://v8.1c.ru/8.1/data/ui/colors/windows" xmlns:xen="http://v8.1c.ru/8.3/xcf/enums" xmlns:xpr="http://v8.1c.ru/8.3/xcf/predef" xmlns:xr="http://v8.1c.ru/8.3/xcf/readable" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.9">
|
|
||||||
<CommonCommand uuid="358b7d11-d129-4400-ab35-dea688506ed8">
|
|
||||||
<Properties>
|
|
||||||
<Name>ирОбъединитьСсылки</Name>
|
|
||||||
<Synonym>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>ru</v8:lang>
|
|
||||||
<v8:content>Объединить ссылки (ИР)</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>en</v8:lang>
|
|
||||||
<v8:content>Объединить ссылки (ИР)</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>uk</v8:lang>
|
|
||||||
<v8:content>Объединить ссылки (ИР)</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
</Synonym>
|
|
||||||
<Comment/>
|
|
||||||
<Group>CommandGroup.ирКоманднаяПанельФормы</Group>
|
|
||||||
<Representation>Auto</Representation>
|
|
||||||
<ToolTip>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>ru</v8:lang>
|
|
||||||
<v8:content>Передать ссылки в поиск и замену дублей в качестве группы дублей</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>en</v8:lang>
|
|
||||||
<v8:content>Передать ссылки в поиск и замену дублей в качестве группы дублей</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>uk</v8:lang>
|
|
||||||
<v8:content>Передать ссылки в поиск и замену дублей в качестве группы дублей</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
</ToolTip>
|
|
||||||
<Picture>
|
|
||||||
<xr:Ref>CommonPicture.ирПоискИЗаменаДублей</xr:Ref>
|
|
||||||
<xr:LoadTransparent>true</xr:LoadTransparent>
|
|
||||||
<xr:TransparentPixel x="14" y="8"/>
|
|
||||||
</Picture>
|
|
||||||
<Shortcut/>
|
|
||||||
<IncludeHelpInContents>false</IncludeHelpInContents>
|
|
||||||
<CommandParameterType>
|
|
||||||
<v8:Type>cfg:CatalogRef.ирКомандаРедактироватьОбъект</v8:Type>
|
|
||||||
<v8:Type>cfg:CatalogRef.ирОбъектыДляОтладки</v8:Type>
|
|
||||||
<v8:Type>cfg:CatalogRef.ирАлгоритмы</v8:Type>
|
|
||||||
</CommandParameterType>
|
|
||||||
<ParameterUseMode>Multiple</ParameterUseMode>
|
|
||||||
<ModifiesData>false</ModifiesData>
|
|
||||||
<OnMainServerUnavalableBehavior>Auto</OnMainServerUnavalableBehavior>
|
|
||||||
</Properties>
|
|
||||||
</CommonCommand>
|
|
||||||
</MetaDataObject>
|
|
||||||
|
|
@ -1,15 +0,0 @@
|
||||||
|
|
||||||
&НаКлиенте
|
|
||||||
Процедура ОбработкаКоманды(ПараметрКоманды, ПараметрыВыполненияКоманды)
|
|
||||||
|
|
||||||
#Если ВебКлиент Тогда
|
|
||||||
Сообщить("Команда недоступна в вебклиенте");
|
|
||||||
#ИначеЕсли ТонкийКлиент Тогда
|
|
||||||
ОткрытьФорму("Обработка.ирПортативный.Форма.ЗапускСеансаУправляемая");
|
|
||||||
#Иначе
|
|
||||||
ФормаОбработки = ирОбщий.ПолучитьФормуЛкс("Обработка.ирПоискДублейИЗаменаСсылок.Форма");
|
|
||||||
ОбъектМетаданных = Метаданные.НайтиПоТипу(ТипЗнч(ПараметрКоманды[0]));
|
|
||||||
ФормаОбработки.ОткрытьДляЗаменыПоСпискуСсылок(ПараметрКоманды);
|
|
||||||
#КонецЕсли
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
@ -1,49 +0,0 @@
|
||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<MetaDataObject xmlns="http://v8.1c.ru/8.3/MDClasses" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:cmi="http://v8.1c.ru/8.2/managed-application/cmi" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" xmlns:style="http://v8.1c.ru/8.1/data/ui/style" xmlns:sys="http://v8.1c.ru/8.1/data/ui/fonts/system" xmlns:v8="http://v8.1c.ru/8.1/data/core" xmlns:v8ui="http://v8.1c.ru/8.1/data/ui" xmlns:web="http://v8.1c.ru/8.1/data/ui/colors/web" xmlns:win="http://v8.1c.ru/8.1/data/ui/colors/windows" xmlns:xen="http://v8.1c.ru/8.3/xcf/enums" xmlns:xpr="http://v8.1c.ru/8.3/xcf/predef" xmlns:xr="http://v8.1c.ru/8.3/xcf/readable" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.9">
|
|
||||||
<CommonCommand uuid="d7797e42-b3ca-435e-91b0-f6be62ffccdc">
|
|
||||||
<Properties>
|
|
||||||
<Name>ирРедактироватьИзмененияНаУзле</Name>
|
|
||||||
<Synonym>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>ru</v8:lang>
|
|
||||||
<v8:content>Редактировать изменения на узле (ИР)</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>en</v8:lang>
|
|
||||||
<v8:content>Редактировать изменения на узле (ИР)</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>uk</v8:lang>
|
|
||||||
<v8:content>Редактировать изменения на узле (ИР)</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
</Synonym>
|
|
||||||
<Comment>Для любых планов обмена</Comment>
|
|
||||||
<Group>CommandGroup.ирКоманднаяПанельФормы</Group>
|
|
||||||
<Representation>Auto</Representation>
|
|
||||||
<ToolTip>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>ru</v8:lang>
|
|
||||||
<v8:content>Передать узел в редактор изменений на узле</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>en</v8:lang>
|
|
||||||
<v8:content>Передать узел в редактор изменений на узле</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>uk</v8:lang>
|
|
||||||
<v8:content>Передать узел в редактор изменений на узле</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
</ToolTip>
|
|
||||||
<Picture>
|
|
||||||
<xr:Ref>CommonPicture.ирИзмененияНаУзле</xr:Ref>
|
|
||||||
<xr:LoadTransparent>false</xr:LoadTransparent>
|
|
||||||
</Picture>
|
|
||||||
<Shortcut/>
|
|
||||||
<IncludeHelpInContents>false</IncludeHelpInContents>
|
|
||||||
<CommandParameterType/>
|
|
||||||
<ParameterUseMode>Single</ParameterUseMode>
|
|
||||||
<ModifiesData>false</ModifiesData>
|
|
||||||
<OnMainServerUnavalableBehavior>Auto</OnMainServerUnavalableBehavior>
|
|
||||||
</Properties>
|
|
||||||
</CommonCommand>
|
|
||||||
</MetaDataObject>
|
|
||||||
|
|
@ -1,15 +0,0 @@
|
||||||
|
|
||||||
&НаКлиенте
|
|
||||||
Процедура ОбработкаКоманды(ПараметрКоманды, ПараметрыВыполненияКоманды)
|
|
||||||
|
|
||||||
#Если ВебКлиент Тогда
|
|
||||||
Сообщить("Команда недоступна в вебклиенте");
|
|
||||||
#ИначеЕсли ТонкийКлиент Тогда
|
|
||||||
ОткрытьФорму("Обработка.ирПортативный.Форма.ЗапускСеансаУправляемая");
|
|
||||||
#Иначе
|
|
||||||
Форма = ирОбщий.ПолучитьФормуЛкс("Обработка.ирРедакторИзмененийНаУзлах.Форма");
|
|
||||||
Форма.ПараметрУзелОбмена = ПараметрКоманды;
|
|
||||||
Форма.Открыть();
|
|
||||||
#КонецЕсли
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
@ -1,54 +0,0 @@
|
||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<MetaDataObject xmlns="http://v8.1c.ru/8.3/MDClasses" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:cmi="http://v8.1c.ru/8.2/managed-application/cmi" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" xmlns:style="http://v8.1c.ru/8.1/data/ui/style" xmlns:sys="http://v8.1c.ru/8.1/data/ui/fonts/system" xmlns:v8="http://v8.1c.ru/8.1/data/core" xmlns:v8ui="http://v8.1c.ru/8.1/data/ui" xmlns:web="http://v8.1c.ru/8.1/data/ui/colors/web" xmlns:win="http://v8.1c.ru/8.1/data/ui/colors/windows" xmlns:xen="http://v8.1c.ru/8.3/xcf/enums" xmlns:xpr="http://v8.1c.ru/8.3/xcf/predef" xmlns:xr="http://v8.1c.ru/8.3/xcf/readable" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.9">
|
|
||||||
<CommonCommand uuid="c6fd6f8b-4a63-4a7e-b363-0d55550bf2fa">
|
|
||||||
<Properties>
|
|
||||||
<Name>ирРедактироватьОбъект</Name>
|
|
||||||
<Synonym>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>ru</v8:lang>
|
|
||||||
<v8:content>Редактировать объект (ИР)</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>en</v8:lang>
|
|
||||||
<v8:content>Редактировать объект (ИР)</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>uk</v8:lang>
|
|
||||||
<v8:content>Редактировать объект (ИР)</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
</Synonym>
|
|
||||||
<Comment>Для любых ссылочных объектов</Comment>
|
|
||||||
<Group>CommandGroup.ирКоманднаяПанельФормы</Group>
|
|
||||||
<Representation>Auto</Representation>
|
|
||||||
<ToolTip>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>ru</v8:lang>
|
|
||||||
<v8:content>Передать объект в редактор объекта БД</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>en</v8:lang>
|
|
||||||
<v8:content>Передать объект в редактор объекта БД</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>uk</v8:lang>
|
|
||||||
<v8:content>Передать объект в редактор объекта БД</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
</ToolTip>
|
|
||||||
<Picture>
|
|
||||||
<xr:Ref>CommonPicture.ирРедактироватьОбъектБД</xr:Ref>
|
|
||||||
<xr:LoadTransparent>true</xr:LoadTransparent>
|
|
||||||
<xr:TransparentPixel x="13" y="8"/>
|
|
||||||
</Picture>
|
|
||||||
<Shortcut/>
|
|
||||||
<IncludeHelpInContents>false</IncludeHelpInContents>
|
|
||||||
<CommandParameterType>
|
|
||||||
<v8:Type>cfg:CatalogRef.ирКомандаРедактироватьОбъект</v8:Type>
|
|
||||||
<v8:Type>cfg:CatalogRef.ирОбъектыДляОтладки</v8:Type>
|
|
||||||
<v8:Type>cfg:CatalogRef.ирАлгоритмы</v8:Type>
|
|
||||||
</CommandParameterType>
|
|
||||||
<ParameterUseMode>Single</ParameterUseMode>
|
|
||||||
<ModifiesData>false</ModifiesData>
|
|
||||||
<OnMainServerUnavalableBehavior>Auto</OnMainServerUnavalableBehavior>
|
|
||||||
</Properties>
|
|
||||||
</CommonCommand>
|
|
||||||
</MetaDataObject>
|
|
||||||
|
|
@ -1,13 +0,0 @@
|
||||||
|
|
||||||
&НаКлиенте
|
|
||||||
Процедура ОбработкаКоманды(ПараметрКоманды, ПараметрыВыполненияКоманды)
|
|
||||||
|
|
||||||
#Если ВебКлиент Тогда
|
|
||||||
Сообщить("Команда недоступна в вебклиенте");
|
|
||||||
#ИначеЕсли ТонкийКлиент Тогда
|
|
||||||
ОткрытьФорму("Обработка.ирПортативный.Форма.ЗапускСеансаУправляемая");
|
|
||||||
#Иначе
|
|
||||||
ирОбщий.ОткрытьСсылкуВРедактореОбъектаБДЛкс(ПараметрКоманды);
|
|
||||||
#КонецЕсли
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
@ -1,778 +0,0 @@
|
||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<Form xmlns="http://v8.1c.ru/8.3/xcf/logform" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:dcscor="http://v8.1c.ru/8.1/data-composition-system/core" xmlns:dcsset="http://v8.1c.ru/8.1/data-composition-system/settings" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" xmlns:style="http://v8.1c.ru/8.1/data/ui/style" xmlns:sys="http://v8.1c.ru/8.1/data/ui/fonts/system" xmlns:v8="http://v8.1c.ru/8.1/data/core" xmlns:v8ui="http://v8.1c.ru/8.1/data/ui" xmlns:web="http://v8.1c.ru/8.1/data/ui/colors/web" xmlns:win="http://v8.1c.ru/8.1/data/ui/colors/windows" xmlns:xr="http://v8.1c.ru/8.3/xcf/readable" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.9">
|
|
||||||
<AutoCommandBar name="ФормаКоманднаяПанель" id="-1">
|
|
||||||
<ChildItems>
|
|
||||||
<Button name="ФормаЗакрыть" id="31">
|
|
||||||
<Type>CommandBarButton</Type>
|
|
||||||
<Representation>PictureAndText</Representation>
|
|
||||||
<DefaultButton>true</DefaultButton>
|
|
||||||
<CommandName>Form.StandardCommand.Close</CommandName>
|
|
||||||
<Title>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>ru</v8:lang>
|
|
||||||
<v8:content>Пропустить</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>en</v8:lang>
|
|
||||||
<v8:content>Пропустить</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>uk</v8:lang>
|
|
||||||
<v8:content>Пропустить</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
</Title>
|
|
||||||
<ExtendedTooltip name="ФормаЗакрытьРасширеннаяПодсказка" id="32"/>
|
|
||||||
</Button>
|
|
||||||
<Button name="ФормаВыполнить" id="1">
|
|
||||||
<Type>CommandBarButton</Type>
|
|
||||||
<CommandName>Form.Command.Выполнить</CommandName>
|
|
||||||
<ExtendedTooltip name="ФормаВыполнитьРасширеннаяПодсказка" id="2"/>
|
|
||||||
</Button>
|
|
||||||
</ChildItems>
|
|
||||||
</AutoCommandBar>
|
|
||||||
<Events>
|
|
||||||
<Event name="OnOpen">ПриОткрытии</Event>
|
|
||||||
<Event name="OnCreateAtServer">ПриСозданииНаСервере</Event>
|
|
||||||
<Event name="OnClose">ПриЗакрытии</Event>
|
|
||||||
</Events>
|
|
||||||
<ChildItems>
|
|
||||||
<UsualGroup name="Группа1" id="64">
|
|
||||||
<Title>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>ru</v8:lang>
|
|
||||||
<v8:content>Глобальное меню</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>en</v8:lang>
|
|
||||||
<v8:content>Глобальное меню</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>uk</v8:lang>
|
|
||||||
<v8:content>Глобальное меню</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
</Title>
|
|
||||||
<Height>4</Height>
|
|
||||||
<Group>AlwaysHorizontal</Group>
|
|
||||||
<Representation>StrongSeparation</Representation>
|
|
||||||
<BackColor>#FFFF99</BackColor>
|
|
||||||
<ExtendedTooltip name="Группа1РасширеннаяПодсказка" id="65"/>
|
|
||||||
<ChildItems>
|
|
||||||
<PictureDecoration name="Декорация2" id="91">
|
|
||||||
<Width>2</Width>
|
|
||||||
<Picture>
|
|
||||||
<xr:Ref>StdPicture.AppearanceExclamationMarkIcon</xr:Ref>
|
|
||||||
<xr:LoadTransparent>true</xr:LoadTransparent>
|
|
||||||
</Picture>
|
|
||||||
<ContextMenu name="Декорация2КонтекстноеМеню" id="92"/>
|
|
||||||
<ExtendedTooltip name="Декорация2РасширеннаяПодсказка" id="93"/>
|
|
||||||
</PictureDecoration>
|
|
||||||
<LabelDecoration name="ДекорацияГлобальныеКоманды" id="52">
|
|
||||||
<AutoMaxWidth>false</AutoMaxWidth>
|
|
||||||
<HorizontalStretch>true</HorizontalStretch>
|
|
||||||
<TextColor>style:FieldSelectionBackColor</TextColor>
|
|
||||||
<Title formatted="false">
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>ru</v8:lang>
|
|
||||||
<v8:content>Глобальное контекстное меню подсистемы вызывается сочетанием CTRL+~(тильда или ё) в любой управляемой форме. Это не требует адаптации расширения.</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>en</v8:lang>
|
|
||||||
<v8:content>Глобальное контекстное меню подсистемы вызывается сочетанием CTRL+~(тильда или ё) в любой управляемой форме. Это не требует адаптации расширения.</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>uk</v8:lang>
|
|
||||||
<v8:content>Глобальное контекстное меню подсистемы вызывается сочетанием CTRL+~(тильда или ё) в любой управляемой форме. Это не требует адаптации расширения.</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
</Title>
|
|
||||||
<ContextMenu name="ДекорацияГлобальныеКомандыКонтекстноеМеню" id="53"/>
|
|
||||||
<ExtendedTooltip name="ДекорацияГлобальныеКомандыРасширеннаяПодсказка" id="54"/>
|
|
||||||
</LabelDecoration>
|
|
||||||
</ChildItems>
|
|
||||||
</UsualGroup>
|
|
||||||
<CheckBoxField name="Использование" id="77">
|
|
||||||
<DataPath>ОткрыватьАдаптациюПриОбновлении</DataPath>
|
|
||||||
<Title>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>ru</v8:lang>
|
|
||||||
<v8:content>Открывать это окно при следующем обновлении расширения</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>en</v8:lang>
|
|
||||||
<v8:content>Открывать это окно при следующем обновлении расширения</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>uk</v8:lang>
|
|
||||||
<v8:content>Открывать это окно при следующем обновлении расширения</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
</Title>
|
|
||||||
<TitleLocation>Right</TitleLocation>
|
|
||||||
<ToolTip>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>ru</v8:lang>
|
|
||||||
<v8:content>Чтобы адаптация сохранялась при обновлении, ее нужно выполнять заново. Флажок устанавливается автоматически при выполнении адаптации.</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>en</v8:lang>
|
|
||||||
<v8:content>Чтобы адаптация сохранялась при обновлении, ее нужно выполнять заново. Флажок устанавливается автоматически при выполнении адаптации.</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>uk</v8:lang>
|
|
||||||
<v8:content>Чтобы адаптация сохранялась при обновлении, ее нужно выполнять заново. Флажок устанавливается автоматически при выполнении адаптации.</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
</ToolTip>
|
|
||||||
<CheckBoxType>Auto</CheckBoxType>
|
|
||||||
<ContextMenu name="ИспользованиеКонтекстноеМеню" id="78"/>
|
|
||||||
<ExtendedTooltip name="ИспользованиеРасширеннаяПодсказка" id="79"/>
|
|
||||||
</CheckBoxField>
|
|
||||||
<LabelDecoration name="Декорация3" id="74">
|
|
||||||
<AutoMaxWidth>false</AutoMaxWidth>
|
|
||||||
<HorizontalStretch>true</HorizontalStretch>
|
|
||||||
<TextColor>style:FieldSelectionBackColor</TextColor>
|
|
||||||
<Title formatted="false">
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>ru</v8:lang>
|
|
||||||
<v8:content>При выполнении адаптации используется конфигуратор текущей базы. После завершения операции для вступления изменений в силу сеанс будет перезапущен.
|
|
||||||
</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>en</v8:lang>
|
|
||||||
<v8:content>При выполнении адаптации используется конфигуратор текущей базы. После завершения операции для вступления изменений в силу сеанс будет перезапущен.
|
|
||||||
</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>uk</v8:lang>
|
|
||||||
<v8:content>При выполнении адаптации используется конфигуратор текущей базы. После завершения операции для вступления изменений в силу сеанс будет перезапущен.
|
|
||||||
</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
</Title>
|
|
||||||
<ContextMenu name="Декорация3КонтекстноеМеню" id="75"/>
|
|
||||||
<ExtendedTooltip name="Декорация3РасширеннаяПодсказка" id="76"/>
|
|
||||||
</LabelDecoration>
|
|
||||||
<UsualGroup name="Группа3" id="80">
|
|
||||||
<Group>AlwaysHorizontal</Group>
|
|
||||||
<Representation>None</Representation>
|
|
||||||
<ShowTitle>false</ShowTitle>
|
|
||||||
<ExtendedTooltip name="Группа3РасширеннаяПодсказка" id="81"/>
|
|
||||||
<ChildItems>
|
|
||||||
<InputField name="ИмяПользователя" id="82">
|
|
||||||
<DataPath>ИмяПользователя</DataPath>
|
|
||||||
<DropListButton>true</DropListButton>
|
|
||||||
<ContextMenu name="ИмяПользователяКонтекстноеМеню" id="83"/>
|
|
||||||
<ExtendedTooltip name="ИмяПользователяРасширеннаяПодсказка" id="84"/>
|
|
||||||
</InputField>
|
|
||||||
<InputField name="ПарольПользователя" id="85">
|
|
||||||
<DataPath>ПарольПользователя</DataPath>
|
|
||||||
<PasswordMode>true</PasswordMode>
|
|
||||||
<ContextMenu name="ПарольПользователяКонтекстноеМеню" id="86"/>
|
|
||||||
<ExtendedTooltip name="ПарольПользователяРасширеннаяПодсказка" id="87"/>
|
|
||||||
</InputField>
|
|
||||||
</ChildItems>
|
|
||||||
</UsualGroup>
|
|
||||||
<CheckBoxField name="ДобавитьРольВсеПрава" id="68">
|
|
||||||
<DataPath>СгенерироватьРольВсеПрава</DataPath>
|
|
||||||
<Visible>false</Visible>
|
|
||||||
<Title>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>ru</v8:lang>
|
|
||||||
<v8:content>Сгенерировать роль ирВсеПрава</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>en</v8:lang>
|
|
||||||
<v8:content>Сгенерировать роль ирВсеПрава</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>uk</v8:lang>
|
|
||||||
<v8:content>Сгенерировать роль ирВсеПрава</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
</Title>
|
|
||||||
<TitleLocation>Right</TitleLocation>
|
|
||||||
<ToolTip>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>ru</v8:lang>
|
|
||||||
<v8:content>Обеспечит доступ на чтение ко всем таблицам в базе. Эта роль будет добавляться пользователю при автоматическом добавлении роли ирРазработчик</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>en</v8:lang>
|
|
||||||
<v8:content>Обеспечит доступ на чтение ко всем таблицам в базе. Эта роль будет добавляться пользователю при автоматическом добавлении роли ирРазработчик</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>uk</v8:lang>
|
|
||||||
<v8:content>Обеспечит доступ на чтение ко всем таблицам в базе. Эта роль будет добавляться пользователю при автоматическом добавлении роли ирРазработчик</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
</ToolTip>
|
|
||||||
<ToolTipRepresentation>ShowAuto</ToolTipRepresentation>
|
|
||||||
<CheckBoxType>Auto</CheckBoxType>
|
|
||||||
<ContextMenu name="ДобавитьРольВсеПраваКонтекстноеМеню" id="69"/>
|
|
||||||
<ExtendedTooltip name="ДобавитьРольВсеПраваРасширеннаяПодсказка" id="70">
|
|
||||||
<AutoMaxWidth>false</AutoMaxWidth>
|
|
||||||
<TextColor>style:FieldSelectionBackColor</TextColor>
|
|
||||||
</ExtendedTooltip>
|
|
||||||
</CheckBoxField>
|
|
||||||
<CheckBoxField name="ПодключитьОтладкуВнешнихОбработокБСП" id="71">
|
|
||||||
<DataPath>ПодключитьОтладкуВнешнихОбработокБСП</DataPath>
|
|
||||||
<TitleLocation>Right</TitleLocation>
|
|
||||||
<ToolTip>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>ru</v8:lang>
|
|
||||||
<v8:content>Необходимо для работы инструмента "Отладка внешних обработок БСП" в БСП 2.4+</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>en</v8:lang>
|
|
||||||
<v8:content>Необходимо для работы инструмента "Отладка внешних обработок БСП" в БСП 2.4+</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>uk</v8:lang>
|
|
||||||
<v8:content>Необходимо для работы инструмента "Отладка внешних обработок БСП" в БСП 2.4+</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
</ToolTip>
|
|
||||||
<ToolTipRepresentation>ShowAuto</ToolTipRepresentation>
|
|
||||||
<CheckBoxType>Auto</CheckBoxType>
|
|
||||||
<ContextMenu name="ПодключитьОтладкуВнешнихОбработокБСПКонтекстноеМеню" id="72"/>
|
|
||||||
<ExtendedTooltip name="ПодключитьОтладкуВнешнихОбработокБСПРасширеннаяПодсказка" id="73">
|
|
||||||
<AutoMaxWidth>false</AutoMaxWidth>
|
|
||||||
<TextColor>style:FieldSelectionBackColor</TextColor>
|
|
||||||
</ExtendedTooltip>
|
|
||||||
</CheckBoxField>
|
|
||||||
<UsualGroup name="Группа2" id="66">
|
|
||||||
<Title>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>ru</v8:lang>
|
|
||||||
<v8:content>Подключаемые команды (устаревшее)</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>en</v8:lang>
|
|
||||||
<v8:content>Подключаемые команды (устаревшее)</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>uk</v8:lang>
|
|
||||||
<v8:content>Подключаемые команды (устаревшее)</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
</Title>
|
|
||||||
<Group>Vertical</Group>
|
|
||||||
<ExtendedTooltip name="Группа2РасширеннаяПодсказка" id="67"/>
|
|
||||||
<ChildItems>
|
|
||||||
<CheckBoxField name="ПодключитьОтладкуОтчетов" id="88">
|
|
||||||
<DataPath>ПодключитьОтладкуОтчетов</DataPath>
|
|
||||||
<TitleLocation>Right</TitleLocation>
|
|
||||||
<ToolTipRepresentation>ShowAuto</ToolTipRepresentation>
|
|
||||||
<CheckBoxType>Auto</CheckBoxType>
|
|
||||||
<ContextMenu name="ПодключитьОтладкуОтчетовКонтекстноеМеню" id="89"/>
|
|
||||||
<ExtendedTooltip name="ПодключитьОтладкуОтчетовРасширеннаяПодсказка" id="90">
|
|
||||||
<AutoMaxWidth>false</AutoMaxWidth>
|
|
||||||
<TextColor>style:FieldSelectionBackColor</TextColor>
|
|
||||||
<Title formatted="false">
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>ru</v8:lang>
|
|
||||||
<v8:content>Добавляет кнопку передачи схемы и настроек компоновки отчета из основной формы отчета в консоль компоновки</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>en</v8:lang>
|
|
||||||
<v8:content>Добавляет кнопку передачи схемы и настроек компоновки отчета из основной формы отчета в консоль компоновки</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>uk</v8:lang>
|
|
||||||
<v8:content>Добавляет кнопку передачи схемы и настроек компоновки отчета из основной формы отчета в консоль компоновки</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
</Title>
|
|
||||||
</ExtendedTooltip>
|
|
||||||
</CheckBoxField>
|
|
||||||
<LabelDecoration name="Декорация1" id="3">
|
|
||||||
<AutoMaxWidth>false</AutoMaxWidth>
|
|
||||||
<HorizontalStretch>true</HorizontalStretch>
|
|
||||||
<TextColor>style:FieldSelectionBackColor</TextColor>
|
|
||||||
<Title formatted="false">
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>ru</v8:lang>
|
|
||||||
<v8:content>Подключение этих параметризуемых команд позволит передавать ссылки объектов прямо из их форм элементов и списков. Снятый флажок "Подключить" приведет к отключению команды. Подключение хотя бы одной команды влечет добавление в расширение всех ссылочных типов.</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>en</v8:lang>
|
|
||||||
<v8:content>Подключение этих параметризуемых команд позволит передавать ссылки объектов прямо из их форм элементов и списков. Снятый флажок "Подключить" приведет к отключению команды. Подключение хотя бы одной команды влечет добавление в расширение всех ссылочных типов.</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>uk</v8:lang>
|
|
||||||
<v8:content>Подключение этих параметризуемых команд позволит передавать ссылки объектов прямо из их форм элементов и списков. Снятый флажок "Подключить" приведет к отключению команды. Подключение хотя бы одной команды влечет добавление в расширение всех ссылочных типов.</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
</Title>
|
|
||||||
<ContextMenu name="Декорация1КонтекстноеМеню" id="4"/>
|
|
||||||
<ExtendedTooltip name="Декорация1РасширеннаяПодсказка" id="5"/>
|
|
||||||
</LabelDecoration>
|
|
||||||
<Table name="СписокКоманд" id="6">
|
|
||||||
<Representation>List</Representation>
|
|
||||||
<ChangeRowSet>false</ChangeRowSet>
|
|
||||||
<Height>3</Height>
|
|
||||||
<AutoInsertNewRow>true</AutoInsertNewRow>
|
|
||||||
<EnableStartDrag>true</EnableStartDrag>
|
|
||||||
<EnableDrag>true</EnableDrag>
|
|
||||||
<FileDragMode>AsFile</FileDragMode>
|
|
||||||
<DataPath>СписокКоманд</DataPath>
|
|
||||||
<RowFilter xsi:nil="true"/>
|
|
||||||
<ContextMenu name="СписокКомандКонтекстноеМеню" id="7"/>
|
|
||||||
<AutoCommandBar name="СписокКомандКоманднаяПанель" id="8"/>
|
|
||||||
<ExtendedTooltip name="СписокКомандРасширеннаяПодсказка" id="9"/>
|
|
||||||
<SearchStringAddition name="СписокКомандСтрокаПоиска" id="10">
|
|
||||||
<AdditionSource>
|
|
||||||
<Item>СписокКоманд</Item>
|
|
||||||
<Type>SearchStringRepresentation</Type>
|
|
||||||
</AdditionSource>
|
|
||||||
<ContextMenu name="СписокКомандСтрокаПоискаКонтекстноеМеню" id="11"/>
|
|
||||||
<ExtendedTooltip name="СписокКомандСтрокаПоискаРасширеннаяПодсказка" id="12"/>
|
|
||||||
</SearchStringAddition>
|
|
||||||
<ViewStatusAddition name="СписокКомандСостояниеПросмотра" id="13">
|
|
||||||
<AdditionSource>
|
|
||||||
<Item>СписокКоманд</Item>
|
|
||||||
<Type>ViewStatusRepresentation</Type>
|
|
||||||
</AdditionSource>
|
|
||||||
<ContextMenu name="СписокКомандСостояниеПросмотраКонтекстноеМеню" id="14"/>
|
|
||||||
<ExtendedTooltip name="СписокКомандСостояниеПросмотраРасширеннаяПодсказка" id="15"/>
|
|
||||||
</ViewStatusAddition>
|
|
||||||
<SearchControlAddition name="СписокКомандУправлениеПоиском" id="16">
|
|
||||||
<AdditionSource>
|
|
||||||
<Item>СписокКоманд</Item>
|
|
||||||
<Type>SearchControl</Type>
|
|
||||||
</AdditionSource>
|
|
||||||
<ContextMenu name="СписокКомандУправлениеПоискомКонтекстноеМеню" id="17"/>
|
|
||||||
<ExtendedTooltip name="СписокКомандУправлениеПоискомРасширеннаяПодсказка" id="18"/>
|
|
||||||
</SearchControlAddition>
|
|
||||||
<ChildItems>
|
|
||||||
<CheckBoxField name="СписокКомандПодключить" id="22">
|
|
||||||
<DataPath>СписокКоманд.Подключить</DataPath>
|
|
||||||
<Title>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>ru</v8:lang>
|
|
||||||
<v8:content>Подключить</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>en</v8:lang>
|
|
||||||
<v8:content>Подключить</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>uk</v8:lang>
|
|
||||||
<v8:content>Подключить</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
</Title>
|
|
||||||
<EditMode>EnterOnInput</EditMode>
|
|
||||||
<CheckBoxType>Auto</CheckBoxType>
|
|
||||||
<ContextMenu name="СписокКомандПодключитьКонтекстноеМеню" id="23"/>
|
|
||||||
<ExtendedTooltip name="СписокКомандПодключитьРасширеннаяПодсказка" id="24"/>
|
|
||||||
</CheckBoxField>
|
|
||||||
<InputField name="СписокКомандИмяКоманды" id="25">
|
|
||||||
<DataPath>СписокКоманд.СинонимКоманды</DataPath>
|
|
||||||
<ReadOnly>true</ReadOnly>
|
|
||||||
<Title>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>ru</v8:lang>
|
|
||||||
<v8:content>Команда</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>en</v8:lang>
|
|
||||||
<v8:content>Команда</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>uk</v8:lang>
|
|
||||||
<v8:content>Команда</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
</Title>
|
|
||||||
<EditMode>EnterOnInput</EditMode>
|
|
||||||
<ContextMenu name="СписокКомандИмяКомандыКонтекстноеМеню" id="26"/>
|
|
||||||
<ExtendedTooltip name="СписокКомандИмяКомандыРасширеннаяПодсказка" id="27"/>
|
|
||||||
</InputField>
|
|
||||||
<InputField name="СписокКомандПодсказка" id="28">
|
|
||||||
<DataPath>СписокКоманд.Подсказка</DataPath>
|
|
||||||
<EditMode>EnterOnInput</EditMode>
|
|
||||||
<ContextMenu name="СписокКомандПодсказкаКонтекстноеМеню" id="29"/>
|
|
||||||
<ExtendedTooltip name="СписокКомандПодсказкаРасширеннаяПодсказка" id="30"/>
|
|
||||||
</InputField>
|
|
||||||
</ChildItems>
|
|
||||||
</Table>
|
|
||||||
</ChildItems>
|
|
||||||
</UsualGroup>
|
|
||||||
</ChildItems>
|
|
||||||
<Attributes>
|
|
||||||
<Attribute name="СписокКоманд" id="1">
|
|
||||||
<Title>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>ru</v8:lang>
|
|
||||||
<v8:content>Список команд</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>en</v8:lang>
|
|
||||||
<v8:content>Список команд</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>uk</v8:lang>
|
|
||||||
<v8:content>Список команд</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
</Title>
|
|
||||||
<Type>
|
|
||||||
<v8:Type>v8:ValueTable</v8:Type>
|
|
||||||
</Type>
|
|
||||||
<Columns>
|
|
||||||
<Column name="ИмяКоманды" id="1">
|
|
||||||
<Title>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>ru</v8:lang>
|
|
||||||
<v8:content>Имя команды</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>en</v8:lang>
|
|
||||||
<v8:content>Имя команды</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>uk</v8:lang>
|
|
||||||
<v8:content>Имя команды</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
</Title>
|
|
||||||
<Type>
|
|
||||||
<v8:Type>xs:string</v8:Type>
|
|
||||||
<v8:StringQualifiers>
|
|
||||||
<v8:Length>0</v8:Length>
|
|
||||||
<v8:AllowedLength>Variable</v8:AllowedLength>
|
|
||||||
</v8:StringQualifiers>
|
|
||||||
</Type>
|
|
||||||
</Column>
|
|
||||||
<Column name="Подключить" id="2">
|
|
||||||
<Title>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>ru</v8:lang>
|
|
||||||
<v8:content>Подключить</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>en</v8:lang>
|
|
||||||
<v8:content>Подключить</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>uk</v8:lang>
|
|
||||||
<v8:content>Подключить</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
</Title>
|
|
||||||
<Type>
|
|
||||||
<v8:Type>xs:boolean</v8:Type>
|
|
||||||
</Type>
|
|
||||||
</Column>
|
|
||||||
<Column name="СинонимКоманды" id="3">
|
|
||||||
<Title>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>ru</v8:lang>
|
|
||||||
<v8:content>Синооним команды</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>en</v8:lang>
|
|
||||||
<v8:content>Синооним команды</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>uk</v8:lang>
|
|
||||||
<v8:content>Синооним команды</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
</Title>
|
|
||||||
<Type>
|
|
||||||
<v8:Type>xs:string</v8:Type>
|
|
||||||
<v8:StringQualifiers>
|
|
||||||
<v8:Length>0</v8:Length>
|
|
||||||
<v8:AllowedLength>Variable</v8:AllowedLength>
|
|
||||||
</v8:StringQualifiers>
|
|
||||||
</Type>
|
|
||||||
</Column>
|
|
||||||
<Column name="Подсказка" id="4">
|
|
||||||
<Title>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>ru</v8:lang>
|
|
||||||
<v8:content>Подсказка</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>en</v8:lang>
|
|
||||||
<v8:content>Подсказка</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>uk</v8:lang>
|
|
||||||
<v8:content>Подсказка</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
</Title>
|
|
||||||
<Type>
|
|
||||||
<v8:Type>xs:string</v8:Type>
|
|
||||||
<v8:StringQualifiers>
|
|
||||||
<v8:Length>0</v8:Length>
|
|
||||||
<v8:AllowedLength>Variable</v8:AllowedLength>
|
|
||||||
</v8:StringQualifiers>
|
|
||||||
</Type>
|
|
||||||
</Column>
|
|
||||||
</Columns>
|
|
||||||
</Attribute>
|
|
||||||
<Attribute name="ГлобальныеСочетанияКлавиш" id="2">
|
|
||||||
<Title>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>ru</v8:lang>
|
|
||||||
<v8:content>Глобальные сочетания клавиш</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>en</v8:lang>
|
|
||||||
<v8:content>Глобальные сочетания клавиш</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>uk</v8:lang>
|
|
||||||
<v8:content>Глобальные сочетания клавиш</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
</Title>
|
|
||||||
<Type>
|
|
||||||
<v8:Type>v8:ValueTable</v8:Type>
|
|
||||||
</Type>
|
|
||||||
<Columns>
|
|
||||||
<Column name="СочетаниеКлавиш" id="2">
|
|
||||||
<Title>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>ru</v8:lang>
|
|
||||||
<v8:content>Сочетание клавиш</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>en</v8:lang>
|
|
||||||
<v8:content>Сочетание клавиш</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>uk</v8:lang>
|
|
||||||
<v8:content>Сочетание клавиш</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
</Title>
|
|
||||||
<Type>
|
|
||||||
<v8:Type>xs:string</v8:Type>
|
|
||||||
<v8:StringQualifiers>
|
|
||||||
<v8:Length>0</v8:Length>
|
|
||||||
<v8:AllowedLength>Variable</v8:AllowedLength>
|
|
||||||
</v8:StringQualifiers>
|
|
||||||
</Type>
|
|
||||||
</Column>
|
|
||||||
<Column name="ИмяКоманды" id="1">
|
|
||||||
<Title>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>ru</v8:lang>
|
|
||||||
<v8:content>Имя команды</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>en</v8:lang>
|
|
||||||
<v8:content>Имя команды</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>uk</v8:lang>
|
|
||||||
<v8:content>Имя команды</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
</Title>
|
|
||||||
<Type>
|
|
||||||
<v8:Type>xs:string</v8:Type>
|
|
||||||
<v8:StringQualifiers>
|
|
||||||
<v8:Length>0</v8:Length>
|
|
||||||
<v8:AllowedLength>Variable</v8:AllowedLength>
|
|
||||||
</v8:StringQualifiers>
|
|
||||||
</Type>
|
|
||||||
</Column>
|
|
||||||
<Column name="СинонимКоманды" id="3">
|
|
||||||
<Title>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>ru</v8:lang>
|
|
||||||
<v8:content>Синооним команды</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>en</v8:lang>
|
|
||||||
<v8:content>Синооним команды</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>uk</v8:lang>
|
|
||||||
<v8:content>Синооним команды</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
</Title>
|
|
||||||
<Type>
|
|
||||||
<v8:Type>xs:string</v8:Type>
|
|
||||||
<v8:StringQualifiers>
|
|
||||||
<v8:Length>0</v8:Length>
|
|
||||||
<v8:AllowedLength>Variable</v8:AllowedLength>
|
|
||||||
</v8:StringQualifiers>
|
|
||||||
</Type>
|
|
||||||
</Column>
|
|
||||||
<Column name="Подсказка" id="4">
|
|
||||||
<Title>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>ru</v8:lang>
|
|
||||||
<v8:content>Подсказка</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>en</v8:lang>
|
|
||||||
<v8:content>Подсказка</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>uk</v8:lang>
|
|
||||||
<v8:content>Подсказка</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
</Title>
|
|
||||||
<Type>
|
|
||||||
<v8:Type>xs:string</v8:Type>
|
|
||||||
<v8:StringQualifiers>
|
|
||||||
<v8:Length>0</v8:Length>
|
|
||||||
<v8:AllowedLength>Variable</v8:AllowedLength>
|
|
||||||
</v8:StringQualifiers>
|
|
||||||
</Type>
|
|
||||||
</Column>
|
|
||||||
</Columns>
|
|
||||||
</Attribute>
|
|
||||||
<Attribute name="СгенерироватьРольВсеПрава" id="3">
|
|
||||||
<Title>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>ru</v8:lang>
|
|
||||||
<v8:content>Сгенерировать роль все права</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>en</v8:lang>
|
|
||||||
<v8:content>Сгенерировать роль все права</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>uk</v8:lang>
|
|
||||||
<v8:content>Сгенерировать роль все права</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
</Title>
|
|
||||||
<Type>
|
|
||||||
<v8:Type>xs:boolean</v8:Type>
|
|
||||||
</Type>
|
|
||||||
</Attribute>
|
|
||||||
<Attribute name="ПодключитьОтладкуВнешнихОбработокБСП" id="4">
|
|
||||||
<Title>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>ru</v8:lang>
|
|
||||||
<v8:content>Подключить отладку внешних обработок БСП</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>en</v8:lang>
|
|
||||||
<v8:content>Подключить отладку внешних обработок БСП</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>uk</v8:lang>
|
|
||||||
<v8:content>Подключить отладку внешних обработок БСП</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
</Title>
|
|
||||||
<Type>
|
|
||||||
<v8:Type>xs:boolean</v8:Type>
|
|
||||||
</Type>
|
|
||||||
</Attribute>
|
|
||||||
<Attribute name="ОткрыватьАдаптациюПриОбновлении" id="5">
|
|
||||||
<Title>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>ru</v8:lang>
|
|
||||||
<v8:content>Открывать адаптацию при обновлении</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>en</v8:lang>
|
|
||||||
<v8:content>Открывать адаптацию при обновлении</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>uk</v8:lang>
|
|
||||||
<v8:content>Открывать адаптацию при обновлении</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
</Title>
|
|
||||||
<Type>
|
|
||||||
<v8:Type>xs:boolean</v8:Type>
|
|
||||||
</Type>
|
|
||||||
</Attribute>
|
|
||||||
<Attribute name="ИмяПользователя" id="6">
|
|
||||||
<Title>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>ru</v8:lang>
|
|
||||||
<v8:content>Имя пользователя</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>en</v8:lang>
|
|
||||||
<v8:content>Имя пользователя</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>uk</v8:lang>
|
|
||||||
<v8:content>Имя пользователя</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
</Title>
|
|
||||||
<Type>
|
|
||||||
<v8:Type>xs:string</v8:Type>
|
|
||||||
<v8:StringQualifiers>
|
|
||||||
<v8:Length>100</v8:Length>
|
|
||||||
<v8:AllowedLength>Variable</v8:AllowedLength>
|
|
||||||
</v8:StringQualifiers>
|
|
||||||
</Type>
|
|
||||||
</Attribute>
|
|
||||||
<Attribute name="ПарольПользователя" id="7">
|
|
||||||
<Title>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>ru</v8:lang>
|
|
||||||
<v8:content>Пароль пользователя</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>en</v8:lang>
|
|
||||||
<v8:content>Пароль пользователя</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>uk</v8:lang>
|
|
||||||
<v8:content>Пароль пользователя</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
</Title>
|
|
||||||
<Type>
|
|
||||||
<v8:Type>xs:string</v8:Type>
|
|
||||||
<v8:StringQualifiers>
|
|
||||||
<v8:Length>50</v8:Length>
|
|
||||||
<v8:AllowedLength>Variable</v8:AllowedLength>
|
|
||||||
</v8:StringQualifiers>
|
|
||||||
</Type>
|
|
||||||
</Attribute>
|
|
||||||
<Attribute name="ПодключитьОтладкуОтчетов" id="8">
|
|
||||||
<Title>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>ru</v8:lang>
|
|
||||||
<v8:content>Команда отладки отчета</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>en</v8:lang>
|
|
||||||
<v8:content>Команда отладки отчета</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>uk</v8:lang>
|
|
||||||
<v8:content>Команда отладки отчета</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
</Title>
|
|
||||||
<Type>
|
|
||||||
<v8:Type>xs:boolean</v8:Type>
|
|
||||||
</Type>
|
|
||||||
</Attribute>
|
|
||||||
</Attributes>
|
|
||||||
<Commands>
|
|
||||||
<Command name="Выполнить" id="1">
|
|
||||||
<Title>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>ru</v8:lang>
|
|
||||||
<v8:content>Выполнить</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>en</v8:lang>
|
|
||||||
<v8:content>Выполнить</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>uk</v8:lang>
|
|
||||||
<v8:content>Выполнить</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
</Title>
|
|
||||||
<ToolTip>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>ru</v8:lang>
|
|
||||||
<v8:content>Выполнить адаптацию расширения конфигурации</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>en</v8:lang>
|
|
||||||
<v8:content>Выполнить адаптацию расширения конфигурации</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>uk</v8:lang>
|
|
||||||
<v8:content>Выполнить адаптацию расширения конфигурации</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
</ToolTip>
|
|
||||||
<Action>ВыполнитьОперацию</Action>
|
|
||||||
<CurrentRowUse>DontUse</CurrentRowUse>
|
|
||||||
</Command>
|
|
||||||
</Commands>
|
|
||||||
<Parameters>
|
|
||||||
<Parameter name="Автооткрытие">
|
|
||||||
<Type>
|
|
||||||
<v8:Type>xs:boolean</v8:Type>
|
|
||||||
</Type>
|
|
||||||
</Parameter>
|
|
||||||
</Parameters>
|
|
||||||
</Form>
|
|
||||||
|
|
@ -1,133 +0,0 @@
|
||||||
|
|
||||||
&НаСервере
|
|
||||||
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
|
|
||||||
|
|
||||||
Если Не ирОбщий.ПроверитьЧтоСеансТолстогоКлиентаЛкс() Тогда
|
|
||||||
Отказ = Истина;
|
|
||||||
Возврат;
|
|
||||||
КонецЕсли;
|
|
||||||
Элементы.ФормаВыполнить.Доступность = ирКэш.ЛиЭтоРасширениеКонфигурацииЛкс();
|
|
||||||
ЭтаФорма.ОткрыватьАдаптациюПриОбновлении = ХранилищеОбщихНастроек.Загрузить(, "ирАдаптацияРасширения.ОткрыватьАдаптациюПриОбновлении",, ирКэш.ИмяПродукта());
|
|
||||||
ИмяПользователяНовое = ХранилищеОбщихНастроек.Загрузить(, "ирАдаптацияРасширения.ИмяПользователя",, ирКэш.ИмяПродукта());
|
|
||||||
Если ИмяПользователяНовое = Неопределено Тогда
|
|
||||||
СохранитьНастройкиАдаптации(Истина);
|
|
||||||
КонецЕсли;
|
|
||||||
Если ИмяПользователяНовое <> Неопределено Тогда
|
|
||||||
ЭтаФорма.ИмяПользователя = ИмяПользователяНовое;
|
|
||||||
Иначе
|
|
||||||
ЭтаФорма.ИмяПользователя = ПользователиИнформационнойБазы.ТекущийПользователь().Имя;
|
|
||||||
КонецЕсли;
|
|
||||||
//ПометкиКоманд = ХранилищеОбщихНастроек.Загрузить(, "ирАдаптацияРасширения.ПометкиКоманд",, ирКэш.ИмяПродукта());
|
|
||||||
ПометкиКоманд = Неопределено;
|
|
||||||
ПодключитьОтладкуВнешнихОбработокБСПНовое = ХранилищеОбщихНастроек.Загрузить(, "ирАдаптацияРасширения.ПодключитьОтладкуВнешнихОбработокБСП",, ирКэш.ИмяПродукта());
|
|
||||||
Если ПодключитьОтладкуВнешнихОбработокБСПНовое <> Неопределено Тогда
|
|
||||||
ЭтаФорма.ПодключитьОтладкуВнешнихОбработокБСП = ПодключитьОтладкуВнешнихОбработокБСПНовое;
|
|
||||||
Иначе
|
|
||||||
ЭтаФорма.ПодключитьОтладкуВнешнихОбработокБСП = Истина;
|
|
||||||
КонецЕсли;
|
|
||||||
//ПодключитьОтладкуОтчетовНовое = ХранилищеОбщихНастроек.Загрузить(, "ирАдаптацияРасширения.ПодключитьОтладкуОтчетов",, ирКэш.ИмяПродукта());
|
|
||||||
//Если ПодключитьОтладкуОтчетовНовое <> Неопределено Тогда
|
|
||||||
// ЭтаФорма.ПодключитьОтладкуОтчетов = ПодключитьОтладкуОтчетовНовое;
|
|
||||||
//Иначе
|
|
||||||
// ЭтаФорма.ПодключитьОтладкуОтчетов = Истина;
|
|
||||||
//КонецЕсли;
|
|
||||||
ЭтаФорма.ПодключитьОтладкуОтчетов = Ложь;
|
|
||||||
ЭтаФорма.СгенерироватьРольВсеПрава = ХранилищеОбщихНастроек.Загрузить(, "ирАдаптацияРасширения.СгенерироватьРольВсеПрава",, ирКэш.ИмяПродукта());
|
|
||||||
СписокСочетанийКлавиш = Новый Массив;
|
|
||||||
Для Каждого МетаКоманда Из Метаданные.ОбщиеКоманды Цикл
|
|
||||||
Если Истина
|
|
||||||
И Метаданные.Подсистемы.ИнструментыРазработчикаTormozit.Состав.Содержит(МетаКоманда)
|
|
||||||
И МетаКоманда.Группа.Получить() = Метаданные.ГруппыКоманд.ирКоманднаяПанельФормы
|
|
||||||
Тогда
|
|
||||||
Если СписокСочетанийКлавиш.Найти(МетаКоманда.Имя) <> Неопределено Тогда
|
|
||||||
СтрокаГорячейКлавиши = ГлобальныеСочетанияКлавиш.Добавить();
|
|
||||||
СтрокаГорячейКлавиши.ИмяКоманды = МетаКоманда.Имя;
|
|
||||||
СтрокаГорячейКлавиши.СинонимКоманды = МетаКоманда.Представление();
|
|
||||||
СтрокаГорячейКлавиши.Подсказка = МетаКоманда.Подсказка;
|
|
||||||
СтрокаГорячейКлавиши.СочетаниеКлавиш = ирОбщий.ПредставлениеСочетанияКлавишЛкс(МетаКоманда.СочетаниеКлавиш);
|
|
||||||
Иначе
|
|
||||||
СтрокаКоманды = СписокКоманд.Добавить();
|
|
||||||
СтрокаКоманды.ИмяКоманды = МетаКоманда.Имя;
|
|
||||||
СтрокаКоманды.СинонимКоманды = МетаКоманда.Представление();
|
|
||||||
СтрокаКоманды.Подсказка = МетаКоманда.Подсказка;
|
|
||||||
//Если Истина
|
|
||||||
// И ПометкиКоманд <> Неопределено
|
|
||||||
// И ПометкиКоманд.Свойство(СтрокаКоманды.ИмяКоманды)
|
|
||||||
//Тогда
|
|
||||||
// СтрокаКоманды.Подключить = ПометкиКоманд[СтрокаКоманды.ИмяКоманды];
|
|
||||||
//Иначе
|
|
||||||
// СтрокаКоманды.Подключить = Ложь
|
|
||||||
// Или СтрокаКоманды.ИмяКоманды = Метаданные.ОбщиеКоманды.ирРедактироватьОбъект.Имя
|
|
||||||
// Или СтрокаКоманды.ИмяКоманды = Метаданные.ОбщиеКоманды.ирОбработатьОбъекты.Имя
|
|
||||||
// Или СтрокаКоманды.ИмяКоманды = Метаданные.ОбщиеКоманды.ирРедактироватьИзмененияНаУзле.Имя;
|
|
||||||
//КонецЕсли;
|
|
||||||
КонецЕсли;
|
|
||||||
КонецЕсли;
|
|
||||||
КонецЦикла;
|
|
||||||
СписокКоманд.Сортировать("СинонимКоманды");
|
|
||||||
ирОбщий.ЗаполнитьСписокАдминистраторовБазыЛкс(Элементы.ИмяПользователя.СписокВыбора);
|
|
||||||
Если Параметры.Автооткрытие Тогда
|
|
||||||
ирОбщий.СообщитьЛкс("Открыть это окно можно командой ""Адаптация расширения""");
|
|
||||||
КонецЕсли;
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
&НаКлиенте
|
|
||||||
Процедура ВыполнитьОперацию(Команда)
|
|
||||||
|
|
||||||
ЭтаФорма.ОткрыватьАдаптациюПриОбновлении = Истина;
|
|
||||||
СохранитьНастройкиАдаптации();
|
|
||||||
Если ирОбщий.АдаптироватьРасширениеЛкс(ИмяПользователя, ПарольПользователя) Тогда
|
|
||||||
Закрыть(Истина);
|
|
||||||
ЗавершитьРаботуСистемы(, Истина, ирОбщий.ПараметрыЗапускаСеансаТекущиеЛкс());
|
|
||||||
КонецЕсли;
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
&НаСервере
|
|
||||||
Процедура СохранитьНастройкиАдаптации(ПустуюСтруктуру = Ложь)
|
|
||||||
|
|
||||||
ПометкиКоманд = Новый Структура;
|
|
||||||
Если Не ПустуюСтруктуру Тогда
|
|
||||||
Для Каждого СтрокаКоманды Из СписокКоманд Цикл
|
|
||||||
ПометкиКоманд.Вставить(СтрокаКоманды.ИмяКоманды, СтрокаКоманды.Подключить);
|
|
||||||
КонецЦикла;
|
|
||||||
КонецЕсли;
|
|
||||||
ХранилищеОбщихНастроек.Сохранить(, "ирАдаптацияРасширения.ОткрыватьАдаптациюПриОбновлении", ОткрыватьАдаптациюПриОбновлении,, ирКэш.ИмяПродукта());
|
|
||||||
ХранилищеОбщихНастроек.Сохранить(, "ирАдаптацияРасширения.ИмяПользователя", ИмяПользователя,, ирКэш.ИмяПродукта());
|
|
||||||
ХранилищеОбщихНастроек.Сохранить(, "ирАдаптацияРасширения.ПометкиКоманд", ПометкиКоманд,, ирКэш.ИмяПродукта());
|
|
||||||
ХранилищеОбщихНастроек.Сохранить(, "ирАдаптацияРасширения.ПодключитьОтладкуВнешнихОбработокБСП", ПодключитьОтладкуВнешнихОбработокБСП,, ирКэш.ИмяПродукта());
|
|
||||||
ХранилищеОбщихНастроек.Сохранить(, "ирАдаптацияРасширения.ПодключитьОтладкуОтчетов", ПодключитьОтладкуОтчетов,, ирКэш.ИмяПродукта());
|
|
||||||
ХранилищеОбщихНастроек.Сохранить(, "ирАдаптацияРасширения.СгенерироватьРольВсеПрава", СгенерироватьРольВсеПрава,, ирКэш.ИмяПродукта());
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
&НаКлиенте
|
|
||||||
Процедура ПриОткрытии(Отказ)
|
|
||||||
|
|
||||||
Если Не ирКэш.ЛиЭтоРасширениеКонфигурацииЛкс() Тогда
|
|
||||||
ирОбщий.СообщитьЛкс("Операция доступна только в варианте ""Расширение""");
|
|
||||||
//Отказ = Истина;
|
|
||||||
//Возврат;
|
|
||||||
КонецЕсли;
|
|
||||||
#Если ТонкийКлиент Или ВебКлиент Тогда
|
|
||||||
Отказ = Истина;
|
|
||||||
ОткрытьФорму("Обработка.ирПортативный.Форма.ЗапускСеансаУправляемая");
|
|
||||||
#КонецЕсли
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
&НаКлиенте
|
|
||||||
Процедура ПриЗакрытии(ЗавершениеРаботы)
|
|
||||||
|
|
||||||
Попытка
|
|
||||||
СохранитьНастройкиАдаптации();
|
|
||||||
Исключение
|
|
||||||
Если Не ЗавершениеРаботы Тогда
|
|
||||||
ВызватьИсключение;
|
|
||||||
КонецЕсли;
|
|
||||||
КонецПопытки;
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -1,32 +0,0 @@
|
||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<MetaDataObject xmlns="http://v8.1c.ru/8.3/MDClasses" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:cmi="http://v8.1c.ru/8.2/managed-application/cmi" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" xmlns:style="http://v8.1c.ru/8.1/data/ui/style" xmlns:sys="http://v8.1c.ru/8.1/data/ui/fonts/system" xmlns:v8="http://v8.1c.ru/8.1/data/core" xmlns:v8ui="http://v8.1c.ru/8.1/data/ui" xmlns:web="http://v8.1c.ru/8.1/data/ui/colors/web" xmlns:win="http://v8.1c.ru/8.1/data/ui/colors/windows" xmlns:xen="http://v8.1c.ru/8.3/xcf/enums" xmlns:xpr="http://v8.1c.ru/8.3/xcf/predef" xmlns:xr="http://v8.1c.ru/8.3/xcf/readable" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.9">
|
|
||||||
<CommonForm uuid="bf9fc191-543d-449c-8589-e13026f2c40c">
|
|
||||||
<Properties>
|
|
||||||
<Name>ирВыпускВариантаПортативный</Name>
|
|
||||||
<Synonym>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>ru</v8:lang>
|
|
||||||
<v8:content>Выпуск варианта Портативный (ИР)</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>en</v8:lang>
|
|
||||||
<v8:content>Выпуск варианта Портативный (ИР)</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>uk</v8:lang>
|
|
||||||
<v8:content>Выпуск варианта Портативный (ИР)</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
</Synonym>
|
|
||||||
<Comment/>
|
|
||||||
<FormType>Ordinary</FormType>
|
|
||||||
<IncludeHelpInContents>false</IncludeHelpInContents>
|
|
||||||
<UsePurposes>
|
|
||||||
<v8:Value xsi:type="app:ApplicationUsePurpose">PlatformApplication</v8:Value>
|
|
||||||
<v8:Value xsi:type="app:ApplicationUsePurpose">MobilePlatformApplication</v8:Value>
|
|
||||||
</UsePurposes>
|
|
||||||
<UseStandardCommands>false</UseStandardCommands>
|
|
||||||
<ExtendedPresentation/>
|
|
||||||
<Explanation/>
|
|
||||||
</Properties>
|
|
||||||
</CommonForm>
|
|
||||||
</MetaDataObject>
|
|
||||||
Binary file not shown.
|
|
@ -1,576 +0,0 @@
|
||||||
// Параметры:
|
|
||||||
// КаталогРаспаковки - Строка(0,П)
|
|
||||||
//
|
|
||||||
Функция ПолучитьФайлСтруктурыХранилищаОбъектаМетаданных(Знач КаталогРаспаковки = "") Экспорт
|
|
||||||
|
|
||||||
RegExp = ирПлатформа.RegExp;
|
|
||||||
RegExp.Global = Ложь;
|
|
||||||
RegExp.Pattern = "{2,(" + ирПлатформа.шGUID + "),";
|
|
||||||
ФайлКорневогоУказателя = Новый Файл(КаталогРаспаковки + "root.data.und");
|
|
||||||
ТекстовыйДокумент = Новый ТекстовыйДокумент;
|
|
||||||
ТекстовыйДокумент.Прочитать(ФайлКорневогоУказателя.ПолноеИмя);
|
|
||||||
РезультатыПоиска = RegExp.НайтиВхождения(ТекстовыйДокумент.ПолучитьТекст());
|
|
||||||
КорневойИД = РезультатыПоиска[0].SubMatches(0);
|
|
||||||
ФайлСтруктуры = Новый Файл(КаталогРаспаковки + КорневойИД + ".data.und");
|
|
||||||
Результат = ФайлСтруктуры;
|
|
||||||
Возврат Результат;
|
|
||||||
КонецФункции
|
|
||||||
|
|
||||||
// Параметры:
|
|
||||||
// ПолноеИмяФайлаВнешнейОбработки - Строка(0,П)
|
|
||||||
// ИмяФормы - Строка(0,П) - Если не указана, используется Основая форма, а если основная форма не указана, используется единственная форма. Для быстрого выполнения нужно указывать.
|
|
||||||
// МассивДобавляемыхРеквизитов - Массив - !Проверка уникальности не выполняется. Ее нужно делать снаружи
|
|
||||||
// СтарыйТекстМодуля - Строка(0,П)
|
|
||||||
//
|
|
||||||
Функция ПроверитьОбновитьМодульИРеквизитыФормыВФайле(Знач ПолноеИмяФайлаВнешнейОбработки = "", Знач ИмяФормы = "", Знач МассивДобавляемыхРеквизитов, НовыйТекстМодуля,
|
|
||||||
СтарыйТекстМодуля = "") Экспорт
|
|
||||||
|
|
||||||
ФайлВнешнейОбработки = Новый Файл(ПолноеИмяФайлаВнешнейОбработки);
|
|
||||||
Если Не ЗначениеЗаполнено(ИмяФормы) Тогда
|
|
||||||
ВнешнийОбъект = ВнешниеОбработки.Создать(ФайлВнешнейОбработки.ПолноеИмя);
|
|
||||||
ОбъектМетаданных = ВнешнийОбъект.Метаданные();
|
|
||||||
Если ОбъектМетаданных.ОсновнаяФорма <> Неопределено Тогда
|
|
||||||
ИмяФормы = ОбъектМетаданных.ОсновнаяФорма.Имя;
|
|
||||||
ИначеЕсли ОбъектМетаданных.Формы.Количество() = 1 Тогда
|
|
||||||
ИмяФормы = ОбъектМетаданных.Формы[0].Имя;
|
|
||||||
Иначе
|
|
||||||
ВызватьИсключение "Невозможно определить форму внешней обработки для обновления";
|
|
||||||
КонецЕсли;
|
|
||||||
КонецЕсли;
|
|
||||||
ИмяКаталогаСборки = "Rebuild";
|
|
||||||
ИмяКаталогаРаспаковки = ФайлВнешнейОбработки.Путь + ИмяКаталогаСборки;
|
|
||||||
КаталогРаспаковки = ИмяКаталогаРаспаковки + "\";
|
|
||||||
УдалитьФайлы(ИмяКаталогаРаспаковки, "*.*");
|
|
||||||
СоздатьКаталог(ИмяКаталогаРаспаковки);
|
|
||||||
ирПлатформа.РаспаковатьФайлВнешнейОбработки(ФайлВнешнейОбработки.ПолноеИмя, КаталогРаспаковки);
|
|
||||||
БылаМодификация = Ложь;
|
|
||||||
RegExp = ирПлатформа.RegExp;
|
|
||||||
|
|
||||||
// Получаем модуль формы и изменяем его, если не соответствует стандарту
|
|
||||||
|
|
||||||
//ФайлСпискаФорм = Новый файл(КаталогРаспаковки + "copyinfo.data.und");
|
|
||||||
//ТекстовыйДокумент = Новый ТекстовыйДокумент;
|
|
||||||
//ТекстовыйДокумент.Прочитать(ФайлСпискаФорм.ПолноеИмя);
|
|
||||||
//RegExp.Global = Ложь;
|
|
||||||
//RegExp.Pattern = "(" + ирПлатформа.шGUID + "),1,\n\{d5b0e5ed-256d-401c-9c36-f630cafd8a62,""" + ИмяФормы + """";
|
|
||||||
//РезультатыПоиска = RegExp.НайтиВхождения(ТекстовыйДокумент.ПолучитьТекст());
|
|
||||||
//СтарыеТекстыМодулейФорм = Новый Структура;
|
|
||||||
//ИДФормы = РезультатыПоиска[0].SubMatches(0);
|
|
||||||
|
|
||||||
ФайлСтруктуры = ПолучитьФайлСтруктурыХранилищаОбъектаМетаданных(КаталогРаспаковки);
|
|
||||||
ТекстСтруктуры = Новый ТекстовыйДокумент;
|
|
||||||
ТекстСтруктуры.Прочитать(ФайлСтруктуры.ПолноеИмя);
|
|
||||||
RegExp.Global = Ложь;
|
|
||||||
RegExp.Pattern = "\{d5b0e5ed-256d-401c-9c36-f630cafd8a62,\d+((?:," + ирПлатформа.шGUID + ")*)\}";
|
|
||||||
РезультатыПоиска = RegExp.НайтиВхождения(ТекстСтруктуры.ПолучитьТекст());
|
|
||||||
ТекстСпискаИД = РезультатыПоиска[0].SubMatches(0);
|
|
||||||
RegExp.Global = Истина;
|
|
||||||
RegExp.Pattern = ирПлатформа.шGUID;
|
|
||||||
РезультатыПоиска = RegExp.НайтиВхождения(ТекстСпискаИД);
|
|
||||||
Для Каждого Вхождение Из РезультатыПоиска Цикл
|
|
||||||
ТекстФайлаФормы = Новый ТекстовыйДокумент;
|
|
||||||
ТекстФайлаФормы.Прочитать(КаталогРаспаковки + Вхождение.Value + ".data.und");
|
|
||||||
//RegExp.Global = Ложь;
|
|
||||||
//RegExp.Pattern = Вхождение.Value + "\},""(" + ирПлатформа.шИмя + ")"";
|
|
||||||
//РезультатыПоиска2 = RegExp.НайтиВхождения(ТекстФайлаФормы.ПолучитьТекст());
|
|
||||||
Маркер = Вхождение.Value + "},""" + ИмяФормы + """";
|
|
||||||
Если Найти(НРег(ТекстФайлаФормы.ПолучитьТекст()), Нрег(Маркер)) > 0 Тогда
|
|
||||||
ИДФормы = Вхождение.Value;
|
|
||||||
Прервать;
|
|
||||||
КонецЕсли;
|
|
||||||
КонецЦикла;
|
|
||||||
Если ИДФормы = Неопределено Тогда
|
|
||||||
ВызватьИсключение "Не удалось определить внутренний идентификатор формы """ + ИмяФормы + """";
|
|
||||||
КонецЕсли;
|
|
||||||
|
|
||||||
ФайлМодуляФормы = Новый Файл(КаталогРаспаковки + ИДФормы + ".0.data.und.unp\" + "module.data");
|
|
||||||
СтарыйТекстМодуляФормы = Неопределено;
|
|
||||||
|
|
||||||
Результат = Ложь;
|
|
||||||
ТекстДляПроверки = Новый ТекстовыйДокумент;
|
|
||||||
ТекстДляПроверки.Прочитать(ФайлМодуляФормы.ПолноеИмя);
|
|
||||||
ТекстОбразец = Новый ТекстовыйДокумент;
|
|
||||||
ТекстОбразец.УстановитьТекст(НовыйТекстМодуля);
|
|
||||||
СтарыйТекстМодуля = ТекстДляПроверки.ПолучитьТекст();
|
|
||||||
Если ТекстОбразец.ПолучитьТекст() <> СтарыйТекстМодуля Тогда
|
|
||||||
ТекстОбразец.Записать(ФайлМодуляФормы.ПолноеИмя);
|
|
||||||
Результат = Истина;
|
|
||||||
КонецЕсли;
|
|
||||||
|
|
||||||
Если Истина
|
|
||||||
И МассивДобавляемыхРеквизитов <> Неопределено
|
|
||||||
И МассивДобавляемыхРеквизитов.Количество() > 0
|
|
||||||
Тогда
|
|
||||||
ФайлДиалогаФормы = Новый Файл(ФайлМодуляФормы.Путь + "form.data");
|
|
||||||
ТекстДиалога = Новый ТекстовыйДокумент;
|
|
||||||
ТекстДиалога.Прочитать(ФайлДиалогаФормы.ПолноеИмя);
|
|
||||||
КоличествоНовыхРеквизитов = МассивДобавляемыхРеквизитов.Количество();
|
|
||||||
ОстатокТекста0 = ТекстДиалога.ПолучитьТекст();
|
|
||||||
|
|
||||||
RegExp.Global = Ложь;
|
|
||||||
RegExp.Pattern = "},\d+,\d+,\d+,0,\d+,4,4,\d+},";
|
|
||||||
Вхождения = RegExp.НайтиВхождения(ОстатокТекста0);
|
|
||||||
Если Вхождения.Количество() = 0 Тогда
|
|
||||||
Сообщить("При анализе диалога не найден маркер1");
|
|
||||||
Возврат Неопределено;
|
|
||||||
ИначеЕсли Вхождения.Количество() > 1 Тогда
|
|
||||||
Сообщить("При анализе диалога найдено более одного маркера1");
|
|
||||||
Возврат Неопределено;
|
|
||||||
КонецЕсли;
|
|
||||||
Позиция = Вхождения[0].FirstIndex;
|
|
||||||
Позиция = Позиция + СтрДлина(Вхождения[0].Value);
|
|
||||||
Фрагмент1 = Лев(ОстатокТекста0, Позиция);
|
|
||||||
ОстатокТекста1 = Сред(ОстатокТекста0, Позиция + 1);
|
|
||||||
|
|
||||||
//Маркер = "},";
|
|
||||||
//Позиция = Найти(ОстатокТекста1, Маркер);
|
|
||||||
//Фрагмент2 = Лев(ОстатокТекста1, Позиция + СтрДлина(Маркер));
|
|
||||||
Фрагмент2 = "";
|
|
||||||
ОстатокТекста2 = Сред(ОстатокТекста1, СтрДлина(Фрагмент2) + 1);
|
|
||||||
|
|
||||||
Маркер = ",
|
|
||||||
|{";
|
|
||||||
Позиция = Найти(ОстатокТекста2, Маркер);
|
|
||||||
Если Позиция = 0 Тогда
|
|
||||||
Сообщить("Не найден маркер2");
|
|
||||||
Возврат Неопределено;
|
|
||||||
КонецЕсли;
|
|
||||||
Позиция = Позиция + СтрДлина(Маркер) - 1;
|
|
||||||
Фрагмент3 = Лев(ОстатокТекста2, Позиция);
|
|
||||||
ОстатокТекста3 = Сред(ОстатокТекста2, СтрДлина(Фрагмент3) + 1);
|
|
||||||
|
|
||||||
Позиция = Найти(ОстатокТекста3, "}");
|
|
||||||
Позиция2 = Найти(ОстатокТекста3, ",");
|
|
||||||
Если Позиция2 > 0 Тогда
|
|
||||||
Позиция = Мин(Позиция, Позиция2);
|
|
||||||
КонецЕсли;
|
|
||||||
Фрагмент4 = Лев(ОстатокТекста3, Позиция - 1);
|
|
||||||
ОстатокТекста4 = Сред(ОстатокТекста3, СтрДлина(Фрагмент4) + 1);
|
|
||||||
Число = Число(Фрагмент4);
|
|
||||||
Число = Число + КоличествоНовыхРеквизитов;
|
|
||||||
Фрагмент4 = Формат(Число, "ЧГ=");
|
|
||||||
|
|
||||||
Разделитель = ",";
|
|
||||||
СтрокаРеквизитов = "";
|
|
||||||
Счетчик = 1;
|
|
||||||
|
|
||||||
// Если у формы нет ни одного реквизита, то может получиться ошибка формата потока
|
|
||||||
Строка1 = ирОбщий.СтрокаМеждуМаркерамиЛкс(ОстатокТекста4, "},", ",""");
|
|
||||||
Если Ложь
|
|
||||||
Или Не ЗначениеЗаполнено(Строка1)
|
|
||||||
Или СтрДлина(Строка1) > 5
|
|
||||||
Тогда
|
|
||||||
// у формы нет ни одного реквизита
|
|
||||||
Если ирКэш.НомерИзданияПлатформыЛкс() = "81" Тогда
|
|
||||||
Строка1 = "0,1";
|
|
||||||
ИначеЕсли ирКэш.НомерИзданияПлатформыЛкс() >= "82" Тогда
|
|
||||||
// Здесь может быть нужно и "0,1" использовать, если в конфигураторе форму ни разу не сохраняли еще, а только конвертировали через ConvertFiles
|
|
||||||
// Если такое случается, то при попытке открыть такую внешнюю обработку платформа будет падать
|
|
||||||
Строка1 = "1,0,1";
|
|
||||||
КонецЕсли;
|
|
||||||
КонецЕсли;
|
|
||||||
|
|
||||||
Для Каждого ИмяРеквизита Из МассивДобавляемыхРеквизитов Цикл
|
|
||||||
СтрокаРеквизитов = СтрокаРеквизитов + Разделитель + "
|
|
||||||
|{
|
|
||||||
|{" + Формат(1000 + Счетчик, "ЧГ=") + "}," + Строка1 + ",""" + ИмяРеквизита + """,
|
|
||||||
|{""Pattern""}
|
|
||||||
|}";
|
|
||||||
Счетчик = Счетчик + 1;
|
|
||||||
КонецЦикла;
|
|
||||||
НовыйТекст = Фрагмент1 + Фрагмент2 + Фрагмент3 + Фрагмент4 + СтрокаРеквизитов + ОстатокТекста4;
|
|
||||||
ТекстДиалога.УстановитьТекст(НовыйТекст);
|
|
||||||
ТекстДиалога.Записать(ФайлДиалогаФормы.ПолноеИмя);
|
|
||||||
Результат = Истина;
|
|
||||||
КонецЕсли;
|
|
||||||
|
|
||||||
Если Результат Тогда
|
|
||||||
// Здесь часто возникает ошибка
|
|
||||||
//{Обработка.ирПлатформа.МодульОбъекта(5 163)}:
|
|
||||||
//Ошибка при вызове метода контекста (Записать)
|
|
||||||
// ПолучитьМакет("v8unpack").Записать(Каталог + "\" + ИмяФайлаПакера);
|
|
||||||
//Ошибка совместного доступа к файлу 'D:\Users\Сергей\AppData\Local\1C\1Cv82\File__D__1C_v82_DB_2iSРазработка__\b\Rebuild\v8unpack.exe'
|
|
||||||
// ВызватьИсключение Ошибка;//#Служебное
|
|
||||||
ирПлатформа.УпаковатьФайлВнешнейОбработки(КаталогРаспаковки, ФайлВнешнейОбработки.ПолноеИмя);
|
|
||||||
КонецЕсли;
|
|
||||||
Возврат Результат;
|
|
||||||
КонецФункции
|
|
||||||
|
|
||||||
Функция ТабличныйДокументИзОбщихКартинокПодсистемы() Экспорт
|
|
||||||
|
|
||||||
ТабличныйДокумент = Новый ТабличныйДокумент;
|
|
||||||
ШрифтЖирный = Новый Шрифт(,,Истина);
|
|
||||||
ТабличныйДокумент.Область("R1C1:R1C1").Текст = "Имя";
|
|
||||||
ТабличныйДокумент.Область("R1C2:R1C2").Текст = "Картинка";
|
|
||||||
ТабличныйДокумент.Область("R1C1:R1C2").Шрифт = ШрифтЖирный;
|
|
||||||
Для Каждого ОбщаяКартинка Из Метаданные.ОбщиеКартинки Цикл
|
|
||||||
Если Не Метаданные.Подсистемы.ИнструментыРазработчикаTormozit.Состав.Содержит(ОбщаяКартинка) Тогда
|
|
||||||
Продолжить;
|
|
||||||
КонецЕсли;
|
|
||||||
Рисунок = ТабличныйДокумент.Рисунки.Добавить(ТипРисункаТабличногоДокумента.Картинка);
|
|
||||||
Рисунок.Картинка = БиблиотекаКартинок[ОбщаяКартинка.Имя];
|
|
||||||
Рисунок.Имя = ОбщаяКартинка.Имя;
|
|
||||||
Рисунок.РазмерКартинки = РазмерКартинки.РеальныйРазмер;
|
|
||||||
ВысотаТаблицы = ТабличныйДокумент.ВысотаТаблицы + 1;
|
|
||||||
ТабличныйДокумент.Область("R" + XMLСтрока(ВысотаТаблицы) + "C1:R" + XMLСтрока(ВысотаТаблицы) + "C1").Текст = ОбщаяКартинка.Имя;
|
|
||||||
Рисунок.Расположить(ТабличныйДокумент.Область("R" + XMLСтрока(ВысотаТаблицы) + "C2:R" + XMLСтрока(ВысотаТаблицы) + "C2"));
|
|
||||||
КонецЦикла;
|
|
||||||
Возврат ТабличныйДокумент;
|
|
||||||
|
|
||||||
КонецФункции
|
|
||||||
|
|
||||||
Функция СгенерироватьМодульИнициализацииФормПодсистемыДляПортативногоРежима() Экспорт
|
|
||||||
|
|
||||||
ТекстМодуля = Новый ЗаписьXML;
|
|
||||||
ТекстМодуля.УстановитьСтроку("");
|
|
||||||
//ТекстМодуля.ЗаписатьБезОбработки("
|
|
||||||
//|Перем ирОбщий Экспорт;
|
|
||||||
//|Перем ирСервер Экспорт;
|
|
||||||
//|Перем ирКэш Экспорт;
|
|
||||||
//|Перем ирПривилегированный Экспорт;
|
|
||||||
//|Перем ирПортативный Экспорт;
|
|
||||||
//|
|
|
||||||
//|Перем ирПлатформа Экспорт;
|
|
||||||
//|");
|
|
||||||
ТипыМетаданных = ирКэш.ТипыМетаОбъектов(Истина, Ложь, Ложь);
|
|
||||||
ИндикаторТиповМетаданных = ирОбщий.ПолучитьИндикаторПроцессаЛкс(ТипыМетаданных.Количество(), "Типы метаданных");
|
|
||||||
Для Каждого СтрокаТипаМетаданных Из ТипыМетаданных Цикл
|
|
||||||
ирОбщий.ОбработатьИндикаторЛкс(ИндикаторТиповМетаданных);
|
|
||||||
Если СтрокаТипаМетаданных.Единственное = "Перерасчет" Тогда
|
|
||||||
КоллекцияМетаОбъектов = Новый Массив;
|
|
||||||
Для Каждого МетаРегистрРасчета Из Метаданные.РегистрыРасчета Цикл
|
|
||||||
Для Каждого Перерасчет Из МетаРегистрРасчета.Перерасчеты Цикл
|
|
||||||
КоллекцияМетаОбъектов.Добавить(Перерасчет);
|
|
||||||
КонецЦикла;
|
|
||||||
КонецЦикла;
|
|
||||||
Иначе
|
|
||||||
КоллекцияМетаОбъектов = Метаданные[СтрокаТипаМетаданных.Множественное];
|
|
||||||
КонецЕсли;
|
|
||||||
Индикатор2 = ирОбщий.ПолучитьИндикаторПроцессаЛкс(КоллекцияМетаОбъектов.Количество(), СтрокаТипаМетаданных.Множественное);
|
|
||||||
Для Каждого МетаОбъект Из КоллекцияМетаОбъектов Цикл
|
|
||||||
Если Не Метаданные.Подсистемы.ИнструментыРазработчикаTormozit.Состав.Содержит(МетаОбъект) Тогда
|
|
||||||
Продолжить;
|
|
||||||
КонецЕсли;
|
|
||||||
ирОбщий.ОбработатьИндикаторЛкс(Индикатор2);
|
|
||||||
Попытка
|
|
||||||
МетаФормы = МетаОбъект.Формы;
|
|
||||||
Исключение
|
|
||||||
Продолжить;
|
|
||||||
КонецПопытки;
|
|
||||||
МенеджерОбъектаМетаданных = ирОбщий.ПолучитьМенеджерЛкс(МетаОбъект);
|
|
||||||
Индикатор3 = ирОбщий.ПолучитьИндикаторПроцессаЛкс(МетаФормы.Количество(), "Формы");
|
|
||||||
Для Каждого МетаФорма Из МетаФормы Цикл
|
|
||||||
ирОбщий.ОбработатьИндикаторЛкс(Индикатор3);
|
|
||||||
ПолноеИмяФормы = МетаФорма.ПолноеИмя();
|
|
||||||
//Сообщить(ПолноеИмяФормы);
|
|
||||||
//ПолноеИмяФормы = МетаОбъект.ПолноеИмя() + ".Форма." + МетаФорма.Имя;
|
|
||||||
Попытка
|
|
||||||
//Форма = ПолучитьФорму(ПолноеИмяФормы); // Так исключение не сработает и будет отображен диалог об ошибке. Особенность платформы
|
|
||||||
Форма = МенеджерОбъектаМетаданных.ПолучитьФорму(МетаФорма.Имя,,Новый УникальныйИдентификатор());
|
|
||||||
Исключение
|
|
||||||
Сообщить("Ошибка при получении формы " + ПолноеИмяФормы + ": " + ОписаниеОшибки(), СтатусСообщения.ОченьВажное);
|
|
||||||
Продолжить;
|
|
||||||
КонецПопытки;
|
|
||||||
Если ТипЗнч(Форма) = Тип("УправляемаяФорма") Тогда
|
|
||||||
Продолжить;
|
|
||||||
КонецЕсли;
|
|
||||||
ТелоМетода = Новый ЗаписьXML;
|
|
||||||
ТелоМетода.УстановитьСтроку("");
|
|
||||||
Попытка
|
|
||||||
ПроверитьСвойстваОбъектаДляПортативногоРежимаЛкс("ЭтаФорма", Форма, ТелоМетода);
|
|
||||||
Исключение
|
|
||||||
ВызватьИсключение "Ошибка проверки формы " + ПолноеИмяФормы + ": " + ОписаниеОшибки();
|
|
||||||
КонецПопытки;
|
|
||||||
ТелоМетода = ТелоМетода.Закрыть();
|
|
||||||
ТекстМодуля.ЗаписатьБезОбработки("
|
|
||||||
|Процедура ИнициализироватьФорму_" + ирОбщий.ИдентификаторИзПредставленияЛкс(ПолноеИмяФормы) + "(ЭтаФорма) Экспорт
|
|
||||||
|
|
|
||||||
|" + ТелоМетода + "
|
|
||||||
|КонецПроцедуры
|
|
||||||
|");
|
|
||||||
КонецЦикла;
|
|
||||||
ирОбщий.ОсвободитьИндикаторПроцессаЛкс();
|
|
||||||
КонецЦикла;
|
|
||||||
ирОбщий.ОсвободитьИндикаторПроцессаЛкс();
|
|
||||||
КонецЦикла;
|
|
||||||
ирОбщий.ОсвободитьИндикаторПроцессаЛкс();
|
|
||||||
Результат =
|
|
||||||
"//#Область ОбработчикиИнициализацииФорм
|
|
||||||
|" + ТекстМодуля.Закрыть() + "
|
|
||||||
|//#КонецОбласти";
|
|
||||||
Возврат Результат;
|
|
||||||
|
|
||||||
КонецФункции
|
|
||||||
|
|
||||||
Процедура ПроверитьСвойстваОбъектаДляПортативногоРежимаЛкс(ПутьКОбъекту, Объект, ТелоМетода)
|
|
||||||
|
|
||||||
СтруктураТипа = ирПлатформа.СтруктураТипаИзЗначения(Объект);
|
|
||||||
ВнутренняяТаблицаСлов = ирПлатформа.ПолучитьТаблицуСловСтруктурыТипа(СтруктураТипа);
|
|
||||||
Для Каждого ВнутренняяСтрокаСлова Из ВнутренняяТаблицаСлов Цикл
|
|
||||||
Если ВнутренняяСтрокаСлова.ТипСлова = "Свойство" Тогда
|
|
||||||
ИмяСвойства = ВнутренняяСтрокаСлова.Слово;
|
|
||||||
Если Ложь
|
|
||||||
Или ИмяСвойства = "ИсточникДействий"
|
|
||||||
Или ИмяСвойства = "КонтекстноеМеню"
|
|
||||||
Тогда
|
|
||||||
// Защита от длинных путей и зацикливания
|
|
||||||
Продолжить;
|
|
||||||
КонецЕсли;
|
|
||||||
Попытка
|
|
||||||
Структура = Новый Структура(ИмяСвойства);
|
|
||||||
Исключение
|
|
||||||
// "КартинкаКнопкиВыбора#&^@^%&*^#1"
|
|
||||||
Продолжить;
|
|
||||||
КонецПопытки;
|
|
||||||
Попытка
|
|
||||||
ЗаполнитьЗначенияСвойств(Структура, Объект);
|
|
||||||
Исключение
|
|
||||||
// Не всегда доступное свойство
|
|
||||||
Продолжить;
|
|
||||||
КонецПопытки;
|
|
||||||
ЗначениеСвойства = Структура[ИмяСвойства];
|
|
||||||
Если ТипЗнч(ЗначениеСвойства) = Тип("Картинка") Тогда
|
|
||||||
Если ЗначениеСвойства.Вид = ВидКартинки.ИзБиблиотеки Тогда
|
|
||||||
ИмяОбщейКартинки = СериализаторXDTO.ЗаписатьXDTO(ЗначениеСвойства).ref.ЛокальноеИмя;
|
|
||||||
Если Метаданные.ОбщиеКартинки.Найти(ИмяОбщейКартинки) <> Неопределено Тогда
|
|
||||||
ТелоМетода.ЗаписатьБезОбработки(Символы.Таб + ПутьКОбъекту + "." + ИмяСвойства + " = ирКэш.КартинкаПоИмениЛкс("""
|
|
||||||
+ ИмяОбщейКартинки + """);" + Символы.ПС);
|
|
||||||
КонецЕсли;
|
|
||||||
КонецЕсли;
|
|
||||||
ИначеЕсли ТипЗнч(ЗначениеСвойства) = Тип("Цвет") Тогда
|
|
||||||
ИмяЦветаСтиля = СериализаторXDTO.ЗаписатьXDTO(ЗначениеСвойства).ЛексическоеЗначение;
|
|
||||||
ПозицияСкобки = Найти(ИмяЦветаСтиля, "}");
|
|
||||||
Если ПозицияСкобки > 0 Тогда
|
|
||||||
ИмяЦветаСтиля = Сред(ИмяЦветаСтиля, ПозицияСкобки + 1);
|
|
||||||
Если Метаданные.ЭлементыСтиля.Найти(ИмяЦветаСтиля) <> Неопределено Тогда
|
|
||||||
ТелоМетода.ЗаписатьБезОбработки(Символы.Таб + ПутьКОбъекту + "." + ИмяСвойства + " = ирОбщий.ПолучитьЦветСтиляЛкс("""
|
|
||||||
+ ИмяЦветаСтиля + """);" + Символы.ПС);
|
|
||||||
КонецЕсли;
|
|
||||||
КонецЕсли;
|
|
||||||
КонецЕсли;
|
|
||||||
Если ирПлатформа.мМассивТиповЭлементовУправления.Найти(ТипЗнч(ЗначениеСвойства)) <> Неопределено Тогда
|
|
||||||
ПроверитьСвойстваОбъектаДляПортативногоРежимаЛкс(ПутьКОбъекту + "." + ИмяСвойства, ЗначениеСвойства, ТелоМетода);
|
|
||||||
КонецЕсли;
|
|
||||||
Если ирОбщий.ЛиКоллекцияЛкс(ЗначениеСвойства) Тогда
|
|
||||||
ЕстьИндексПоИмени = Ложь;
|
|
||||||
Для Каждого ЭлементКоллекции Из ЗначениеСвойства Цикл
|
|
||||||
Если Не ЕстьИндексПоИмени Тогда
|
|
||||||
Попытка
|
|
||||||
Пустышка = Вычислить("ЗначениеСвойства." + ЭлементКоллекции.Имя);
|
|
||||||
Исключение
|
|
||||||
// Если к элементу по имени нельзя обратиться, то он нас не интересует.
|
|
||||||
Прервать;
|
|
||||||
КонецПопытки;
|
|
||||||
КонецЕсли;
|
|
||||||
ЕстьИндексПоИмени = Истина;
|
|
||||||
Если Ложь
|
|
||||||
Или ирПлатформа.мМассивТиповЭлементовУправления.Найти(ТипЗнч(ЭлементКоллекции)) <> Неопределено
|
|
||||||
Или ТипЗнч(ЭлементКоллекции) = Тип("КнопкаКоманднойПанели")
|
|
||||||
Тогда
|
|
||||||
ПроверитьСвойстваОбъектаДляПортативногоРежимаЛкс(ПутьКОбъекту + "." + ИмяСвойства + "." + ЭлементКоллекции.Имя, ЭлементКоллекции, ТелоМетода);
|
|
||||||
КонецЕсли;
|
|
||||||
КонецЦикла;
|
|
||||||
КонецЕсли;
|
|
||||||
КонецЕсли;
|
|
||||||
КонецЦикла;
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ОсновныеДействияФормыВыполнить(Кнопка)
|
|
||||||
|
|
||||||
КаталогВыгрузкиКонфигурации = ПолучитьИмяВременногоФайла();
|
|
||||||
Если ЗначениеЗаполнено(СтрокаСоединенияБазыПодсистемы) Тогда
|
|
||||||
СтрокаСоединенияБазыПодсистемыЛ = СтрокаСоединенияБазыПодсистемы;
|
|
||||||
Иначе
|
|
||||||
СтрокаСоединенияБазыПодсистемыЛ = СтрокаСоединенияИнформационнойБазы();
|
|
||||||
КонецЕсли;
|
|
||||||
СоздатьКаталог(КаталогВыгрузкиКонфигурации);
|
|
||||||
ТекстЛога = "";
|
|
||||||
// Выгружаем конфигурацию в файлы
|
|
||||||
Если Не ирОбщий.ВыполнитьКомандуКонфигуратораЛкс("/DumpConfigToFiles """ + КаталогВыгрузкиКонфигурации + """ -Format Hierarchical", СтрокаСоединенияБазыПодсистемыЛ, ТекстЛога,,
|
|
||||||
"Выгрузка конфигурации в файлы")
|
|
||||||
Тогда
|
|
||||||
УдалитьФайлы(КаталогВыгрузкиКонфигурации);
|
|
||||||
Сообщить(ТекстЛога);
|
|
||||||
Возврат;
|
|
||||||
КонецЕсли;
|
|
||||||
КаталогВерсии = Каталог + "\" + Метаданные.Версия;
|
|
||||||
КаталогМодули = Новый Файл(КаталогВерсии + "\Модули");
|
|
||||||
Если Не КаталогМодули.Существует() Тогда
|
|
||||||
СоздатьКаталог(КаталогМодули.ПолноеИмя);
|
|
||||||
КонецЕсли;
|
|
||||||
УдалитьФайлы(КаталогВыгрузкиКонфигурации + "\CommonModules\ирПортативный.xml");
|
|
||||||
УдалитьФайлы(КаталогВыгрузкиКонфигурации + "\CommonModules\ирИнтерфейс.xml");
|
|
||||||
УдалитьФайлы(КаталогВыгрузкиКонфигурации + "\CommonModules\ирИнтерфейсОбъявление.xml");
|
|
||||||
СтрокаВерсии = Метаданные.Версия + "p";
|
|
||||||
|
|
||||||
// ирПортативный.ОбщиеКартинки
|
|
||||||
ТабличныйДокументКартинки = ТабличныйДокументИзОбщихКартинокПодсистемы();
|
|
||||||
ИмяфайлаТабличногоДокумента = КаталогВыгрузкиКонфигурации + "\DataProcessors\ирПортативный\Templates\ОбщиеКартинки\Ext\Template.xml";
|
|
||||||
ирОбщий.СохранитьЗначениеВФайлЛкс(ТабличныйДокументКартинки, ИмяфайлаТабличногоДокумента);
|
|
||||||
ТекстовыйДокумент = Новый ТекстовыйДокумент;
|
|
||||||
ТекстовыйДокумент.Прочитать(ИмяфайлаТабличногоДокумента);
|
|
||||||
ТекстМодуля = ТекстовыйДокумент.ПолучитьТекст();
|
|
||||||
// Антибаг платформы 8.3.9 Без этого текст теряется при загрузке внешней обработки из файлов
|
|
||||||
ТекстМодуля = СтрЗаменить(ТекстМодуля, "<v8:lang>#</v8:lang>", "<v8:lang></v8:lang>");
|
|
||||||
ТекстовыйДокумент.УстановитьТекст(ТекстМодуля);
|
|
||||||
ТекстовыйДокумент.Записать(ИмяфайлаТабличногоДокумента);
|
|
||||||
|
|
||||||
// ирПортативный.Модуль
|
|
||||||
ИмяфайлаМодуля = КаталогВыгрузкиКонфигурации + "\DataProcessors\ирПортативный\Ext\ObjectModule.bsl";
|
|
||||||
ТекстовыйДокумент = Новый ТекстовыйДокумент;
|
|
||||||
ТекстовыйДокумент.Прочитать(ИмяфайлаМодуля);
|
|
||||||
ТекстМодуля = ТекстовыйДокумент.ПолучитьТекст();
|
|
||||||
ЧтоЗаменить = ирОбщий.СтрокаМеждуМаркерамиЛкс(ТекстМодуля, "#Область ОбработчикиИнициализацииФорм", "#КонецОбласти", Ложь, Истина);
|
|
||||||
НаЧтоЗаменить = СгенерироватьМодульИнициализацииФормПодсистемыДляПортативногоРежима();
|
|
||||||
ТекстМодуля = СтрЗаменить(ТекстМодуля, ЧтоЗаменить, НаЧтоЗаменить);
|
|
||||||
ИмяфайлаГлобальногоМодуля = КаталогВыгрузкиКонфигурации + "\CommonModules\ирГлобальный\Ext\Module.bsl";
|
|
||||||
ТекстовыйДокумент = Новый ТекстовыйДокумент;
|
|
||||||
ТекстовыйДокумент.Прочитать(ИмяфайлаГлобальногоМодуля);
|
|
||||||
ТекстГлобальногоМодуля = ТекстовыйДокумент.ПолучитьТекст();
|
|
||||||
ЧтоЗаменить = ирОбщий.СтрокаМеждуМаркерамиЛкс(ТекстМодуля, "#Область ГлобальныеПортативныеМетоды", "#КонецОбласти", Ложь, Истина);
|
|
||||||
НаЧтоЗаменить = ирОбщий.СтрокаМеждуМаркерамиЛкс(ТекстГлобальногоМодуля, "#Область ГлобальныеПортативныеМетоды", "#КонецОбласти", Ложь, Истина);
|
|
||||||
ТекстМодуля = СтрЗаменить(ТекстМодуля, ЧтоЗаменить, НаЧтоЗаменить);
|
|
||||||
ЧтоЗаменить = ирОбщий.СтрокаМеждуМаркерамиЛкс(ТекстМодуля, "мВерсия = ", ";", Ложь, Истина);
|
|
||||||
НаЧтоЗаменить = "мВерсия = """ + СтрокаВерсии + """;";
|
|
||||||
ТекстМодуля = СтрЗаменить(ТекстМодуля, ЧтоЗаменить, НаЧтоЗаменить);
|
|
||||||
ТекстовыйДокумент.УстановитьТекст(ТекстМодуля);
|
|
||||||
ТекстовыйДокумент.Записать(ИмяфайлаМодуля);
|
|
||||||
УдалитьФайлы(ИмяфайлаГлобальногоМодуля);
|
|
||||||
|
|
||||||
// ирПортативныйСервер
|
|
||||||
ИмяфайлаМодуля = КаталогВыгрузкиКонфигурации + "\DataProcessors\ирПортативныйСервер\Ext\ObjectModule.bsl";
|
|
||||||
ТекстовыйДокумент = Новый ТекстовыйДокумент;
|
|
||||||
ТекстовыйДокумент.Прочитать(ИмяфайлаМодуля);
|
|
||||||
ТекстМодуля = ТекстовыйДокумент.ПолучитьТекст();
|
|
||||||
ЧтоЗаменить = ирОбщий.СтрокаМеждуМаркерамиЛкс(ТекстМодуля, "(""Версия"",", ");", Ложь, Истина);
|
|
||||||
НаЧтоЗаменить = "(""Версия"", """ + СтрокаВерсии + """);";
|
|
||||||
ТекстМодуля = СтрЗаменить(ТекстМодуля, ЧтоЗаменить, НаЧтоЗаменить);
|
|
||||||
ТекстовыйДокумент.УстановитьТекст(ТекстМодуля);
|
|
||||||
ТекстовыйДокумент.Записать(ИмяфайлаМодуля);
|
|
||||||
|
|
||||||
ПреобразоватьОбъектыМетаданныхПоТипу(КаталогВерсии, "CommonModule", "CommonModules", "epf", КаталогВыгрузкиКонфигурации, СтрокаСоединенияБазыПодсистемыЛ, "DataProcessor");
|
|
||||||
ПреобразоватьОбъектыМетаданныхПоТипу(КаталогВерсии, "Report", "Reports", "erf", КаталогВыгрузкиКонфигурации, СтрокаСоединенияБазыПодсистемыЛ);
|
|
||||||
ПреобразоватьОбъектыМетаданныхПоТипу(КаталогВерсии, "DataProcessor", "DataProcessors", "epf", КаталогВыгрузкиКонфигурации, СтрокаСоединенияБазыПодсистемыЛ);
|
|
||||||
УдалитьФайлы(КаталогВыгрузкиКонфигурации);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ПреобразоватьОбъектыМетаданныхПоТипу(КаталогВерсии, Знач ИмяТипаЕдинственное, Знач ИмяТипаМножественное, Знач РасширениеФайла, Знач КаталогВыгрузкиКонфигурации,
|
|
||||||
Знач СтрокаСоединенияБазыПодсистемыЛ, Знач ПреобразоватьВТип = "")
|
|
||||||
|
|
||||||
ФайлыДляОбработки = НайтиФайлы(КаталогВыгрузкиКонфигурации + "\" + ИмяТипаМножественное, "*.xml");
|
|
||||||
Если Не ЗначениеЗаполнено(ПреобразоватьВТип) Тогда
|
|
||||||
ПреобразоватьВТип = ИмяТипаЕдинственное;
|
|
||||||
КонецЕсли;
|
|
||||||
Успех = Истина;
|
|
||||||
ТекстЛога = "";
|
|
||||||
Индикатор = ирОбщий.ПолучитьИндикаторПроцессаЛкс(ФайлыДляОбработки.Количество(), ИмяТипаМножественное);
|
|
||||||
Для Каждого Файл Из ФайлыДляОбработки Цикл
|
|
||||||
#Если _ Тогда
|
|
||||||
Файл = Новый Файл;
|
|
||||||
#КонецЕсли
|
|
||||||
ирОбщий.ОбработатьИндикаторЛкс(Индикатор);
|
|
||||||
КаталогВыгрузкиВнешнейОбработки = ПолучитьИмяВременногоФайла();
|
|
||||||
СоздатьКаталог(КаталогВыгрузкиВнешнейОбработки);
|
|
||||||
ИмяОсновногоФайлаВнешнейОбработки = КаталогВыгрузкиВнешнейОбработки + "\" + Файл.Имя;
|
|
||||||
ПодкаталогФайловВнешнейОбработки = КаталогВыгрузкиВнешнейОбработки + "\" + Файл.ИмяБезРасширения;
|
|
||||||
СоздатьКаталог(ПодкаталогФайловВнешнейОбработки);
|
|
||||||
ирОбщий.СкопироватьФайлыЛкс(Файл.Путь + "\" + Файл.ИмяБезРасширения, ПодкаталогФайловВнешнейОбработки);
|
|
||||||
ФайлОбщегоМОдуля = Новый Файл(ПодкаталогФайловВнешнейОбработки + "\Ext\Module.bsl");
|
|
||||||
Если ФайлОбщегоМОдуля.Существует() Тогда
|
|
||||||
ПереместитьФайл(ФайлОбщегоМОдуля.ПолноеИмя, ПодкаталогФайловВнешнейОбработки + "\Ext\ObjectModule.bsl");
|
|
||||||
КонецЕсли;
|
|
||||||
ТекстовыйДокумент = Новый ТекстовыйДокумент;
|
|
||||||
ТекстовыйДокумент.Прочитать(Файл.ПолноеИмя);
|
|
||||||
НовыйТекст = СтрЗаменить(ТекстовыйДокумент.ПолучитьТекст(), ИмяТипаЕдинственное, "External" + ПреобразоватьВТип);
|
|
||||||
ЧтениеХмл = Новый ЧтениеXML;
|
|
||||||
ПараметрыЧтения = Новый ПараметрыЧтенияXML(,,,,,,,, Ложь);
|
|
||||||
ЧтениеХмл.УстановитьСтроку(НовыйТекст, ПараметрыЧтения);
|
|
||||||
ПостроительDOM = Новый ПостроительDOM;
|
|
||||||
ДокументДом = ПостроительDOM.Прочитать(ЧтениеХмл);
|
|
||||||
ЧтениеХмл.Закрыть();
|
|
||||||
КорневойУзел = ДокументДом.ПолучитьЭлементыПоИмени("External" + ПреобразоватьВТип);
|
|
||||||
КорневойУзел = КорневойУзел[0];
|
|
||||||
|
|
||||||
// Удаляем управляемые формы
|
|
||||||
УзлыДопФормы = КорневойУзел.ПолучитьЭлементыПоИмени("AuxiliaryForm");
|
|
||||||
Для Каждого УзелДопФормы Из УзлыДопФормы Цикл
|
|
||||||
Если Найти(УзелДопФормы.ТекстовоеСодержимое + "#", "Упр#") > 0 Тогда
|
|
||||||
УзелДопФормы.РодительскийУзел.УдалитьДочерний(УзелДопФормы);
|
|
||||||
КонецЕсли;
|
|
||||||
КонецЦикла;
|
|
||||||
УзлыФорм = КорневойУзел.ПолучитьЭлементыПоИмени("Form");
|
|
||||||
Для Каждого УзелФормы Из УзлыФорм Цикл
|
|
||||||
Если Найти(УзелФормы.ТекстовоеСодержимое + "#", "Упр#") > 0 Тогда
|
|
||||||
УзелФормы.РодительскийУзел.УдалитьДочерний(УзелФормы);
|
|
||||||
КонецЕсли;
|
|
||||||
КонецЦикла;
|
|
||||||
|
|
||||||
УзелИдентификации = КорневойУзел.ПолучитьЭлементыПоИмени("InternalInfo");
|
|
||||||
Если УзелИдентификации.Количество() = 0 Тогда
|
|
||||||
УзелИдентификации = ДокументДом.СоздатьЭлемент("InternalInfo");
|
|
||||||
КорневойУзел.ВставитьПеред(УзелИдентификации, КорневойУзел.ПервыйДочерний);
|
|
||||||
КонецЕсли;
|
|
||||||
УзелИдентификации = КорневойУзел.ПолучитьЭлементыПоИмени("ChildObjects");
|
|
||||||
Если УзелИдентификации.Количество() = 0 Тогда
|
|
||||||
УзелИдентификации = ДокументДом.СоздатьЭлемент("ChildObjects");
|
|
||||||
КорневойУзел.ДобавитьДочерний(УзелИдентификации);
|
|
||||||
КонецЕсли;
|
|
||||||
ЗаписьXML = Новый ЗаписьXML;
|
|
||||||
ЗаписьXML.ОткрытьФайл(ИмяОсновногоФайлаВнешнейОбработки);
|
|
||||||
ЗаписьДом = Новый ЗаписьDOM;
|
|
||||||
ЗаписьДом.Записать(ДокументДом, ЗаписьXML);
|
|
||||||
ЗаписьXML.Закрыть();
|
|
||||||
Если ирОбщий.СтрокиРавныЛкс(Файл.ИмяБезРасширения, "ирПортативный") Тогда
|
|
||||||
КонечныйФайл = КаталогВерсии + "\";
|
|
||||||
Иначе
|
|
||||||
КонечныйФайл = КаталогВерсии + "\Модули\";
|
|
||||||
КонецЕсли;
|
|
||||||
КонечныйФайл = КонечныйФайл + Файл.ИмяБезРасширения + "." + РасширениеФайла;
|
|
||||||
Если Не ирОбщий.ВыполнитьКомандуКонфигуратораЛкс("/LoadExternalDataProcessorOrReportFromFiles """ + ИмяОсновногоФайлаВнешнейОбработки + """ """ + КонечныйФайл + """",
|
|
||||||
СтрокаСоединенияБазыПодсистемыЛ, ТекстЛога)
|
|
||||||
Тогда
|
|
||||||
УдалитьФайлы(КаталогВыгрузкиВнешнейОбработки);
|
|
||||||
УдалитьФайлы(КаталогВыгрузкиКонфигурации);
|
|
||||||
Сообщить(ТекстЛога);
|
|
||||||
Успех = Ложь;
|
|
||||||
Прервать;
|
|
||||||
КонецЕсли;
|
|
||||||
УдалитьФайлы(КаталогВыгрузкиВнешнейОбработки);
|
|
||||||
КонецЦикла;
|
|
||||||
ирОбщий.ОсвободитьИндикаторПроцессаЛкс();
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура КаталогНачалоВыбора(Элемент, СтандартнаяОбработка)
|
|
||||||
|
|
||||||
ирОбщий.ВыбратьКаталогВФормеЛкс(Каталог);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ПриЗакрытии()
|
|
||||||
|
|
||||||
ирОбщий.СохранитьЗначениеЛкс("ирВыпускВариантаПортативный.Каталог", Каталог);
|
|
||||||
ирОбщий.СохранитьЗначениеЛкс("ирВыпускВариантаПортативный.СтрокаСоединенияБазыПодсистемы", СтрокаСоединенияБазыПодсистемы);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ПриОткрытии()
|
|
||||||
|
|
||||||
Подверсия = "1";
|
|
||||||
Каталог = ирОбщий.ВосстановитьЗначениеЛкс("ирВыпускВариантаПортативный.Каталог");
|
|
||||||
СтрокаСоединенияБазыПодсистемы = ирОбщий.ВосстановитьЗначениеЛкс("ирВыпускВариантаПортативный.СтрокаСоединенияБазыПодсистемы");
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ПередОткрытием(Отказ, СтандартнаяОбработка)
|
|
||||||
|
|
||||||
Если ирКэш.НомерВерсииПлатформыЛкс() < 803008 Тогда
|
|
||||||
Сообщить("Поддерживается только платформа 8.3.8 и выше");
|
|
||||||
Отказ = Истина;
|
|
||||||
КонецЕсли;
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
ирКэш.Получить();
|
|
||||||
|
|
@ -1,718 +0,0 @@
|
||||||
{27,
|
|
||||||
{18,
|
|
||||||
{
|
|
||||||
{1,3,
|
|
||||||
{"ru","Выпуск варианта Портативный (ИР)"},
|
|
||||||
{"en","Выпуск варианта Портативный (ИР)"},
|
|
||||||
{"uk","Выпуск варианта Портативный (ИР)"}
|
|
||||||
},10,2},
|
|
||||||
{09ccdc77-ea1a-4a6d-ab1c-3435eada2433,
|
|
||||||
{1,
|
|
||||||
{
|
|
||||||
{16,1,
|
|
||||||
{3,4,
|
|
||||||
{0}
|
|
||||||
},
|
|
||||||
{3,4,
|
|
||||||
{0}
|
|
||||||
},
|
|
||||||
{7,3,0,1,100},0,
|
|
||||||
{3,4,
|
|
||||||
{0}
|
|
||||||
},
|
|
||||||
{3,4,
|
|
||||||
{0}
|
|
||||||
},
|
|
||||||
{3,4,
|
|
||||||
{0}
|
|
||||||
},
|
|
||||||
{3,3,
|
|
||||||
{-7}
|
|
||||||
},
|
|
||||||
{3,3,
|
|
||||||
{-21}
|
|
||||||
},
|
|
||||||
{3,0,
|
|
||||||
{0},0,0,0,48312c09-257f-4b29-b280-284dd89efc1e},
|
|
||||||
{1,0},0,0,100,0,0},26,0,2,
|
|
||||||
{0,2,0},
|
|
||||||
{0,2,1},1,
|
|
||||||
{0,2,2},3,
|
|
||||||
{0,2,3},
|
|
||||||
{0,3,3},
|
|
||||||
{0,5,3},0,0,
|
|
||||||
{8,1,
|
|
||||||
{4,0,
|
|
||||||
{0},"",-1,-1,1,0,""},
|
|
||||||
{4,0,
|
|
||||||
{0},"",-1,-1,1,0,""},
|
|
||||||
{4,0,
|
|
||||||
{0},"",-1,-1,1,0,""},100,0,0,0},0,1,
|
|
||||||
{1,1,
|
|
||||||
{4,
|
|
||||||
{1,3,
|
|
||||||
{"ru","Страница1"},
|
|
||||||
{"en","Страница1"},
|
|
||||||
{"uk","Страница1"}
|
|
||||||
},
|
|
||||||
{8,0,
|
|
||||||
{4,0,
|
|
||||||
{0},"",-1,-1,1,0,""},
|
|
||||||
{4,0,
|
|
||||||
{0},"",-1,-1,1,0,""},
|
|
||||||
{4,0,
|
|
||||||
{0},"",-1,-1,1,0,""},100,2,0,0},-1,1,1,"Страница1",1,
|
|
||||||
{3,4,
|
|
||||||
{0}
|
|
||||||
},
|
|
||||||
{3,4,
|
|
||||||
{0}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},1,1,0,4,
|
|
||||||
{2,8,1,1,1,0,0,0,0},
|
|
||||||
{2,8,0,1,2,0,0,0,0},
|
|
||||||
{2,467,1,1,3,0,0,8,0},
|
|
||||||
{2,83,0,1,4,0,0,26,0},0,4294967295,5,64,0,
|
|
||||||
{3,4,
|
|
||||||
{0}
|
|
||||||
},0,0,57,0,0},
|
|
||||||
{0}
|
|
||||||
},
|
|
||||||
{6,
|
|
||||||
{e69bf21d-97b2-4f37-86db-675aea9ec2cb,2,
|
|
||||||
{2,
|
|
||||||
{
|
|
||||||
{16,1,
|
|
||||||
{3,4,
|
|
||||||
{0}
|
|
||||||
},
|
|
||||||
{3,4,
|
|
||||||
{0}
|
|
||||||
},
|
|
||||||
{7,3,0,1,100},0,
|
|
||||||
{3,4,
|
|
||||||
{0}
|
|
||||||
},
|
|
||||||
{3,4,
|
|
||||||
{0}
|
|
||||||
},
|
|
||||||
{3,4,
|
|
||||||
{0}
|
|
||||||
},
|
|
||||||
{3,4,
|
|
||||||
{0}
|
|
||||||
},
|
|
||||||
{3,3,
|
|
||||||
{-21}
|
|
||||||
},
|
|
||||||
{3,0,
|
|
||||||
{0},7,1,0,48312c09-257f-4b29-b280-284dd89efc1e},
|
|
||||||
{1,0},0,0,100,0,0},9,1,0,2,0,1,
|
|
||||||
{5,1cdb5be4-467e-46e9-bbd2-7273737aa3a8,1,1,1,
|
|
||||||
{7,9f2ac27d-d06e-4eb1-bfb8-c686c031ae4c,1,e1692cc2-605b-4535-84dd-28440238746c,
|
|
||||||
{3,"ОсновныеДействияФормыВыполнить",
|
|
||||||
{1,"ОсновныеДействияФормыВыполнить",
|
|
||||||
{1,1,
|
|
||||||
{"ru","Выполнить"}
|
|
||||||
},
|
|
||||||
{1,1,
|
|
||||||
{"ru","Выполнить"}
|
|
||||||
},
|
|
||||||
{1,1,
|
|
||||||
{"ru","Выполнить"}
|
|
||||||
},
|
|
||||||
{4,0,
|
|
||||||
{0},"",-1,-1,1,0,""},
|
|
||||||
{0,0,0}
|
|
||||||
}
|
|
||||||
},6,
|
|
||||||
{1,3,
|
|
||||||
{"ru","Выполнить"},
|
|
||||||
{"en","Выполнить"},
|
|
||||||
{"uk","Выполнить"}
|
|
||||||
},
|
|
||||||
{1,3,
|
|
||||||
{"ru","Выполнить"},
|
|
||||||
{"en","Выполнить"},
|
|
||||||
{"uk","Выполнить"}
|
|
||||||
},1},1,
|
|
||||||
{5,b78f2e80-ec68-11d4-9dcf-0050bae2bc79,4,0,1,9f2ac27d-d06e-4eb1-bfb8-c686c031ae4c,
|
|
||||||
{8,"Выполнить",0,1,
|
|
||||||
{1,3,
|
|
||||||
{"ru","Выполнить"},
|
|
||||||
{"en","Выполнить"},
|
|
||||||
{"uk","Выполнить"}
|
|
||||||
},1,1cdb5be4-467e-46e9-bbd2-7273737aa3a8,1,1e2,0,0,1,0,0,0,0},
|
|
||||||
{-1,0,
|
|
||||||
{0}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},b78f2e80-ec68-11d4-9dcf-0050bae2bc79,4,75107755-bd2e-4298-a45c-42bc459825f1,1,0,0}
|
|
||||||
},
|
|
||||||
{8,0,84,475,109,1,
|
|
||||||
{0,
|
|
||||||
{2,0,1,-25},
|
|
||||||
{2,-1,6,0}
|
|
||||||
},
|
|
||||||
{0,
|
|
||||||
{2,0,1,0},
|
|
||||||
{2,-1,6,0}
|
|
||||||
},
|
|
||||||
{0,
|
|
||||||
{2,0,2,0},
|
|
||||||
{2,-1,6,0}
|
|
||||||
},
|
|
||||||
{0,
|
|
||||||
{2,0,3,0},
|
|
||||||
{2,-1,6,0}
|
|
||||||
},
|
|
||||||
{0,
|
|
||||||
{2,-1,6,0},
|
|
||||||
{2,-1,6,0}
|
|
||||||
},
|
|
||||||
{0,
|
|
||||||
{2,-1,6,0},
|
|
||||||
{2,-1,6,0}
|
|
||||||
},0,0,0,0,0,0,0,0,6,1,1},
|
|
||||||
{14,"ОсновныеДействияФормы",0,0,0,0},
|
|
||||||
{0}
|
|
||||||
},
|
|
||||||
{381ed624-9217-4e63-85db-c4c3cb87daae,3,
|
|
||||||
{9,
|
|
||||||
{"Pattern",
|
|
||||||
{"S"}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
{
|
|
||||||
{16,1,
|
|
||||||
{3,4,
|
|
||||||
{0}
|
|
||||||
},
|
|
||||||
{3,4,
|
|
||||||
{0}
|
|
||||||
},
|
|
||||||
{7,3,0,1,100},0,
|
|
||||||
{3,4,
|
|
||||||
{0}
|
|
||||||
},
|
|
||||||
{3,4,
|
|
||||||
{0}
|
|
||||||
},
|
|
||||||
{3,4,
|
|
||||||
{0}
|
|
||||||
},
|
|
||||||
{3,3,
|
|
||||||
{-7}
|
|
||||||
},
|
|
||||||
{3,3,
|
|
||||||
{-21}
|
|
||||||
},
|
|
||||||
{3,1,
|
|
||||||
{-18},0,0,0},
|
|
||||||
{1,3,
|
|
||||||
{"ru","Куда выгружать готовые файлы портативного варианта"},
|
|
||||||
{"en","Куда выгружать готовые файлы портативного варианта"},
|
|
||||||
{"uk","Куда выгружать готовые файлы портативного варианта"}
|
|
||||||
},0,0,100,1,0},30,0,0,1,0,0,1,0,0,0,1,0,0,0,0,0,4,0,
|
|
||||||
{"U"},
|
|
||||||
{"U"},"",0,1,0,0,0,0,
|
|
||||||
{4,0,
|
|
||||||
{0},"",-1,-1,1,0,""},
|
|
||||||
{4,0,
|
|
||||||
{0},"",-1,-1,1,0,""},0,0,0,
|
|
||||||
{0,0,0},
|
|
||||||
{1,0},1,0,0,0,0,0,0,16777215,1}
|
|
||||||
},
|
|
||||||
{1,
|
|
||||||
{9a7643d2-19e9-45e2-8893-280bc9195a97,
|
|
||||||
{4,
|
|
||||||
{"U"},
|
|
||||||
{"U"},0,"",0,0}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{1,
|
|
||||||
{2,e1692cc2-605b-4535-84dd-28440238746c,
|
|
||||||
{3,"КаталогНачалоВыбора",
|
|
||||||
{1,"КаталогНачалоВыбора",
|
|
||||||
{1,1,
|
|
||||||
{"ru","Каталог начало выбора"}
|
|
||||||
},
|
|
||||||
{1,1,
|
|
||||||
{"ru","Каталог начало выбора"}
|
|
||||||
},
|
|
||||||
{1,1,
|
|
||||||
{"ru","Каталог начало выбора"}
|
|
||||||
},
|
|
||||||
{4,0,
|
|
||||||
{0},"",-1,-1,1,0,""},
|
|
||||||
{0,0,0}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},0,1,0,
|
|
||||||
{1,0},0},
|
|
||||||
{8,109,56,467,75,1,
|
|
||||||
{0,
|
|
||||||
{2,-1,6,0},
|
|
||||||
{2,-1,6,0}
|
|
||||||
},
|
|
||||||
{0,
|
|
||||||
{2,3,0,19},
|
|
||||||
{2,-1,6,0}
|
|
||||||
},
|
|
||||||
{0,
|
|
||||||
{2,-1,6,0},
|
|
||||||
{2,-1,6,0}
|
|
||||||
},
|
|
||||||
{0,
|
|
||||||
{2,0,3,-8},
|
|
||||||
{2,-1,6,0}
|
|
||||||
},
|
|
||||||
{0,
|
|
||||||
{2,-1,6,0},
|
|
||||||
{2,-1,6,0}
|
|
||||||
},
|
|
||||||
{0,
|
|
||||||
{2,-1,6,0},
|
|
||||||
{2,-1,6,0}
|
|
||||||
},1,
|
|
||||||
{0,3,1},0,0,0,0,0,0,1,5,0,0},
|
|
||||||
{14,"Каталог",4294967295,0,0,0},
|
|
||||||
{0}
|
|
||||||
},
|
|
||||||
{0fc7e20d-f241-460c-bdf4-5ad88e5474a5,4,
|
|
||||||
{3,
|
|
||||||
{
|
|
||||||
{16,1,
|
|
||||||
{3,4,
|
|
||||||
{0}
|
|
||||||
},
|
|
||||||
{3,4,
|
|
||||||
{0}
|
|
||||||
},
|
|
||||||
{7,3,0,1,100},0,
|
|
||||||
{3,4,
|
|
||||||
{0}
|
|
||||||
},
|
|
||||||
{3,4,
|
|
||||||
{0}
|
|
||||||
},
|
|
||||||
{3,4,
|
|
||||||
{0}
|
|
||||||
},
|
|
||||||
{3,3,
|
|
||||||
{-7}
|
|
||||||
},
|
|
||||||
{3,3,
|
|
||||||
{-21}
|
|
||||||
},
|
|
||||||
{3,0,
|
|
||||||
{0},0,0,0,48312c09-257f-4b29-b280-284dd89efc1e},
|
|
||||||
{1,3,
|
|
||||||
{"ru","Куда помещать выпускаемые файлы"},
|
|
||||||
{"en","Куда помещать выпускаемые файлы"},
|
|
||||||
{"uk","Куда помещать выпускаемые файлы"}
|
|
||||||
},0,0,100,0,0},11,
|
|
||||||
{1,3,
|
|
||||||
{"ru","Каталог выпуска:"},
|
|
||||||
{"en","Каталог выпуска:"},
|
|
||||||
{"uk","Каталог выпуска:"}
|
|
||||||
},4,1,0,0,0,
|
|
||||||
{0,0,0},0,
|
|
||||||
{1,0},1,
|
|
||||||
{8,0,
|
|
||||||
{4,0,
|
|
||||||
{0},"",-1,-1,1,0,""},
|
|
||||||
{4,0,
|
|
||||||
{0},"",-1,-1,1,0,""},
|
|
||||||
{4,0,
|
|
||||||
{0},"",-1,-1,1,0,""},100,2,0,0},4,0,0,0,0,0,0,0},
|
|
||||||
{0}
|
|
||||||
},
|
|
||||||
{8,8,56,103,75,1,
|
|
||||||
{0,
|
|
||||||
{2,-1,6,0},
|
|
||||||
{2,-1,6,0}
|
|
||||||
},
|
|
||||||
{0,
|
|
||||||
{2,4,0,19},
|
|
||||||
{2,-1,6,0}
|
|
||||||
},
|
|
||||||
{0,
|
|
||||||
{2,-1,6,0},
|
|
||||||
{2,-1,6,0}
|
|
||||||
},
|
|
||||||
{0,
|
|
||||||
{2,4,2,95},
|
|
||||||
{2,-1,6,0}
|
|
||||||
},
|
|
||||||
{0,
|
|
||||||
{2,-1,6,0},
|
|
||||||
{2,-1,6,0}
|
|
||||||
},
|
|
||||||
{0,
|
|
||||||
{2,-1,6,0},
|
|
||||||
{2,-1,6,0}
|
|
||||||
},1,
|
|
||||||
{0,4,1},0,1,
|
|
||||||
{0,4,3},0,0,0,0,2,4,0,0},
|
|
||||||
{14,"Надпись1",4294967295,0,0,0},
|
|
||||||
{0}
|
|
||||||
},
|
|
||||||
{381ed624-9217-4e63-85db-c4c3cb87daae,5,
|
|
||||||
{9,
|
|
||||||
{"Pattern",
|
|
||||||
{"S"}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
{
|
|
||||||
{16,1,
|
|
||||||
{3,4,
|
|
||||||
{0}
|
|
||||||
},
|
|
||||||
{3,4,
|
|
||||||
{0}
|
|
||||||
},
|
|
||||||
{7,3,0,1,100},0,
|
|
||||||
{3,4,
|
|
||||||
{0}
|
|
||||||
},
|
|
||||||
{3,4,
|
|
||||||
{0}
|
|
||||||
},
|
|
||||||
{3,4,
|
|
||||||
{0}
|
|
||||||
},
|
|
||||||
{3,3,
|
|
||||||
{-7}
|
|
||||||
},
|
|
||||||
{3,3,
|
|
||||||
{-21}
|
|
||||||
},
|
|
||||||
{3,1,
|
|
||||||
{-18},0,0,0},
|
|
||||||
{1,3,
|
|
||||||
{"ru","Строка соединения базы подсистемы ""Инструменты разработчика"". Если пустая, используется текущая база."},
|
|
||||||
{"en","Строка соединения базы подсистемы ""Инструменты разработчика"". Если пустая, используется текущая база."},
|
|
||||||
{"uk","Строка соединения базы подсистемы ""Инструменты разработчика"". Если пустая, используется текущая база."}
|
|
||||||
},0,0,100,1,0},30,0,0,1,0,0,0,1,0,0,1,0,0,0,0,0,4,0,
|
|
||||||
{"U"},
|
|
||||||
{"U"},"",0,1,0,0,0,0,
|
|
||||||
{4,0,
|
|
||||||
{0},"",-1,-1,1,0,""},
|
|
||||||
{4,0,
|
|
||||||
{0},"",-1,-1,1,0,""},0,0,0,
|
|
||||||
{0,0,0},
|
|
||||||
{1,0},0,0,0,0,0,0,0,16777215,1}
|
|
||||||
},
|
|
||||||
{1,
|
|
||||||
{9a7643d2-19e9-45e2-8893-280bc9195a97,
|
|
||||||
{4,
|
|
||||||
{"U"},
|
|
||||||
{"U"},0,"",0,0}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{1,
|
|
||||||
{2,e1692cc2-605b-4535-84dd-28440238746c,
|
|
||||||
{3,"КаталогНачалоВыбора",
|
|
||||||
{1,"КаталогНачалоВыбора",
|
|
||||||
{1,1,
|
|
||||||
{"ru","Каталог начало выбора"}
|
|
||||||
},
|
|
||||||
{1,1,
|
|
||||||
{"ru","Каталог начало выбора"}
|
|
||||||
},
|
|
||||||
{1,1,
|
|
||||||
{"ru","Каталог начало выбора"}
|
|
||||||
},
|
|
||||||
{4,0,
|
|
||||||
{0},"",-1,-1,1,0,""},
|
|
||||||
{0,0,0}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},0,1,0,
|
|
||||||
{1,0},0},
|
|
||||||
{8,109,32,467,51,1,
|
|
||||||
{0,
|
|
||||||
{2,-1,6,0},
|
|
||||||
{2,-1,6,0}
|
|
||||||
},
|
|
||||||
{0,
|
|
||||||
{2,5,0,19},
|
|
||||||
{2,-1,6,0}
|
|
||||||
},
|
|
||||||
{0,
|
|
||||||
{2,-1,6,0},
|
|
||||||
{2,-1,6,0}
|
|
||||||
},
|
|
||||||
{0,
|
|
||||||
{2,0,3,-8},
|
|
||||||
{2,-1,6,0}
|
|
||||||
},
|
|
||||||
{0,
|
|
||||||
{2,-1,6,0},
|
|
||||||
{2,-1,6,0}
|
|
||||||
},
|
|
||||||
{0,
|
|
||||||
{2,-1,6,0},
|
|
||||||
{2,-1,6,0}
|
|
||||||
},1,
|
|
||||||
{0,5,1},0,0,0,0,0,0,3,3,0,0},
|
|
||||||
{14,"СтрокаСоединенияБазыПодсистемы",4294967295,0,0,0},
|
|
||||||
{0}
|
|
||||||
},
|
|
||||||
{0fc7e20d-f241-460c-bdf4-5ad88e5474a5,6,
|
|
||||||
{3,
|
|
||||||
{
|
|
||||||
{16,1,
|
|
||||||
{3,4,
|
|
||||||
{0}
|
|
||||||
},
|
|
||||||
{3,4,
|
|
||||||
{0}
|
|
||||||
},
|
|
||||||
{7,3,0,1,100},0,
|
|
||||||
{3,4,
|
|
||||||
{0}
|
|
||||||
},
|
|
||||||
{3,4,
|
|
||||||
{0}
|
|
||||||
},
|
|
||||||
{3,4,
|
|
||||||
{0}
|
|
||||||
},
|
|
||||||
{3,3,
|
|
||||||
{-7}
|
|
||||||
},
|
|
||||||
{3,3,
|
|
||||||
{-21}
|
|
||||||
},
|
|
||||||
{3,0,
|
|
||||||
{0},0,0,0,48312c09-257f-4b29-b280-284dd89efc1e},
|
|
||||||
{1,0},0,0,100,0,0},11,
|
|
||||||
{1,3,
|
|
||||||
{"ru","База подсистемы:"},
|
|
||||||
{"en","База подсистемы:"},
|
|
||||||
{"uk","База подсистемы:"}
|
|
||||||
},4,1,0,0,0,
|
|
||||||
{0,0,0},0,
|
|
||||||
{1,0},1,
|
|
||||||
{8,0,
|
|
||||||
{4,0,
|
|
||||||
{0},"",-1,-1,1,0,""},
|
|
||||||
{4,0,
|
|
||||||
{0},"",-1,-1,1,0,""},
|
|
||||||
{4,0,
|
|
||||||
{0},"",-1,-1,1,0,""},100,2,0,0},4,0,0,0,0,0,0,0},
|
|
||||||
{0}
|
|
||||||
},
|
|
||||||
{8,8,32,103,51,1,
|
|
||||||
{0,
|
|
||||||
{2,-1,6,0},
|
|
||||||
{2,-1,6,0}
|
|
||||||
},
|
|
||||||
{0,
|
|
||||||
{2,6,0,19},
|
|
||||||
{2,-1,6,0}
|
|
||||||
},
|
|
||||||
{0,
|
|
||||||
{2,-1,6,0},
|
|
||||||
{2,-1,6,0}
|
|
||||||
},
|
|
||||||
{0,
|
|
||||||
{2,6,2,95},
|
|
||||||
{2,-1,6,0}
|
|
||||||
},
|
|
||||||
{0,
|
|
||||||
{2,-1,6,0},
|
|
||||||
{2,-1,6,0}
|
|
||||||
},
|
|
||||||
{0,
|
|
||||||
{2,-1,6,0},
|
|
||||||
{2,-1,6,0}
|
|
||||||
},1,
|
|
||||||
{0,6,1},0,1,
|
|
||||||
{0,6,3},0,0,0,0,4,2,0,0},
|
|
||||||
{14,"Надпись2",4294967295,0,0,0},
|
|
||||||
{0}
|
|
||||||
},
|
|
||||||
{0fc7e20d-f241-460c-bdf4-5ad88e5474a5,10,
|
|
||||||
{3,
|
|
||||||
{
|
|
||||||
{16,1,
|
|
||||||
{3,4,
|
|
||||||
{0}
|
|
||||||
},
|
|
||||||
{3,3,
|
|
||||||
{-14}
|
|
||||||
},
|
|
||||||
{7,3,0,1,100},0,
|
|
||||||
{3,4,
|
|
||||||
{0}
|
|
||||||
},
|
|
||||||
{3,4,
|
|
||||||
{0}
|
|
||||||
},
|
|
||||||
{3,4,
|
|
||||||
{0}
|
|
||||||
},
|
|
||||||
{3,3,
|
|
||||||
{-7}
|
|
||||||
},
|
|
||||||
{3,3,
|
|
||||||
{-21}
|
|
||||||
},
|
|
||||||
{3,0,
|
|
||||||
{0},0,0,0,48312c09-257f-4b29-b280-284dd89efc1e},
|
|
||||||
{1,0},0,0,100,0,0},11,
|
|
||||||
{1,3,
|
|
||||||
{"ru","Рекомендуется выполнять в базе с конфигурацией, содержащей чистую подсистему ИР"},
|
|
||||||
{"en","Рекомендуется выполнять в базе с конфигурацией, содержащей чистую подсистему ИР"},
|
|
||||||
{"uk","Рекомендуется выполнять в базе с конфигурацией, содержащей чистую подсистему ИР"}
|
|
||||||
},4,1,0,0,0,
|
|
||||||
{0,0,0},0,
|
|
||||||
{1,0},1,
|
|
||||||
{8,0,
|
|
||||||
{4,0,
|
|
||||||
{0},"",-1,-1,1,0,""},
|
|
||||||
{4,0,
|
|
||||||
{0},"",-1,-1,1,0,""},
|
|
||||||
{4,0,
|
|
||||||
{0},"",-1,-1,1,0,""},100,2,0,0},4,0,0,0,0,0,0,0},
|
|
||||||
{0}
|
|
||||||
},
|
|
||||||
{8,8,8,467,27,1,
|
|
||||||
{0,
|
|
||||||
{2,-1,6,0},
|
|
||||||
{2,-1,6,0}
|
|
||||||
},
|
|
||||||
{0,
|
|
||||||
{2,10,0,19},
|
|
||||||
{2,-1,6,0}
|
|
||||||
},
|
|
||||||
{0,
|
|
||||||
{2,-1,6,0},
|
|
||||||
{2,-1,6,0}
|
|
||||||
},
|
|
||||||
{0,
|
|
||||||
{2,10,2,459},
|
|
||||||
{2,-1,6,0}
|
|
||||||
},
|
|
||||||
{0,
|
|
||||||
{2,-1,6,0},
|
|
||||||
{2,-1,6,0}
|
|
||||||
},
|
|
||||||
{0,
|
|
||||||
{2,-1,6,0},
|
|
||||||
{2,-1,6,0}
|
|
||||||
},1,
|
|
||||||
{0,10,1},0,1,
|
|
||||||
{0,10,3},0,0,0,0,5,1,0,0},
|
|
||||||
{14,"Надпись4",4294967295,0,0,0},
|
|
||||||
{0}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},475,109,1,0,1,4,4,212,475,109,96},
|
|
||||||
{
|
|
||||||
{-1},5,
|
|
||||||
{3,
|
|
||||||
{
|
|
||||||
{1},1,0,1,"Каталог",
|
|
||||||
{"Pattern",
|
|
||||||
{"S"}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
{2},1,0,1,"СтрокаСоединенияБазыПодсистемы",
|
|
||||||
{"Pattern",
|
|
||||||
{"S"}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
{3},0,0,1,"Подверсия",
|
|
||||||
{"Pattern",
|
|
||||||
{"S",2,1}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{2,
|
|
||||||
{3,
|
|
||||||
{1,
|
|
||||||
{1}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{5,
|
|
||||||
{1,
|
|
||||||
{2}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{00000000-0000-0000-0000-000000000000,0},
|
|
||||||
{3,
|
|
||||||
{70000,e1692cc2-605b-4535-84dd-28440238746c,
|
|
||||||
{3,"ПередОткрытием",
|
|
||||||
{1,"ПередОткрытием",
|
|
||||||
{1,1,
|
|
||||||
{"ru","Перед открытием"}
|
|
||||||
},
|
|
||||||
{1,1,
|
|
||||||
{"ru","Перед открытием"}
|
|
||||||
},
|
|
||||||
{1,1,
|
|
||||||
{"ru","Перед открытием"}
|
|
||||||
},
|
|
||||||
{4,0,
|
|
||||||
{0},"",-1,-1,1,0,""},
|
|
||||||
{0,0,0}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{70001,e1692cc2-605b-4535-84dd-28440238746c,
|
|
||||||
{3,"ПриОткрытии",
|
|
||||||
{1,"ПриОткрытии",
|
|
||||||
{1,1,
|
|
||||||
{"ru","При открытии"}
|
|
||||||
},
|
|
||||||
{1,1,
|
|
||||||
{"ru","При открытии"}
|
|
||||||
},
|
|
||||||
{1,1,
|
|
||||||
{"ru","При открытии"}
|
|
||||||
},
|
|
||||||
{4,0,
|
|
||||||
{0},"",-1,-1,1,0,""},
|
|
||||||
{0,0,0}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{70003,e1692cc2-605b-4535-84dd-28440238746c,
|
|
||||||
{3,"ПриЗакрытии",
|
|
||||||
{1,"ПриЗакрытии",
|
|
||||||
{1,1,
|
|
||||||
{"ru","При закрытии"}
|
|
||||||
},
|
|
||||||
{1,1,
|
|
||||||
{"ru","При закрытии"}
|
|
||||||
},
|
|
||||||
{1,1,
|
|
||||||
{"ru","При закрытии"}
|
|
||||||
},
|
|
||||||
{4,0,
|
|
||||||
{0},"",-1,-1,1,0,""},
|
|
||||||
{0,0,0}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},1,4,1,0,0,0,
|
|
||||||
{0},
|
|
||||||
{0},
|
|
||||||
{8,0,
|
|
||||||
{4,0,
|
|
||||||
{0},"",-1,-1,1,0,""},
|
|
||||||
{4,0,
|
|
||||||
{0},"",-1,-1,1,0,""},
|
|
||||||
{4,0,
|
|
||||||
{0},"",-1,-1,1,0,""},100,0,0,0},1,2,0,0,1,1}
|
|
||||||
|
|
@ -1,32 +0,0 @@
|
||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<MetaDataObject xmlns="http://v8.1c.ru/8.3/MDClasses" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:cmi="http://v8.1c.ru/8.2/managed-application/cmi" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" xmlns:style="http://v8.1c.ru/8.1/data/ui/style" xmlns:sys="http://v8.1c.ru/8.1/data/ui/fonts/system" xmlns:v8="http://v8.1c.ru/8.1/data/core" xmlns:v8ui="http://v8.1c.ru/8.1/data/ui" xmlns:web="http://v8.1c.ru/8.1/data/ui/colors/web" xmlns:win="http://v8.1c.ru/8.1/data/ui/colors/windows" xmlns:xen="http://v8.1c.ru/8.3/xcf/enums" xmlns:xpr="http://v8.1c.ru/8.3/xcf/predef" xmlns:xr="http://v8.1c.ru/8.3/xcf/readable" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.9">
|
|
||||||
<CommonForm uuid="1423c9b4-a549-4267-b8c9-c449c8c88cda">
|
|
||||||
<Properties>
|
|
||||||
<Name>ирВыпускВариантаРасширение</Name>
|
|
||||||
<Synonym>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>ru</v8:lang>
|
|
||||||
<v8:content>Выпуск варианта Расширение (ИР)</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>en</v8:lang>
|
|
||||||
<v8:content>Выпуск варианта Расширение (ИР)</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>uk</v8:lang>
|
|
||||||
<v8:content>Выпуск варианта Расширение (ИР)</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
</Synonym>
|
|
||||||
<Comment/>
|
|
||||||
<FormType>Ordinary</FormType>
|
|
||||||
<IncludeHelpInContents>false</IncludeHelpInContents>
|
|
||||||
<UsePurposes>
|
|
||||||
<v8:Value xsi:type="app:ApplicationUsePurpose">PlatformApplication</v8:Value>
|
|
||||||
<v8:Value xsi:type="app:ApplicationUsePurpose">MobilePlatformApplication</v8:Value>
|
|
||||||
</UsePurposes>
|
|
||||||
<UseStandardCommands>false</UseStandardCommands>
|
|
||||||
<ExtendedPresentation/>
|
|
||||||
<Explanation/>
|
|
||||||
</Properties>
|
|
||||||
</CommonForm>
|
|
||||||
</MetaDataObject>
|
|
||||||
Binary file not shown.
|
|
@ -1,303 +0,0 @@
|
||||||
Процедура ОсновныеДействияФормыВыполнить(Кнопка)
|
|
||||||
|
|
||||||
// Если указать ИсполняемыйФайлПлатформы, то будет ошибка при загрузке расширения из файлов
|
|
||||||
// Неизвестная версия формата 2.6 загружаемого файла
|
|
||||||
ЭтаФорма.ИсполняемыйФайлПлатформы = "";
|
|
||||||
|
|
||||||
КаталогВыгрузкиКонфигурации = ПолучитьИмяВременногоФайла();
|
|
||||||
СоздатьКаталог(КаталогВыгрузкиКонфигурации);
|
|
||||||
ТекстЛога = "";
|
|
||||||
// Выгружаем конфигурацию в файлы
|
|
||||||
Успех = ирОбщий.ВыполнитьКомандуКонфигуратораЛкс("/DumpConfigToFiles """ + КаталогВыгрузкиКонфигурации + """ -Format Hierarchical", СтрокаСоединенияИнформационнойБазы(), ТекстЛога,,
|
|
||||||
"Выгрузка конфигурации в файлы",,,, ИмяПользователя, ПарольПользователя);
|
|
||||||
Если Не Успех Тогда
|
|
||||||
УдалитьФайлы(КаталогВыгрузкиКонфигурации);
|
|
||||||
Сообщить(ТекстЛога);
|
|
||||||
Возврат;
|
|
||||||
КонецЕсли;
|
|
||||||
//КаталогВыгрузкиКонфигурации = "Z:\Ир"; // Для отладки
|
|
||||||
|
|
||||||
Результат = СоздатьРасширение("e", КаталогВыгрузкиКонфигурации);
|
|
||||||
УдалитьФайлы(КаталогВыгрузкиКонфигурации);
|
|
||||||
Сообщить(Результат);
|
|
||||||
//Предупреждение("Не забудь вручную убрать флажок ""Проверять значения языка"" у расширения!");
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Функция СоздатьРасширение(Знач СуффиксВерсии, Знач КаталогВыгрузкиКонфигурации)
|
|
||||||
|
|
||||||
ВерсияРасширения = Метаданные.Версия + СуффиксВерсии;
|
|
||||||
|
|
||||||
ИмяРасширения = "Расширение1";
|
|
||||||
ИмяВременногоФайла = ПолучитьИмяВременногоФайла("cfe");
|
|
||||||
ПолучитьОбщийМакет("ирШаблонРасширения").Записать(ИмяВременногоФайла);
|
|
||||||
ТекстЛога = "";
|
|
||||||
Успех = ирОбщий.ВыполнитьКомандуКонфигуратораЛкс("/LoadCfg """ + ИмяВременногоФайла + """ -Extension """ + ИмяРасширения + """", , ТекстЛога,,, Истина, ИсполняемыйФайлПлатформы);
|
|
||||||
Если Не Успех Тогда
|
|
||||||
УдалитьФайлы(ИмяВременногоФайла);
|
|
||||||
Сообщить(ТекстЛога);
|
|
||||||
Возврат Неопределено;
|
|
||||||
КонецЕсли;
|
|
||||||
УдалитьФайлы(ИмяВременногоФайла);
|
|
||||||
|
|
||||||
ТекстЛога = "";
|
|
||||||
КаталогВыгрузкиРасширения = ПолучитьИмяВременногоФайла();
|
|
||||||
СоздатьКаталог(КаталогВыгрузкиРасширения);
|
|
||||||
// Выгрузка расширения в файлы
|
|
||||||
Успех = ирОбщий.ВыполнитьКомандуКонфигуратораЛкс("/DumpConfigToFiles """ + КаталогВыгрузкиРасширения + """ -Extension """ + ИмяРасширения + """ -Format Hierarchical", , ТекстЛога,,
|
|
||||||
"Выгрузка расширения в файлы",, ИсполняемыйФайлПлатформы);
|
|
||||||
Если Не Успех Тогда
|
|
||||||
УдалитьФайлы(КаталогВыгрузкиРасширения);
|
|
||||||
Сообщить(ТекстЛога);
|
|
||||||
Возврат Неопределено;
|
|
||||||
КонецЕсли;
|
|
||||||
|
|
||||||
//Предупреждение(1);
|
|
||||||
RegExp = ирКэш.ВычислительРегВыраженийЛкс();
|
|
||||||
RegExp.Global = Истина;
|
|
||||||
|
|
||||||
// Скопируем все папки кроме Catalogs и Ext и файла ConfigDumpInfo.xml
|
|
||||||
Файлы = НайтиФайлы(КаталогВыгрузкиКонфигурации, "*");
|
|
||||||
Для Каждого Файл Из Файлы Цикл
|
|
||||||
Если Ложь
|
|
||||||
Или Файл.Имя = "Catalogs"
|
|
||||||
Или Файл.Имя = "Ext"
|
|
||||||
Или Не Файл.ЭтоКаталог()
|
|
||||||
Тогда
|
|
||||||
Продолжить;
|
|
||||||
КонецЕсли;
|
|
||||||
ФайлПриемник = Новый Файл(КаталогВыгрузкиРасширения + "\" + Файл.Имя);
|
|
||||||
Если Не ФайлПриемник.Существует() Тогда
|
|
||||||
СоздатьКаталог(ФайлПриемник.ПолноеИмя);
|
|
||||||
КонецЕсли;
|
|
||||||
ирОбщий.СкопироватьФайлыЛкс(КаталогВыгрузкиКонфигурации + "\" + Файл.Имя, КаталогВыгрузкиРасширения + "\" + Файл.Имя);
|
|
||||||
КонецЦикла;
|
|
||||||
|
|
||||||
// Во всех CommonCommands удалить <CommandParameterType>...</CommandParameterType>
|
|
||||||
Файлы = НайтиФайлы(КаталогВыгрузкиРасширения + "\CommonCommands", "*.xml");
|
|
||||||
Для Каждого Файл Из Файлы Цикл
|
|
||||||
ТекстовыйДокумент = Новый ТекстовыйДокумент;
|
|
||||||
ТекстовыйДокумент.Прочитать(Файл.ПолноеИмя);
|
|
||||||
ТекстФайла = ТекстовыйДокумент.ПолучитьТекст();
|
|
||||||
ЧтоЗаменить = ирОбщий.СтрокаМеждуМаркерамиЛкс(ТекстФайла, "<CommandParameterType>", "</CommandParameterType>", Ложь, Истина);
|
|
||||||
ТекстФайла = СтрЗаменить(ТекстФайла, ЧтоЗаменить, "");
|
|
||||||
ТекстовыйДокумент.УстановитьТекст(ТекстФайла);
|
|
||||||
ТекстовыйДокумент.Записать(Файл.ПолноеИмя);
|
|
||||||
КонецЦикла;
|
|
||||||
|
|
||||||
// Очищаем ссылки в подсистемах
|
|
||||||
Файлы = НайтиФайлы(КаталогВыгрузкиРасширения + "\SubSystems", "*.xml", Истина);
|
|
||||||
Для Каждого Файл Из Файлы Цикл
|
|
||||||
ТекстовыйДокумент = Новый ТекстовыйДокумент;
|
|
||||||
ТекстовыйДокумент.Прочитать(Файл.ПолноеИмя);
|
|
||||||
ТекстФайла = ТекстовыйДокумент.ПолучитьТекст();
|
|
||||||
//ТекстФайла = ирОбщий.СтрЗаменитьЛкс(ТекстФайла, "<xr:Item xsi:type=""xr:MDObjectRef"">CommonCommand.ирОткрытьНастройкиАлгоритмов</xr:Item>", "");
|
|
||||||
Пока Истина Цикл
|
|
||||||
ЧтоЗаменить = ирОбщий.СтрокаМеждуМаркерамиЛкс(ТекстФайла, "<xr:Item xsi:type=""xr:MDObjectRef"">Catalog.", "</xr:Item>", Ложь, Истина);
|
|
||||||
Если Не ЗначениеЗаполнено(ЧтоЗаменить) Тогда
|
|
||||||
Прервать;
|
|
||||||
КонецЕсли;
|
|
||||||
ТекстФайла = СтрЗаменить(ТекстФайла, ЧтоЗаменить, "");
|
|
||||||
КонецЦикла;
|
|
||||||
Пока Истина Цикл
|
|
||||||
ЧтоЗаменить = ирОбщий.СтрокаМеждуМаркерамиЛкс(ТекстФайла, "<Command name=""Catalog.", "</Command>", Ложь, Истина);
|
|
||||||
Если Не ЗначениеЗаполнено(ЧтоЗаменить) Тогда
|
|
||||||
Прервать;
|
|
||||||
КонецЕсли;
|
|
||||||
ТекстФайла = СтрЗаменить(ТекстФайла, ЧтоЗаменить, "");
|
|
||||||
КонецЦикла;
|
|
||||||
ТекстовыйДокумент.УстановитьТекст(ТекстФайла);
|
|
||||||
ТекстовыйДокумент.Записать(Файл.ПолноеИмя);
|
|
||||||
КонецЦикла;
|
|
||||||
|
|
||||||
// Очищаем ссылки в ролях
|
|
||||||
Файлы = НайтиФайлы(КаталогВыгрузкиРасширения + "\Roles", "*.xml", Истина);
|
|
||||||
Для Каждого Файл Из Файлы Цикл
|
|
||||||
ТекстовыйДокумент = Новый ТекстовыйДокумент;
|
|
||||||
ТекстовыйДокумент.Прочитать(Файл.ПолноеИмя);
|
|
||||||
ТекстФайла = ТекстовыйДокумент.ПолучитьТекст();
|
|
||||||
Пока Истина Цикл
|
|
||||||
ЧтоЗаменить = ирОбщий.СтрокаМеждуМаркерамиЛкс(ТекстФайла,
|
|
||||||
" <object>
|
|
||||||
| <name>Catalog.", "</object>", Ложь, Истина);
|
|
||||||
Если Не ЗначениеЗаполнено(ЧтоЗаменить) Тогда
|
|
||||||
Прервать;
|
|
||||||
КонецЕсли;
|
|
||||||
ТекстФайла = СтрЗаменить(ТекстФайла, ЧтоЗаменить, "");
|
|
||||||
КонецЦикла;
|
|
||||||
ТекстовыйДокумент.УстановитьТекст(ТекстФайла);
|
|
||||||
ТекстовыйДокумент.Записать(Файл.ПолноеИмя);
|
|
||||||
КонецЦикла;
|
|
||||||
|
|
||||||
// У общего модуля ирГлобальный убираем флажок Сервер, т.к. в расширении такие общие модули недопустимы
|
|
||||||
ИмяФайла = КаталогВыгрузкиРасширения + "\CommonModules\ирГлобальный.xml";
|
|
||||||
ТекстовыйДокумент = Новый ТекстовыйДокумент;
|
|
||||||
ТекстовыйДокумент.Прочитать(ИмяФайла);
|
|
||||||
ТекстФайла = ТекстовыйДокумент.ПолучитьТекст();
|
|
||||||
ТекстФайла = ирОбщий.СтрЗаменитьЛкс(ТекстФайла, "<Server>true</Server>", "<Server>false</Server>");
|
|
||||||
ТекстовыйДокумент.УстановитьТекст(ТекстФайла);
|
|
||||||
ТекстовыйДокумент.Записать(ИмяФайла);
|
|
||||||
|
|
||||||
//// Скопируем глобальные методы в общий модуль ирОтладка
|
|
||||||
//ИмяФайла = КаталогВыгрузкиРасширения + "\CommonModules\ирГлобальный\Ext\Module.bsl";
|
|
||||||
//ТекстовыйДокумент = Новый ТекстовыйДокумент;
|
|
||||||
//ТекстовыйДокумент.Прочитать(ИмяФайла);
|
|
||||||
//ТекстФайла = ТекстовыйДокумент.ПолучитьТекст();
|
|
||||||
//ТекстМетодов = ирОбщий.СтрокаМеждуМаркерамиЛкс(ТекстФайла, "#Область ГлобальныеПортативныеМетоды", "#КонецОбласти", Ложь, Истина);
|
|
||||||
//ИмяФайла = КаталогВыгрузкиРасширения + "\CommonModules\ирОтладка\Ext\Module.bsl";
|
|
||||||
//ТекстовыйДокумент = Новый ТекстовыйДокумент;
|
|
||||||
//ТекстовыйДокумент.Прочитать(ИмяФайла);
|
|
||||||
//ТекстФайла = ТекстовыйДокумент.ПолучитьТекст();
|
|
||||||
//ТекстФайла = ТекстФайла + ТекстМетодов;
|
|
||||||
//ТекстовыйДокумент.УстановитьТекст(ТекстФайла);
|
|
||||||
//ТекстовыйДокумент.Записать(ИмяФайла);
|
|
||||||
|
|
||||||
// У общего модуля ирПривилегированный убираем флажок Привилегированный
|
|
||||||
ИмяФайла = КаталогВыгрузкиРасширения + "\CommonModules\ирПривилегированный.xml";
|
|
||||||
ТекстовыйДокумент = Новый ТекстовыйДокумент;
|
|
||||||
ТекстовыйДокумент.Прочитать(ИмяФайла);
|
|
||||||
ТекстФайла = ТекстовыйДокумент.ПолучитьТекст();
|
|
||||||
ТекстФайла = ирОбщий.СтрЗаменитьЛкс(ТекстФайла, "<Privileged>true</Privileged>", "<Privileged>false</Privileged>");
|
|
||||||
ТекстовыйДокумент.УстановитьТекст(ТекстФайла);
|
|
||||||
ТекстовыйДокумент.Записать(ИмяФайла);
|
|
||||||
|
|
||||||
// У подсистемы ИнструментыРазработчикаTormozit обновим версию
|
|
||||||
ИмяФайла = КаталогВыгрузкиРасширения + "\SubSystems\ИнструментыРазработчикаTormozit.xml";
|
|
||||||
ТекстовыйДокумент = Новый ТекстовыйДокумент;
|
|
||||||
ТекстовыйДокумент.Прочитать(ИмяФайла);
|
|
||||||
ТекстФайла = ТекстовыйДокумент.ПолучитьТекст();
|
|
||||||
RegExp.Pattern = "(<Comment)>(\S)+?(</Comment>)";
|
|
||||||
ТекстФайла = RegExp.Replace(ТекстФайла, "$1>" + ВерсияРасширения + "$3"); // После номера группы обязательно делать не цифру
|
|
||||||
RegExp.Pattern = "(<v8:content>Инструменты разработчика\s*) (\S)+?(\s*</v8:content>)";
|
|
||||||
ТекстФайла = RegExp.Replace(ТекстФайла, "$1 " + ВерсияРасширения + "$3"); // После номера группы обязательно делать не цифру. Замена делается для каждого языка
|
|
||||||
ТекстовыйДокумент.УстановитьТекст(ТекстФайла);
|
|
||||||
ТекстовыйДокумент.Записать(ИмяФайла);
|
|
||||||
|
|
||||||
ИмяФайла = КаталогВыгрузкиРасширения + "\CommonModules\ирИнтерфейсДляВстраивания\Ext\Module.bsl";
|
|
||||||
ТекстовыйДокумент = Новый ТекстовыйДокумент;
|
|
||||||
ТекстовыйДокумент.Прочитать(ИмяФайла);
|
|
||||||
ТекстФайла = ТекстовыйДокумент.ПолучитьТекст();
|
|
||||||
ТекстФайла = ирОбщий.СтрЗаменитьЛкс(ТекстФайла, "// Версия модуля X.XX", "// Версия модуля " + Метаданные.Версия);
|
|
||||||
ТекстовыйДокумент.УстановитьТекст(ТекстФайла);
|
|
||||||
ТекстовыйДокумент.Записать(ИмяФайла);
|
|
||||||
|
|
||||||
ИмяФайла = КаталогВыгрузкиРасширения + "\Languages\Русский.xml";
|
|
||||||
ТекстовыйДокумент = Новый ТекстовыйДокумент;
|
|
||||||
ТекстовыйДокумент.Прочитать(ИмяФайла);
|
|
||||||
ТекстФайла = ТекстовыйДокумент.ПолучитьТекст();
|
|
||||||
ТекстФайла = ирОбщий.СтрЗаменитьЛкс(ТекстФайла, "<Name>Русский</Name>", "<Name>Русский</Name><ObjectBelonging>Adopted</ObjectBelonging>");
|
|
||||||
ТекстовыйДокумент.УстановитьТекст(ТекстФайла);
|
|
||||||
ТекстовыйДокумент.Записать(ИмяФайла);
|
|
||||||
|
|
||||||
// Заменим элемент <ChildObjects> в файле Configuration.xml
|
|
||||||
ФайлКонфигурацииИсточника = КаталогВыгрузкиКонфигурации + "\Configuration.xml";
|
|
||||||
ТекстовыйДокумент = Новый ТекстовыйДокумент;
|
|
||||||
ТекстовыйДокумент.Прочитать(ФайлКонфигурацииИсточника);
|
|
||||||
ТекстФайлаИсточника = ТекстовыйДокумент.ПолучитьТекст();
|
|
||||||
ФайлКонфигурацииПриемника = КаталогВыгрузкиРасширения + "\Configuration.xml";
|
|
||||||
ТекстовыйДокумент = Новый ТекстовыйДокумент;
|
|
||||||
ТекстовыйДокумент.Прочитать(ФайлКонфигурацииПриемника);
|
|
||||||
ТекстФайлаПриемника = ТекстовыйДокумент.ПолучитьТекст();
|
|
||||||
ЧтоЗаменить = ирОбщий.СтрокаМеждуМаркерамиЛкс(ТекстФайлаПриемника, "<ChildObjects>", "</ChildObjects>", Ложь, Истина);
|
|
||||||
НаЧтоЗаменить = ирОбщий.СтрокаМеждуМаркерамиЛкс(ТекстФайлаИсточника, "<ChildObjects>", "</ChildObjects>", Ложь, Истина);
|
|
||||||
ТекстФайлаПриемника = ирОбщий.СтрЗаменитьЛкс(ТекстФайлаПриемника, ЧтоЗаменить, НаЧтоЗаменить);
|
|
||||||
ТекстФайлаПриемника = ирОбщий.СтрЗаменитьЛкс(ТекстФайлаПриемника, "<Version>4.00</Version>", "<Version>" + ВерсияРасширения + "</Version>");
|
|
||||||
ТекстФайлаПриемника = ирОбщий.СтрЗаменитьЛкс(ТекстФайлаПриемника, "<Language>Английский</Language>", "");
|
|
||||||
ТекстФайлаПриемника = ирОбщий.СтрЗаменитьЛкс(ТекстФайлаПриемника, "<Language>Украинский</Language>", "");
|
|
||||||
ТекстФайлаПриемника = ирОбщий.СтрЗаменитьЛкс(ТекстФайлаПриемника, "<Interface>ирРазработчик</Interface>", "");
|
|
||||||
ТекстФайлаПриемника = ирОбщий.СтрЗаменитьЛкс(ТекстФайлаПриемника, "<Style>ирОсновной</Style>", "");
|
|
||||||
ТекстФайлаПриемника = ирОбщий.СтрЗаменитьЛкс(ТекстФайлаПриемника, "<Catalog>ирАлгоритмы</Catalog>", "");
|
|
||||||
ТекстФайлаПриемника = ирОбщий.СтрЗаменитьЛкс(ТекстФайлаПриемника, "<Catalog>ирКомандаРедактироватьОбъект</Catalog>", "");
|
|
||||||
ТекстФайлаПриемника = ирОбщий.СтрЗаменитьЛкс(ТекстФайлаПриемника, "<Catalog>ирОбъектыДляОтладки</Catalog>", "");
|
|
||||||
ТекстовыйДокумент.УстановитьТекст(ТекстФайлаПриемника);
|
|
||||||
ТекстовыйДокумент.Записать(ФайлКонфигурацииПриемника);
|
|
||||||
|
|
||||||
// Загрузка расширения из файлов
|
|
||||||
Успех = ирОбщий.ВыполнитьКомандуКонфигуратораЛкс("/LoadConfigFromFiles """ + КаталогВыгрузкиРасширения + """ -Extension """ + ИмяРасширения + """ -Format Hierarchical", , ТекстЛога,,
|
|
||||||
"Загрузка расширения из файлов",, ИсполняемыйФайлПлатформы);
|
|
||||||
УдалитьФайлы(КаталогВыгрузкиРасширения); // Закомментировано для отладки
|
|
||||||
Если Не Успех Тогда
|
|
||||||
Сообщить(ТекстЛога);
|
|
||||||
Возврат Неопределено;
|
|
||||||
КонецЕсли;
|
|
||||||
|
|
||||||
//// Выгружаем расширение в файлы
|
|
||||||
//Успех = ирОбщий.ВыполнитьКомандуКонфигуратораЛкс("/DumpConfigToFiles """ + КаталогВыгрузкиРасширения + """ -Extension """ + ИмяРасширения + """ -Format Hierarchical", , ТекстЛога);
|
|
||||||
//Если Не Успех Тогда
|
|
||||||
// УдалитьФайлы(КаталогВыгрузкиРасширения);
|
|
||||||
// Сообщить(ТекстЛога);
|
|
||||||
// Возврат;
|
|
||||||
//КонецЕсли;
|
|
||||||
//ФайлКонфигурацииИсточника = КаталогВыгрузкиРасширения + "\Configuration.xml";
|
|
||||||
//ТекстовыйДокумент = Новый ТекстовыйДокумент;
|
|
||||||
//ТекстовыйДокумент.Прочитать(ФайлКонфигурацииИсточника);
|
|
||||||
//ТекстФайлаИсточника = ТекстовыйДокумент.ПолучитьТекст();
|
|
||||||
//Предупреждение(1);
|
|
||||||
//ТекстФайлаИсточника = СтрЗаменить(ТекстФайлаИсточника, "<DefaultLanguage>Language.ирРусский</DefaultLanguage>", ""); // На первом проходе в 8.3.10 невозможно сделать
|
|
||||||
//ТекстовыйДокумент.УстановитьТекст(ТекстФайлаИсточника);
|
|
||||||
//ТекстовыйДокумент.Записать(ФайлКонфигурацииИсточника);
|
|
||||||
//
|
|
||||||
//// Загружаем расширение из файлов
|
|
||||||
//Успех = ирОбщий.ВыполнитьКомандуКонфигуратораЛкс("/LoadConfigFromFiles """ + КаталогВыгрузкиРасширения + """ -Extension """ + ИмяРасширения + """ -Format Hierarchical", , ТекстЛога);
|
|
||||||
//Если Не Успех Тогда
|
|
||||||
// УдалитьФайлы(КаталогВыгрузкиРасширения);
|
|
||||||
// Сообщить(ТекстЛога);
|
|
||||||
// Возврат;
|
|
||||||
//КонецЕсли;
|
|
||||||
|
|
||||||
// Выгружаем расширение
|
|
||||||
КонечныйФайл = Каталог + "\ИР " + ВерсияРасширения + ".cfe";
|
|
||||||
Успех = ирОбщий.ВыполнитьКомандуКонфигуратораЛкс("/DumpCfg """ + КонечныйФайл + """ -Extension """ + ИмяРасширения + """", , ТекстЛога,,,, ИсполняемыйФайлПлатформы);
|
|
||||||
Если Не Успех Тогда
|
|
||||||
Сообщить(ТекстЛога);
|
|
||||||
Возврат Неопределено;
|
|
||||||
КонецЕсли;
|
|
||||||
|
|
||||||
Если ирКэш.НомерВерсииПлатформыЛкс() < 803013 Тогда
|
|
||||||
// https://partners.v8.1c.ru/forum/t/1713417/m/1713417
|
|
||||||
Сообщить("Выполните изменение свойства ""Режим совместимости"" расширения, оставив его выключенным");
|
|
||||||
ирОбщий.ВыполнитьКомандуКонфигуратораЛкс("",,,,,,, Ложь);
|
|
||||||
КонецЕсли;
|
|
||||||
Возврат КонечныйФайл;
|
|
||||||
|
|
||||||
КонецФункции
|
|
||||||
|
|
||||||
Процедура КаталогНачалоВыбора(Элемент, СтандартнаяОбработка)
|
|
||||||
|
|
||||||
ирОбщий.ВыбратьКаталогВФормеЛкс(Каталог);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ПриЗакрытии()
|
|
||||||
|
|
||||||
ирОбщий.СохранитьЗначениеЛкс("ирВыпускВариантаРасширение.Каталог", Каталог);
|
|
||||||
ирОбщий.СохранитьЗначениеЛкс("ирВыпускВариантаРасширение.ИсполняемыйФайлПлатформы", ИсполняемыйФайлПлатформы);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ПриОткрытии()
|
|
||||||
|
|
||||||
ЭтаФорма.Каталог = ирОбщий.ВосстановитьЗначениеЛкс("ирВыпускВариантаРасширение.Каталог");
|
|
||||||
ЭтаФорма.ИсполняемыйФайлПлатформы = ирОбщий.ВосстановитьЗначениеЛкс("ирВыпускВариантаРасширение.ИсполняемыйФайлПлатформы");
|
|
||||||
ирОбщий.ЗаполнитьСписокАдминистраторовБазыЛкс(ЭлементыФормы.ИмяПользователя.СписокВыбора);
|
|
||||||
ЭтаФорма.ИмяПользователя = ПользователиИнформационнойБазы.ТекущийПользователь().Имя;
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ПередОткрытием(Отказ, СтандартнаяОбработка)
|
|
||||||
|
|
||||||
Если ирКэш.НомерВерсииПлатформыЛкс() < 803010 Тогда
|
|
||||||
Сообщить("Поддерживается только платформа 8.3.10 и выше");
|
|
||||||
Отказ = Истина;
|
|
||||||
КонецЕсли;
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ИсполняемыйФайлПлатформыНачалоВыбора(Элемент, СтандартнаяОбработка)
|
|
||||||
|
|
||||||
РезультатВыбора = ирОбщий.ВыбратьФайлЛкс(, "exe",, Элемент.Значение);
|
|
||||||
Если ЗначениеЗаполнено(РезультатВыбора) Тогда
|
|
||||||
Элемент.Значение = РезультатВыбора;
|
|
||||||
КонецЕсли;
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
File diff suppressed because it is too large
Load Diff
|
|
@ -1,32 +0,0 @@
|
||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<MetaDataObject xmlns="http://v8.1c.ru/8.3/MDClasses" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:cmi="http://v8.1c.ru/8.2/managed-application/cmi" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" xmlns:style="http://v8.1c.ru/8.1/data/ui/style" xmlns:sys="http://v8.1c.ru/8.1/data/ui/fonts/system" xmlns:v8="http://v8.1c.ru/8.1/data/core" xmlns:v8ui="http://v8.1c.ru/8.1/data/ui" xmlns:web="http://v8.1c.ru/8.1/data/ui/colors/web" xmlns:win="http://v8.1c.ru/8.1/data/ui/colors/windows" xmlns:xen="http://v8.1c.ru/8.3/xcf/enums" xmlns:xpr="http://v8.1c.ru/8.3/xcf/predef" xmlns:xr="http://v8.1c.ru/8.3/xcf/readable" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.9">
|
|
||||||
<CommonForm uuid="07563480-0a24-436e-8a28-b3fee934613d">
|
|
||||||
<Properties>
|
|
||||||
<Name>ирОбновлениеОписанияПлатформы</Name>
|
|
||||||
<Synonym>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>ru</v8:lang>
|
|
||||||
<v8:content>Обновление описания платформы (ИР)</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>en</v8:lang>
|
|
||||||
<v8:content>Обновление описания платформы (ИР)</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>uk</v8:lang>
|
|
||||||
<v8:content>Обновление описания платформы (ИР)</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
</Synonym>
|
|
||||||
<Comment/>
|
|
||||||
<FormType>Ordinary</FormType>
|
|
||||||
<IncludeHelpInContents>false</IncludeHelpInContents>
|
|
||||||
<UsePurposes>
|
|
||||||
<v8:Value xsi:type="app:ApplicationUsePurpose">PlatformApplication</v8:Value>
|
|
||||||
<v8:Value xsi:type="app:ApplicationUsePurpose">MobilePlatformApplication</v8:Value>
|
|
||||||
</UsePurposes>
|
|
||||||
<UseStandardCommands>false</UseStandardCommands>
|
|
||||||
<ExtendedPresentation/>
|
|
||||||
<Explanation/>
|
|
||||||
</Properties>
|
|
||||||
</CommonForm>
|
|
||||||
</MetaDataObject>
|
|
||||||
Binary file not shown.
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
|
|
@ -1,687 +0,0 @@
|
||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<Form xmlns="http://v8.1c.ru/8.3/xcf/logform" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:dcscor="http://v8.1c.ru/8.1/data-composition-system/core" xmlns:dcsset="http://v8.1c.ru/8.1/data-composition-system/settings" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" xmlns:style="http://v8.1c.ru/8.1/data/ui/style" xmlns:sys="http://v8.1c.ru/8.1/data/ui/fonts/system" xmlns:v8="http://v8.1c.ru/8.1/data/core" xmlns:v8ui="http://v8.1c.ru/8.1/data/ui" xmlns:web="http://v8.1c.ru/8.1/data/ui/colors/web" xmlns:win="http://v8.1c.ru/8.1/data/ui/colors/windows" xmlns:xr="http://v8.1c.ru/8.3/xcf/readable" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.9">
|
|
||||||
<VerticalScroll>useIfNecessary</VerticalScroll>
|
|
||||||
<AutoCommandBar name="ФормаКоманднаяПанель" id="-1">
|
|
||||||
<ChildItems>
|
|
||||||
<Button name="ФормаПрочитатьАктуальныеНастройки" id="43">
|
|
||||||
<Type>CommandBarButton</Type>
|
|
||||||
<CommandName>Form.Command.ПрочитатьАктуальныеНастройки</CommandName>
|
|
||||||
<ExtendedTooltip name="ФормаПрочитатьАктуальныеНастройкиРасширеннаяПодсказка" id="55"/>
|
|
||||||
</Button>
|
|
||||||
<Button name="ФормаОбщаяКомандаирОткрытьОтладчик" id="49">
|
|
||||||
<Type>CommandBarButton</Type>
|
|
||||||
<Representation>PictureAndText</Representation>
|
|
||||||
<CommandName>0:3330c3e5-734f-4ba1-b58c-7e86e4965d8d</CommandName>
|
|
||||||
<ExtendedTooltip name="ФормаОбщаяКомандаирОткрытьОтладчикРасширеннаяПодсказка" id="56"/>
|
|
||||||
</Button>
|
|
||||||
<Button name="ФормаОбщаяКомандаирОПодсистеме" id="54">
|
|
||||||
<Type>CommandBarButton</Type>
|
|
||||||
<CommandName>0:60b48362-4a19-4a23-95da-9a9ce4ad14c5</CommandName>
|
|
||||||
<ExtendedTooltip name="ФормаОбщаяКомандаирОПодсистемеРасширеннаяПодсказка" id="57"/>
|
|
||||||
</Button>
|
|
||||||
<Button name="ФормаОПодсистеме" id="83">
|
|
||||||
<Type>CommandBarButton</Type>
|
|
||||||
<CommandName>Form.Command.ОПодсистеме</CommandName>
|
|
||||||
<ExtendedTooltip name="ФормаОПодсистемеРасширеннаяПодсказка" id="84"/>
|
|
||||||
</Button>
|
|
||||||
</ChildItems>
|
|
||||||
</AutoCommandBar>
|
|
||||||
<Events>
|
|
||||||
<Event name="ExternalEvent">ВнешнееСобытие</Event>
|
|
||||||
<Event name="OnCreateAtServer">ПриСозданииНаСервере</Event>
|
|
||||||
</Events>
|
|
||||||
<ChildItems>
|
|
||||||
<CheckBoxField name="ПерехватВнешнихОбработок" id="40">
|
|
||||||
<DataPath>ПерехватВнешнихОбработок</DataPath>
|
|
||||||
<ToolTip>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>ru</v8:lang>
|
|
||||||
<v8:content>Перехват создания внешних обработок для всех пользователей. Выключайте в случае проблем.</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>en</v8:lang>
|
|
||||||
<v8:content>Перехват создания внешних обработок для всех пользователей. Выключайте в случае проблем.</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>uk</v8:lang>
|
|
||||||
<v8:content>Перехват создания внешних обработок для всех пользователей. Выключайте в случае проблем.</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
</ToolTip>
|
|
||||||
<CheckBoxType>Auto</CheckBoxType>
|
|
||||||
<ContextMenu name="ПерехватВнешнихОбработокКонтекстноеМеню" id="41"/>
|
|
||||||
<ExtendedTooltip name="ПерехватВнешнихОбработокРасширеннаяПодсказка" id="58"/>
|
|
||||||
<Events>
|
|
||||||
<Event name="OnChange">ПерехватВнешнихОбработокПриИзменении</Event>
|
|
||||||
</Events>
|
|
||||||
</CheckBoxField>
|
|
||||||
<InputField name="КаталогФайловогоКэша" id="4">
|
|
||||||
<DataPath>КаталогФайловогоКэша</DataPath>
|
|
||||||
<ToolTip>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>ru</v8:lang>
|
|
||||||
<v8:content>Рекомендуется выбирать сетевой каталог, чтобы он был доступен любому серверному и нужным клиентским процессам.</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>en</v8:lang>
|
|
||||||
<v8:content>Рекомендуется выбирать сетевой каталог, чтобы он был доступен любому серверному и нужным клиентским процессам.</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>uk</v8:lang>
|
|
||||||
<v8:content>Рекомендуется выбирать сетевой каталог, чтобы он был доступен любому серверному и нужным клиентским процессам.</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
</ToolTip>
|
|
||||||
<ChoiceButton>true</ChoiceButton>
|
|
||||||
<ClearButton>true</ClearButton>
|
|
||||||
<OpenButton>true</OpenButton>
|
|
||||||
<ContextMenu name="КаталогФайловогоКэшаКонтекстноеМеню" id="5"/>
|
|
||||||
<ExtendedTooltip name="КаталогФайловогоКэшаРасширеннаяПодсказка" id="59"/>
|
|
||||||
<Events>
|
|
||||||
<Event name="OnChange">КаталогФайловогоКэшаПриИзменении</Event>
|
|
||||||
<Event name="StartChoice">КаталогФайловогоКэшаНачалоВыбора</Event>
|
|
||||||
<Event name="Opening">КаталогФайловогоКэшаОткрытие</Event>
|
|
||||||
</Events>
|
|
||||||
</InputField>
|
|
||||||
<CheckBoxField name="ОтладкаДляТекущегоПользователя" id="1">
|
|
||||||
<DataPath>СозданиеВнешнихОбработокЧерезФайл</DataPath>
|
|
||||||
<ToolTip>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>ru</v8:lang>
|
|
||||||
<v8:content>Под текущим пользователем внешние обработки будут создаваться через постоянные файлы и будет доступна их отладка.</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>en</v8:lang>
|
|
||||||
<v8:content>Под текущим пользователем внешние обработки будут создаваться через постоянные файлы и будет доступна их отладка.</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>uk</v8:lang>
|
|
||||||
<v8:content>Под текущим пользователем внешние обработки будут создаваться через постоянные файлы и будет доступна их отладка.</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
</ToolTip>
|
|
||||||
<CheckBoxType>Auto</CheckBoxType>
|
|
||||||
<ContextMenu name="ОтладкаДляТекущегоПользователяКонтекстноеМеню" id="2"/>
|
|
||||||
<ExtendedTooltip name="ОтладкаДляТекущегоПользователяРасширеннаяПодсказка" id="60"/>
|
|
||||||
<Events>
|
|
||||||
<Event name="OnChange">ОтладкаДляТекущегоПользователяПриИзменении</Event>
|
|
||||||
</Events>
|
|
||||||
</CheckBoxField>
|
|
||||||
<LabelDecoration name="НадписьНеРаботаютТочкиОстанова" id="51">
|
|
||||||
<TextColor>style:SpecialTextColor</TextColor>
|
|
||||||
<Title formatted="false">
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>ru</v8:lang>
|
|
||||||
<v8:content>В 8.3.6 точки останова во внешних обработках не работают из-за ошибки платформы</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>en</v8:lang>
|
|
||||||
<v8:content>В 8.3.6 точки останова во внешних обработках не работают из-за ошибки платформы</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>uk</v8:lang>
|
|
||||||
<v8:content>В 8.3.6 точки останова во внешних обработках не работают из-за ошибки платформы</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
</Title>
|
|
||||||
<ContextMenu name="НадписьНеРаботаютТочкиОстановаКонтекстноеМеню" id="52"/>
|
|
||||||
<ExtendedTooltip name="НадписьНеРаботаютТочкиОстановаРасширеннаяПодсказка" id="61"/>
|
|
||||||
</LabelDecoration>
|
|
||||||
<Table name="Список" id="7">
|
|
||||||
<Representation>List</Representation>
|
|
||||||
<ChangeRowSet>false</ChangeRowSet>
|
|
||||||
<AutoInsertNewRow>true</AutoInsertNewRow>
|
|
||||||
<EnableStartDrag>true</EnableStartDrag>
|
|
||||||
<EnableDrag>true</EnableDrag>
|
|
||||||
<FileDragMode>AsFile</FileDragMode>
|
|
||||||
<DataPath>Список</DataPath>
|
|
||||||
<SearchStringLocation>None</SearchStringLocation>
|
|
||||||
<ViewStatusLocation>None</ViewStatusLocation>
|
|
||||||
<SearchControlLocation>None</SearchControlLocation>
|
|
||||||
<RowFilter xsi:nil="true"/>
|
|
||||||
<ContextMenu name="СписокКонтекстноеМеню" id="8"/>
|
|
||||||
<AutoCommandBar name="СписокКоманднаяПанель" id="9">
|
|
||||||
<Autofill>false</Autofill>
|
|
||||||
<ChildItems>
|
|
||||||
<Button name="ВнешниеОбработкиСортироватьСписокПоВозрастанию" id="29">
|
|
||||||
<Type>CommandBarButton</Type>
|
|
||||||
<CommandName>Form.Item.Список.StandardCommand.SortListAsc</CommandName>
|
|
||||||
<LocationInCommandBar>InCommandBarAndInAdditionalSubmenu</LocationInCommandBar>
|
|
||||||
<ExtendedTooltip name="ВнешниеОбработкиСортироватьСписокПоВозрастаниюРасширеннаяПодсказка" id="62"/>
|
|
||||||
</Button>
|
|
||||||
<Button name="ВнешниеОбработкиСортироватьСписокПоУбыванию" id="31">
|
|
||||||
<Type>CommandBarButton</Type>
|
|
||||||
<CommandName>Form.Item.Список.StandardCommand.SortListDesc</CommandName>
|
|
||||||
<LocationInCommandBar>InCommandBarAndInAdditionalSubmenu</LocationInCommandBar>
|
|
||||||
<ExtendedTooltip name="ВнешниеОбработкиСортироватьСписокПоУбываниюРасширеннаяПодсказка" id="63"/>
|
|
||||||
</Button>
|
|
||||||
<Button name="ВнешниеОбработкиОбновить" id="35">
|
|
||||||
<Type>CommandBarButton</Type>
|
|
||||||
<CommandName>Form.Command.ОбновитьСписок</CommandName>
|
|
||||||
<ExtendedTooltip name="ВнешниеОбработкиОбновитьРасширеннаяПодсказка" id="64"/>
|
|
||||||
</Button>
|
|
||||||
<Button name="ВнешниеОбработкиОткрытьВОтладчике" id="33">
|
|
||||||
<Type>CommandBarButton</Type>
|
|
||||||
<CommandName>Form.Command.ОткрытьВОтладчике</CommandName>
|
|
||||||
<ExtendedTooltip name="ВнешниеОбработкиОткрытьВОтладчикеРасширеннаяПодсказка" id="65"/>
|
|
||||||
</Button>
|
|
||||||
<Button name="ВнешниеОбработкиЗагрузитьИзФайла" id="45">
|
|
||||||
<Type>CommandBarButton</Type>
|
|
||||||
<CommandName>Form.Command.ЗагрузитьИзФайла</CommandName>
|
|
||||||
<ExtendedTooltip name="ВнешниеОбработкиЗагрузитьИзФайлаРасширеннаяПодсказка" id="66"/>
|
|
||||||
</Button>
|
|
||||||
<Button name="СписокУдалитьФайлы" id="81">
|
|
||||||
<Type>CommandBarButton</Type>
|
|
||||||
<CommandName>Form.Command.УдалитьФайлы</CommandName>
|
|
||||||
<ExtendedTooltip name="СписокУдалитьФайлыРасширеннаяПодсказка" id="82"/>
|
|
||||||
</Button>
|
|
||||||
</ChildItems>
|
|
||||||
</AutoCommandBar>
|
|
||||||
<ExtendedTooltip name="СписокРасширеннаяПодсказка" id="67"/>
|
|
||||||
<SearchStringAddition name="СписокСтрокаПоиска" id="68">
|
|
||||||
<AdditionSource>
|
|
||||||
<Item>Список</Item>
|
|
||||||
<Type>SearchStringRepresentation</Type>
|
|
||||||
</AdditionSource>
|
|
||||||
<ContextMenu name="СписокСтрокаПоискаКонтекстноеМеню" id="69"/>
|
|
||||||
<ExtendedTooltip name="СписокСтрокаПоискаРасширеннаяПодсказка" id="70"/>
|
|
||||||
</SearchStringAddition>
|
|
||||||
<ViewStatusAddition name="СписокСостояниеПросмотра" id="71">
|
|
||||||
<AdditionSource>
|
|
||||||
<Item>Список</Item>
|
|
||||||
<Type>ViewStatusRepresentation</Type>
|
|
||||||
</AdditionSource>
|
|
||||||
<ContextMenu name="СписокСостояниеПросмотраКонтекстноеМеню" id="72"/>
|
|
||||||
<ExtendedTooltip name="СписокСостояниеПросмотраРасширеннаяПодсказка" id="73"/>
|
|
||||||
</ViewStatusAddition>
|
|
||||||
<SearchControlAddition name="СписокУправлениеПоиском" id="74">
|
|
||||||
<AdditionSource>
|
|
||||||
<Item>Список</Item>
|
|
||||||
<Type>SearchControl</Type>
|
|
||||||
</AdditionSource>
|
|
||||||
<ContextMenu name="СписокУправлениеПоискомКонтекстноеМеню" id="75"/>
|
|
||||||
<ExtendedTooltip name="СписокУправлениеПоискомРасширеннаяПодсказка" id="76"/>
|
|
||||||
</SearchControlAddition>
|
|
||||||
<Events>
|
|
||||||
<Event name="Selection">ВнешниеОбработкиВыбор</Event>
|
|
||||||
</Events>
|
|
||||||
<ChildItems>
|
|
||||||
<InputField name="ВнешниеОбработкиСсылка" id="20">
|
|
||||||
<DataPath>Список.Ссылка</DataPath>
|
|
||||||
<ReadOnly>true</ReadOnly>
|
|
||||||
<EditMode>EnterOnInput</EditMode>
|
|
||||||
<ContextMenu name="ВнешниеОбработкиСсылкаКонтекстноеМеню" id="21"/>
|
|
||||||
<ExtendedTooltip name="ВнешниеОбработкиСсылкаРасширеннаяПодсказка" id="77"/>
|
|
||||||
</InputField>
|
|
||||||
<InputField name="ВнешниеОбработкиИмяФайла" id="23">
|
|
||||||
<DataPath>Список.ИмяФайла</DataPath>
|
|
||||||
<ReadOnly>true</ReadOnly>
|
|
||||||
<EditMode>EnterOnInput</EditMode>
|
|
||||||
<ContextMenu name="ВнешниеОбработкиИмяФайлаКонтекстноеМеню" id="24"/>
|
|
||||||
<ExtendedTooltip name="ВнешниеОбработкиИмяФайлаРасширеннаяПодсказка" id="78"/>
|
|
||||||
</InputField>
|
|
||||||
<InputField name="ВнешниеОбработкиДатаИзмененияФайла" id="26">
|
|
||||||
<DataPath>Список.ДатаИзмененияФайла</DataPath>
|
|
||||||
<ReadOnly>true</ReadOnly>
|
|
||||||
<EditMode>EnterOnInput</EditMode>
|
|
||||||
<ContextMenu name="ВнешниеОбработкиДатаИзмененияФайлаКонтекстноеМеню" id="27"/>
|
|
||||||
<ExtendedTooltip name="ВнешниеОбработкиДатаИзмененияФайлаРасширеннаяПодсказка" id="79"/>
|
|
||||||
</InputField>
|
|
||||||
<CheckBoxField name="ВнешниеОбработкиФайлСоответствуетДанным" id="37">
|
|
||||||
<DataPath>Список.ФайлОтличаетсяОтХранилища</DataPath>
|
|
||||||
<ReadOnly>true</ReadOnly>
|
|
||||||
<EditMode>EnterOnInput</EditMode>
|
|
||||||
<CheckBoxType>Auto</CheckBoxType>
|
|
||||||
<ContextMenu name="ВнешниеОбработкиФайлСоответствуетДаннымКонтекстноеМеню" id="38"/>
|
|
||||||
<ExtendedTooltip name="ВнешниеОбработкиФайлСоответствуетДаннымРасширеннаяПодсказка" id="80"/>
|
|
||||||
</CheckBoxField>
|
|
||||||
</ChildItems>
|
|
||||||
</Table>
|
|
||||||
</ChildItems>
|
|
||||||
<Attributes>
|
|
||||||
<Attribute name="СозданиеВнешнихОбработокЧерезФайл" id="1">
|
|
||||||
<Title>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>ru</v8:lang>
|
|
||||||
<v8:content>Создание внешних обработок через файл</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>en</v8:lang>
|
|
||||||
<v8:content>Создание внешних обработок через файл</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>uk</v8:lang>
|
|
||||||
<v8:content>Создание внешних обработок через файл</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
</Title>
|
|
||||||
<Type>
|
|
||||||
<v8:Type>xs:boolean</v8:Type>
|
|
||||||
</Type>
|
|
||||||
</Attribute>
|
|
||||||
<Attribute name="КаталогФайловогоКэша" id="2">
|
|
||||||
<Title>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>ru</v8:lang>
|
|
||||||
<v8:content>Каталог файлового кэша</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>en</v8:lang>
|
|
||||||
<v8:content>Каталог файлового кэша</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>uk</v8:lang>
|
|
||||||
<v8:content>Каталог файлового кэша</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
</Title>
|
|
||||||
<Type>
|
|
||||||
<v8:Type>xs:string</v8:Type>
|
|
||||||
<v8:StringQualifiers>
|
|
||||||
<v8:Length>0</v8:Length>
|
|
||||||
<v8:AllowedLength>Variable</v8:AllowedLength>
|
|
||||||
</v8:StringQualifiers>
|
|
||||||
</Type>
|
|
||||||
</Attribute>
|
|
||||||
<Attribute name="Список" id="3">
|
|
||||||
<Title>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>ru</v8:lang>
|
|
||||||
<v8:content>Список</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>en</v8:lang>
|
|
||||||
<v8:content>Список</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>uk</v8:lang>
|
|
||||||
<v8:content>Список</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
</Title>
|
|
||||||
<Type>
|
|
||||||
<v8:Type>v8:ValueTable</v8:Type>
|
|
||||||
</Type>
|
|
||||||
<Columns>
|
|
||||||
<Column name="Ссылка" id="1">
|
|
||||||
<Title>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>ru</v8:lang>
|
|
||||||
<v8:content>Ссылка</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>en</v8:lang>
|
|
||||||
<v8:content>Ссылка</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>uk</v8:lang>
|
|
||||||
<v8:content>Ссылка</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
</Title>
|
|
||||||
<Type>
|
|
||||||
<v8:TypeSet>cfg:AnyRef</v8:TypeSet>
|
|
||||||
</Type>
|
|
||||||
</Column>
|
|
||||||
<Column name="ИмяФайла" id="2">
|
|
||||||
<Title>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>ru</v8:lang>
|
|
||||||
<v8:content>Имя файла</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>en</v8:lang>
|
|
||||||
<v8:content>Имя файла</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>uk</v8:lang>
|
|
||||||
<v8:content>Имя файла</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
</Title>
|
|
||||||
<Type>
|
|
||||||
<v8:Type>xs:string</v8:Type>
|
|
||||||
<v8:StringQualifiers>
|
|
||||||
<v8:Length>0</v8:Length>
|
|
||||||
<v8:AllowedLength>Variable</v8:AllowedLength>
|
|
||||||
</v8:StringQualifiers>
|
|
||||||
</Type>
|
|
||||||
</Column>
|
|
||||||
<Column name="ДатаИзмененияФайла" id="3">
|
|
||||||
<Title>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>ru</v8:lang>
|
|
||||||
<v8:content>Дата изменения файла</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>en</v8:lang>
|
|
||||||
<v8:content>Дата изменения файла</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>uk</v8:lang>
|
|
||||||
<v8:content>Дата изменения файла</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
</Title>
|
|
||||||
<Type>
|
|
||||||
<v8:Type>xs:dateTime</v8:Type>
|
|
||||||
<v8:DateQualifiers>
|
|
||||||
<v8:DateFractions>DateTime</v8:DateFractions>
|
|
||||||
</v8:DateQualifiers>
|
|
||||||
</Type>
|
|
||||||
</Column>
|
|
||||||
<Column name="ФайлОтличаетсяОтХранилища" id="4">
|
|
||||||
<Title>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>ru</v8:lang>
|
|
||||||
<v8:content>Файл отличается от хранилища</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>en</v8:lang>
|
|
||||||
<v8:content>Файл отличается от хранилища</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>uk</v8:lang>
|
|
||||||
<v8:content>Файл отличается от хранилища</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
</Title>
|
|
||||||
<Type>
|
|
||||||
<v8:Type>xs:boolean</v8:Type>
|
|
||||||
</Type>
|
|
||||||
</Column>
|
|
||||||
</Columns>
|
|
||||||
</Attribute>
|
|
||||||
<Attribute name="ПерехватВнешнихОбработок" id="4">
|
|
||||||
<Title>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>ru</v8:lang>
|
|
||||||
<v8:content>Перехват внешних обработок</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>en</v8:lang>
|
|
||||||
<v8:content>Перехват внешних обработок</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>uk</v8:lang>
|
|
||||||
<v8:content>Перехват внешних обработок</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
</Title>
|
|
||||||
<Type>
|
|
||||||
<v8:Type>xs:boolean</v8:Type>
|
|
||||||
</Type>
|
|
||||||
</Attribute>
|
|
||||||
<ConditionalAppearance>
|
|
||||||
<dcsset:item>
|
|
||||||
<dcsset:selection>
|
|
||||||
<dcsset:item>
|
|
||||||
<dcsset:field>ВнешниеОбработкиСсылка</dcsset:field>
|
|
||||||
</dcsset:item>
|
|
||||||
<dcsset:item>
|
|
||||||
<dcsset:field>ВнешниеОбработкиИмяФайла</dcsset:field>
|
|
||||||
</dcsset:item>
|
|
||||||
<dcsset:item>
|
|
||||||
<dcsset:field>ВнешниеОбработкиДатаИзмененияФайла</dcsset:field>
|
|
||||||
</dcsset:item>
|
|
||||||
<dcsset:item>
|
|
||||||
<dcsset:field>ВнешниеОбработкиФайлСоответствуетДанным</dcsset:field>
|
|
||||||
</dcsset:item>
|
|
||||||
</dcsset:selection>
|
|
||||||
<dcsset:filter>
|
|
||||||
<dcsset:item xsi:type="dcsset:FilterItemComparison">
|
|
||||||
<dcsset:left xsi:type="dcscor:Field">Список.ФайлОтличаетсяОтХранилища</dcsset:left>
|
|
||||||
<dcsset:comparisonType>Equal</dcsset:comparisonType>
|
|
||||||
<dcsset:right xsi:type="xs:boolean">true</dcsset:right>
|
|
||||||
</dcsset:item>
|
|
||||||
</dcsset:filter>
|
|
||||||
<dcsset:appearance>
|
|
||||||
<dcscor:item xsi:type="dcsset:SettingsParameterValue">
|
|
||||||
<dcscor:parameter>ЦветТекста</dcscor:parameter>
|
|
||||||
<dcscor:value xsi:type="v8ui:Color">web:Sienna</dcscor:value>
|
|
||||||
</dcscor:item>
|
|
||||||
</dcsset:appearance>
|
|
||||||
</dcsset:item>
|
|
||||||
</ConditionalAppearance>
|
|
||||||
</Attributes>
|
|
||||||
<Commands>
|
|
||||||
<Command name="ОбновитьСписок" id="1">
|
|
||||||
<Title>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>ru</v8:lang>
|
|
||||||
<v8:content>Обновить список</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>en</v8:lang>
|
|
||||||
<v8:content>Обновить список</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>uk</v8:lang>
|
|
||||||
<v8:content>Обновить список</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
</Title>
|
|
||||||
<ToolTip>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>ru</v8:lang>
|
|
||||||
<v8:content>Обновить список</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>en</v8:lang>
|
|
||||||
<v8:content>Обновить список</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>uk</v8:lang>
|
|
||||||
<v8:content>Обновить список</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
</ToolTip>
|
|
||||||
<Picture>
|
|
||||||
<xr:Ref>StdPicture.Refresh</xr:Ref>
|
|
||||||
<xr:LoadTransparent>true</xr:LoadTransparent>
|
|
||||||
</Picture>
|
|
||||||
<Action>ОбновитьСписок</Action>
|
|
||||||
<CurrentRowUse>DontUse</CurrentRowUse>
|
|
||||||
</Command>
|
|
||||||
<Command name="ОткрытьВОтладчике" id="2">
|
|
||||||
<Title>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>ru</v8:lang>
|
|
||||||
<v8:content>Открыть в отладчике</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>en</v8:lang>
|
|
||||||
<v8:content>Открыть в отладчике</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>uk</v8:lang>
|
|
||||||
<v8:content>Открыть в отладчике</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
</Title>
|
|
||||||
<ToolTip>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>ru</v8:lang>
|
|
||||||
<v8:content>Открыть файл внешней обработки в уже открытом отладчике. Окна отладчика ищутся по подстроке "Конфигуратор" в заголовке.</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>en</v8:lang>
|
|
||||||
<v8:content>Открыть файл внешней обработки в уже открытом отладчике. Окна отладчика ищутся по подстроке "Конфигуратор" в заголовке.</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>uk</v8:lang>
|
|
||||||
<v8:content>Открыть файл внешней обработки в уже открытом отладчике. Окна отладчика ищутся по подстроке "Конфигуратор" в заголовке.</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
</ToolTip>
|
|
||||||
<Picture>
|
|
||||||
<xr:Ref>CommonPicture.ирКонфигуратор1С8</xr:Ref>
|
|
||||||
<xr:LoadTransparent>true</xr:LoadTransparent>
|
|
||||||
</Picture>
|
|
||||||
<Action>ОткрытьВОтладчике</Action>
|
|
||||||
<Representation>TextPicture</Representation>
|
|
||||||
<CurrentRowUse>DontUse</CurrentRowUse>
|
|
||||||
</Command>
|
|
||||||
<Command name="ПрочитатьАктуальныеНастройки" id="3">
|
|
||||||
<Title>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>ru</v8:lang>
|
|
||||||
<v8:content>Прочитать актуальные настройки</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>en</v8:lang>
|
|
||||||
<v8:content>Прочитать актуальные настройки</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>uk</v8:lang>
|
|
||||||
<v8:content>Прочитать актуальные настройки</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
</Title>
|
|
||||||
<ToolTip>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>ru</v8:lang>
|
|
||||||
<v8:content>Полезно в случае изменения настроек в другом сеансе</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>en</v8:lang>
|
|
||||||
<v8:content>Полезно в случае изменения настроек в другом сеансе</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>uk</v8:lang>
|
|
||||||
<v8:content>Полезно в случае изменения настроек в другом сеансе</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
</ToolTip>
|
|
||||||
<Picture>
|
|
||||||
<xr:Ref>StdPicture.Refresh</xr:Ref>
|
|
||||||
<xr:LoadTransparent>true</xr:LoadTransparent>
|
|
||||||
</Picture>
|
|
||||||
<Action>ПрочитатьАктуальныеНастройки</Action>
|
|
||||||
<CurrentRowUse>DontUse</CurrentRowUse>
|
|
||||||
</Command>
|
|
||||||
<Command name="ЗагрузитьИзФайла" id="4">
|
|
||||||
<Title>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>ru</v8:lang>
|
|
||||||
<v8:content>Загрузить из файла</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>en</v8:lang>
|
|
||||||
<v8:content>Загрузить из файла</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>uk</v8:lang>
|
|
||||||
<v8:content>Загрузить из файла</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
</Title>
|
|
||||||
<ToolTip>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>ru</v8:lang>
|
|
||||||
<v8:content>Загрузить файл в хранилище внешней обработки в базе. После этого он станет использоваться всеми пользователями.</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>en</v8:lang>
|
|
||||||
<v8:content>Загрузить файл в хранилище внешней обработки в базе. После этого он станет использоваться всеми пользователями.</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>uk</v8:lang>
|
|
||||||
<v8:content>Загрузить файл в хранилище внешней обработки в базе. После этого он станет использоваться всеми пользователями.</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
</ToolTip>
|
|
||||||
<Picture>
|
|
||||||
<xr:Ref>CommonPicture.ирЗагрузитьИзФайла</xr:Ref>
|
|
||||||
<xr:LoadTransparent>true</xr:LoadTransparent>
|
|
||||||
</Picture>
|
|
||||||
<Action>ЗагрузитьИзФайла</Action>
|
|
||||||
<Representation>TextPicture</Representation>
|
|
||||||
<CurrentRowUse>DontUse</CurrentRowUse>
|
|
||||||
</Command>
|
|
||||||
<Command name="ОткрытьКонфигуратор" id="5">
|
|
||||||
<Title>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>ru</v8:lang>
|
|
||||||
<v8:content>Открыть конфигуратор</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>en</v8:lang>
|
|
||||||
<v8:content>Открыть конфигуратор</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>uk</v8:lang>
|
|
||||||
<v8:content>Открыть конфигуратор</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
</Title>
|
|
||||||
<ToolTip>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>ru</v8:lang>
|
|
||||||
<v8:content>Открыть конфигуратор</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>en</v8:lang>
|
|
||||||
<v8:content>Открыть конфигуратор</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>uk</v8:lang>
|
|
||||||
<v8:content>Открыть конфигуратор</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
</ToolTip>
|
|
||||||
<Picture>
|
|
||||||
<xr:Ref>CommonPicture.ирКонфигуратор1С8</xr:Ref>
|
|
||||||
<xr:LoadTransparent>true</xr:LoadTransparent>
|
|
||||||
</Picture>
|
|
||||||
<Action>ОткрытьКонфигуратор</Action>
|
|
||||||
<Representation>TextPicture</Representation>
|
|
||||||
<CurrentRowUse>DontUse</CurrentRowUse>
|
|
||||||
</Command>
|
|
||||||
<Command name="УдалитьФайлы" id="6">
|
|
||||||
<Title>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>ru</v8:lang>
|
|
||||||
<v8:content>Удалить файлы</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>en</v8:lang>
|
|
||||||
<v8:content>Удалить файлы</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>uk</v8:lang>
|
|
||||||
<v8:content>Удалить файлы</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
</Title>
|
|
||||||
<ToolTip>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>ru</v8:lang>
|
|
||||||
<v8:content>Удалить выделенные файлы для обновления их из справочника</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>en</v8:lang>
|
|
||||||
<v8:content>Удалить выделенные файлы для обновления их из справочника</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>uk</v8:lang>
|
|
||||||
<v8:content>Удалить выделенные файлы для обновления их из справочника</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
</ToolTip>
|
|
||||||
<Action>ЗаменитьФайлы</Action>
|
|
||||||
</Command>
|
|
||||||
<Command name="ОПодсистеме" id="7">
|
|
||||||
<Title>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>ru</v8:lang>
|
|
||||||
<v8:content>О подсистеме</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>en</v8:lang>
|
|
||||||
<v8:content>О подсистеме</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>uk</v8:lang>
|
|
||||||
<v8:content>О подсистеме</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
</Title>
|
|
||||||
<ToolTip>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>ru</v8:lang>
|
|
||||||
<v8:content>О подсистеме</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>en</v8:lang>
|
|
||||||
<v8:content>О подсистеме</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>uk</v8:lang>
|
|
||||||
<v8:content>О подсистеме</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
</ToolTip>
|
|
||||||
<Picture>
|
|
||||||
<xr:Ref>CommonPicture.ирВопрос</xr:Ref>
|
|
||||||
<xr:LoadTransparent>true</xr:LoadTransparent>
|
|
||||||
</Picture>
|
|
||||||
<Action>ОПодсистеме</Action>
|
|
||||||
<CurrentRowUse>DontUse</CurrentRowUse>
|
|
||||||
</Command>
|
|
||||||
</Commands>
|
|
||||||
</Form>
|
|
||||||
|
|
@ -1,301 +0,0 @@
|
||||||
|
|
||||||
&НаКлиенте
|
|
||||||
Процедура КаталогФайловогоКэшаНачалоВыбора(Элемент, ДанныеВыбора, СтандартнаяОбработка)
|
|
||||||
|
|
||||||
ВыборФайла = Новый ДиалогВыбораФайла(РежимДиалогаВыбораФайла.ВыборКаталога);
|
|
||||||
ВыборФайла.Каталог = КаталогФайловогоКэша;
|
|
||||||
Если Не ВыборФайла.Выбрать() Тогда
|
|
||||||
Возврат;
|
|
||||||
КонецЕсли;
|
|
||||||
ЭтаФорма.КаталогФайловогоКэша = ВыборФайла.Каталог;
|
|
||||||
КаталогФайловогоКэшаПриИзменении();
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
&НаСервере
|
|
||||||
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
|
|
||||||
|
|
||||||
Если Не ирОбщий.ПроверитьЧтоСеансТолстогоКлиентаЛкс() Тогда
|
|
||||||
Отказ = Истина;
|
|
||||||
Возврат;
|
|
||||||
КонецЕсли;
|
|
||||||
Если ирКэш.НомерВерсииБСПЛкс() >= 204 Тогда
|
|
||||||
Если Не ирКэш.ЛиЭтоРасширениеКонфигурацииЛкс() Тогда
|
|
||||||
ирОбщий.СообщитьЛкс("Работа инструмента с БСП 2.4 и выше поддерживается только в варианте Расширение");
|
|
||||||
Отказ = Истина;
|
|
||||||
Возврат;
|
|
||||||
КонецЕсли;
|
|
||||||
Если Метаданные.ОбщиеМодули.Найти("ДополнительныеОтчетыИОбработки") = Неопределено Тогда
|
|
||||||
ирОбщий.СообщитьЛкс("Подсистема БСП внедрена без блока дополнительных отчетов и обработок");
|
|
||||||
Отказ = Истина;
|
|
||||||
Возврат;
|
|
||||||
КонецЕсли;
|
|
||||||
Элементы.ПерехватВнешнихОбработок.Видимость = Ложь;
|
|
||||||
_ДополнительныеОтчетыИОбработки = Вычислить("ДополнительныеОтчетыИОбработки");
|
|
||||||
#Если Сервер И Не Сервер Тогда
|
|
||||||
_ДополнительныеОтчетыИОбработки = ДополнительныеОтчетыИОбработки;
|
|
||||||
#КонецЕсли
|
|
||||||
Попытка
|
|
||||||
_ДополнительныеОтчетыИОбработки.ирПроверкаПодключенияРасширенияМодуля();
|
|
||||||
Исключение
|
|
||||||
ирОбщий.СообщитьЛкс("Необходимо адаптировать расширение командой ""Адаптация расширения"" в разделе ""Инструменты разработчика""/""Администрирование""");
|
|
||||||
Отказ = Истина;
|
|
||||||
Возврат;
|
|
||||||
КонецПопытки;
|
|
||||||
ИначеЕсли ирКэш.НомерВерсииБСПЛкс() < 200 Тогда
|
|
||||||
ирОбщий.СообщитьЛкс("Поддерживаются версии БСП 2.0 и выше. Обнаружена БСП """ + ирКэш.ВерсияБСПЛкс() + """");
|
|
||||||
Отказ = Истина;
|
|
||||||
Возврат;
|
|
||||||
КонецЕсли;
|
|
||||||
Элементы.НадписьНеРаботаютТочкиОстанова.Видимость = ирКэш.НомерВерсииПлатформыЛкс() = 803006;
|
|
||||||
ПрочитатьНастройкиНаСервере();
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
&НаСервере
|
|
||||||
Процедура ПрочитатьНастройкиНаСервере()
|
|
||||||
|
|
||||||
Обработчик = ирСервер.НайтиПерехватВнешнихОбработокБСПЛкс();
|
|
||||||
ЭтаФорма.ПерехватВнешнихОбработок = Обработчик <> Неопределено;
|
|
||||||
Если ПерехватВнешнихОбработок Тогда
|
|
||||||
ЭтаФорма.КаталогФайловогоКэша = Обработчик.КаталогФайловогоКэша;
|
|
||||||
ЭтаФорма.СозданиеВнешнихОбработокЧерезФайл = ХранилищеСистемныхНастроек.Загрузить("ирОтладкаВнешнихОбработок", "СозданиеВнешнихОбработокЧерезФайл");
|
|
||||||
ОбновитьСписокНаСервере();
|
|
||||||
Иначе
|
|
||||||
ЭтаФорма.СозданиеВнешнихОбработокЧерезФайл = Ложь;
|
|
||||||
СохранитьНастройкиПользователяНаСервере();
|
|
||||||
КонецЕсли;
|
|
||||||
ОбновитьДоступность();
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
&НаКлиенте
|
|
||||||
Процедура ОтладкаДляТекущегоПользователяПриИзменении(Элемент)
|
|
||||||
|
|
||||||
Если СозданиеВнешнихОбработокЧерезФайл Тогда
|
|
||||||
Если ЭтаФорма.ПерехватВнешнихОбработок <> Истина Тогда
|
|
||||||
ЭтаФорма.ПерехватВнешнихОбработок = Истина;
|
|
||||||
Если Не СохранитьНастройкиНаСервере() Тогда
|
|
||||||
Возврат;
|
|
||||||
КонецЕсли;
|
|
||||||
КонецЕсли;
|
|
||||||
КонецЕсли;
|
|
||||||
СохранитьНастройкиПользователяНаСервере();
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
&НаСервере
|
|
||||||
Процедура СохранитьНастройкиПользователяНаСервере()
|
|
||||||
|
|
||||||
ХранилищеСистемныхНастроек.Сохранить("ирОтладкаВнешнихОбработок", "СозданиеВнешнихОбработокЧерезФайл", СозданиеВнешнихОбработокЧерезФайл);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
&НаКлиенте
|
|
||||||
Процедура КаталогФайловогоКэшаПриИзменении(Элемент = Неопределено)
|
|
||||||
|
|
||||||
СохранитьНастройкиНаСервере();
|
|
||||||
ОбновитьСписокНаСервере();
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
&НаСервере
|
|
||||||
Функция СохранитьНастройкиНаСервере()
|
|
||||||
|
|
||||||
Если ПерехватВнешнихОбработок Тогда
|
|
||||||
ФайлКаталога = Новый Файл(КаталогФайловогоКэша);
|
|
||||||
Если Не ФайлКаталога.Существует() Тогда
|
|
||||||
Сообщить("Выбранный каталог недоступен серверу. Выберите другой каталог");
|
|
||||||
ПрочитатьНастройкиНаСервере();
|
|
||||||
ЭтаФорма.СозданиеВнешнихОбработокЧерезФайл = Ложь;
|
|
||||||
СохранитьНастройкиПользователяНаСервере();
|
|
||||||
Возврат Ложь;
|
|
||||||
КонецЕсли;
|
|
||||||
ирСервер.ВключитьПерехватВнешнихОбработокБСПЛкс(КаталогФайловогоКэша);
|
|
||||||
Иначе
|
|
||||||
ирСервер.НайтиПерехватВнешнихОбработокБСПЛкс(Истина);
|
|
||||||
КонецЕсли;
|
|
||||||
//ПрочитатьНастройкиНаСервере();
|
|
||||||
Возврат Истина;
|
|
||||||
|
|
||||||
КонецФункции
|
|
||||||
|
|
||||||
&НаСервере
|
|
||||||
Процедура ОбновитьСписокНаСервере()
|
|
||||||
|
|
||||||
Список.Очистить();
|
|
||||||
ОбновитьДоступность();
|
|
||||||
Если Не ЗначениеЗаполнено(КаталогФайловогоКэша) Тогда
|
|
||||||
Возврат;
|
|
||||||
КонецЕсли;
|
|
||||||
Запрос = Новый Запрос;
|
|
||||||
Запрос.Текст = "ВЫБРАТЬ
|
|
||||||
| ДополнительныеОтчетыИОбработки.Ссылка КАК Ссылка,
|
|
||||||
| ДополнительныеОтчетыИОбработки.ИмяФайла
|
|
||||||
|ИЗ
|
|
||||||
| Справочник.ДополнительныеОтчетыИОбработки КАК ДополнительныеОтчетыИОбработки
|
|
||||||
|
|
|
||||||
|УПОРЯДОЧИТЬ ПО
|
|
||||||
| Ссылка
|
|
||||||
|АВТОУПОРЯДОЧИВАНИЕ";
|
|
||||||
Результат = Запрос.Выполнить().Выгрузить();
|
|
||||||
СравнениеЗначений = Новый СравнениеЗначений;
|
|
||||||
Для Каждого СтрокаРезультата Из Результат Цикл
|
|
||||||
СтрокаТаблицы = Список.Добавить();
|
|
||||||
ЗаполнитьЗначенияСвойств(СтрокаТаблицы, СтрокаРезультата);
|
|
||||||
ПолноеИмяФайла = ирСервер.ПолноеИмяФайлаВнешнейОбработкиВФайловомКэшеЛкс(СтрокаТаблицы.Ссылка, КаталогФайловогоКэша);
|
|
||||||
Файл = Новый Файл(ПолноеИмяФайла);
|
|
||||||
СтрокаТаблицы.ИмяФайла = Файл.Имя;
|
|
||||||
Если Файл.Существует() Тогда
|
|
||||||
Попытка
|
|
||||||
ДвоичныеДанныеФайла = Новый ДвоичныеДанные(ПолноеИмяФайла);
|
|
||||||
Исключение
|
|
||||||
Сообщить("Ошибка доступа к файлу """ + ПолноеИмяФайла + """: " + ОписаниеОшибки());
|
|
||||||
Продолжить;
|
|
||||||
КонецПопытки;
|
|
||||||
СтрокаТаблицы.ДатаИзмененияФайла = Файл.ПолучитьВремяИзменения() + ирКэш.ПолучитьСмещениеВремениЛкс();
|
|
||||||
СтрокаТаблицы.ФайлОтличаетсяОтХранилища = СравнениеЗначений.Сравнить(ДвоичныеДанныеФайла, СтрокаТаблицы.Ссылка.ХранилищеОбработки.Получить()) <> 0;
|
|
||||||
КонецЕсли;
|
|
||||||
КонецЦикла;
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
&НаСервере
|
|
||||||
Процедура ОбновитьДоступность()
|
|
||||||
|
|
||||||
Элементы.ВнешниеОбработкиЗагрузитьИзФайла.Доступность = ЗначениеЗаполнено(КаталогФайловогоКэша);
|
|
||||||
Элементы.ВнешниеОбработкиОткрытьВОтладчике.Доступность = ЗначениеЗаполнено(КаталогФайловогоКэша);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
&НаКлиенте
|
|
||||||
Процедура ОбновитьСписок(Команда = Неопределено)
|
|
||||||
|
|
||||||
КлючСтроки = ирОбщий.ТабличноеПолеКлючСтрокиЛкс(Элементы.Список);
|
|
||||||
ОбновитьСписокНаСервере();
|
|
||||||
ирОбщий.ТабличноеПолеВосстановитьТекущуюСтрокуЛкс(Элементы.Список, КлючСтроки, Список);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
&НаКлиенте
|
|
||||||
Процедура ОткрытьВОтладчике(Команда)
|
|
||||||
|
|
||||||
Если Не ирКэш.ЭтоТолстыйКлиентЛкс() Тогда
|
|
||||||
Сообщить("Функция доступна только в толстом клиенте");
|
|
||||||
Возврат;
|
|
||||||
КонецЕсли;
|
|
||||||
ТекущиеДанные = Элементы.Список.ТекущиеДанные;
|
|
||||||
Если ТекущиеДанные = Неопределено Тогда
|
|
||||||
Возврат;
|
|
||||||
КонецЕсли;
|
|
||||||
ПолноеИмяФайла = ирСервер.ПолноеИмяФайлаВнешнейОбработкиВФайловомКэшеЛкс(ТекущиеДанные.Ссылка, КаталогФайловогоКэша);
|
|
||||||
Файл = Новый Файл(ПолноеИмяФайла);
|
|
||||||
Если Не Файл.Существует() Тогда
|
|
||||||
ТекущиеДанные.Ссылка.ХранилищеОбработки.Получить().Записать(ПолноеИмяФайла);
|
|
||||||
КонецЕсли;
|
|
||||||
ирКэш.Получить().ОткрытьФайлВКонфигураторе(ПолноеИмяФайла, "Модуль");
|
|
||||||
ОбновитьСписок();
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
&НаКлиенте
|
|
||||||
Процедура ВнешниеОбработкиВыбор(Элемент, ВыбраннаяСтрока, Поле, СтандартнаяОбработка)
|
|
||||||
|
|
||||||
ОткрытьЗначение(Элемент.ТекущиеДанные.Ссылка);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
&НаКлиенте
|
|
||||||
Процедура ПерехватВнешнихОбработокПриИзменении(Элемент)
|
|
||||||
|
|
||||||
Если Не ПерехватВнешнихОбработок Тогда
|
|
||||||
ЭтаФорма.СозданиеВнешнихОбработокЧерезФайл = Ложь;
|
|
||||||
СохранитьНастройкиПользователяНаСервере();
|
|
||||||
КонецЕсли;
|
|
||||||
СохранитьНастройкиНаСервере();
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
&НаКлиенте
|
|
||||||
Процедура ПрочитатьАктуальныеНастройки(Команда)
|
|
||||||
|
|
||||||
ПрочитатьНастройкиНаСервере();
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
&НаКлиенте
|
|
||||||
Процедура ЗагрузитьИзФайла(Команда)
|
|
||||||
|
|
||||||
ТекущиеДанные = Элементы.Список.ТекущиеДанные;
|
|
||||||
Если ТекущиеДанные = Неопределено Тогда
|
|
||||||
Возврат;
|
|
||||||
КонецЕсли;
|
|
||||||
ЗагрузитьИзФайлаНаСервере(ТекущиеДанные.Ссылка, КаталогФайловогоКэша);
|
|
||||||
ОбновитьСписок();
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
&НаСервереБезКонтекста
|
|
||||||
Процедура ЗагрузитьИзФайлаНаСервере(Ссылка, КаталогФайловогоКэша)
|
|
||||||
|
|
||||||
#Если Сервер И Не Сервер Тогда
|
|
||||||
Ссылка = Справочники.ДополнительныеОтчетыИОбработки.ПустаяСсылка();
|
|
||||||
#КонецЕсли
|
|
||||||
ПолноеИмяФайла = ирСервер.ПолноеИмяФайлаВнешнейОбработкиВФайловомКэшеЛкс(Ссылка, КаталогФайловогоКэша);
|
|
||||||
Файл = Новый Файл(ПолноеИмяФайла);
|
|
||||||
Если Не Файл.Существует() Тогда
|
|
||||||
Возврат;
|
|
||||||
КонецЕсли;
|
|
||||||
ЭтоОтчет = НРег(Файл.Расширение) = ".erf";
|
|
||||||
Если ЭтоОтчет Тогда
|
|
||||||
ОбъектМодуля = ВнешниеОтчеты.Создать(Файл.ПолноеИмя, Ложь);
|
|
||||||
Иначе
|
|
||||||
ОбъектМодуля = ВнешниеОбработки.Создать(Файл.ПолноеИмя, Ложь);
|
|
||||||
КонецЕсли;
|
|
||||||
СведенияМодуля = ОбъектМодуля.СведенияОВнешнейОбработке();
|
|
||||||
УстановитьПривилегированныйРежим(Истина);
|
|
||||||
Объект = Ссылка.ПолучитьОбъект();
|
|
||||||
Объект.Версия = СведенияМодуля.Версия;
|
|
||||||
Объект.ХранилищеОбработки = Новый ХранилищеЗначения(Новый ДвоичныеДанные(Файл.ПолноеИмя));
|
|
||||||
Объект.Записать();
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
&НаКлиенте
|
|
||||||
Процедура КаталогФайловогоКэшаОткрытие(Элемент, СтандартнаяОбработка)
|
|
||||||
|
|
||||||
ЗапуститьПриложение(КаталогФайловогоКэша);
|
|
||||||
СтандартнаяОбработка = Ложь;
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
&НаКлиенте
|
|
||||||
Процедура ВнешнееСобытие(Источник, Событие, Данные) Экспорт
|
|
||||||
|
|
||||||
ирОбщий.Форма_ВнешнееСобытиеЛкс(ЭтаФорма, Источник, Событие, Данные);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
&НаКлиенте
|
|
||||||
Процедура ЗаменитьФайлы(Команда)
|
|
||||||
|
|
||||||
Ответ = Вопрос("Уверены, что хотите удалить выделенные файлы?", РежимДиалогаВопрос.ОКОтмена);
|
|
||||||
Если Ответ <> КодВозвратаДиалога.ОК Тогда
|
|
||||||
Возврат;
|
|
||||||
КонецЕсли;
|
|
||||||
Для Каждого ВыделеннаяСтрока Из Элементы.Список.ВыделенныеСтроки Цикл
|
|
||||||
СтрокаТаблицы = Элементы.Список.ДанныеСтроки(ВыделеннаяСтрока);
|
|
||||||
ПолноеИмяФайла = ирСервер.ПолноеИмяФайлаВнешнейОбработкиВФайловомКэшеЛкс(СтрокаТаблицы.Ссылка, КаталогФайловогоКэша);
|
|
||||||
УдалитьФайлы(ПолноеИмяФайла);
|
|
||||||
КонецЦикла;
|
|
||||||
ОбновитьСписок();
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
&НаКлиенте
|
|
||||||
Процедура ОПодсистеме(Команда)
|
|
||||||
|
|
||||||
ирОбщий.ОткрытьСправкуПоПодсистемеЛкс(ЭтаФорма);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
|
|
@ -1,949 +0,0 @@
|
||||||
#Если Клиент И Не ВебКлиент И Не МобильныйКлиент Тогда
|
|
||||||
|
|
||||||
// Вынесено сюда, чтобы у всех пользователей не компилировался тяжелый общий модуль ирОбщий в варианте Расширение
|
|
||||||
Процедура ОткрытьОднократноАдаптациюРасширенияЛкс(выхПерехватКлавиатуры = Неопределено) Экспорт
|
|
||||||
|
|
||||||
Если Ложь
|
|
||||||
#Если ТонкийКлиент Тогда
|
|
||||||
Или Не ирСервер.ЛиЕстьИнтерактивныйДоступКИнструментамЛкс() // 30мс
|
|
||||||
#Иначе
|
|
||||||
Или Не ПравоДоступа("Просмотр", Метаданные.Подсистемы.ИнструментыРазработчикаTormozit)
|
|
||||||
#КонецЕсли
|
|
||||||
Тогда
|
|
||||||
Возврат;
|
|
||||||
КонецЕсли;
|
|
||||||
|
|
||||||
Если Найти(ПараметрЗапуска, "ОтключитьПерехватКлавиатурыИР") = 0 Тогда
|
|
||||||
#Если Не ТолстыйКлиентОбычноеПриложение Тогда
|
|
||||||
//ирОбщий.ПодключитьПерехватКлавиатурыЛкс(выхПерехватКлавиатуры); // Очень долго из-за инициализации всех модулей
|
|
||||||
СисИнфо = Новый СистемнаяИнформация;
|
|
||||||
Если СисИнфо.ТипПлатформы = ТипПлатформы.Windows_x86_64 Тогда
|
|
||||||
Разрядность = "64";
|
|
||||||
Иначе
|
|
||||||
Разрядность = "32";
|
|
||||||
КонецЕсли;
|
|
||||||
//Успех = ПодключитьВнешнююКомпоненту("Обработка.ирПлатформа.Макет.KeyboardHookZip", "ПерехватКлавиатуры", ТипВнешнейКомпоненты.Native); // На 8.2 работать не будет
|
|
||||||
Успех = ПодключитьВнешнююКомпоненту("Обработка.ирПлатформа.Макет.KeyboardHookWin" + Разрядность, "ПерехватКлавиатуры", ТипВнешнейКомпоненты.Native); // 0.03сек
|
|
||||||
Если Не Успех Тогда
|
|
||||||
#Если ТонкийКлиент Тогда
|
|
||||||
ирОбщий.ПослеУстановкиKeyboardHook();
|
|
||||||
#КонецЕсли
|
|
||||||
КонецЕсли;
|
|
||||||
Попытка
|
|
||||||
выхПерехватКлавиатуры = Новый ("AddIn.ПерехватКлавиатуры.KeyboardHook");
|
|
||||||
Исключение
|
|
||||||
КонецПопытки;
|
|
||||||
Если выхПерехватКлавиатуры <> Неопределено Тогда
|
|
||||||
выхПерехватКлавиатуры.ЗахватПервым = Истина; // Используем не по назначению
|
|
||||||
выхПерехватКлавиатуры.ЗахватРазрешен = Истина;
|
|
||||||
выхПерехватКлавиатуры.СобытиеПриНажатии = Истина;
|
|
||||||
КонецЕсли;
|
|
||||||
#КонецЕсли
|
|
||||||
КонецЕсли;
|
|
||||||
|
|
||||||
#Если Не ТонкийКлиент И Не ВебКлиент И Не МобильныйКлиент Тогда
|
|
||||||
Если Истина
|
|
||||||
И ПравоДоступа("Администрирование", Метаданные)
|
|
||||||
И Метаданные.Справочники.Найти("ирАлгоритмы") = Неопределено
|
|
||||||
Тогда
|
|
||||||
// Это вариант поставки Расширение
|
|
||||||
//ИмяПродуктаЛкс = ирОбщий.ИмяПродуктаЛкс(); // !!! Так при начале каждого сеанса толстого клиента будет компилироваться ирОбщий
|
|
||||||
ИмяПродуктаЛкс = "ИнструментыРазработчикаTormozit";
|
|
||||||
ОткрытьАдаптациюИР = Ложь;
|
|
||||||
ПометкиКоманд = ХранилищеОбщихНастроек.Загрузить(, "ирАдаптацияРасширения.ПометкиКоманд",, ИмяПродуктаЛкс);
|
|
||||||
Если ПометкиКоманд = Неопределено Тогда
|
|
||||||
ПометкиКоманд = Новый Структура;
|
|
||||||
ХранилищеОбщихНастроек.Сохранить(, "ирАдаптацияРасширения.ПометкиКоманд", ПометкиКоманд,, ИмяПродуктаЛкс);
|
|
||||||
Если ХранилищеОбщихНастроек.Загрузить(, "ирАдаптацияРасширения.ПометкиКоманд",, ИмяПродуктаЛкс) = Неопределено Тогда
|
|
||||||
Возврат;
|
|
||||||
КонецЕсли;
|
|
||||||
ОткрытьАдаптациюИР = Истина;
|
|
||||||
КонецЕсли;
|
|
||||||
Если Найти(НРег(ПараметрЗапуска), НРег("ОткрытьАдаптациюИР")) > 0 Тогда
|
|
||||||
ОткрытьАдаптациюИР = Истина;
|
|
||||||
КонецЕсли;
|
|
||||||
Если ОткрытьАдаптациюИР Тогда
|
|
||||||
ОткрытьФормуМодально("ОбщаяФорма.ирАдаптацияРасширения", Новый Структура("Автооткрытие", Истина));
|
|
||||||
КонецЕсли;
|
|
||||||
// Пример пакетного запуска - /CАдаптироватьРасширениеИР;<ПарольПользователя>
|
|
||||||
// http://devtool1c.ucoz.ru/forum/3-1695-1
|
|
||||||
ИмяПараметра = "АдаптироватьРасширениеИР";
|
|
||||||
Если Найти(НРег(ПараметрЗапуска), НРег(ИмяПараметра)) > 0 Тогда
|
|
||||||
ПарольПользователя = ирОбщий.СтрокаМеждуМаркерамиЛкс(ПараметрЗапуска, ИмяПараметра + ";", ";");
|
|
||||||
РезультатАдаптации = ирОбщий.АдаптироватьРасширениеЛкс(ИмяПользователя(), ПарольПользователя);
|
|
||||||
//Если РезультатАдаптации Тогда
|
|
||||||
ПрекратитьРаботуСистемы();
|
|
||||||
Возврат;
|
|
||||||
//КонецЕсли;
|
|
||||||
КонецЕсли;
|
|
||||||
КонецЕсли;
|
|
||||||
ОбработатьПараметрЗапускаДляВсехРежимовЛкс();
|
|
||||||
#КонецЕсли
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
#КонецЕсли
|
|
||||||
|
|
||||||
#Если Не ТонкийКлиент И Не ВебКлиент И Не МобильныйКлиент Тогда
|
|
||||||
|
|
||||||
// Обертка. Добавляет глобальные переменные и методы в контекст поля текстового документа с контекстной подсказкой.
|
|
||||||
//
|
|
||||||
// Параметры
|
|
||||||
// ПолеТекстаПрограммы - ОбработкаОбъект.ПолеТекстаПрограммы.
|
|
||||||
//
|
|
||||||
Процедура ИнициализироватьГлобальныйКонтекстПодсказки(ПолеТекстаПрограммы) Экспорт
|
|
||||||
|
|
||||||
ирОбщий.ИнициироватьГлобальныйКонтекстПодсказкиЛкс(ПолеТекстаПрограммы);
|
|
||||||
|
|
||||||
КонецПроцедуры // ИнициализироватьГлобальныйКонтекстПодсказки()
|
|
||||||
|
|
||||||
Функция ЗначениеПеременнойИзТаблицыЛокальногоКонтекстаЛкс(ИмяПеременной, ТаблицаЛокальногоКонтекста) Экспорт
|
|
||||||
|
|
||||||
СтруктураКлюча = Новый Структура("нСлово, ТипСлова", НРег(ИмяПеременной), "Свойство");
|
|
||||||
НайденныеСтроки = ТаблицаЛокальногоКонтекста.НайтиСтроки(СтруктураКлюча);
|
|
||||||
Если НайденныеСтроки.Количество() > 0 Тогда
|
|
||||||
Возврат НайденныеСтроки[0].Значение;
|
|
||||||
Иначе
|
|
||||||
Возврат Неопределено;
|
|
||||||
КонецЕсли;
|
|
||||||
|
|
||||||
КонецФункции
|
|
||||||
|
|
||||||
// Вычисляет тип значения функции УК по внутренним параметрам и аргументам.
|
|
||||||
// Предназначена для вызвова из ирКлсПолеТекстаПрограммы.
|
|
||||||
//
|
|
||||||
// Параметры:
|
|
||||||
// ТаблицаЛокальногоКонтекста – ТаблицаЗначений – (см. ирКлсПолеТекстаПрограммы);
|
|
||||||
// МассивПараметров - Массив - выражений параметров.
|
|
||||||
//
|
|
||||||
// Возвращаемое значение:
|
|
||||||
// ТаблицаЗначений - ТаблицаСтруктурТипов (см. ирКлсПолеТекстаПрограммы).
|
|
||||||
//
|
|
||||||
Функция ПравилоВычисленияТипаЗначенияКПА(ТаблицаЛокальногоКонтекста, МассивПараметров) Экспорт
|
|
||||||
|
|
||||||
лПлатформа = ирКэш.Получить();
|
|
||||||
ТаблицаСтруктурТипов = лПлатформа.НоваяТаблицаСтруктурТипа();
|
|
||||||
Алгоритм = ЗначениеПеременнойИзТаблицыЛокальногоКонтекстаЛкс(МассивПараметров[0], ТаблицаЛокальногоКонтекста);
|
|
||||||
Если Алгоритм <> Неопределено Тогда
|
|
||||||
Структура = ирКПА(Алгоритм);
|
|
||||||
СтруктураТипа = лПлатформа.СтруктураТипаИзЗначения(Структура);
|
|
||||||
ЗаполнитьЗначенияСвойств(ТаблицаСтруктурТипов.Добавить(), СтруктураТипа);
|
|
||||||
КонецЕсли;
|
|
||||||
Возврат ТаблицаСтруктурТипов;
|
|
||||||
|
|
||||||
КонецФункции // ПравилоВычисленияТипаЗначенияУК()
|
|
||||||
|
|
||||||
// Конструктор Параметров Алгоритма.
|
|
||||||
//
|
|
||||||
// Параметры:
|
|
||||||
// Алгоритм – СправочникСсылка.ирАлгоритмы.
|
|
||||||
//
|
|
||||||
// Возвращаемое значение:
|
|
||||||
// Структура - ключ - имя, значение - значение.
|
|
||||||
//
|
|
||||||
Функция ирКПА(Знач Алгоритм) Экспорт
|
|
||||||
|
|
||||||
#Если Сервер И Не Сервер Тогда
|
|
||||||
Алгоритм = Справочники.ирАлгоритмы.ПустаяСсылка();
|
|
||||||
#КонецЕсли
|
|
||||||
СтруктураПараметров = Новый Структура;
|
|
||||||
Для Каждого СтрокаПараметра Из Алгоритм.Параметры Цикл
|
|
||||||
СтруктураПараметров.Вставить(СтрокаПараметра.Имя, СтрокаПараметра.Значение);
|
|
||||||
КонецЦикла;
|
|
||||||
Возврат СтруктураПараметров;
|
|
||||||
|
|
||||||
КонецФункции // УК()
|
|
||||||
|
|
||||||
// Именованный Вызов Алгоритма. Передача параметров выполняется по имени.
|
|
||||||
//
|
|
||||||
// Параметры:
|
|
||||||
// Алгоритм – СправочникСсылка.ирАлгоритмы, Строка - ссылка или GUID или имя сервиса;
|
|
||||||
// *СтруктураПараметров – Структура, *Неопределено - ключи - имена параметров, значения - значения параметров;
|
|
||||||
// *пНастройкаАлгоритма - СправочникСсылка.НаборыЗначенийПараметров2iS, *Неопределено - набор значений параметров,
|
|
||||||
// имеющий приоритет ниже, чем СтруктураПараметров;
|
|
||||||
// *ПреобразоватьРезультатВСтрокуВнутр - Булево, *Ложь - преобразовать результат в строку внутреннюю (сериализовать)
|
|
||||||
//
|
|
||||||
// Возвращаемое значение:
|
|
||||||
// Произвольный.
|
|
||||||
//
|
|
||||||
Функция ирИВА(Знач Алгоритм, Знач СтруктураПараметров = Неопределено) Экспорт
|
|
||||||
|
|
||||||
Если СтруктураПараметров = Неопределено Тогда
|
|
||||||
СтруктураПараметров = Новый Структура;
|
|
||||||
КонецЕсли;
|
|
||||||
АлгоритмОбъект = ирОбщий.ПолучитьАлгоритмОбъектПоИдентификаторуЛкс(Алгоритм);
|
|
||||||
Результат = ирКэш.Получить().ВыполнитьМетодАлгоритма(АлгоритмОбъект, 1, СтруктураПараметров);
|
|
||||||
Возврат Результат;
|
|
||||||
|
|
||||||
КонецФункции // ирИВА()
|
|
||||||
|
|
||||||
// Позиционный Вызов Алгоритма. Передача параметров выполняется по позиции.
|
|
||||||
//
|
|
||||||
// Параметры
|
|
||||||
// Алгоритм – СправочникСсылка.Сервисы2iS, Строка - ссылки или имя сервиса;
|
|
||||||
// *П... – Произвольный, *Null – параметры сервиса.
|
|
||||||
//
|
|
||||||
// Возвращаемое значение:
|
|
||||||
// Произвольное.
|
|
||||||
//
|
|
||||||
Функция ирПВА(Знач Алгоритм, П0=Null, П1=Null, П2=Null, П3=Null,
|
|
||||||
П4=Null, П5=Null, П6=Null, П7=Null, П8=Null, П9=Null) Экспорт
|
|
||||||
|
|
||||||
АлгоритмОбъект = ирОбщий.ПолучитьАлгоритмОбъектПоИдентификаторуЛкс(Алгоритм);
|
|
||||||
мПлатформа = ирКэш.Получить();
|
|
||||||
#Если Сервер И Не Сервер Тогда
|
|
||||||
мПлатформа = Обработки.ирПлатформа.Создать();
|
|
||||||
#КонецЕсли
|
|
||||||
Результат = мПлатформа.ВыполнитьМетодАлгоритма(АлгоритмОбъект, 0, П0, П1, П2, П3, П4, П5, П6, П7, П8, П9);
|
|
||||||
Возврат Результат;
|
|
||||||
|
|
||||||
КонецФункции // УФ()
|
|
||||||
|
|
||||||
#КонецЕсли
|
|
||||||
|
|
||||||
//#Область ГлобальныеПортативныеМетоды
|
|
||||||
|
|
||||||
#Если Клиент Тогда
|
|
||||||
|
|
||||||
Процедура ВнешнееСобытиеЛкс(Источник, Событие, Данные) Экспорт
|
|
||||||
|
|
||||||
#Если ТонкийКлиент Тогда
|
|
||||||
Если Источник = "KeyboardHook" Тогда
|
|
||||||
КодыКлавиш = ирКэш.КодыКлавишЛкс();
|
|
||||||
Если Ложь
|
|
||||||
Или Найти(Данные, КодыКлавиш["CTRL+~"]) = 1
|
|
||||||
Тогда
|
|
||||||
АктивноеОкно = АктивноеОкно();
|
|
||||||
Если АктивноеОкно <> Неопределено Тогда
|
|
||||||
НавигационнаяСсылка = АктивноеОкно.ПолучитьНавигационнуюСсылку();
|
|
||||||
КонецЕсли;
|
|
||||||
ирОбщий.ПроверитьЧтоСеансТолстогоКлиентаЛкс(НавигационнаяСсылка);
|
|
||||||
КонецЕсли;
|
|
||||||
КонецЕсли;
|
|
||||||
#КонецЕсли
|
|
||||||
|
|
||||||
#Если Не ТонкийКлиент И Не ВебКлиент И Не МобильныйКлиент Тогда
|
|
||||||
Попытка
|
|
||||||
Если Истина
|
|
||||||
И Источник = "KeyboardHook"
|
|
||||||
И (Ложь
|
|
||||||
Или ирКэш.ЛиПортативныйРежимЛкс()
|
|
||||||
Или ПравоДоступа("Просмотр", Метаданные.Подсистемы.ИнструментыРазработчикаTormozit))
|
|
||||||
Тогда
|
|
||||||
ПередатьОбработку = Ложь; // Максимально отсрачиваем компиляцию общего модуля ирОбщий
|
|
||||||
ПерехватКлавиатуры = ирКэш.ПерехватКлавиатурыЛкс();
|
|
||||||
Если ПерехватКлавиатуры.ЗахватПервым = Истина Тогда // Используем не по назначению
|
|
||||||
КодыКлавиш = ирКэш.КодыКлавишЛкс();
|
|
||||||
КлавишиТриггеры = Новый Массив;
|
|
||||||
КлавишиТриггеры.Добавить("CTRL+~");
|
|
||||||
КлавишиТриггеры.Добавить("CTRL+C");
|
|
||||||
КлавишиТриггеры.Добавить("CTRL+V");
|
|
||||||
Для Каждого КлючКлавиши Из КлавишиТриггеры Цикл
|
|
||||||
Если Найти(Данные, КодыКлавиш[КлючКлавиши]) = 1 Тогда
|
|
||||||
ПередатьОбработку = Истина;
|
|
||||||
Прервать;
|
|
||||||
КонецЕсли;
|
|
||||||
КонецЦикла;
|
|
||||||
Иначе
|
|
||||||
ПередатьОбработку = Истина;
|
|
||||||
КонецЕсли;
|
|
||||||
Если ПередатьОбработку Тогда
|
|
||||||
ПерехватКлавиатуры.ЗахватПервым = Ложь; // Используем не по назначению
|
|
||||||
СобытиеОбработано = Ложь;
|
|
||||||
АктивнаяУправляемаяФорма = ирОбщий.АктивнаяУправляемаяФормаЛкс();
|
|
||||||
Если АктивнаяУправляемаяФорма = Неопределено Тогда
|
|
||||||
ирОбщий.УдалитьСсылкиНаЗакрытыеФормыЛкс();
|
|
||||||
Для Каждого ПроверятьПолеHTML Из ирОбщий.БыстрыйМассивЛкс(Ложь, Истина) Цикл
|
|
||||||
Для Каждого Форма Из ирКэш.ОткрытыеФормыЛкс() Цикл
|
|
||||||
СлужебныеДанные = ирОбщий.СлужебныеДанныеФормыЛкс(Форма);
|
|
||||||
Если ирОбщий.Форма_ВводДоступенЛкс(Форма, ПроверятьПолеHTML) Тогда
|
|
||||||
СобытиеОбработано = Истина;
|
|
||||||
Если ирОбщий.ТекущееВремяВМиллисекундахЛкс() - СлужебныеДанные.ДатаОткрытия > 100 Тогда // https://www.hostedredmine.com/issues/892885
|
|
||||||
Если ирОбщий.МетодРеализованЛкс(Форма, "ВнешнееСобытие") Тогда
|
|
||||||
Форма.ВнешнееСобытие(Источник, Событие, Данные);
|
|
||||||
Иначе
|
|
||||||
ирОбщий.СообщитьЛкс(ирОбщий.СтрШаблонИменЛкс("У формы %1 отсутствует экспортный обработчик %2", 1, Форма.Заголовок, 2, "ВнешнееСобытие"));
|
|
||||||
КонецЕсли;
|
|
||||||
КонецЕсли;
|
|
||||||
Прервать;
|
|
||||||
КонецЕсли;
|
|
||||||
КонецЦикла;
|
|
||||||
Если СобытиеОбработано Тогда
|
|
||||||
Прервать;
|
|
||||||
КонецЕсли;
|
|
||||||
КонецЦикла;
|
|
||||||
КонецЕсли;
|
|
||||||
Если Не СобытиеОбработано Тогда
|
|
||||||
ирОбщий.Форма_ВнешнееСобытиеЛкс(, Источник, Событие, Данные);
|
|
||||||
КонецЕсли;
|
|
||||||
КонецЕсли;
|
|
||||||
//Сообщить(Данные); // Отладка
|
|
||||||
КонецЕсли;
|
|
||||||
Исключение
|
|
||||||
// Антибаг платформы https://www.hostedredmine.com/issues/890762
|
|
||||||
Сообщить(ОписаниеОшибки(), СтатусСообщения.Внимание);
|
|
||||||
КонецПопытки;
|
|
||||||
#КонецЕсли
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
#КонецЕсли
|
|
||||||
|
|
||||||
#Если Клиент И Не ТонкийКлиент И Не ВебКлиент И Не МобильныйКлиент Тогда
|
|
||||||
|
|
||||||
Процедура ОбработатьПараметрЗапускаДляВсехРежимовЛкс() Экспорт
|
|
||||||
|
|
||||||
МаркерОткрытьФорму = "ОткрытьФормуИР.";
|
|
||||||
Если Найти(ПараметрЗапуска, МаркерОткрытьФорму) > 0 Тогда
|
|
||||||
ИмяФормы = ирОбщий.СтрокаМеждуМаркерамиЛкс(ПараметрЗапуска, МаркерОткрытьФорму, ";");
|
|
||||||
Форма = ирОбщий.ПолучитьФормуЛкс(ИмяФормы);
|
|
||||||
Если Форма <> Неопределено Тогда
|
|
||||||
Форма.Открыть();
|
|
||||||
КонецЕсли;
|
|
||||||
КонецЕсли;
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
///////////////////////////////////////////////////////////////////////////////
|
|
||||||
// ОБРАБОТЧИКИ ОЖИДАНИЯ
|
|
||||||
|
|
||||||
Процедура ОсвободитьВсеИндикаторыПроцессовОтложенноЛкс() Экспорт
|
|
||||||
|
|
||||||
ирОбщий.ОсвободитьВсеИндикаторыПроцессовЛкс();
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура СохранитьНастройкиПользователяОтложенноЛкс() Экспорт
|
|
||||||
|
|
||||||
СохранитьНастройкиПользователя();
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ВыполнитьПроверкуСовместимостиКонфигурацииЛкс() Экспорт
|
|
||||||
|
|
||||||
//мПлатформа = ирКэш.Получить();
|
|
||||||
//#Если Сервер И Не Сервер Тогда
|
|
||||||
// мПлатформа = Обработки.ирПлатформа.Создать();
|
|
||||||
//#КонецЕсли
|
|
||||||
#Если ТолстыйКлиентОбычноеПриложение ИЛИ ТолстыйКлиентУправляемоеПриложение Тогда
|
|
||||||
Если ирОбщий.ВосстановитьЗначениеЛкс("ПроверятьПодпискиКонфигурации", Истина) <> Ложь Тогда
|
|
||||||
ирОбщий.ПроверитьПодпискиЛкс();
|
|
||||||
КонецЕсли;
|
|
||||||
#Если ТолстыйКлиентОбычноеПриложение Тогда
|
|
||||||
Если Истина
|
|
||||||
И Метаданные.ОсновнойРежимЗапуска = РежимЗапускаКлиентскогоПриложения.УправляемоеПриложение
|
|
||||||
И Не Метаданные.ИспользоватьУправляемыеФормыВОбычномПриложении
|
|
||||||
Тогда
|
|
||||||
Сообщить("Рекомендуется включить в свойствах конфигурации флажок ""Использовать управляемые формы в обычном приложении""");
|
|
||||||
КонецЕсли;
|
|
||||||
#КонецЕсли
|
|
||||||
#КонецЕсли
|
|
||||||
//#Если ТолстыйКлиентУправляемоеПриложение Тогда
|
|
||||||
// ирОбщий.ПроверитьФлажокИспользоватьОбычныеФормыВУправляемомПриложенииЛкс();
|
|
||||||
//#КонецЕсли
|
|
||||||
//Если Метаданные.ВариантВстроенногоЯзыка = Метаданные.СвойстваОбъектов.ВариантВстроенногоЯзыка.Английский Тогда
|
|
||||||
// Сообщить("Подсистема не полностью поддерживает вариант встроенного языка Английский.", СтатусСообщения.Внимание);
|
|
||||||
//КонецЕсли;
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ГлобальныйОбработчикОжиданияСПараметрамиЛкс() Экспорт
|
|
||||||
|
|
||||||
ирОбщий.ОбработчикОжиданияСПараметрамиЛкс();
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ПроверитьОтмененныеФоновыеЗаданияОтложенноЛкс() Экспорт
|
|
||||||
|
|
||||||
мПлатформа = ирКэш.Получить();
|
|
||||||
#Если Сервер И Не Сервер Тогда
|
|
||||||
мПлатформа = Обработки.ирПлатформа.Создать();
|
|
||||||
#КонецЕсли
|
|
||||||
Для Каждого Идентификатор Из мПлатформа.ОтмененныеФоновыеЗадания Цикл
|
|
||||||
ФоновоеЗадание = ФоновыеЗадания.НайтиПоУникальномуИдентификатору(Идентификатор);
|
|
||||||
Если ФоновоеЗадание <> Неопределено И ФоновоеЗадание.Состояние = СостояниеФоновогоЗадания.Активно Тогда
|
|
||||||
ирОбщий.СообщитьЛкс(ирОбщий.СтрШаблонИменЛкс("Фоновое задание %1, которому была отправлена команда отмены, продолжает выполняться",, ФоновоеЗадание.Наименование + ". " + ФоновоеЗадание.Ключ),
|
|
||||||
СтатусСообщения.Внимание);
|
|
||||||
КонецЕсли;
|
|
||||||
КонецЦикла;
|
|
||||||
мПлатформа.ОтмененныеФоновыеЗадания.Очистить();
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ОткрытьСтруктуруАктивнойФормыЛкс(Параметры) Экспорт
|
|
||||||
|
|
||||||
ТекущаяФорма = Параметры.Форма;
|
|
||||||
//ТекущаяФорма = ирОбщий.АктивнаяУправляемаяФормаЛкс();
|
|
||||||
Если ТекущаяФорма <> Неопределено Тогда
|
|
||||||
ирОбщий.ОткрытьСтруктуруФормыЛкс(ТекущаяФорма);
|
|
||||||
КонецЕсли;
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура РедактироватьОбъектАктивнойФормыЛкс(Параметры) Экспорт
|
|
||||||
|
|
||||||
Форма = Неопределено;
|
|
||||||
Ссылка = ирОбщий.КлючОсновногоОбъектаУправляемойФормыЛкс(Форма);
|
|
||||||
Если Ссылка <> Неопределено Тогда
|
|
||||||
КлючСтроки = Неопределено;
|
|
||||||
ИмяПоляБД = ирОбщий.НайтиПутьКДаннымПоляТаблицыФормыЛкс(Ссылка, Форма.ТекущийЭлемент.Имя);
|
|
||||||
Если ТипЗнч(Форма.ТекущийЭлемент) = Тип("ТаблицаФормы") Тогда
|
|
||||||
ИмяТЧБД = ИмяПоляБД;
|
|
||||||
ИмяПоляБД = "";
|
|
||||||
Если Форма.ТекущийЭлемент.ТекущийЭлемент <> Неопределено Тогда
|
|
||||||
ИмяПоляБД = ирОбщий.ПутьКДаннымКолонкиТабличногоПоляЛкс(Форма.ТекущийЭлемент);
|
|
||||||
КонецЕсли;
|
|
||||||
ДанныеТаблицыФормы = ирОбщий.ДанныеЭлементаФормыЛкс(Форма.ТекущийЭлемент);
|
|
||||||
Если Форма.ТекущийЭлемент.ТекущаяСтрока <> Неопределено И ирОбщий.ЛиДанныеФормыСВозможностьюПоискаЛкс(ДанныеТаблицыФормы) Тогда
|
|
||||||
КлючСтроки = Новый Структура("НомерСтроки", ДанныеТаблицыФормы.Индекс(ДанныеТаблицыФормы.НайтиПоИдентификатору(Форма.ТекущийЭлемент.ТекущаяСтрока)) + 1);
|
|
||||||
КонецЕсли;
|
|
||||||
КонецЕсли;
|
|
||||||
//Если ПоляТаблицы.Найти(ИмяТЧБД, "Имя") = Неопределено Тогда
|
|
||||||
// ИмяТЧБД = "";
|
|
||||||
//КонецЕсли;
|
|
||||||
//ИмяДочернейТаблицыБД = Ссылка.Метаданные().ПолноеИмя();
|
|
||||||
//Если ЗначениеЗаполнено(ИмяТЧБД) Тогда
|
|
||||||
// ИмяДочернейТаблицыБД = ИмяДочернейТаблицыБД + "." + ИмяТЧБД;
|
|
||||||
//КонецЕсли;
|
|
||||||
//ПоляТаблицы = ирОбщий.ПоляТаблицыБДЛкс(ИмяДочернейТаблицыБД);
|
|
||||||
//Если ПоляТаблицы.Найти(ИмяПоляБД, "Имя") = Неопределено Тогда
|
|
||||||
// ИмяПоляБД = "";
|
|
||||||
//КонецЕсли;
|
|
||||||
ирОбщий.ОткрытьСсылкуВРедактореОбъектаБДЛкс(Ссылка,, ИмяТЧБД, ИмяПоляБД, КлючСтроки);
|
|
||||||
КонецЕсли;
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура КопироватьСсылкуАктивнойФормыЛкс(Параметры) Экспорт
|
|
||||||
|
|
||||||
Форма = Неопределено;
|
|
||||||
Ссылка = ирОбщий.КлючОсновногоОбъектаУправляемойФормыЛкс(Форма);
|
|
||||||
Если Ссылка <> Неопределено Тогда
|
|
||||||
ирОбщий.БуферОбменаПриложения_УстановитьЗначениеЛкс(Ссылка);
|
|
||||||
КонецЕсли;
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура РедактироватьОбъектСтрокиАктивнойФормыЛкс(Параметры) Экспорт
|
|
||||||
|
|
||||||
КлючТекущейСтроки = Неопределено;
|
|
||||||
Форма = Параметры.Форма;
|
|
||||||
ирОбщий.КлючиСтрокБДИзТаблицыФормыЛкс(Форма, КлючТекущейСтроки);
|
|
||||||
Если КлючТекущейСтроки <> Неопределено Тогда
|
|
||||||
ДанныеКолонки = ирОбщий.ПутьКДаннымКолонкиТабличногоПоляЛкс(Форма.ТекущийЭлемент);
|
|
||||||
ирОбщий.ОткрытьСсылкуВРедактореОбъектаБДЛкс(КлючТекущейСтроки,,, ДанныеКолонки);
|
|
||||||
КонецЕсли;
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура РедактироватьОбъектТекущегоПоляАктивнойФормыЛкс(Параметры) Экспорт
|
|
||||||
|
|
||||||
КлючТекущейСтроки = Неопределено;
|
|
||||||
ирОбщий.СсылкиИзТекущейКолонкиВыделенныхСтрокТаблицыЛкс(Параметры.Форма, КлючТекущейСтроки);
|
|
||||||
Если КлючТекущейСтроки <> Неопределено Тогда
|
|
||||||
ирОбщий.ОткрытьСсылкуВРедактореОбъектаБДЛкс(КлючТекущейСтроки);
|
|
||||||
КонецЕсли;
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ОткрытьОбъектТекущегоПоляАктивнойФормыЛкс(Параметры) Экспорт
|
|
||||||
|
|
||||||
КлючТекущейСтроки = Неопределено;
|
|
||||||
Ссылки = ирОбщий.СсылкиИзТекущейКолонкиВыделенныхСтрокТаблицыЛкс(Параметры.Форма, КлючТекущейСтроки);
|
|
||||||
Если КлючТекущейСтроки <> Неопределено Тогда
|
|
||||||
ирОбщий.ОткрытьЗначениеЛкс(КлючТекущейСтроки);
|
|
||||||
КонецЕсли;
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ОбработатьОбъектыАктивнойФормыЛкс(Параметры) Экспорт
|
|
||||||
|
|
||||||
КлючТекущейСтроки = Неопределено;
|
|
||||||
ТаблицаФормыДинамическогоСписка = Неопределено;
|
|
||||||
Ссылки = ирОбщий.КлючиСтрокБДИзТаблицыФормыЛкс(Параметры.Форма, КлючТекущейСтроки, ТаблицаФормыДинамическогоСписка);
|
|
||||||
Если Ссылки.Количество() > 0 Тогда
|
|
||||||
Если ТаблицаФормыДинамическогоСписка <> Неопределено Тогда
|
|
||||||
ирОбщий.ОткрытьПодборИОбработкуОбъектовИзТабличногоПоляДинамическогоСпискаЛкс(ТаблицаФормыДинамическогоСписка,, Ссылки);
|
|
||||||
Иначе
|
|
||||||
ирОбщий.ОткрытьМассивОбъектовВПодбореИОбработкеОбъектовЛкс(Ссылки,,,, КлючТекущейСтроки);
|
|
||||||
КонецЕсли;
|
|
||||||
КонецЕсли;
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ОбработатьОбъектыТекущегоПоляАктивнойФормыЛкс(Параметры) Экспорт
|
|
||||||
|
|
||||||
КлючТекущейСтроки = Неопределено;
|
|
||||||
Ссылки = ирОбщий.СсылкиИзТекущейКолонкиВыделенныхСтрокТаблицыЛкс(Параметры.Форма, КлючТекущейСтроки);
|
|
||||||
Если Ссылки.Количество() > 0 Тогда
|
|
||||||
ирОбщий.ОткрытьМассивОбъектовВПодбореИОбработкеОбъектовЛкс(Ссылки,,,, КлючТекущейСтроки);
|
|
||||||
КонецЕсли;
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ОткрытьТаблицуАктивнойФормыЛкс(Параметры) Экспорт
|
|
||||||
|
|
||||||
ирОбщий.ОткрытьТаблицуЗначенийИзАктивнойУправляемойФормыЛкс(Параметры.Форма);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ОткрытьТабличныйДокументАктивнойФормыЛкс(Параметры) Экспорт
|
|
||||||
|
|
||||||
ирОбщий.ОткрытьТабличныйДокументИзАктивнойУправляемойФормыЛкс(Параметры.Форма);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура СравнитьТаблицуАктивнойФормыЛкс(Параметры) Экспорт
|
|
||||||
|
|
||||||
ирОбщий.СравнитьТаблицуИзАктивнойУправляемойФормыЛкс(Параметры.Форма);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ОткрытьРазличныеЗначенияКолонкиАктивнойФормыЛкс(Параметры) Экспорт
|
|
||||||
|
|
||||||
ирОбщий.ОткрытьРазличныеЗначенияКолонкиАктивнойУправляемойФормыЛкс(Параметры.Форма);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура УстановитьЗначениеВКолонкеАктивнойФормыЛкс(Параметры) Экспорт
|
|
||||||
|
|
||||||
Форма = Параметры.Форма;
|
|
||||||
ТекущийЭлемент = ирОбщий.ТекущийЭлементАктивнойФормыЛкс(Форма);
|
|
||||||
Если Истина
|
|
||||||
И ТипЗнч(ТекущийЭлемент) <> Тип("ТаблицаФормы")
|
|
||||||
И ТипЗнч(ТекущийЭлемент) <> Тип("ТабличноеПоле")
|
|
||||||
Тогда
|
|
||||||
Возврат;
|
|
||||||
КонецЕсли;
|
|
||||||
ирОбщий.ОткрытьМенеджерТабличногоПоляЛкс(ТекущийЭлемент, Форма, "Обработка");
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ОтладитьКомпоновкуДанныхАктивнойФормыЛкс(Параметры) Экспорт
|
|
||||||
|
|
||||||
ирОбщий.ОтладитьКомпоновкуДанныхАктивнойУправляемойФормыЛкс(Параметры.Форма);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура РедактироватьАктивныйСписокЗначенийЛкс(Параметры) Экспорт
|
|
||||||
|
|
||||||
ирОбщий.РедактироватьАктивныйСписокЗначенийУправляемыйЛкс(Параметры.Форма);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура НастроитьДинамическийСписокАктивнойФормыЛкс(Параметры) Экспорт
|
|
||||||
|
|
||||||
ирОбщий.НастроитьДинамическийСписокАктивнойУправляемойФормыЛкс(Параметры.Форма);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ОткрытьДинамическийСписокАктивнойФормыЛкс(Параметры) Экспорт
|
|
||||||
|
|
||||||
ирОбщий.ОткрытьДинамическийСписокАктивнойУправляемойФормыЛкс(Параметры.Форма);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура НайтиВыбратьСсылкуВДинамическомСпискеАктивнойФормыЛкс(Параметры) Экспорт
|
|
||||||
|
|
||||||
ирОбщий.НайтиВыбратьСсылкуВДинамическомСпискеАктивнойУправляемойФормыЛкс(Параметры.Форма);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ОткрытьМенеджерТабличногоПоляАктивнойФормыЛкс(Параметры) Экспорт
|
|
||||||
|
|
||||||
ирОбщий.ОткрытьМенеджерТабличногоПоляЛкс(, Параметры.Форма);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура СообщитьКоличествоСтрокАктивнойТаблицыЛкс(Параметры) Экспорт
|
|
||||||
|
|
||||||
ирОбщий.ТабличноеПолеИлиТаблицаФормы_СколькоСтрокЛкс(Параметры.Форма.ТекущийЭлемент);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура Сравнить2СтрокиАктивнойФормыЛкс(Параметры) Экспорт
|
|
||||||
|
|
||||||
ирОбщий.ТабличноеПолеИлиТаблицаФормы_Сравнить2СтрокиЛкс(Параметры.Форма, Параметры.Форма.ТекущийЭлемент);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ВставитьСкопированнуюСсылкуАктивнойФормыЛкс(Параметры) Экспорт
|
|
||||||
|
|
||||||
ирОбщий.БуферОбмена_ВставитьЛкс(Параметры.Форма);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура КопироватьСсылкуАктивнойСтрокиАктивнойФормыЛкс(Параметры) Экспорт
|
|
||||||
|
|
||||||
КлючТекущейСтроки = Неопределено;
|
|
||||||
Форма = Параметры.Форма;
|
|
||||||
ирОбщий.КлючиСтрокБДИзТаблицыФормыЛкс(Форма, КлючТекущейСтроки);
|
|
||||||
Если КлючТекущейСтроки <> Неопределено Тогда
|
|
||||||
ирОбщий.БуферОбменаПриложения_УстановитьЗначениеЛкс(КлючТекущейСтроки);
|
|
||||||
КонецЕсли;
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ОткрытьТекстАктивнойФормыЛкс(Параметры) Экспорт
|
|
||||||
|
|
||||||
АктивнаяФорма = Параметры.Форма;
|
|
||||||
Текст = ирОбщий.Форма_ЗначениеТекущегоПоляЛкс(АктивнаяФорма);
|
|
||||||
ирОбщий.ОткрытьТекстЛкс(Текст,, "",, АктивнаяФорма.ТекущийЭлемент);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
// Антибаг платформы https://www.hostedredmine.com/issues/929519
|
|
||||||
// 8мс
|
|
||||||
Процедура ВосстановитьФокусВводаЛкс() Экспорт
|
|
||||||
|
|
||||||
ФормаПустышка = ирКэш.ФормаПустышкаЛкс();
|
|
||||||
ФормаПустышка.Открыть();
|
|
||||||
ФормаПустышка.Закрыть();
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
// Антибаг платформы https://www.hostedredmine.com/issues/926161
|
|
||||||
Процедура АктивироватьАктивнуюФормуЛкс() Экспорт
|
|
||||||
|
|
||||||
АктивнаяФорма = ирОбщий.АктивнаяФормаЛкс();
|
|
||||||
Если АктивнаяФорма = Неопределено Тогда
|
|
||||||
Возврат;
|
|
||||||
КонецЕсли;
|
|
||||||
ВосстановитьФокусВводаЛкс();
|
|
||||||
ирОбщий.Форма_АктивироватьОткрытьЛкс(АктивнаяФорма);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
#КонецЕсли
|
|
||||||
|
|
||||||
////////////////////////////////////////////////////////////////////////////////
|
|
||||||
// ОТЛАДКА
|
|
||||||
|
|
||||||
// Обертка ирОбщий.ПрЛкс(). Присваивает первому параметру второй.
|
|
||||||
// Удобно вызывать из отладчика через диалог "Вычислить выражение".
|
|
||||||
//
|
|
||||||
// Параметры:
|
|
||||||
// П1 – Произвольный – параметр1;
|
|
||||||
// П2 – Произвольный – параметр2;
|
|
||||||
//
|
|
||||||
// Возвращаемое значение:
|
|
||||||
// П2 – Не используется.
|
|
||||||
//
|
|
||||||
Функция Пр(п1, п2 = Неопределено) Экспорт
|
|
||||||
|
|
||||||
Результат = ирОбщий.ПрЛкс(п1, п2);
|
|
||||||
Возврат Результат;
|
|
||||||
|
|
||||||
КонецФункции // Присвоить()
|
|
||||||
|
|
||||||
// Обертка ирОбщий.ДуЛкс(). Выполняет программный код, переданный в параметре.
|
|
||||||
// Остальные параметры могут участвовать в теле этого кода. Вернуть результат можно через переменную Р.
|
|
||||||
// Удобно использовать в отладчике.
|
|
||||||
//
|
|
||||||
// Параметры:
|
|
||||||
// П1 – Произвольный – параметр1;
|
|
||||||
// П2 – Произвольный – параметр2;
|
|
||||||
// П3 – Произвольный – параметр3;
|
|
||||||
// П4 – Произвольный – параметр4;
|
|
||||||
//
|
|
||||||
// Возвращаемое значение:
|
|
||||||
// Неопределено – Не используется.
|
|
||||||
//
|
|
||||||
Функция Ду(Знач ТекстПрограммы, п1 = 0, п2 = 0, п3 = 0, п4 = 0) Экспорт
|
|
||||||
|
|
||||||
Результат = ирОбщий.ДуЛкс(ТекстПрограммы, п1, п2, п3, п4);
|
|
||||||
Возврат Результат;
|
|
||||||
|
|
||||||
КонецФункции
|
|
||||||
|
|
||||||
// Обертка ирОбщий.ОперироватьЛкс(). На клиенте открывает консоль кода с передачей туда всех своих параметров. На сервере сразу выполняет код.
|
|
||||||
// Изменения параметров возвращаются в вызывающий контекст в модальном режиме.
|
|
||||||
//
|
|
||||||
// Параметры:
|
|
||||||
// ТекстПрограммы - Строка - программный код для передачи в консоль кода или выполнения;
|
|
||||||
// РежимОперации – Число - 0 - немодально, 1 - модально, 2 - неинтерактивно (на сервере всегда);
|
|
||||||
// СтрокаИменПараметров – Строка - имена параметров для консоли кода через запятую, если не указаны, то будут оригинальные П*;
|
|
||||||
// П* – Произвольный - параметры для использования при выполнении программного кода;
|
|
||||||
//
|
|
||||||
// Возвращаемое значение:
|
|
||||||
// Строка - описание ошибок.
|
|
||||||
//
|
|
||||||
Функция Оперировать(Знач ТекстПрограммы = "", Знач РежимОперации = 0, СтрокаИменПараметров= "",
|
|
||||||
П1 = Null, П2 = Null, П3 = Null, П4 = Null, П5 = Null, П6 = Null, П7 = Null, П8 = Null, П9 = Null) Экспорт
|
|
||||||
|
|
||||||
Результат = ирОбщий.ОперироватьЛкс(ТекстПрограммы, РежимОперации, СтрокаИменПараметров, П1, П2, П3, П4, П5, П6, П7, П8, П9);
|
|
||||||
Возврат Результат;
|
|
||||||
|
|
||||||
КонецФункции // РП()
|
|
||||||
|
|
||||||
// Обертка ирОбщий.ПерЛкс(). Подготавливает строку для помещения всех переменных в структуру с целью ее дальнейшего вычисления в отладчике "Вычислить(Пер())".
|
|
||||||
//
|
|
||||||
// Параметры:
|
|
||||||
// ТекстПрограммы - Строка, *"" - на клиенте можно не указывать и тогда текст будет браться из буфера обмена, можно вставить имена локальных переменных выведенных в табличный документ
|
|
||||||
//
|
|
||||||
// Возвращаемое значение:
|
|
||||||
// Строка для вычисления в отладчике.
|
|
||||||
//
|
|
||||||
Функция Пер(Знач ТекстПрограммы = "") Экспорт
|
|
||||||
|
|
||||||
Результат = ирОбщий.ПерЛкс(ТекстПрограммы);
|
|
||||||
Возврат Результат;
|
|
||||||
|
|
||||||
КонецФункции
|
|
||||||
|
|
||||||
// Обертка ирОбщий.ПолВТЛкс(). Функция получает структуру (Имя временной таблицы; Таблица значений) из указанного запроса или менеджера временных таблиц.
|
|
||||||
// Полезна для просмотра временных таблиц из менеджера временных таблиц серверного контекста в отладчике.
|
|
||||||
// Параметры:
|
|
||||||
// ЗапросИлиМенеджерВременныхТаблиц - Запрос, МенеджерВременныхТаблиц
|
|
||||||
// ИменаВременныхТаблиц - Строка, *"" - имена существующих, но возможно не используемых в тексте запроса временных таблиц через запятую
|
|
||||||
// ДопустимоеЧислоСтрок - Число, *500000 - выбирать из временной таблицы не более этого числа строк
|
|
||||||
//
|
|
||||||
// Результат - ТаблицаЗначений, Структура
|
|
||||||
//
|
|
||||||
Функция ПолВТ(ЗапросИлиМенеджерВременныхТаблиц, ИменаВременныхТаблиц = "", ДопустимоеЧислоСтрок = 500000) Экспорт
|
|
||||||
|
|
||||||
Результат = ирОбщий.ПолВТЛкс(ЗапросИлиМенеджерВременныхТаблиц, ИменаВременныхТаблиц, ДопустимоеЧислоСтрок);
|
|
||||||
Возврат Результат;
|
|
||||||
|
|
||||||
КонецФункции // ПолВТ()
|
|
||||||
|
|
||||||
// Обертка ирОбщий.ТехНЛкс(). Начать трассу в технологическом журнале. Сам технологический журнал надо заранее включить.
|
|
||||||
Функция ТехН() Экспорт
|
|
||||||
|
|
||||||
Результат = ирОбщий.ТехНЛкс();
|
|
||||||
Возврат Результат;
|
|
||||||
|
|
||||||
КонецФункции
|
|
||||||
|
|
||||||
// Обертка ирОбщий.ТехКЛкс(). Кончить трассу в технологическом журнале и показать ее анализ
|
|
||||||
Функция ТехК() Экспорт
|
|
||||||
|
|
||||||
Результат = ирОбщий.ТехКЛкс();
|
|
||||||
Возврат Результат;
|
|
||||||
|
|
||||||
КонецФункции
|
|
||||||
|
|
||||||
#Если Клиент Тогда
|
|
||||||
|
|
||||||
// Обертка ирОбщий.ПопЛкс(). Подготавливает строку для вызова Оперировать() в отладчике. Вызвается путем вычисления "Вычислить(Поп())".
|
|
||||||
// Изменения параметров возвращаются в вызывающий контекст.
|
|
||||||
//
|
|
||||||
// Параметры:
|
|
||||||
// ТекстПрограммы - Строка, *"" - программный код для передачи в консоль кода или выполнения, берется из буфера обмена если пустой;
|
|
||||||
// РежимОперации – Число - 0 - немодально, 1 - модально, 2 - неинтерактивно (на сервере всегда);
|
|
||||||
//
|
|
||||||
// Возвращаемое значение:
|
|
||||||
// Строка для вычисления в отладчике.
|
|
||||||
//
|
|
||||||
Функция Поп(Знач ТекстПрограммы = "", РежимОперации = 1) Экспорт
|
|
||||||
|
|
||||||
Результат = ирОбщий.ПопЛкс(ТекстПрограммы, РежимОперации);
|
|
||||||
Возврат Результат;
|
|
||||||
|
|
||||||
КонецФункции
|
|
||||||
|
|
||||||
// Обертка ирОбщий.ОпЛкс(). Модально открывает консоль кода с передачей туда всех своих параметров.
|
|
||||||
// Удобно вызывать из отладчика через диалог "Вычислить выражение".
|
|
||||||
// Изменения параметров возвращаются в вызывающий контекст.
|
|
||||||
//
|
|
||||||
// Параметры:
|
|
||||||
// П* – Произвольный;
|
|
||||||
//
|
|
||||||
// Возвращаемое значение:
|
|
||||||
// Неопределено.
|
|
||||||
//
|
|
||||||
Функция Оп(П1 = Null, П2 = Null, П3 = Null, П4 = Null, П5 = Null) Экспорт
|
|
||||||
|
|
||||||
Результат = ирОбщий.ОпЛкс(П1, П2, П3, П4, П5);
|
|
||||||
Возврат Результат;
|
|
||||||
|
|
||||||
КонецФункции // Оп()
|
|
||||||
|
|
||||||
// Обертка ирОбщий.ОперироватьСтруктуройЛкс(). Открывает консоль кода с передачей туда структуры параметров.
|
|
||||||
// Изменения параметров возвращаются в структуру, но не в вызывающий контекст.
|
|
||||||
//
|
|
||||||
// Параметры:
|
|
||||||
// ТекстПрограммы - Строка;
|
|
||||||
// Модально – Булево - открывать окно модально;
|
|
||||||
// СтруктураПараметров – Структура - ключи соответсвуют именам параметов, а значения их значениям.
|
|
||||||
//
|
|
||||||
// Возвращаемое значение:
|
|
||||||
// Неопределено.
|
|
||||||
//
|
|
||||||
Функция ОперироватьСтруктурой(Знач ТекстПрограммы = "", Модально = Ложь, СтруктураПараметров) Экспорт
|
|
||||||
|
|
||||||
Результат = ирОбщий.ОперироватьСтруктуройЛкс(ТекстПрограммы, Модально, СтруктураПараметров);
|
|
||||||
Возврат Результат;
|
|
||||||
|
|
||||||
КонецФункции // РП()
|
|
||||||
|
|
||||||
// Обертка ирОбщий.ОпсЛкс(). Обертка ОперироватьСтруктурой. Модально открывает консоль кода с передачей туда всех своих параметров.
|
|
||||||
// Удобно вызывать из отладчика через диалог "Вычислить выражение".
|
|
||||||
// Изменения параметров возвращаются в структуру, но не в вызывающий контекст.
|
|
||||||
//
|
|
||||||
// Параметры:
|
|
||||||
// СтруктураПараметров – Структура - ключи соответсвуют именам параметов, а значения их значениям.
|
|
||||||
//
|
|
||||||
// Возвращаемое значение:
|
|
||||||
// Неопределено.
|
|
||||||
//
|
|
||||||
Функция Опс(Знач СтруктураПараметров) Экспорт
|
|
||||||
|
|
||||||
Результат = ирОбщий.ОпсЛкс(СтруктураПараметров);
|
|
||||||
Возврат Результат;
|
|
||||||
|
|
||||||
КонецФункции // Опс()
|
|
||||||
|
|
||||||
// Обертка ирОбщий.НаблюдатьЛкс(). Выводит в окно сообщений переданное значение вместе с типом и заданным представлением.
|
|
||||||
//
|
|
||||||
// Параметры:
|
|
||||||
// Значение - Произвольный;
|
|
||||||
// *Представление – Строка, *"" - представление наблюдаемого значения.
|
|
||||||
//
|
|
||||||
Процедура Наблюдать(Знач Значение, Представление = "") Экспорт
|
|
||||||
|
|
||||||
ирОбщий.НаблюдатьЛкс(Значение, Представление);
|
|
||||||
|
|
||||||
КонецПроцедуры // Наблюдать()
|
|
||||||
|
|
||||||
#КонецЕсли
|
|
||||||
|
|
||||||
// Обертка ирОбщий.ОтладитьЛкс(). Открывает нужную консоль для редактирования сложного объекта.
|
|
||||||
// Варианты использования в зависимости от типа параметра Объект:
|
|
||||||
// Запрос, COMОбъект - открывает Запрос или ADODB.Command или ADODB.Connection в консоли запросов
|
|
||||||
// ПостроительЗапроса - открывает результирующий запрос построителя запросов в консоли запросов
|
|
||||||
// ПостроительОтчета - открывает построитель отчета в консоли построителей отчетов, откуда можно открыть результирующий запрос построителя отчета в консоли запросов
|
|
||||||
// СхемаКомпоновки - открывает схему компоновки в консоли компоновки данных, откуда можно открыть результирующие (из макета компоновки) запросы в консоли запросов
|
|
||||||
//
|
|
||||||
// Параметры:
|
|
||||||
// Объект – Запрос, ПостроительЗапроса, ПостроительОтчета, СхемаКомпоновкиДанных, COMОбъект.ADODB.Command - исследуемый объект;
|
|
||||||
// Модально – Булево - открывать окно модально, должно быть Истина для использования функции в отладчике;
|
|
||||||
// НастройкаКомпоновкиИлиТекстЗапроса - НастройкиКомпоновкиДанных, Строка, *Неопределено - настройки для схемы компоновки, текст запроса для WMI или ADODB.Connection;
|
|
||||||
// ВнешниеНаборыДанных - Структура, *Неопределено - внешние наборы данных для схемы компоновки;
|
|
||||||
// ОтложеннаяОтладка - Булево - на сервере игнорируется (равно Истина), вместо открытия инструмента отладки сразу выполняется помещение
|
|
||||||
// объектов отладки во временное хранилище;
|
|
||||||
// ДопустимоеЧислоСтрокВоВременнойТаблицеОтложеннойОтладки - Число, *500000 - допустимое количество строк во всех временных таблицах запроса
|
|
||||||
// для отложенной отладки, больше этого количества строки не сохраняются, о чем сообщается в результате;
|
|
||||||
// Наименование - Строка - наименование сохраняемого объекта отложенной отладки;
|
|
||||||
//
|
|
||||||
// Возвращаемое значение:
|
|
||||||
// Неопределено.
|
|
||||||
//
|
|
||||||
Функция Отладить(Знач Объект, Модально = Ложь, Знач Объект2 = Неопределено, Знач ВнешниеНаборыДанных = Неопределено,
|
|
||||||
ОтложенноеВыполнение = Ложь, ДопустимоеЧислоСтрокВоВременнойТаблицеОтложеннойОтладки = 500000, Наименование = "") Экспорт
|
|
||||||
|
|
||||||
Результат = ирОбщий.ОтладитьЛкс(Объект, Модально, Объект2, ВнешниеНаборыДанных, ОтложенноеВыполнение, ДопустимоеЧислоСтрокВоВременнойТаблицеОтложеннойОтладки,, Наименование);
|
|
||||||
Возврат Результат;
|
|
||||||
|
|
||||||
КонецФункции
|
|
||||||
|
|
||||||
// Обертка ирОбщий.ОтЛкс(). Открывает или формирует снимок объекта для открытия в соответствующем инструменте.
|
|
||||||
// Удобно вызывать из отладчика через диалог "Вычислить выражение".
|
|
||||||
// Варианты использования в зависимости от типа параметра Объект:
|
|
||||||
// Запрос, COMОбъект, HttpСоединение - открывает Запрос или ADODB.Command или ADODB.Connection в консоли запросов
|
|
||||||
// ПостроительЗапроса - открывает результирующий запрос построителя запросов в консоли запросов
|
|
||||||
// ПостроительОтчета - открывает построитель отчета в консоли построителей отчетов, откуда можно открыть результирующий запрос построителя отчета в консоли запросов
|
|
||||||
// СхемаКомпоновки - открывает схему компоновки в консоли компоновки данных, откуда можно открыть результирующие (из макета компоновки) запросы в консоли запросов
|
|
||||||
// МакетКомпоновкиДанных - открытвает запросы макета компоновки в консоли запросов
|
|
||||||
// ОтчетОбъект - открывает схему и настройки компоновки отчета в консоли компоновки данных, откуда можно открыть результирующие (из макета компоновки) запросы в консоли запросов
|
|
||||||
// РегистрСведенийНаборЗаписей - открывает группировку таблицы набора записей по измерениям
|
|
||||||
//
|
|
||||||
// Параметры:
|
|
||||||
// Объект – Запрос, ПостроительЗапроса, ПостроительОтчета, СхемаКомпоновкиДанных, МакетКомпоновкиДанных, ОтчетОбъект, ADODB.Command, ADODB.Connection, HttpСоединение - исследуемый объект;
|
|
||||||
// Объект2 - НастройкиКомпоновкиДанных, Строка, *Неопределено -
|
|
||||||
// если первый параметр СхемаКомпоновкиДанных, то настройки компоновки,
|
|
||||||
// если первый параметр WMI или ADODB.Connection, то текст запроса,
|
|
||||||
// если первый параметр HttpСоединение, то HttpЗапрос,
|
|
||||||
// если первый параметр Запрос, имена временных таблиц разделенных запятыми;
|
|
||||||
// ВнешниеНаборыДанных - Структура, *Неопределено - внешние наборы данных для схемы компоновки;
|
|
||||||
// ОтложеннаяОтладка - Булево - на сервере игнорируется (равно Истина), вместо открытия инструмента отладки сразу выполняется помещение
|
|
||||||
// объектов отладки во временное хранилище;
|
|
||||||
// Наименование - Строка - наименование сохраняемого объекта отложенной отладки;
|
|
||||||
//
|
|
||||||
// Возвращаемое значение:
|
|
||||||
// Неопределено.
|
|
||||||
//
|
|
||||||
Функция От(Знач Объект, Знач Объект2 = Неопределено, Знач ВнешниеНаборыДанных = Неопределено, ОтложеннаяОтладка = Ложь, Наименование = "") Экспорт
|
|
||||||
|
|
||||||
#Если ТолстыйКлиентОбычноеПриложение Тогда
|
|
||||||
Если ирКэш.ЛиПортативныйРежимЛкс() Тогда
|
|
||||||
Пустышка = ПолучитьФорму(Неопределено); // Чтобы использовалась форма именно этого объекта
|
|
||||||
КонецЕсли;
|
|
||||||
#КонецЕсли
|
|
||||||
Результат = ирОбщий.ОтЛкс(Объект, Объект2, ВнешниеНаборыДанных, ОтложеннаяОтладка, Наименование);
|
|
||||||
Если ирКэш.ЛиПортативныйРежимЛкс() Тогда
|
|
||||||
ирПортативный.УсловныйДеструктор();
|
|
||||||
КонецЕсли;
|
|
||||||
Возврат Результат;
|
|
||||||
|
|
||||||
КонецФункции
|
|
||||||
|
|
||||||
// Обертка ирОбщий.ИсследоватьЛкс(). Открывает исследователь объектов.
|
|
||||||
//
|
|
||||||
// Параметры:
|
|
||||||
// Объект – Произвольный, *Неопределено - объект, который будет исследован;
|
|
||||||
// Модально – Булево - открывать окно модально;
|
|
||||||
// КакКоллекцию – Булево, *Ложь - исследовать как коллекцию вместо объекта.
|
|
||||||
//
|
|
||||||
// Возвращаемое значение:
|
|
||||||
// Сам объект.
|
|
||||||
//
|
|
||||||
Функция Исследовать(Знач Объект = Неопределено, Модально = Ложь, КакКоллекцию = Ложь, ОтложенноеВыполнение = Ложь) Экспорт
|
|
||||||
|
|
||||||
Результат = ирОбщий.ИсследоватьЛкс(Объект, Модально, КакКоллекцию, ОтложенноеВыполнение);
|
|
||||||
Возврат Результат;
|
|
||||||
|
|
||||||
КонецФункции // Исследовать()
|
|
||||||
|
|
||||||
// Обертка ирОбщий.ИсЛкс(). Открывает или формирует снимок объекта для открытия в исследователе объектов.
|
|
||||||
// Удобно вызывать из отладчика через диалог "Вычислить выражение".
|
|
||||||
Функция Ис(Знач Объект = Неопределено, КакКоллекцию = Ложь, ОтложенноеВыполнение = Ложь) Экспорт
|
|
||||||
|
|
||||||
#Если ТолстыйКлиентОбычноеПриложение Тогда
|
|
||||||
Если ирКэш.ЛиПортативныйРежимЛкс() Тогда
|
|
||||||
Пустышка = ПолучитьФорму(Неопределено); // Чтобы использовалась форма именно этого объекта
|
|
||||||
КонецЕсли;
|
|
||||||
#КонецЕсли
|
|
||||||
Результат = ирОбщий.ИсЛкс(Объект, КакКоллекцию, ОтложенноеВыполнение);
|
|
||||||
Если ирКэш.ЛиПортативныйРежимЛкс() Тогда
|
|
||||||
ирПортативный.УсловныйДеструктор();
|
|
||||||
КонецЕсли;
|
|
||||||
Возврат Результат;
|
|
||||||
|
|
||||||
КонецФункции // Ис()
|
|
||||||
|
|
||||||
// Обертка ирОбщий.ФайлЛкс(). Возвращает текст из файла
|
|
||||||
Функция Файл(Знач ИмяФайла, Знач Кодировка = "") Экспорт
|
|
||||||
|
|
||||||
Результат = ирОбщий.ФайлЛкс(ИмяФайла, Кодировка);
|
|
||||||
Возврат Результат;
|
|
||||||
|
|
||||||
КонецФункции
|
|
||||||
|
|
||||||
// Обертка ирОбщий.СокрКолЛкс(). Удаляет все элементы коллекции кроме заданного или первого.
|
|
||||||
Функция СокрКол(Коллекция, ОставитьЭлементИлиКлюч = Неопределено) Экспорт
|
|
||||||
|
|
||||||
ирОбщий.СокрКолЛкс(Коллекция, ОставитьЭлементИлиКлюч);
|
|
||||||
|
|
||||||
КонецФункции
|
|
||||||
|
|
||||||
// Обертка ирОбщий.ИзмЛкс(). Проверяет что переданное значение отличается от предыдущего переданного с тем же именем.
|
|
||||||
// Удобно вызывать из отладчика в качестве условия точки останова.
|
|
||||||
Функция Изм(Значение, ИмяЗначения = "п", Знач НужноеСтароеЗначение = "фйъх13м9", Знач НужноеНовоеЗначение = "фйъх13м9") Экспорт
|
|
||||||
Результат = ирОбщий.ИзмЛкс(Значение, ИмяЗначения, НужноеСтароеЗначение, НужноеНовоеЗначение);
|
|
||||||
Возврат Результат;
|
|
||||||
КонецФункции
|
|
||||||
|
|
||||||
// Обертка ирОбщий.СткЛкс(). Создает из объекта структуру
|
|
||||||
Функция Стк(Объект) Экспорт
|
|
||||||
Возврат ирОбщий.СткЛкс(Объект);
|
|
||||||
КонецФункции
|
|
||||||
|
|
||||||
// Обертка ирОбщий.КолЛкс(). Создает из объекта таблицу значений
|
|
||||||
Функция Кол(Объект) Экспорт
|
|
||||||
Возврат ирОбщий.КолЛкс(Объект);
|
|
||||||
КонецФункции
|
|
||||||
|
|
||||||
//#КонецОбласти
|
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -1,74 +0,0 @@
|
||||||
// Версия модуля X.XX
|
|
||||||
// Встройте этот модуль с именем ирИнтерфейс в состав целевой конфигурации, чтобы обеспечить слабую интеграцию с расширением "Инструменты разработчика".
|
|
||||||
|
|
||||||
#Если Клиент Тогда
|
|
||||||
|
|
||||||
Функция ПредложитьЗагрузитьРасширениеЛкс() Экспорт
|
|
||||||
|
|
||||||
ОписаниеОповещения = Новый ОписаниеОповещения("ОбработкаОтветаНаОткрытиеСайта", Вычислить("ирИнтерфейс"));
|
|
||||||
ПоказатьВопрос(ОписаниеОповещения, "Расширение конфигурации ""Инструменты разработчика"" не установлено. Хотите открыть страницу скачивания?", РежимДиалогаВопрос.ОКОтмена);
|
|
||||||
|
|
||||||
КонецФункции
|
|
||||||
|
|
||||||
Функция ОбработкаОтветаНаОткрытиеСайта(Результат, ДопПараметры) Экспорт
|
|
||||||
|
|
||||||
Если Результат = КодВозвратаДиалога.ОК Тогда
|
|
||||||
ЗапуститьПриложение("http://devtool1c.ucoz.ru/index/rasshirenie_variant/0-52");
|
|
||||||
КонецЕсли;
|
|
||||||
|
|
||||||
КонецФункции
|
|
||||||
|
|
||||||
#КонецЕсли
|
|
||||||
|
|
||||||
#Если Не ТонкийКлиент И Не ВебКлиент Тогда
|
|
||||||
|
|
||||||
Функция ЛиРасширениеУстановлено() Экспорт
|
|
||||||
|
|
||||||
Результат = Вычислить("РасширенияКонфигурации").Получить(Новый Структура("Имя", "ИнструментыРазработчикаTormozit")).Количество() > 0;
|
|
||||||
Возврат Результат;
|
|
||||||
|
|
||||||
КонецФункции
|
|
||||||
|
|
||||||
// Конструктор таблицы параметров алгоритма
|
|
||||||
// Результат - ТаблицаЗначений - колонки "Имя, Значение, Вход, Выход, ТипЗначения, Комментарий"
|
|
||||||
Функция НоваяТаблицаПараметровАлгоритмаЛкс() Экспорт
|
|
||||||
|
|
||||||
ОбщийМодульИР = Вычислить("ирОбщий");
|
|
||||||
#Если Сервер И Не Сервер Тогда
|
|
||||||
ОбщийМодульИР = ирОбщий;
|
|
||||||
#КонецЕсли
|
|
||||||
Возврат ОбщийМодульИР.НоваяТаблицаПараметровАлгоритмаЛкс();
|
|
||||||
|
|
||||||
КонецФункции
|
|
||||||
|
|
||||||
// Конструктор таблицы методов контекстной подсказки
|
|
||||||
// Результат - ТаблицаЗначений - колонки "Имя, ТипЗначения"
|
|
||||||
Функция НоваяТаблицаМетодовПодсказкиЛкс() Экспорт
|
|
||||||
|
|
||||||
ОбщийМодульИР = Вычислить("ирОбщий");
|
|
||||||
#Если Сервер И Не Сервер Тогда
|
|
||||||
ОбщийМодульИР = ирОбщий;
|
|
||||||
#КонецЕсли
|
|
||||||
Возврат ОбщийМодульИР.НоваяТаблицаМетодовПодсказкиЛкс();
|
|
||||||
|
|
||||||
КонецФункции
|
|
||||||
|
|
||||||
// Открыть редактирование текста алгоритма с параметрами в консоли кода
|
|
||||||
// Парамерты:
|
|
||||||
// СтруктураАлгоритма - Структура - возвращаемый
|
|
||||||
// "ТекстАлгоритма" - Строка - текст алгоритма,
|
|
||||||
// "ВнутренниеПараметры" - ТаблицаЗначений - таблица с конструктором НоваяТаблицаПараметровАлгоритмаЛкс с внутренними (значения определяются при редактировании) параметрами алгоритма;
|
|
||||||
// ВнешниеПараметры* - ТаблицаЗначений - таблица с конструктором НоваяТаблицаПараметровАлгоритмаЛкс с внешними (значения определяются при каждом выполнении) параметрами алгоритма;
|
|
||||||
// Методы* - ТаблицаЗначений - таблица с конструктором НоваяТаблицаМетодовПодсказкиЛкс с дополнительными методами доступными в алгоритме;
|
|
||||||
// Результат - Булево - принял ли изменения пользователь
|
|
||||||
Функция РедактироватьАлгоритмЧерезСтруктуруЛкс(СтруктураАлгоритма, ВнешниеПараметры = Неопределено, Методы = Неопределено) Экспорт
|
|
||||||
|
|
||||||
ОбщийМодульИР = Вычислить("ирОбщий");
|
|
||||||
#Если Сервер И Не Сервер Тогда
|
|
||||||
ОбщийМодульИР = ирОбщий;
|
|
||||||
#КонецЕсли
|
|
||||||
Возврат ОбщийМодульИР.РедактироватьАлгоритмЧерезСтруктуруЛкс(СтруктураАлгоритма, ВнешниеПараметры, Методы);
|
|
||||||
|
|
||||||
КонецФункции
|
|
||||||
|
|
||||||
#КонецЕсли
|
|
||||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because one or more lines are too long
|
|
@ -1,31 +0,0 @@
|
||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<MetaDataObject xmlns="http://v8.1c.ru/8.3/MDClasses" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:cmi="http://v8.1c.ru/8.2/managed-application/cmi" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" xmlns:style="http://v8.1c.ru/8.1/data/ui/style" xmlns:sys="http://v8.1c.ru/8.1/data/ui/fonts/system" xmlns:v8="http://v8.1c.ru/8.1/data/core" xmlns:v8ui="http://v8.1c.ru/8.1/data/ui" xmlns:web="http://v8.1c.ru/8.1/data/ui/colors/web" xmlns:win="http://v8.1c.ru/8.1/data/ui/colors/windows" xmlns:xen="http://v8.1c.ru/8.3/xcf/enums" xmlns:xpr="http://v8.1c.ru/8.3/xcf/predef" xmlns:xr="http://v8.1c.ru/8.3/xcf/readable" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.9">
|
|
||||||
<CommonModule uuid="a72577b8-211f-40be-bb34-05c6a3ffd205">
|
|
||||||
<Properties>
|
|
||||||
<Name>ирПортативный</Name>
|
|
||||||
<Synonym>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>ru</v8:lang>
|
|
||||||
<v8:content>Портативный (ИР)</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>en</v8:lang>
|
|
||||||
<v8:content>Портативный (ИР)</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>uk</v8:lang>
|
|
||||||
<v8:content>Портативный (ИР)</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
</Synonym>
|
|
||||||
<Comment>Заглушка для прохождения компиляции</Comment>
|
|
||||||
<Global>false</Global>
|
|
||||||
<ClientManagedApplication>true</ClientManagedApplication>
|
|
||||||
<Server>true</Server>
|
|
||||||
<ExternalConnection>true</ExternalConnection>
|
|
||||||
<ClientOrdinaryApplication>true</ClientOrdinaryApplication>
|
|
||||||
<ServerCall>false</ServerCall>
|
|
||||||
<Privileged>false</Privileged>
|
|
||||||
<ReturnValuesReuse>DontUse</ReturnValuesReuse>
|
|
||||||
</Properties>
|
|
||||||
</CommonModule>
|
|
||||||
</MetaDataObject>
|
|
||||||
|
|
@ -1,31 +0,0 @@
|
||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<MetaDataObject xmlns="http://v8.1c.ru/8.3/MDClasses" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:cmi="http://v8.1c.ru/8.2/managed-application/cmi" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" xmlns:style="http://v8.1c.ru/8.1/data/ui/style" xmlns:sys="http://v8.1c.ru/8.1/data/ui/fonts/system" xmlns:v8="http://v8.1c.ru/8.1/data/core" xmlns:v8ui="http://v8.1c.ru/8.1/data/ui" xmlns:web="http://v8.1c.ru/8.1/data/ui/colors/web" xmlns:win="http://v8.1c.ru/8.1/data/ui/colors/windows" xmlns:xen="http://v8.1c.ru/8.3/xcf/enums" xmlns:xpr="http://v8.1c.ru/8.3/xcf/predef" xmlns:xr="http://v8.1c.ru/8.3/xcf/readable" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.9">
|
|
||||||
<CommonModule uuid="4c09b85c-4566-4862-b8b9-0c21d939af9d">
|
|
||||||
<Properties>
|
|
||||||
<Name>ирПривилегированный</Name>
|
|
||||||
<Synonym>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>ru</v8:lang>
|
|
||||||
<v8:content>Привилегированный</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>en</v8:lang>
|
|
||||||
<v8:content>Привилегированный</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>uk</v8:lang>
|
|
||||||
<v8:content>Привилегированный</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
</Synonym>
|
|
||||||
<Comment/>
|
|
||||||
<Global>false</Global>
|
|
||||||
<ClientManagedApplication>false</ClientManagedApplication>
|
|
||||||
<Server>true</Server>
|
|
||||||
<ExternalConnection>false</ExternalConnection>
|
|
||||||
<ClientOrdinaryApplication>false</ClientOrdinaryApplication>
|
|
||||||
<ServerCall>true</ServerCall>
|
|
||||||
<Privileged>true</Privileged>
|
|
||||||
<ReturnValuesReuse>DontUse</ReturnValuesReuse>
|
|
||||||
</Properties>
|
|
||||||
</CommonModule>
|
|
||||||
</MetaDataObject>
|
|
||||||
|
|
@ -1,84 +0,0 @@
|
||||||
//ирПортативный Перем ирПортативный Экспорт;
|
|
||||||
//ирПортативный Перем ирОбщий Экспорт;
|
|
||||||
//ирПортативный Перем ирСервер Экспорт;
|
|
||||||
//ирПортативный Перем ирКэш Экспорт;
|
|
||||||
//ирПортативный Перем ирПривилегированный Экспорт;
|
|
||||||
|
|
||||||
// Привилегированные процедуры и функции
|
|
||||||
|
|
||||||
// Находит все ссылки на массив ссылок.
|
|
||||||
//
|
|
||||||
// Параметры:
|
|
||||||
// пМассивСсылок – Массив – ссылок;
|
|
||||||
// пТаблицаРезультатов - ТаблицаЗначений - возвращаемая таблица с найденными ссылками.
|
|
||||||
//
|
|
||||||
Функция НайтиПоСсылкамЛкс(МассивСсылок, ТаблицаРезультатов = Неопределено) Экспорт
|
|
||||||
|
|
||||||
//Если ФильтрПоМетаданным <> Неопределено Тогда
|
|
||||||
// // 8.3.5+
|
|
||||||
// НайденныеСсылки = Вычислить("НайтиПоСсылкам(МассивСсылок,, ФильтрПоМетаданным)");
|
|
||||||
//Иначе
|
|
||||||
НайденныеСсылки = НайтиПоСсылкам(МассивСсылок);
|
|
||||||
//КонецЕсли;
|
|
||||||
Если ТаблицаРезультатов = Неопределено Тогда
|
|
||||||
ТаблицаРезультатов = Новый ТаблицаЗначений;
|
|
||||||
КонецЕсли;
|
|
||||||
ирОбщий.ПеревестиКолонкиНайтиПоСсылкамЛкс(НайденныеСсылки);
|
|
||||||
Для Сч = 0 По НайденныеСсылки.Колонки.Количество() - 1 Цикл
|
|
||||||
ТаблицаРезультатов.Колонки.Добавить(НайденныеСсылки.Колонки[Сч].Имя);
|
|
||||||
КонецЦикла;
|
|
||||||
Для Каждого Строка Из НайденныеСсылки Цикл
|
|
||||||
Если Ложь
|
|
||||||
Или Строка.Метаданные = Неопределено
|
|
||||||
Или Строка.Ссылка = Неопределено
|
|
||||||
Тогда
|
|
||||||
Продолжить;
|
|
||||||
КонецЕсли;
|
|
||||||
НоваяСтрока = ТаблицаРезультатов.Добавить();
|
|
||||||
НоваяСтрока.Метаданные = Строка.Метаданные.ПолноеИмя();
|
|
||||||
//Если Строка.Данные = Неопределено Тогда
|
|
||||||
// Строка.Данные = НоваяСтрока.Метаданные; // так будет возникать ошибка в Обработка.ирПоискДублейИЗаменаСсылок.ЗаменитьСсылкиВОбъектеБД()
|
|
||||||
//КонецЕсли;
|
|
||||||
НоваяСтрока.Данные = ЗначениеВСтрокуВнутр(Строка.Данные);
|
|
||||||
НоваяСтрока.Ссылка = Строка.Ссылка;
|
|
||||||
КонецЦикла;
|
|
||||||
ирОбщий.ПеревестиКолонкиНайтиПоСсылкамЛкс(ТаблицаРезультатов);
|
|
||||||
Возврат ТаблицаРезультатов;
|
|
||||||
|
|
||||||
КонецФункции
|
|
||||||
|
|
||||||
Функция ТекущийСеансЛкс() Экспорт
|
|
||||||
|
|
||||||
Если ирКэш.НомерРежимаСовместимостиЛкс() >= 803007 Тогда
|
|
||||||
ТекущийСеанс = Вычислить("ПолучитьТекущийСеансИнформационнойБазы()");
|
|
||||||
#Если Сервер И Не Сервер Тогда
|
|
||||||
ТекущийСеанс = ПолучитьТекущийСеансИнформационнойБазы();
|
|
||||||
#КонецЕсли
|
|
||||||
Иначе
|
|
||||||
Попытка
|
|
||||||
Сеансы = ПолучитьСеансыИнформационнойБазы(); // Иногда выполняется долго
|
|
||||||
Исключение
|
|
||||||
Сообщить("У пользователя отсутствуют административные права 1С. Некоторые функции инструментов отключены.");
|
|
||||||
Возврат Неопределено;
|
|
||||||
КонецПопытки;
|
|
||||||
НомерСеанса = НомерСеансаИнформационнойБазы();
|
|
||||||
Для Каждого Сеанс Из Сеансы Цикл
|
|
||||||
Если Сеанс.НомерСеанса = НомерСеанса Тогда
|
|
||||||
ТекущийСеанс = Сеанс;
|
|
||||||
Прервать;
|
|
||||||
КонецЕсли;
|
|
||||||
КонецЦикла;
|
|
||||||
КонецЕсли;
|
|
||||||
Если ТекущийСеанс = Неопределено Тогда
|
|
||||||
Сообщить("Собственный сеанс не найден");
|
|
||||||
Результат = Неопределено;
|
|
||||||
Иначе
|
|
||||||
Результат = Новый Структура;
|
|
||||||
Результат.Вставить("НачалоСеанса", ТекущийСеанс.НачалоСеанса);
|
|
||||||
Результат.Вставить("НомерСеанса", ТекущийСеанс.НомерСеанса);
|
|
||||||
Результат.Вставить("ИмяПриложения", ТекущийСеанс.ИмяПриложения);
|
|
||||||
Результат.Вставить("ИмяКомпьютера", ТекущийСеанс.ИмяКомпьютера);
|
|
||||||
КонецЕсли;
|
|
||||||
Возврат Результат;
|
|
||||||
|
|
||||||
КонецФункции
|
|
||||||
File diff suppressed because it is too large
Load Diff
|
|
@ -1,25 +0,0 @@
|
||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<MetaDataObject xmlns="http://v8.1c.ru/8.3/MDClasses" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:cmi="http://v8.1c.ru/8.2/managed-application/cmi" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" xmlns:style="http://v8.1c.ru/8.1/data/ui/style" xmlns:sys="http://v8.1c.ru/8.1/data/ui/fonts/system" xmlns:v8="http://v8.1c.ru/8.1/data/core" xmlns:v8ui="http://v8.1c.ru/8.1/data/ui" xmlns:web="http://v8.1c.ru/8.1/data/ui/colors/web" xmlns:win="http://v8.1c.ru/8.1/data/ui/colors/windows" xmlns:xen="http://v8.1c.ru/8.3/xcf/enums" xmlns:xpr="http://v8.1c.ru/8.3/xcf/predef" xmlns:xr="http://v8.1c.ru/8.3/xcf/readable" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.9">
|
|
||||||
<CommonPicture uuid="f2c5114b-7dd8-4bfa-8e6d-03b03be454f8">
|
|
||||||
<Properties>
|
|
||||||
<Name>ирRegex101</Name>
|
|
||||||
<Synonym>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>ru</v8:lang>
|
|
||||||
<v8:content>Ир regex101</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>en</v8:lang>
|
|
||||||
<v8:content>Ир regex101</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>uk</v8:lang>
|
|
||||||
<v8:content>Ир regex101</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
</Synonym>
|
|
||||||
<Comment/>
|
|
||||||
<AvailabilityForChoice>false</AvailabilityForChoice>
|
|
||||||
<AvailabilityForAppearance>false</AvailabilityForAppearance>
|
|
||||||
</Properties>
|
|
||||||
</CommonPicture>
|
|
||||||
</MetaDataObject>
|
|
||||||
Binary file not shown.
|
Before Width: | Height: | Size: 431 B |
Binary file not shown.
|
Before Width: | Height: | Size: 138 B |
|
|
@ -1,25 +0,0 @@
|
||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<MetaDataObject xmlns="http://v8.1c.ru/8.3/MDClasses" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:cmi="http://v8.1c.ru/8.2/managed-application/cmi" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" xmlns:style="http://v8.1c.ru/8.1/data/ui/style" xmlns:sys="http://v8.1c.ru/8.1/data/ui/fonts/system" xmlns:v8="http://v8.1c.ru/8.1/data/core" xmlns:v8ui="http://v8.1c.ru/8.1/data/ui" xmlns:web="http://v8.1c.ru/8.1/data/ui/colors/web" xmlns:win="http://v8.1c.ru/8.1/data/ui/colors/windows" xmlns:xen="http://v8.1c.ru/8.3/xcf/enums" xmlns:xpr="http://v8.1c.ru/8.3/xcf/predef" xmlns:xr="http://v8.1c.ru/8.3/xcf/readable" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.9">
|
|
||||||
<CommonPicture uuid="b459dbd9-93fb-4f87-93e5-14946ffd1aa9">
|
|
||||||
<Properties>
|
|
||||||
<Name>ирВыражение2</Name>
|
|
||||||
<Synonym>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>ru</v8:lang>
|
|
||||||
<v8:content>Выражение2</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>en</v8:lang>
|
|
||||||
<v8:content>Выражение2</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>uk</v8:lang>
|
|
||||||
<v8:content>Выражение2</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
</Synonym>
|
|
||||||
<Comment/>
|
|
||||||
<AvailabilityForChoice>false</AvailabilityForChoice>
|
|
||||||
<AvailabilityForAppearance>false</AvailabilityForAppearance>
|
|
||||||
</Properties>
|
|
||||||
</CommonPicture>
|
|
||||||
</MetaDataObject>
|
|
||||||
Binary file not shown.
|
Before Width: | Height: | Size: 6.8 KiB |
|
|
@ -1,25 +0,0 @@
|
||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<MetaDataObject xmlns="http://v8.1c.ru/8.3/MDClasses" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:cmi="http://v8.1c.ru/8.2/managed-application/cmi" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" xmlns:style="http://v8.1c.ru/8.1/data/ui/style" xmlns:sys="http://v8.1c.ru/8.1/data/ui/fonts/system" xmlns:v8="http://v8.1c.ru/8.1/data/core" xmlns:v8ui="http://v8.1c.ru/8.1/data/ui" xmlns:web="http://v8.1c.ru/8.1/data/ui/colors/web" xmlns:win="http://v8.1c.ru/8.1/data/ui/colors/windows" xmlns:xen="http://v8.1c.ru/8.3/xcf/enums" xmlns:xpr="http://v8.1c.ru/8.3/xcf/predef" xmlns:xr="http://v8.1c.ru/8.3/xcf/readable" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.9">
|
|
||||||
<CommonPicture uuid="a92089aa-2179-42a6-97b0-a1d4afb9b100">
|
|
||||||
<Properties>
|
|
||||||
<Name>ирПоискСсылокНаОбъект</Name>
|
|
||||||
<Synonym>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>ru</v8:lang>
|
|
||||||
<v8:content>Поиск ссылок на объект (ИР)</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>en</v8:lang>
|
|
||||||
<v8:content>Поиск ссылок на объект (ИР)</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>uk</v8:lang>
|
|
||||||
<v8:content>Поиск ссылок на объект (ИР)</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
</Synonym>
|
|
||||||
<Comment/>
|
|
||||||
<AvailabilityForChoice>false</AvailabilityForChoice>
|
|
||||||
<AvailabilityForAppearance>false</AvailabilityForAppearance>
|
|
||||||
</Properties>
|
|
||||||
</CommonPicture>
|
|
||||||
</MetaDataObject>
|
|
||||||
Binary file not shown.
|
Before Width: | Height: | Size: 2.1 KiB |
Binary file not shown.
|
Before Width: | Height: | Size: 434 B |
Binary file not shown.
|
Before Width: | Height: | Size: 5.4 KiB |
Binary file not shown.
3161
ConfigDumpInfo.xml
3161
ConfigDumpInfo.xml
File diff suppressed because it is too large
Load Diff
|
|
@ -1,5 +0,0 @@
|
||||||
|
|
||||||
&НаКлиенте
|
|
||||||
Процедура ОбработкаКоманды(ПараметрКоманды, ПараметрыВыполненияКоманды)
|
|
||||||
ирОбщий.ОткрытьФормуЛкс("Обработка.ирПоискБитыхСсылок.Форма");
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
@ -1,26 +0,0 @@
|
||||||
//ирПортативный Перем ирПортативный Экспорт;
|
|
||||||
//ирПортативный Перем ирОбщий Экспорт;
|
|
||||||
//ирПортативный Перем ирСервер Экспорт;
|
|
||||||
//ирПортативный Перем ирКэш Экспорт;
|
|
||||||
//ирПортативный Перем ирПривилегированный Экспорт;
|
|
||||||
|
|
||||||
Перем мПлатформа Экспорт;
|
|
||||||
|
|
||||||
//ирПортативный лФайл = Новый Файл(ИспользуемоеИмяФайла);
|
|
||||||
//ирПортативный ПолноеИмяФайлаБазовогоМодуля = Лев(лФайл.Путь, СтрДлина(лФайл.Путь) - СтрДлина("Модули\")) + "ирПортативный.epf";
|
|
||||||
//ирПортативный #Если Клиент Тогда
|
|
||||||
//ирПортативный Контейнер = Новый Структура();
|
|
||||||
//ирПортативный Оповестить("ирПолучитьБазовуюФорму", Контейнер);
|
|
||||||
//ирПортативный Если Не Контейнер.Свойство("ирПортативный", ирПортативный) Тогда
|
|
||||||
//ирПортативный ирПортативный = ВнешниеОбработки.ПолучитьФорму(ПолноеИмяФайлаБазовогоМодуля);
|
|
||||||
//ирПортативный ирПортативный.Открыть();
|
|
||||||
//ирПортативный КонецЕсли;
|
|
||||||
//ирПортативный #Иначе
|
|
||||||
//ирПортативный ирПортативный = ВнешниеОбработки.Создать(ПолноеИмяФайлаБазовогоМодуля, Ложь); // Это будет второй экземпляр объекта
|
|
||||||
//ирПортативный #КонецЕсли
|
|
||||||
//ирПортативный ирОбщий = ирПортативный.ПолучитьОбщийМодульЛкс("ирОбщий");
|
|
||||||
//ирПортативный ирКэш = ирПортативный.ПолучитьОбщийМодульЛкс("ирКэш");
|
|
||||||
//ирПортативный ирСервер = ирПортативный.ПолучитьОбщийМодульЛкс("ирСервер");
|
|
||||||
//ирПортативный ирПривилегированный = ирПортативный.ПолучитьОбщийМодульЛкс("ирПривилегированный");
|
|
||||||
|
|
||||||
мПлатформа = ирКэш.Получить();
|
|
||||||
Binary file not shown.
|
|
@ -1,330 +0,0 @@
|
||||||
Перем ВесПоУмолчанию;
|
|
||||||
Перем мТаблицаТиповАнализа;
|
|
||||||
|
|
||||||
Функция СохраняемаяНастройкаФормы(выхНаименование, выхИменаСвойств) Экспорт
|
|
||||||
выхИменаСвойств = "Табличная часть.КолонкиАнализаДанных";
|
|
||||||
Результат = Новый Структура;
|
|
||||||
Результат.Вставить("Параметры", ирОбщий.ТаблицаЗначенийИзКоллекцииЛкс(Построитель.Параметры));
|
|
||||||
Возврат Результат;
|
|
||||||
КонецФункции
|
|
||||||
|
|
||||||
Процедура ЗагрузитьНастройкуВФорме(НастройкаФормы, ДопПараметры) Экспорт
|
|
||||||
|
|
||||||
Если НастройкаФормы <> Неопределено Тогда
|
|
||||||
#Если Сервер И Не Сервер Тогда
|
|
||||||
НастройкаФормы = Новый Структура;
|
|
||||||
#КонецЕсли
|
|
||||||
ДоступныеРолиКолонки = ЭлементыФормы.КолонкиАнализаДанных.Колонки.ТипКолонки.ЭлементУправления.СписокВыбора;
|
|
||||||
Для Каждого СтараяСтрока Из НастройкаФормы.КолонкиАнализаДанных Цикл
|
|
||||||
НоваяСтрока = КолонкиАнализаДанных.Найти(СтараяСтрока.Имя, "Имя");
|
|
||||||
Если НоваяСтрока <> Неопределено Тогда
|
|
||||||
ЗаполнитьЗначенияСвойств(НоваяСтрока, СтараяСтрока);
|
|
||||||
КонецЕсли;
|
|
||||||
КонецЦикла;
|
|
||||||
НастройкаФормы.Удалить("КолонкиАнализаДанных");
|
|
||||||
ЗагрузитьЗначенияПараметров(НастройкаФормы.Параметры);
|
|
||||||
НастройкаФормы.Удалить("Параметры");
|
|
||||||
ирОбщий.ЗагрузитьНастройкуФормыЛкс(ЭтаФорма, НастройкаФормы);
|
|
||||||
КонецЕсли;
|
|
||||||
НастроитьЭлементыФормы();
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ЗагрузитьЗначенияПараметров(Знач НовыеЗначенияПараметров)
|
|
||||||
|
|
||||||
Для Каждого СтараяСтрока Из НовыеЗначенияПараметров Цикл
|
|
||||||
НоваяСтрока = Построитель.Параметры.Найти(СтараяСтрока.Имя);
|
|
||||||
Если НоваяСтрока <> Неопределено Тогда
|
|
||||||
ЗаполнитьЗначенияСвойств(НоваяСтрока, СтараяСтрока);
|
|
||||||
КонецЕсли;
|
|
||||||
КонецЦикла;
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура УстановитьОтборТолькоВключенные(НовоеЗначение)
|
|
||||||
|
|
||||||
ЭлементыФормы.КПКолонки.Кнопки.ТолькоВключенные.Пометка = НовоеЗначение;
|
|
||||||
ЭлементыФормы.КолонкиТабличногоПоля.ОтборСтрок.Пометка.ВидСравнения = ВидСравнения.Равно;
|
|
||||||
ЭлементыФормы.КолонкиТабличногоПоля.ОтборСтрок.Пометка.Использование = НовоеЗначение;
|
|
||||||
ЭлементыФормы.КолонкиТабличногоПоля.ОтборСтрок.Пометка.Значение = Истина;
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ПриОткрытии()
|
|
||||||
|
|
||||||
ирОбщий.Форма_ПриОткрытииЛкс(ЭтаФорма);
|
|
||||||
УстановитьТипАнализа();
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура КлсКомандаНажатие(Кнопка) Экспорт
|
|
||||||
ирОбщий.УниверсальнаяКомандаФормыЛкс(ЭтаФорма, Кнопка);
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ОсновныеДействияФормыОК(Кнопка)
|
|
||||||
|
|
||||||
ЗагрузитьНастройкиКолонокВПостроитель();
|
|
||||||
ПараметрТипЗаполнения = Построитель.Параметры.Найти("ТипЗаполненияТаблицы");
|
|
||||||
Если МодальныйРежим И ПараметрТипЗаполнения <> Неопределено Тогда
|
|
||||||
ПользовательскийТипЗаполнения = ПараметрТипЗаполнения.Значение;
|
|
||||||
Если ПользовательскийТипЗаполнения = ТипЗаполненияТаблицыРезультатаАнализаДанных.НеЗаполнять Тогда
|
|
||||||
Построитель.Параметры.ТипЗаполненияТаблицы.Значение = ТипЗаполненияТаблицыРезультатаАнализаДанных.ИспользуемыеПоля;
|
|
||||||
КонецЕсли;
|
|
||||||
КонецЕсли;
|
|
||||||
Построитель.Выполнить();
|
|
||||||
Если МодальныйРежим И ПараметрТипЗаполнения <> Неопределено Тогда
|
|
||||||
Если ПользовательскийТипЗаполнения = ТипЗаполненияТаблицыРезультатаАнализаДанных.НеЗаполнять Тогда
|
|
||||||
ТаблицаКластеризации = Построитель.Результат.ТаблицаКластеризации.Скопировать();
|
|
||||||
Построитель.Результат.ТаблицаКластеризации.Очистить();
|
|
||||||
КонецЕсли;
|
|
||||||
Построитель.Параметры.ТипЗаполненияТаблицы.Значение = ПользовательскийТипЗаполнения;
|
|
||||||
КонецЕсли;
|
|
||||||
Документ = Новый ТабличныйДокумент;
|
|
||||||
Построитель.Вывести(Документ);
|
|
||||||
ирОбщий.ОткрытьЗначениеЛкс(Документ,,, "" + ТипАнализа + ": " + ТекущаяДата(), Ложь);
|
|
||||||
Если МодальныйРежим Тогда
|
|
||||||
Если ТаблицаКластеризации <> Неопределено Тогда
|
|
||||||
ирОбщий.ЗагрузитьВТаблицуЗначенийЛкс(Построитель.Результат.ТаблицаКластеризации, ТаблицаКластеризации);
|
|
||||||
КонецЕсли;
|
|
||||||
Закрыть(Построитель.Результат);
|
|
||||||
КонецЕсли;
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ЗагрузитьНастройкиКолонокВПостроитель()
|
|
||||||
|
|
||||||
ПеречислениеТиповКолонки = ПеречислениеТиповКолонкиАнализаДанных();
|
|
||||||
Для Каждого СтрокаКолонки Из КолонкиАнализаДанных Цикл
|
|
||||||
КолонкаПостроителя = Построитель.НастройкаКолонок.Найти(СтрокаКолонки.Имя);
|
|
||||||
Если КолонкаПостроителя = Неопределено Тогда
|
|
||||||
Продолжить;
|
|
||||||
КонецЕсли;
|
|
||||||
КолонкаПостроителя.ВидДанных = ВидДанныхАнализа[СтрокаКолонки.ВидДанных];
|
|
||||||
КолонкаПостроителя.ТипКолонки = ПеречислениеТиповКолонки[СтрокаКолонки.ТипКолонки];
|
|
||||||
Если КолонкаПостроителя.ДополнительныеПараметры <> Неопределено Тогда
|
|
||||||
ЗаполнитьЗначенияСвойств(КолонкаПостроителя.ДополнительныеПараметры, СтрокаКолонки);
|
|
||||||
КонецЕсли;
|
|
||||||
КонецЦикла;
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура НастроитьЭлементыФормы()
|
|
||||||
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура СтруктураКоманднойПанелиНажатие(Кнопка)
|
|
||||||
|
|
||||||
ирОбщий.ОткрытьСтруктуруКоманднойПанелиЛкс(ЭтаФорма, Кнопка);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура КолонкиТабличногоПоляПриВыводеСтроки(Элемент, ОформлениеСтроки, ДанныеСтроки) Экспорт
|
|
||||||
|
|
||||||
ирОбщий.ТабличноеПолеПриВыводеСтрокиЛкс(ЭтаФорма, Элемент, ОформлениеСтроки, ДанныеСтроки);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура КолонкиТабличногоПоляПриАктивизацииСтроки(Элемент)
|
|
||||||
|
|
||||||
ирОбщий.ТабличноеПолеПриАктивизацииСтрокиЛкс(ЭтаФорма, Элемент);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ПриЗакрытии()
|
|
||||||
|
|
||||||
ирОбщий.Форма_ПриЗакрытииЛкс(ЭтаФорма);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ВнешнееСобытие(Источник, Событие, Данные) Экспорт
|
|
||||||
|
|
||||||
ирОбщий.Форма_ВнешнееСобытиеЛкс(ЭтаФорма, Источник, Событие, Данные);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ТабличноеПолеПриПолученииДанных(Элемент, ОформленияСтрок) Экспорт
|
|
||||||
|
|
||||||
ирОбщий.ТабличноеПолеПриПолученииДанныхЛкс(ЭтаФорма, Элемент, ОформленияСтрок);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ОбработкаОповещения(ИмяСобытия, Параметр, Источник) Экспорт
|
|
||||||
|
|
||||||
ирОбщий.Форма_ОбработкаОповещенияЛкс(ЭтаФорма, ИмяСобытия, Параметр, Источник);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура КолонкиАнализаДанныхВесОчистка(Элемент, СтандартнаяОбработка)
|
|
||||||
|
|
||||||
СтандартнаяОбработка = Ложь;
|
|
||||||
Элемент.Значение = ВесПоУмолчанию;
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура КПКолонкиУстановитьТипКолонки(Кнопка)
|
|
||||||
|
|
||||||
Для Каждого ВыделеннаяСтрока Из ЭлементыФормы.КолонкиАнализаДанных.ВыделенныеСтроки Цикл
|
|
||||||
ВыделеннаяСтрока.ТипКолонки = Кнопка.Имя;
|
|
||||||
КонецЦикла;
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ДействияФормыСгенерироватьПрограммныйКод(Кнопка)
|
|
||||||
|
|
||||||
Текст = ирОбщий.СтрШаблонИменЛкс("
|
|
||||||
|Анализ = Новый АнализДанных;
|
|
||||||
|Анализ.ИсточникДанных = ПараметрТаблица;
|
|
||||||
|Анализ.ТипАнализа = Тип(%1);",, ирОбщий.ИмяТипаЛкс(ТипАнализа));
|
|
||||||
Для Каждого Параметр Из Построитель.Параметры Цикл
|
|
||||||
Текст = Текст + ирОбщий.СтрШаблонЛкс("
|
|
||||||
|Анализ.Параметры.%1.Значение = %2;", Параметр.Имя, ирОбщий.ПредставлениеЗначенияВоВстроенномЯзыкеЛкс(Параметр.Значение));
|
|
||||||
КонецЦикла;
|
|
||||||
Для Каждого Колонка Из КолонкиАнализаДанных Цикл
|
|
||||||
Текст = Текст + ирОбщий.СтрШаблонЛкс("
|
|
||||||
|Анализ.НастройкаКолонок.%1.ТипКолонки = %2;", Колонка.Имя, ПолучитьПолноеИмяПредопределенногоЗначения(ПеречислениеТиповКолонкиАнализаДанных()[Колонка.ТипКолонки]));
|
|
||||||
Текст = Текст + ирОбщий.СтрШаблонЛкс("
|
|
||||||
|Анализ.НастройкаКолонок.%1.ВидДанных = %2;", Колонка.Имя, ПолучитьПолноеИмяПредопределенногоЗначения(ВидДанныхАнализа[Колонка.ВидДанных]));
|
|
||||||
Если ТипАнализа = Тип("АнализДанныхКластеризация") Тогда
|
|
||||||
Текст = Текст + ирОбщий.СтрШаблонЛкс("
|
|
||||||
|Анализ.НастройкаКолонок.%1.ДополнительныеПараметры.Вес = %2;", Колонка.Имя, ирОбщий.СтроковыйИдентификаторЗначенияЛкс(Колонка.Вес));
|
|
||||||
КонецЕсли;
|
|
||||||
КонецЦикла;
|
|
||||||
Текст = Текст + "
|
|
||||||
|РезультатАнализа = Анализ.Выполнить();";
|
|
||||||
ирОбщий.ОперироватьСтруктуройЛкс(Текст, , Новый Структура("ПараметрТаблица", ПараметрТаблица));
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ПередОткрытием(Отказ, СтандартнаяОбработка)
|
|
||||||
|
|
||||||
КолонкиАнализаДанных.Очистить();
|
|
||||||
Построитель.ИсточникДанных = ПараметрТаблица;
|
|
||||||
СписокВыбора = ЭлементыФормы.ТипАнализа.СписокВыбора;
|
|
||||||
#Если Сервер И Не Сервер Тогда
|
|
||||||
СписокВыбора = Новый СписокЗначений;
|
|
||||||
#КонецЕсли
|
|
||||||
СписокВыбора.Добавить(Тип("АнализДанныхДеревоРешений"));
|
|
||||||
СписокВыбора.Добавить(Тип("АнализДанныхКластеризация"));
|
|
||||||
СписокВыбора.Добавить(Тип("АнализДанныхОбщаяСтатистика"));
|
|
||||||
СписокВыбора.Добавить(Тип("АнализДанныхПоискАссоциаций"));
|
|
||||||
СписокВыбора.Добавить(Тип("АнализДанныхПоискПоследовательностей"));
|
|
||||||
мТаблицаТиповАнализа = ирОбщий.ТаблицаЗначенийИзТабличногоДокументаЛкс(ПолучитьМакет("ТипыАнализа"));
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Функция ПеречислениеТиповКолонкиАнализаДанных()
|
|
||||||
|
|
||||||
Если ТипАнализа = Тип("АнализДанныхКластеризация") Тогда
|
|
||||||
ПеречислениеРолейКолонок = ТипКолонкиАнализаДанныхКластеризация;
|
|
||||||
ИначеЕсли ТипАнализа = Тип("АнализДанныхПоискАссоциаций") Тогда
|
|
||||||
ПеречислениеРолейКолонок = ТипКолонкиАнализаДанныхПоискАссоциаций;
|
|
||||||
ИначеЕсли ТипАнализа = Тип("АнализДанныхПоискПоследовательностей") Тогда
|
|
||||||
ПеречислениеРолейКолонок = ТипКолонкиАнализаДанныхПоискПоследовательностей;
|
|
||||||
ИначеЕсли ТипАнализа = Тип("АнализДанныхДеревоРешений") Тогда
|
|
||||||
ПеречислениеРолейКолонок = ТипКолонкиАнализаДанныхДеревоРешений;
|
|
||||||
ИначеЕсли ТипАнализа = Тип("АнализДанныхОбщаяСтатистика") Тогда
|
|
||||||
ПеречислениеРолейКолонок = ТипКолонкиАнализаДанныхОбщаяСтатистика;
|
|
||||||
КонецЕсли;
|
|
||||||
Возврат ПеречислениеРолейКолонок;
|
|
||||||
|
|
||||||
КонецФункции
|
|
||||||
|
|
||||||
Процедура ТипАнализаПриИзменении(Элемент)
|
|
||||||
|
|
||||||
УстановитьТипАнализа();
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура УстановитьТипАнализа()
|
|
||||||
|
|
||||||
ирОбщий.СохранитьНастройкуФормыЛкс(ЭтаФорма);
|
|
||||||
СтарыеЗначенияПараметров = ирОбщий.ТаблицаЗначенийИзКоллекцииЛкс(Построитель.Параметры);
|
|
||||||
Построитель.ТипАнализа = ТипАнализа;
|
|
||||||
Если ТипАнализа = Тип("АнализДанныхКластеризация") Тогда
|
|
||||||
Построитель.Макет = ПолучитьМакет("МакетКластерныйАнализ");
|
|
||||||
//КартинкаЗаголовка = ЭлементыФормы.КартинкаКластерныйАнализ.Картинка;
|
|
||||||
ИначеЕсли ТипАнализа = Тип("АнализДанныхДеревоРешений") Тогда
|
|
||||||
Построитель.Макет = ПолучитьМакет("МакетДеревоРешений");
|
|
||||||
//КартинкаЗаголовка = ЭлементыФормы.КартинкаДеревоРешений.Картинка;
|
|
||||||
ИначеЕсли ТипАнализа = Тип("АнализДанныхПоискАссоциаций") Тогда
|
|
||||||
Построитель.Макет = ПолучитьМакет("МакетПоискАссоциаций");
|
|
||||||
//КартинкаЗаголовка = ЭлементыФормы.КартинкаПоискАссоциаций.Картинка;
|
|
||||||
ИначеЕсли ТипАнализа = Тип("АнализДанныхПоискПоследовательностей") Тогда
|
|
||||||
Построитель.Макет = ПолучитьМакет("МакетПоискПоследовательностей");
|
|
||||||
//КартинкаЗаголовка = ЭлементыФормы.КартинкаПоискПоследовательностей.Картинка;
|
|
||||||
ИначеЕсли ТипАнализа = Тип("АнализДанныхОбщаяСтатистика") Тогда
|
|
||||||
Построитель.Макет = ПолучитьМакет("МакетОбщаяСтатистика");
|
|
||||||
//КартинкаЗаголовка = ЭлементыФормы.КартинкаОбщаяСтатистика.Картинка;
|
|
||||||
КонецЕсли;
|
|
||||||
ЗагрузитьЗначенияПараметров(СтарыеЗначенияПараметров);
|
|
||||||
ЭлементыФормы.КолонкиАнализаДанных.Колонки.Вес.Видимость = ТипАнализа = Тип("АнализДанныхКластеризация");
|
|
||||||
ДоступныеЗначенияКолонки = мПлатформа.ДоступныеЗначенияТипа(ТипЗнч(ВидДанныхАнализа));
|
|
||||||
ЭлементыФормы.КолонкиАнализаДанных.Колонки.ВидДанных.ЭлементУправления.СписокВыбора = ДоступныеЗначенияКолонки;
|
|
||||||
ПеречислениеТиповКолонки = ПеречислениеТиповКолонкиАнализаДанных();
|
|
||||||
ДоступныеЗначенияКолонки = мПлатформа.ДоступныеЗначенияТипа(ТипЗнч(ПеречислениеТиповКолонки));
|
|
||||||
ЭлементыФормы.КолонкиАнализаДанных.Колонки.ТипКолонки.ЭлементУправления.СписокВыбора = ДоступныеЗначенияКолонки;
|
|
||||||
Для Каждого Колонка Из Построитель.НастройкаКолонок Цикл
|
|
||||||
#Если Сервер И Не Сервер Тогда
|
|
||||||
Колонка = Построитель.НастройкаКолонок.Найти();
|
|
||||||
#КонецЕсли
|
|
||||||
СтрокаКолонки = КолонкиАнализаДанных.Найти(Колонка.Имя);
|
|
||||||
Если СтрокаКолонки = Неопределено Тогда
|
|
||||||
СтрокаКолонки = КолонкиАнализаДанных.Добавить();
|
|
||||||
СтрокаКолонки.Имя = Колонка.Имя;
|
|
||||||
СтрокаКолонки.ВидДанных = ирОбщий.СтроковыйИдентификаторЗначенияЛкс(Колонка.ВидДанных);
|
|
||||||
СтрокаКолонки.Вес = ВесПоУмолчанию;
|
|
||||||
КонецЕсли;
|
|
||||||
Если ДоступныеЗначенияКолонки.НайтиПоЗначению(СтрокаКолонки.ТипКолонки) = Неопределено Тогда
|
|
||||||
Если СтрокаКолонки.Имя = "Кластер" + ирОбщий.СуффиксСлужебногоСвойстваЛкс() Тогда
|
|
||||||
СтрокаКолонки.ТипКолонки = ирОбщий.СтроковыйИдентификаторЗначенияЛкс(ПеречислениеТиповКолонки.НеИспользуемая);
|
|
||||||
Иначе
|
|
||||||
СтрокаКолонки.ТипКолонки = ирОбщий.СтроковыйИдентификаторЗначенияЛкс(Колонка.ТипКолонки);
|
|
||||||
КонецЕсли;
|
|
||||||
КонецЕсли;
|
|
||||||
КонецЦикла;
|
|
||||||
ПодменюТипКолонки = ЭлементыФормы.КПКолонки.Кнопки.УстановитьТипКолонки.Кнопки;
|
|
||||||
ПодменюТипКолонки.Очистить();
|
|
||||||
ДоступныеЗначенияКолонки.СортироватьПоПредставлению();
|
|
||||||
Для Каждого ЭлементСписка Из ДоступныеЗначенияКолонки Цикл
|
|
||||||
Кнопка = ПодменюТипКолонки.Добавить(ирОбщий.СтроковыйИдентификаторЗначенияЛкс(ЭлементСписка.Значение), ТипКнопкиКоманднойПанели.Действие);
|
|
||||||
#Если Сервер И Не Сервер Тогда
|
|
||||||
КПКолонкиУстановитьТипКолонки();
|
|
||||||
#КонецЕсли
|
|
||||||
Кнопка.Действие = Новый Действие("КПКолонкиУстановитьТипКолонки");
|
|
||||||
Кнопка.Текст = ЭлементСписка.Значение;
|
|
||||||
КонецЦикла;
|
|
||||||
НачальноеКоличество = КолонкиАнализаДанных.Количество();
|
|
||||||
Для Счетчик = 1 По НачальноеКоличество Цикл
|
|
||||||
Колонка = КолонкиАнализаДанных[НачальноеКоличество - Счетчик];
|
|
||||||
Если Построитель.НастройкаКолонок.Найти(Колонка.Имя) = Неопределено Тогда
|
|
||||||
КолонкиАнализаДанных.Удалить(Колонка);
|
|
||||||
КонецЕсли;
|
|
||||||
КонецЦикла;
|
|
||||||
ирОбщий.СоздатьМенеджерСохраненияНастроекФормыЛкс(ЭтаФорма, ТипАнализа);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ДействияФормыИсходнаяТаблица(Кнопка)
|
|
||||||
|
|
||||||
ирОбщий.ОткрытьЗначениеЛкс(ПараметрТаблица,,,, Ложь);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ДействияФормыСтатья1(Кнопка)
|
|
||||||
|
|
||||||
ЗапуститьПриложение("https://infostart.ru/1c/articles/1486999");
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура НадписьОписаниеНажатие(Элемент)
|
|
||||||
|
|
||||||
ИмяТипа = ирОбщий.ИмяТипаЛкс(ТипАнализа);
|
|
||||||
ирОбщий.ОткрытьТекстЛкс(мТаблицаТиповАнализа.Найти(ИмяТипа, "Имя").Описание, "" + ТипАнализа,, Истина, ИмяТипа);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
ирОбщий.ИнициироватьФормуЛкс(ЭтаФорма, "Обработка.ирАнализДанных.Форма.Форма");
|
|
||||||
ВесПоУмолчанию = 100;
|
|
||||||
ТипАнализа = Тип("АнализДанныхКластеризация");
|
|
||||||
мТаблицаТиповАнализа = Новый ТаблицаЗначений;
|
|
||||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
|
|
@ -1,302 +0,0 @@
|
||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<document xmlns="http://v8.1c.ru/8.2/data/spreadsheet" xmlns:style="http://v8.1c.ru/8.1/data/ui/style" xmlns:v8="http://v8.1c.ru/8.1/data/core" xmlns:v8ui="http://v8.1c.ru/8.1/data/ui" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
|
||||||
<languageSettings>
|
|
||||||
<currentLanguage>ru</currentLanguage>
|
|
||||||
<defaultLanguage>ru</defaultLanguage>
|
|
||||||
<languageInfo>
|
|
||||||
<id>ru</id>
|
|
||||||
<code>Русский</code>
|
|
||||||
<description>Русский</description>
|
|
||||||
</languageInfo>
|
|
||||||
<languageInfo>
|
|
||||||
<id>en</id>
|
|
||||||
<code>Английский</code>
|
|
||||||
<description>Английский</description>
|
|
||||||
</languageInfo>
|
|
||||||
<languageInfo>
|
|
||||||
<id>uk</id>
|
|
||||||
<code>Украинский</code>
|
|
||||||
<description>Украинский</description>
|
|
||||||
</languageInfo>
|
|
||||||
</languageSettings>
|
|
||||||
<columns>
|
|
||||||
<size>2</size>
|
|
||||||
<columnsItem>
|
|
||||||
<index>0</index>
|
|
||||||
<column>
|
|
||||||
<formatIndex>1</formatIndex>
|
|
||||||
</column>
|
|
||||||
</columnsItem>
|
|
||||||
<columnsItem>
|
|
||||||
<index>1</index>
|
|
||||||
<column>
|
|
||||||
<formatIndex>2</formatIndex>
|
|
||||||
</column>
|
|
||||||
</columnsItem>
|
|
||||||
</columns>
|
|
||||||
<rowsItem>
|
|
||||||
<index>0</index>
|
|
||||||
<row>
|
|
||||||
<c>
|
|
||||||
<c>
|
|
||||||
<f>3</f>
|
|
||||||
<tl>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>ru</v8:lang>
|
|
||||||
<v8:content>Имя</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
</tl>
|
|
||||||
</c>
|
|
||||||
</c>
|
|
||||||
<c>
|
|
||||||
<c>
|
|
||||||
<f>4</f>
|
|
||||||
<tl>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>ru</v8:lang>
|
|
||||||
<v8:content>Описание</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
</tl>
|
|
||||||
</c>
|
|
||||||
</c>
|
|
||||||
</row>
|
|
||||||
</rowsItem>
|
|
||||||
<rowsItem>
|
|
||||||
<index>1</index>
|
|
||||||
<row>
|
|
||||||
<c>
|
|
||||||
<c>
|
|
||||||
<f>0</f>
|
|
||||||
<tl>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>ru</v8:lang>
|
|
||||||
<v8:content>АнализДанныхДеревоРешений</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
</tl>
|
|
||||||
</c>
|
|
||||||
</c>
|
|
||||||
<c>
|
|
||||||
<c>
|
|
||||||
<f>5</f>
|
|
||||||
<tl>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>ru</v8:lang>
|
|
||||||
<v8:content>Строит иерархическую структуру классифицирующих правил, представленную в виде дерева.
|
|
||||||
|
|
||||||
Для построения дерева решений необходимо выбрать целевой атрибут, по которому будет строиться классификатор, и ряд входных атрибутов, которые будут использоваться для создания правил. Целевой атрибут может содержать, например, информацию о том, перешел ли клиент к другому поставщику услуг, удачна ли была сделка, качественно ли была выполнена работа и т. д. Входными атрибутами, например, могут выступать возраст сотрудника, стаж его работы, материальное состояние клиента, количество сотрудников в компании и т. п.
|
|
||||||
|
|
||||||
Результат работы анализа представляется в виде дерева, каждый узел которого содержит некоторое условие. Для принятия решения, к какому классу следует отнести некий новый объект, необходимо, отвечая на вопросы в узлах, пройти цепочку от корня до листа дерева, переходя к дочерним узлам в случае утвердительного ответа и к соседнему узлу – в случае отрицательного. Набор параметров анализа позволяет регулировать точность полученного дерева.
|
|
||||||
|
|
||||||
Ошибки классификации показывают, в каких случаях полученные правила расходятся с «действительностью» (исходной выборкой данных). Упрощение дерева заключается в том, что по определенным правилам
|
|
||||||
(формулам, которые будут рассмотрены ниже) узлы дерева превращаются в листья (отсекается «лишнее» ветвление).</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
</tl>
|
|
||||||
</c>
|
|
||||||
</c>
|
|
||||||
</row>
|
|
||||||
</rowsItem>
|
|
||||||
<rowsItem>
|
|
||||||
<index>2</index>
|
|
||||||
<row>
|
|
||||||
<c>
|
|
||||||
<c>
|
|
||||||
<f>0</f>
|
|
||||||
<tl>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>ru</v8:lang>
|
|
||||||
<v8:content>АнализДанныхКластеризация</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
</tl>
|
|
||||||
</c>
|
|
||||||
</c>
|
|
||||||
<c>
|
|
||||||
<c>
|
|
||||||
<f>5</f>
|
|
||||||
<tl>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>ru</v8:lang>
|
|
||||||
<v8:content>Разделяет исходный набор исследуемых объектов на группы объектов таким образом, чтобы каждый объект был более схож с объектами из своей группы, чем с объектами других групп. Анализируя в дальнейшем полученные группы, называемые кластерами, можно определить, чем характеризуется та или иная группа, принять решение о методах работы с объектами различных групп. Например, при помощи кластерного анализа можно разделить клиентов, с которыми работает компания, на группы, для того, чтобы применять различные стратегии при работе с ними.
|
|
||||||
|
|
||||||
При помощи параметров кластерного анализа пользователь может настроить алгоритм, по которому будет производиться разбиение, а также может динамически изменять состав характеристик, учитываемых при анализе, настраивать для них весовые коэффициенты.
|
|
||||||
|
|
||||||
Результатами анализа с помощью кластеризации являются:
|
|
||||||
центры кластеров, представляющие собой совокупность усредненных значений входных колонок в каждом кластере;
|
|
||||||
таблица межкластерных расстояний (между центрами кластеров), определяющих степень различия между ними;
|
|
||||||
значения прогнозных колонок для каждого кластера;
|
|
||||||
рейтинг факторов и дерево условий, определивших распределение объектов на кластеры.
|
|
||||||
Результат кластеризации может быть выведен в дендрограмму – специальный вид диаграммы, предназначенный для графического отображения результатов кластерного анализа.</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
</tl>
|
|
||||||
</c>
|
|
||||||
</c>
|
|
||||||
</row>
|
|
||||||
</rowsItem>
|
|
||||||
<rowsItem>
|
|
||||||
<index>3</index>
|
|
||||||
<row>
|
|
||||||
<c>
|
|
||||||
<c>
|
|
||||||
<f>0</f>
|
|
||||||
<tl>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>ru</v8:lang>
|
|
||||||
<v8:content>АнализДанныхОбщаяСтатистика</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
</tl>
|
|
||||||
</c>
|
|
||||||
</c>
|
|
||||||
<c>
|
|
||||||
<c>
|
|
||||||
<f>5</f>
|
|
||||||
<tl>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>ru</v8:lang>
|
|
||||||
<v8:content>Механизм для сбора общей информации о данных, находящихся в полученном источнике данных. Этот тип анализа предназначен для предварительного исследования анализируемой информации. При выводе отчета в табличный документ заполняются круговые диаграммы для отображения состава полей. Для колонок разных видов предусмотрено получение различной информации.
|
|
||||||
|
|
||||||
Дискретные данные:
|
|
||||||
Количество значений. Количество значений, встреченных в колонке
|
|
||||||
источника данных (Null значением не считается);
|
|
||||||
Количество уникальных значений;
|
|
||||||
Мода. Значение, которое в источнике данных встречается наиболее часто. Если данных несколько значений, встречаемых с одинаковой частотой, в качестве моды берется первое найденное;
|
|
||||||
Частота. Количество значений в выборку данных;
|
|
||||||
Относительная частота. Определяется как отношение количества вхождения значения к общему количеству значений;
|
|
||||||
Накопленная частота. Считается как сумма частоты значения и сумма
|
|
||||||
частот предыдущих значений выборки данных;
|
|
||||||
Накопленная относительная частота. Считается как сумма накопленной частоты значения и сумма относительных частот предыдущих значений;
|
|
||||||
|
|
||||||
Непрерывные данные:
|
|
||||||
Количество значений;
|
|
||||||
Минимум значений;
|
|
||||||
Максимум значения;
|
|
||||||
Среднее;
|
|
||||||
Размах. Разность между максимальным и минимальным значениями;
|
|
||||||
Стандартное отклонение (среднеквадратичное отклонение);
|
|
||||||
Медиана. Значение, лежащие в середине выборки.
|
|
||||||
|
|
||||||
Если анализируется одновременно несколько полей различных видов, их анализ проводится вне зависимости друг от друга.</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
</tl>
|
|
||||||
</c>
|
|
||||||
</c>
|
|
||||||
</row>
|
|
||||||
</rowsItem>
|
|
||||||
<rowsItem>
|
|
||||||
<index>4</index>
|
|
||||||
<row>
|
|
||||||
<c>
|
|
||||||
<c>
|
|
||||||
<f>0</f>
|
|
||||||
<tl>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>ru</v8:lang>
|
|
||||||
<v8:content>АнализДанныхПоискАссоциаций</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
</tl>
|
|
||||||
</c>
|
|
||||||
</c>
|
|
||||||
<c>
|
|
||||||
<c>
|
|
||||||
<f>5</f>
|
|
||||||
<tl>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>ru</v8:lang>
|
|
||||||
<v8:content>Ищет часто встречаемых вместе групп объектов или значений характеристик, а также производит поиск правил ассоциаций. Поиск ассоциаций может использоваться, например, для определения часто приобретаемых вместе товаров или услуг.
|
|
||||||
|
|
||||||
Этот тип анализа может работать с иерархическими данными, что позволяет, например, находить правила не только для конкретных товаров, но и для их групп. Важной особенностью этого типа анализа является возможность работать как с объектным источником данных, в котором каждая колонка содержит некоторую характеристику объекта, так и с событийным источником, где характеристики объекта располагаются в одной колонке.
|
|
||||||
|
|
||||||
С точки зрения данного типа анализа колонки источника можно разделить на:
|
|
||||||
Неиспользуемая. Игнорируются анализом;
|
|
||||||
Объект. Данные из этой колонки используются как объекты (или события) проводимого анализа. Исходя из значения данной колонки значения другой колонки (Элемент) относятся к одной ассоциируемой группе;
|
|
||||||
Элемент. Данные из этой колонки используются для получения устойчивых значений, построения ассоциативных правил.
|
|
||||||
|
|
||||||
Параметры анализа:
|
|
||||||
МинимальныйПроцентСлучаев. Определяется минимальный процент случаев, в которых должна встречаться комбинация элементов. Группы, у которых данное значение меньше указанного, не попадает в результат анализа;
|
|
||||||
МинимальнаяДостоверность. Показывает минимальное значение процента случаев, когда правило соблюдаются;
|
|
||||||
МинимальнаяЗначимость. Группы, у которых данное значение меньше указанного, не попадают в результат анализа;
|
|
||||||
ТипОтсеченияПравил. Один из вариантов системного перечисления ТипОтсеченияПравилАссоциации:Избыточные (отсекать избыточные правила), Покрытые (отсекать правила, покрытые другими правилами).
|
|
||||||
|
|
||||||
В результате выполнения анализа:
|
|
||||||
информация о данных (количество объектов, количество элементов, среднее количество элементов в объекте, количество найденных правил ассоциаций);
|
|
||||||
найденные группы элементов. Указывается состав группы, количество случаев, процент случаев в которых эта группа встречается;
|
|
||||||
найденные ассоциативные правила. Указывается исходный состав элементов, следствие (состав элементов), процент случаев, достоверность, значимость правила. </v8:content>
|
|
||||||
</v8:item>
|
|
||||||
</tl>
|
|
||||||
</c>
|
|
||||||
</c>
|
|
||||||
</row>
|
|
||||||
</rowsItem>
|
|
||||||
<rowsItem>
|
|
||||||
<index>5</index>
|
|
||||||
<row>
|
|
||||||
<c>
|
|
||||||
<c>
|
|
||||||
<f>0</f>
|
|
||||||
<tl>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>ru</v8:lang>
|
|
||||||
<v8:content>АнализДанныхПоискПоследовательностей</v8:content>
|
|
||||||
</v8:item>
|
|
||||||
</tl>
|
|
||||||
</c>
|
|
||||||
</c>
|
|
||||||
<c>
|
|
||||||
<c>
|
|
||||||
<f>5</f>
|
|
||||||
<tl>
|
|
||||||
<v8:item>
|
|
||||||
<v8:lang>ru</v8:lang>
|
|
||||||
<v8:content>Выявляет в источнике данных последовательные цепочки событий. Например, это может быть цепочка товаров или услуг, которые часто последовательно приобретают клиенты. Этот тип анализа позволяет искать по иерархии, что дает возможность отслеживать не только последовательности конкретных событий, но и последовательности родительских групп. Он может использоваться тогда, когда одним из важных анализируемых показателей является последовательность товаров, которые закупаются друг за другом в течение какого – либо определенного промежутка времени.
|
|
||||||
|
|
||||||
С точки зрения данного типа анализа колонки источника представлены следующим образом:
|
|
||||||
Неиспользуемая;
|
|
||||||
Последовательность. Данные из этой колонки используется для анализа как объект события последовательности. По значению данной колонки анализа и ассоциирует данные с одной цепочкой событий;
|
|
||||||
Элемент;
|
|
||||||
Время. Именно по данной колонке определяется время наступления события. Наличие данной колонки обязательно при проведении данного типа анализа;
|
|
||||||
|
|
||||||
Кроме настройки типов колонок, на результат проводимого анализа влияют следующие параметры анализа:
|
|
||||||
МинимальныйПроцентСлучаев.;
|
|
||||||
МинимальныйИнтервал. Признак установки минимального интервала последовательности (должна быть установлена единица измерения интервала, кратность);
|
|
||||||
МаксимальныйИнтервал. Признак установки максимального интервала последовательности (должна быть установлена единица измерения интервала, кратность);
|
|
||||||
ИнтервалЭквивалентностиВремени. Признак установки интервала эквивалентности времени (должна быть установлена единица интервала эквивалентности времени, ее кратность);
|
|
||||||
МинимальнаяДлина;
|
|
||||||
ПоискПоИерархии. Признак осуществления поиска по иерархии (распространяется на колонки с типом Элемент)
|
|
||||||
|
|
||||||
Основным результатом анализа являются найденные шаблоны последовательностей. Этот шаблон содержит следующую информацию:
|
|
||||||
состав шаблона последовательности;
|
|
||||||
количество случаев, в котором наблюдалась данная последовательность;
|
|
||||||
максимальные интервалы между событиями (в случае, если событий 2, то интервал один);
|
|
||||||
минимальные интервалы между событиями (в случае, если событий 2, то интервал один);
|
|
||||||
процент случаев, когда данная последовательность выполнилась;
|
|
||||||
средние интервалы между событиями (в случае, если событий 2, то интервал один). </v8:content>
|
|
||||||
</v8:item>
|
|
||||||
</tl>
|
|
||||||
</c>
|
|
||||||
</c>
|
|
||||||
</row>
|
|
||||||
</rowsItem>
|
|
||||||
<templateMode>true</templateMode>
|
|
||||||
<defaultFormatIndex>6</defaultFormatIndex>
|
|
||||||
<height>6</height>
|
|
||||||
<vgRows>6</vgRows>
|
|
||||||
<font faceName="Arial" height="8" bold="true" italic="false" underline="false" strikeout="false" kind="Absolute"/>
|
|
||||||
<format>
|
|
||||||
<width>265</width>
|
|
||||||
</format>
|
|
||||||
<format>
|
|
||||||
<width>1329</width>
|
|
||||||
<textPlacement>Wrap</textPlacement>
|
|
||||||
</format>
|
|
||||||
<format>
|
|
||||||
<font>0</font>
|
|
||||||
</format>
|
|
||||||
<format>
|
|
||||||
<font>0</font>
|
|
||||||
<textPlacement>Wrap</textPlacement>
|
|
||||||
</format>
|
|
||||||
<format>
|
|
||||||
<textPlacement>Wrap</textPlacement>
|
|
||||||
</format>
|
|
||||||
<format>
|
|
||||||
<width>72</width>
|
|
||||||
</format>
|
|
||||||
</document>
|
|
||||||
|
|
@ -1,5 +0,0 @@
|
||||||
|
|
||||||
&НаКлиенте
|
|
||||||
Процедура ОбработкаКоманды(ПараметрКоманды, ПараметрыВыполненияКоманды)
|
|
||||||
ирОбщий.ОткрытьФормуЛкс("Обработка.ирАнализЖурналаРегистрации.Форма");
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
@ -1,620 +0,0 @@
|
||||||
//ирПортативный Перем ирПортативный Экспорт;
|
|
||||||
//ирПортативный Перем ирОбщий Экспорт;
|
|
||||||
//ирПортативный Перем ирСервер Экспорт;
|
|
||||||
//ирПортативный Перем ирКэш Экспорт;
|
|
||||||
//ирПортативный Перем ирПривилегированный Экспорт;
|
|
||||||
|
|
||||||
Перем мАлгоритмПередВыгрузкойПараметры Экспорт;
|
|
||||||
|
|
||||||
Функция ПолучитьСписокЗначенийЭлементаОтбора(ПолеОтбора) Экспорт
|
|
||||||
|
|
||||||
ВозможныеЗначения = Неопределено;
|
|
||||||
Если ПолеОтбора = "Уровень" Тогда
|
|
||||||
ВозможныеЗначения = Новый СписокЗначений;
|
|
||||||
ВозможныеЗначения.Добавить(УровеньЖурналаРегистрации.Ошибка);
|
|
||||||
ВозможныеЗначения.Добавить(УровеньЖурналаРегистрации.Предупреждение);
|
|
||||||
ВозможныеЗначения.Добавить(УровеньЖурналаРегистрации.Информация);
|
|
||||||
ВозможныеЗначения.Добавить(УровеньЖурналаРегистрации.Примечание);
|
|
||||||
ИначеЕсли ПолеОтбора = "СтатусТранзакции" Тогда
|
|
||||||
ВозможныеЗначения = Новый СписокЗначений;
|
|
||||||
ВозможныеЗначения.Добавить(СтатусТранзакцииЗаписиЖурналаРегистрации.Зафиксирована);
|
|
||||||
ВозможныеЗначения.Добавить(СтатусТранзакцииЗаписиЖурналаРегистрации.Отменена);
|
|
||||||
ВозможныеЗначения.Добавить(СтатусТранзакцииЗаписиЖурналаРегистрации.НеЗавершена);
|
|
||||||
ВозможныеЗначения.Добавить(СтатусТранзакцииЗаписиЖурналаРегистрации.НетТранзакции);
|
|
||||||
ИначеЕсли Ложь
|
|
||||||
Или ПолеОтбора = "Пользователь"
|
|
||||||
Или ПолеОтбора = "Компьютер"
|
|
||||||
Или ПолеОтбора = "ИмяПриложения"
|
|
||||||
Или ПолеОтбора = "Событие"
|
|
||||||
Или ПолеОтбора = "Метаданные"
|
|
||||||
Или ПолеОтбора = "РабочийСервер"
|
|
||||||
Или ПолеОтбора = "ОсновнойIPПорт"
|
|
||||||
Или ПолеОтбора = "ВспомогательныйIPПорт"
|
|
||||||
Или ПолеОтбора = "РазделениеДанныхСеанса"
|
|
||||||
Тогда
|
|
||||||
СтруктураЗначенийОтбора = ПолучитьЗначенияОтбораЖурналаРегистрации(ПолеОтбора, ИмяФайла);
|
|
||||||
ВозможныеЗначения = СтруктураЗначенийОтбора[ирОбщий.ПеревестиСтроку(ПолеОтбора)];
|
|
||||||
КонецЕсли;
|
|
||||||
Если ВозможныеЗначения <> Неопределено Тогда
|
|
||||||
Если ТипЗнч(ВозможныеЗначения) = Тип("СписокЗначений") Тогда
|
|
||||||
СписокВыбора = ВозможныеЗначения;
|
|
||||||
ИначеЕсли ТипЗнч(ВозможныеЗначения) = Тип("Массив") Тогда
|
|
||||||
СписокВыбора = Новый СписокЗначений;
|
|
||||||
СписокВыбора.ЗагрузитьЗначения(ВозможныеЗначения);
|
|
||||||
СписокВыбора.СортироватьПоЗначению();
|
|
||||||
ИначеЕсли ТипЗнч(ВозможныеЗначения) = Тип("Соответствие") Тогда
|
|
||||||
СписокВыбора = Новый СписокЗначений;
|
|
||||||
Для Каждого КлючИЗначение Из ВозможныеЗначения Цикл
|
|
||||||
ПредставлениеЭлемента = КлючИЗначение.Значение;
|
|
||||||
Если ПолеОтбора = "Пользователь" И ПредставлениеЭлемента = "" Тогда
|
|
||||||
ПредставлениеЭлемента = "<Пользователь по умолчанию>";
|
|
||||||
КонецЕсли;
|
|
||||||
СписокВыбора.Добавить(КлючИЗначение.Ключ, ПредставлениеЭлемента);
|
|
||||||
КонецЦикла;
|
|
||||||
СписокВыбора.СортироватьПоПредставлению();
|
|
||||||
КонецЕсли;
|
|
||||||
Иначе
|
|
||||||
СписокВыбора = Новый СписокЗначений;
|
|
||||||
КонецЕсли;
|
|
||||||
Возврат СписокВыбора;
|
|
||||||
|
|
||||||
КонецФункции
|
|
||||||
|
|
||||||
Функция УстановитьОписаниеТиповЗначенияОтбора(СтрокаОтбора) Экспорт
|
|
||||||
|
|
||||||
ПолеОтбора = СтрокаОтбора.Поле;
|
|
||||||
МетаРеквизит = Метаданные().ТабличныеЧасти.ТаблицаЖурнала.Реквизиты[ПолеОтбора];
|
|
||||||
БазовоеОписаниеТипов = МетаРеквизит.Тип;
|
|
||||||
Если Ложь
|
|
||||||
Или ПолеОтбора = "Уровень"
|
|
||||||
Или ПолеОтбора = "СтатусТранзакции"
|
|
||||||
Или ПолеОтбора = "Пользователь"
|
|
||||||
Или ПолеОтбора = "Компьютер"
|
|
||||||
Или ПолеОтбора = "ИмяПриложения"
|
|
||||||
Или ПолеОтбора = "Событие"
|
|
||||||
Или ПолеОтбора = "Метаданные"
|
|
||||||
Или ПолеОтбора = "РабочийСервер"
|
|
||||||
Или ПолеОтбора = "ОсновнойIPПорт"
|
|
||||||
Или ПолеОтбора = "ВспомогательныйIPПорт"
|
|
||||||
Или ПолеОтбора = "РазделениеДанныхСеанса"
|
|
||||||
Тогда
|
|
||||||
ОписаниеТипов = Новый ОписаниеТипов("СписокЗначений");
|
|
||||||
ИначеЕсли ПолеОтбора = "Сеанс" Тогда
|
|
||||||
ОписаниеТипов = Новый ОписаниеТипов(БазовоеОписаниеТипов, "СписокЗначений");
|
|
||||||
Иначе
|
|
||||||
ОписаниеТипов = БазовоеОписаниеТипов;
|
|
||||||
КонецЕсли;
|
|
||||||
СтрокаОтбора.ОписаниеТипов = ОписаниеТипов;
|
|
||||||
СтрокаОтбора.Значение = ОписаниеТипов.ПривестиЗначение(СтрокаОтбора.Значение);
|
|
||||||
СтрокаОтбора.Представление = МетаРеквизит.Представление();
|
|
||||||
Если МетаРеквизит.Имя = "Данные" Тогда
|
|
||||||
//СтрокаОтбора.Представление = "Данные (медленно!)";
|
|
||||||
КонецЕсли;
|
|
||||||
|
|
||||||
КонецФункции
|
|
||||||
|
|
||||||
Функция ДобавитьЭлементОтбора(Отбор, ПолеОтбора = "Данные", Знач ЗначениеОтбора = Неопределено, ПредставлениеЗначения = Неопределено,
|
|
||||||
Использование = Неопределено, ОставлятьСтарыеПометки = Истина) Экспорт
|
|
||||||
|
|
||||||
Если ПолеОтбора = "Уровень" И ТипЗнч(ЗначениеОтбора) = Тип("Строка") Тогда
|
|
||||||
ЗначениеОтбора = УровеньЖурналаРегистрации[ЗначениеОтбора];
|
|
||||||
КонецЕсли;
|
|
||||||
ДоступныеЗначенияЭлементаОтбора = ПолучитьСписокЗначенийЭлементаОтбора(ПолеОтбора);
|
|
||||||
СтрокаОтбора = Отбор.Найти(ПолеОтбора);
|
|
||||||
Если СтрокаОтбора = Неопределено Тогда
|
|
||||||
СтрокаОтбора = Отбор.Добавить();
|
|
||||||
СтрокаОтбора.Поле = ПолеОтбора;
|
|
||||||
СтрокаОтбора.Значение = ДоступныеЗначенияЭлементаОтбора;
|
|
||||||
КонецЕсли;
|
|
||||||
УстановитьОписаниеТиповЗначенияОтбора(СтрокаОтбора);
|
|
||||||
Если Использование <> Неопределено Тогда
|
|
||||||
ирОбщий.ПрисвоитьЕслиНеРавноЛкс(СтрокаОтбора.Использование, Использование);
|
|
||||||
КонецЕсли;
|
|
||||||
Если ТипЗнч(СтрокаОтбора.Значение) = Тип("СписокЗначений") Тогда
|
|
||||||
СтароеЗначениеОтбора = СтрокаОтбора.Значение;
|
|
||||||
#Если Сервер И Не Сервер Тогда
|
|
||||||
СтароеЗначениеОтбора = Новый СписокЗначений;
|
|
||||||
#КонецЕсли
|
|
||||||
Если Не ОставлятьСтарыеПометки Тогда
|
|
||||||
СтароеЗначениеОтбора.ЗаполнитьПометки(Ложь);
|
|
||||||
КонецЕсли;
|
|
||||||
Если ТипЗнч(ЗначениеОтбора) <> Тип("СписокЗначений") Тогда
|
|
||||||
лПустышка = ЗначениеОтбора;
|
|
||||||
ЗначениеОтбора = Новый СписокЗначений;
|
|
||||||
Если лПустышка <> Неопределено Тогда
|
|
||||||
ЗначениеОтбора.Добавить(лПустышка, , Истина);
|
|
||||||
КонецЕсли;
|
|
||||||
Иначе
|
|
||||||
ЗначениеОтбора = ирОбщий.СкопироватьУниверсальнуюКоллекциюЛкс(ЗначениеОтбора);
|
|
||||||
КонецЕсли;
|
|
||||||
Для Каждого ДоступноеЗначение Из ДоступныеЗначенияЭлементаОтбора Цикл
|
|
||||||
ЭлементСписка = ЗначениеОтбора.НайтиПоЗначению(ДоступноеЗначение.Значение);
|
|
||||||
Если ЭлементСписка = Неопределено Тогда
|
|
||||||
ЭлементСписка = ЗначениеОтбора.Добавить();
|
|
||||||
КонецЕсли;
|
|
||||||
ЗаполнитьЗначенияСвойств(ЭлементСписка, ДоступноеЗначение,, "Пометка");
|
|
||||||
КонецЦикла;
|
|
||||||
Для Каждого ЭлементСтарогоСписка Из СтароеЗначениеОтбора Цикл
|
|
||||||
Если Не ЭлементСтарогоСписка.Пометка Тогда
|
|
||||||
Продолжить;
|
|
||||||
КонецЕсли;
|
|
||||||
ЭлементСписка = ЗначениеОтбора.НайтиПоЗначению(ЭлементСтарогоСписка.Значение);
|
|
||||||
Если ЭлементСписка <> Неопределено Тогда
|
|
||||||
ЭлементСписка.Пометка = Истина;
|
|
||||||
КонецЕсли;
|
|
||||||
КонецЦикла;
|
|
||||||
ЗначениеОтбора.СортироватьПоПредставлению();
|
|
||||||
СтрокаОтбора.Значение = ЗначениеОтбора;
|
|
||||||
Иначе
|
|
||||||
Если ЗначениеОтбора = Неопределено Тогда
|
|
||||||
ЗначениеОтбора = СтрокаОтбора.Значение;
|
|
||||||
КонецЕсли;
|
|
||||||
СтрокаОтбора.Значение = СтрокаОтбора.ОписаниеТипов.ПривестиЗначение(ЗначениеОтбора);
|
|
||||||
КонецЕсли;
|
|
||||||
Возврат СтрокаОтбора;
|
|
||||||
|
|
||||||
КонецФункции
|
|
||||||
|
|
||||||
Процедура ЗаполнитьОтборВыгрузки() Экспорт
|
|
||||||
|
|
||||||
СписокУровнейОтбора = Новый СписокЗначений;
|
|
||||||
СписокУровнейОтбора.Добавить(УровеньЖурналаРегистрации.Ошибка,, Истина);
|
|
||||||
СписокУровнейОтбора.Добавить(УровеньЖурналаРегистрации.Предупреждение,, Истина);
|
|
||||||
ДобавитьЭлементОтбора(Отбор, "Уровень", СписокУровнейОтбора);
|
|
||||||
ДобавитьЭлементОтбора(Отбор, "Комментарий");
|
|
||||||
ДобавитьЭлементОтбора(Отбор, "Пользователь");
|
|
||||||
ДобавитьЭлементОтбора(Отбор, "Событие");
|
|
||||||
ДобавитьЭлементОтбора(Отбор, "СтатусТранзакции");
|
|
||||||
ДобавитьЭлементОтбора(Отбор, "ИмяПриложения");
|
|
||||||
ДобавитьЭлементОтбора(Отбор, "Данные");
|
|
||||||
ДобавитьЭлементОтбора(Отбор, "Метаданные");
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Функция ПолучитьДанные(НачалоПериода = Неопределено, КонецПериода = Неопределено, СтруктураОтбора = Неопределено, МаксимальныйРазмерВыгрузки = Неопределено) Экспорт
|
|
||||||
|
|
||||||
//ЗаполнитьОтборВыгрузки();
|
|
||||||
Если НачалоПериода <> Неопределено Тогда
|
|
||||||
ЭтотОбъект.НачалоПериода = НачалоПериода;
|
|
||||||
Иначе
|
|
||||||
ЭтотОбъект.НачалоПериода = НачалоДня(ТекущаяДата());
|
|
||||||
КонецЕсли;
|
|
||||||
Если КонецПериода <> Неопределено Тогда
|
|
||||||
ЭтотОбъект.КонецПериода = КонецПериода;
|
|
||||||
Иначе
|
|
||||||
ЭтотОбъект.КонецПериода = Неопределено;
|
|
||||||
КонецЕсли;
|
|
||||||
Если МаксимальныйРазмерВыгрузки <> Неопределено Тогда
|
|
||||||
ЭтотОбъект.МаксимальныйРазмерВыгрузки = МаксимальныйРазмерВыгрузки;
|
|
||||||
КонецЕсли;
|
|
||||||
Если СтруктураОтбора <> Неопределено Тогда
|
|
||||||
Для Каждого КлючИЗначение Из СтруктураОтбора Цикл
|
|
||||||
ДобавитьЭлементОтбора(ЭтотОбъект.Отбор, КлючИЗначение.Ключ, КлючИЗначение.Значение,, Истина);
|
|
||||||
КонецЦикла;
|
|
||||||
КонецЕсли;
|
|
||||||
ЗагрузитьДанныеЖурнала();
|
|
||||||
Возврат ТаблицаЖурнала;
|
|
||||||
|
|
||||||
КонецФункции
|
|
||||||
|
|
||||||
Функция ЗагрузитьДанныеЖурнала(ЭтаФорма = Неопределено, Кнопка = Неопределено, ОбработчикЗавершения = Неопределено) Экспорт
|
|
||||||
|
|
||||||
Если Ложь
|
|
||||||
Или Кнопка = Неопределено
|
|
||||||
Или Кнопка.Картинка <> ирКэш.КартинкаПоИмениЛкс("ирОстановить")
|
|
||||||
Тогда
|
|
||||||
Фильтр = ФильтрВыгрузкиЖурнала();
|
|
||||||
Если Фильтр = Неопределено Тогда
|
|
||||||
Возврат Неопределено;
|
|
||||||
КонецЕсли;
|
|
||||||
#Если Сервер И Не Сервер Тогда
|
|
||||||
Фильтр = Новый Структура;
|
|
||||||
#КонецЕсли
|
|
||||||
КонецЕсли;
|
|
||||||
ИспользованныйВариант = ОписаниеВариантаОтбора(Истина);
|
|
||||||
#Если Сервер И Не Сервер Тогда
|
|
||||||
ИспользованныйВариант = Новый Структура;
|
|
||||||
#КонецЕсли
|
|
||||||
ИспользованныйВариант.Удалить("АлгоритмПередВыгрузкой");
|
|
||||||
Если ЗначениеЗаполнено(АлгоритмПередВыгрузкой) Тогда
|
|
||||||
Попытка
|
|
||||||
АлгоритмОбъект = ирОбщий.ДесериализоватьАлгоритмОбъектЛкс(АлгоритмПередВыгрузкой);
|
|
||||||
#Если Сервер И Не Сервер Тогда
|
|
||||||
АлгоритмОбъект = Обработки.ирИмитаторАлгоритмОбъект.Создать();
|
|
||||||
#КонецЕсли
|
|
||||||
Исключение
|
|
||||||
ВызватьИсключение "Ошибка десериализации алгоритма перед выгрузкой: " + ОписаниеОшибки();
|
|
||||||
КонецПопытки;
|
|
||||||
ВнутренниеПараметры = АлгоритмОбъект.Параметры.Выгрузить();
|
|
||||||
АлгоритмОбъект.Параметры.Загрузить(мАлгоритмПередВыгрузкойПараметры);
|
|
||||||
ирОбщий.ЗагрузитьВТаблицуЗначенийЛкс(ВнутренниеПараметры, АлгоритмОбъект.Параметры);
|
|
||||||
ОтборПоДанным = Неопределено;
|
|
||||||
мПлатформа = ирКэш.Получить();
|
|
||||||
#Если Сервер И Не Сервер Тогда
|
|
||||||
мПлатформа = Обработки.ирПлатформа.Создать();
|
|
||||||
#КонецЕсли
|
|
||||||
Попытка
|
|
||||||
мПлатформа.ВыполнитьМетодАлгоритма(АлгоритмОбъект, 0, ОтборПоДанным);
|
|
||||||
Исключение
|
|
||||||
ВызватьИсключение "Ошибка выполнения алгоритма перед выгрузкой: " + ОписаниеОшибки();
|
|
||||||
КонецПопытки;
|
|
||||||
Если ОтборПоДанным <> Неопределено Тогда
|
|
||||||
Фильтр.Вставить("Данные", ОтборПоДанным);
|
|
||||||
КонецЕсли;
|
|
||||||
КонецЕсли;
|
|
||||||
ПредставлениеОтбора = ПредставлениеВариантаОтбора(ИспользованныйВариант);
|
|
||||||
РазрешитьАсинхронно = Не ЗначениеЗаполнено(ИмяФайла);
|
|
||||||
ПараметрыЗадания = Новый Структура;
|
|
||||||
ПараметрыЗадания.Вставить("Фильтр", Фильтр);
|
|
||||||
ПараметрыЗадания.Вставить("ПредставлениеОтбора", ПредставлениеОтбора);
|
|
||||||
#Если Сервер И Не Сервер Тогда
|
|
||||||
ВыгрузитьЖурналРегистрацииЛкс();
|
|
||||||
#КонецЕсли
|
|
||||||
Если ЭтаФорма <> Неопределено Тогда
|
|
||||||
ЭтаФормаИлиОбработка = ЭтаФорма;
|
|
||||||
Иначе
|
|
||||||
ЭтаФормаИлиОбработка = ЭтотОбъект;
|
|
||||||
КонецЕсли;
|
|
||||||
Результат = ирОбщий.ВыполнитьЗаданиеФормыЛкс("ВыгрузитьЖурналРегистрацииЛкс", ПараметрыЗадания, ЭтаФормаИлиОбработка, "ВыгрузитьЖурналРегистрации", "Выгрузка. Отбор - " + ПредставлениеОтбора,
|
|
||||||
Кнопка, ОбработчикЗавершения, РазрешитьАсинхронно);
|
|
||||||
Если ЭтаФорма = Неопределено Тогда
|
|
||||||
ЭтотОбъект.ТаблицаЗначенийЖурнала = Результат.ТаблицаЗначенийЖурнала;
|
|
||||||
ТаблицаЖурнала.Загрузить(Результат.ТаблицаЗначенийЖурнала);
|
|
||||||
КонецЕсли;
|
|
||||||
|
|
||||||
КонецФункции
|
|
||||||
|
|
||||||
Функция РеквизитыДляСервера(Параметры) Экспорт
|
|
||||||
|
|
||||||
Результат = ирОбщий.РеквизитыОбработкиЛкс(ЭтотОбъект);
|
|
||||||
Возврат Результат;
|
|
||||||
|
|
||||||
КонецФункции
|
|
||||||
|
|
||||||
Функция ВыгрузитьЖурналРегистрацииЛкс(Параметры) Экспорт
|
|
||||||
Фильтр = Параметры.Фильтр;
|
|
||||||
Если Фильтр.Свойство("Данные") Тогда
|
|
||||||
// Антибаг платформы 8.3.8-14 https://partners.v8.1c.ru/forum/t/1807905/m/1807905
|
|
||||||
МаксимальныйРазмерВыгрузкиТекущий = 0;
|
|
||||||
Иначе
|
|
||||||
МаксимальныйРазмерВыгрузкиТекущий = МаксимальныйРазмерВыгрузки;
|
|
||||||
КонецЕсли;
|
|
||||||
Если Фильтр.Свойство("Метаданные") И ТипЗнч(Фильтр.Метаданные) = Тип("Массив") Тогда
|
|
||||||
// Антибаг платформы 8.3.8-14 https://partners.v8.1c.ru/forum/topic/1988645, https://www.hostedredmine.com/issues/925192
|
|
||||||
Для Индекс = 0 По Фильтр.Метаданные.ВГраница() Цикл
|
|
||||||
ЗначениеОтбора = Фильтр.Метаданные[Индекс];
|
|
||||||
Если Истина
|
|
||||||
И ТипЗнч(ЗначениеОтбора) = Тип("Строка")
|
|
||||||
И ирОбщий.ЛиКорневойТипВнешнегоИсточникаДанныхЛкс(ирОбщий.ПервыйФрагментЛкс(ЗначениеОтбора))
|
|
||||||
Тогда
|
|
||||||
ОбъектМД = ирОбщий.ОбъектМДПоПолномуИмениЛкс(ЗначениеОтбора);
|
|
||||||
Если ОбъектМД <> Неопределено Тогда
|
|
||||||
Фильтр.Метаданные[Индекс] = ОбъектМД;
|
|
||||||
КонецЕсли;
|
|
||||||
КонецЕсли;
|
|
||||||
КонецЦикла;
|
|
||||||
КонецЕсли;
|
|
||||||
Если АнализироватьТранзакцииСУчастиемОбъекта Тогда
|
|
||||||
#Если Клиент Тогда
|
|
||||||
Состояние("Анализ транзакций журнала...");
|
|
||||||
#КонецЕсли
|
|
||||||
ЭтотОбъект.ТаблицаЗначенийЖурнала = Новый ТаблицаЗначений;
|
|
||||||
ТаблицаТранзакций = Новый ТаблицаЗначений;
|
|
||||||
ВыгрузитьЖурналРегистрации(ТаблицаТранзакций, Фильтр,, ИмяФайла, МаксимальныйРазмерВыгрузкиТекущий);
|
|
||||||
ТаблицаТранзакций.Свернуть("Транзакция");
|
|
||||||
ТаблицаТранзакций.Сортировать("Транзакция");
|
|
||||||
Транзакции = ТаблицаТранзакций.ВыгрузитьКолонку("Транзакция");
|
|
||||||
Индикатор = ирОбщий.ПолучитьИндикаторПроцессаЛкс(Транзакции.Количество(), "Выгрузка журнала по транзакциям");
|
|
||||||
ФильтрТранзакции = ирОбщий.СкопироватьУниверсальнуюКоллекциюЛкс(Фильтр);
|
|
||||||
Для Каждого Транзакция Из Транзакции Цикл
|
|
||||||
ирОбщий.ОбработатьИндикаторЛкс(Индикатор);
|
|
||||||
//ФильтрТранзакции.Вставить("Транзакция", ирОбщий.СтрокаМеждуМаркерамиЛкс(Транзакция, "(",")"));
|
|
||||||
ФильтрТранзакции.Вставить("Транзакция", Транзакция);
|
|
||||||
Если Транзакция <> "" Тогда
|
|
||||||
ФильтрТранзакции.Удалить("Данные");
|
|
||||||
КонецЕсли;
|
|
||||||
ТаблицаТранзакции = Новый ТаблицаЗначений;
|
|
||||||
Если МаксимальныйРазмерВыгрузкиТекущий > 0 Тогда
|
|
||||||
МаксимальныйРазмерВыгрузкиТекущий = МаксимальныйРазмерВыгрузкиТекущий - ТаблицаЗначенийЖурнала.Количество();
|
|
||||||
КонецЕсли;
|
|
||||||
ВыгрузитьЖурналРегистрации(ТаблицаТранзакции, ФильтрТранзакции,, ИмяФайла, МаксимальныйРазмерВыгрузкиТекущий);
|
|
||||||
Если Транзакция = "" Тогда
|
|
||||||
ТаблицаТранзакции = ТаблицаТранзакции.Скопировать(Новый Структура("Транзакция", ""));
|
|
||||||
КонецЕсли;
|
|
||||||
ТаблицаТранзакции.Колонки.Добавить("ПорядокСтроки", Новый ОписаниеТипов("Число"));
|
|
||||||
Для Счетчик = 1 По ТаблицаТранзакции.Количество() Цикл
|
|
||||||
ТаблицаТранзакции[Счетчик - 1].ПорядокСтроки = ТаблицаЗначенийЖурнала.Количество() + Счетчик;
|
|
||||||
КонецЦикла;
|
|
||||||
Если ТаблицаЗначенийЖурнала.Колонки.Количество() = 0 Тогда
|
|
||||||
ТаблицаЗначенийЖурнала = ТаблицаТранзакции;
|
|
||||||
ТаблицаЗначенийЖурнала.Колонки.Добавить("ДлительностьТранзакции", Новый ОписаниеТипов("Число"));
|
|
||||||
Иначе
|
|
||||||
СвойстваТранзакции = Новый Структура("ДлительностьТранзакции", ТаблицаТранзакции[ТаблицаТранзакции.Количество() - 1].Дата - ТаблицаТранзакции[0].Дата);
|
|
||||||
ирОбщий.ЗагрузитьВТаблицуЗначенийЛкс(ТаблицаТранзакции, ТаблицаЗначенийЖурнала, СвойстваТранзакции);
|
|
||||||
КонецЕсли;
|
|
||||||
Если МаксимальныйРазмерВыгрузкиТекущий > 0 И ТаблицаЗначенийЖурнала.Количество() >= МаксимальныйРазмерВыгрузкиТекущий Тогда
|
|
||||||
Прервать;
|
|
||||||
КонецЕсли;
|
|
||||||
КонецЦикла;
|
|
||||||
ирОбщий.ОсвободитьИндикаторПроцессаЛкс();
|
|
||||||
Иначе
|
|
||||||
ТаблицаЗначенийЖурнала = Новый ТаблицаЗначений;
|
|
||||||
ирОбщий.СостояниеЛкс("Выгрузка журнала регистрации");
|
|
||||||
ВыгрузитьЖурналРегистрации(ТаблицаЗначенийЖурнала, Фильтр,, ИмяФайла, МаксимальныйРазмерВыгрузкиТекущий);
|
|
||||||
ирОбщий.СостояниеЛкс("");
|
|
||||||
КонецЕсли;
|
|
||||||
#Если Сервер И Не Сервер Тогда
|
|
||||||
ТаблицаЗначенийЖурнала = Новый ТаблицаЗначений;
|
|
||||||
#КонецЕсли
|
|
||||||
Если ТаблицаЗначенийЖурнала.Колонки.Найти("ПорядокСтроки") = Неопределено Тогда
|
|
||||||
ТаблицаЗначенийЖурнала.Колонки.Добавить("ПорядокСтроки", Новый ОписаниеТипов("Число"));
|
|
||||||
Для Счетчик = 1 По ТаблицаЗначенийЖурнала.Количество() Цикл
|
|
||||||
ТаблицаЗначенийЖурнала[Счетчик - 1].ПорядокСтроки = Счетчик;
|
|
||||||
КонецЦикла;
|
|
||||||
КонецЕсли;
|
|
||||||
ТаблицаЗначенийЖурнала.Индексы.Добавить("ПорядокСтроки");
|
|
||||||
ТаблицаЗначенийЖурнала.Сортировать("ПорядокСтроки");
|
|
||||||
ирОбщий.ПеревестиКолонкиВыгрузитьЖурналРегистрацииЛкс(ТаблицаЗначенийЖурнала);
|
|
||||||
РеквизитыДляРезультата = "АнализироватьТранзакцииСУчастиемОбъекта";
|
|
||||||
ПараметрыДляРезультата = "ПредставлениеОтбора";
|
|
||||||
Результат = Новый Структура(РеквизитыДляРезультата + ", " + ПараметрыДляРезультата);
|
|
||||||
ЗаполнитьЗначенияСвойств(Результат, ЭтотОбъект, РеквизитыДляРезультата);
|
|
||||||
ЗаполнитьЗначенияСвойств(Результат, Параметры, ПараметрыДляРезультата);
|
|
||||||
Результат.Вставить("ТаблицаЗначенийЖурнала", ТаблицаЗначенийЖурнала);
|
|
||||||
Возврат Результат;
|
|
||||||
КонецФункции
|
|
||||||
|
|
||||||
Функция ОписаниеВариантаОтбора(Полное = Ложь) Экспорт
|
|
||||||
|
|
||||||
Результат = Новый Структура;
|
|
||||||
Если Полное Или ЗначениеЗаполнено(КонецПериода) Тогда
|
|
||||||
Результат.Вставить("НачалоПериода", НачалоПериода);
|
|
||||||
Результат.Вставить("КонецПериода", КонецПериода);
|
|
||||||
КонецЕсли;
|
|
||||||
Результат.Вставить("МаксимальныйРазмерВыгрузки", МаксимальныйРазмерВыгрузки);
|
|
||||||
Результат.Вставить("Отбор", Отбор);
|
|
||||||
Результат.Вставить("АлгоритмПередВыгрузкой", АлгоритмПередВыгрузкой);
|
|
||||||
Возврат Результат;
|
|
||||||
|
|
||||||
КонецФункции
|
|
||||||
|
|
||||||
Функция ПредставлениеВариантаОтбора(Знач СохраняемыйВариант) Экспорт
|
|
||||||
|
|
||||||
ИмяВарианта = "";
|
|
||||||
Если СохраняемыйВариант.Свойство("НачалоПериода") Тогда
|
|
||||||
ПредставлениеПериода = ирОбщий.ПредставлениеПериодаЛкс(СохраняемыйВариант.НачалоПериода, СохраняемыйВариант.КонецПериода);
|
|
||||||
Если ЗначениеЗаполнено(ПредставлениеПериода) Тогда
|
|
||||||
ИмяВарианта = ИмяВарианта + " По " + ПредставлениеПериода;
|
|
||||||
КонецЕсли;
|
|
||||||
КонецЕсли;
|
|
||||||
Если ЗначениеЗаполнено(СохраняемыйВариант.МаксимальныйРазмерВыгрузки) Тогда
|
|
||||||
ИмяВарианта = ИмяВарианта + "; Количество <= " + СохраняемыйВариант.МаксимальныйРазмерВыгрузки;
|
|
||||||
КонецЕсли;
|
|
||||||
Для Каждого СтрокаОтбора Из СохраняемыйВариант.Отбор Цикл
|
|
||||||
ИспользованиеСтрокиОтбора = ИспользованиеСтрокиОтбора(СтрокаОтбора);
|
|
||||||
Если ТипЗнч(СтрокаОтбора.Значение) = Тип("СписокЗначений") И СтрокаОтбора.Значение.ТипЗначения.Типы().Количество() = 0 Тогда
|
|
||||||
ПредставлениеСтрокиОтбора = ПредставлениеСтрокиОтбора(СтрокаОтбора,, 3);
|
|
||||||
ИспользованиеСтрокиОтбора = ИспользованиеСтрокиОтбора И ЗначениеЗаполнено(ПредставлениеСтрокиОтбора);
|
|
||||||
Иначе
|
|
||||||
ПредставлениеСтрокиОтбора = "" + СтрокаОтбора.Значение;
|
|
||||||
КонецЕсли;
|
|
||||||
Если ИспользованиеСтрокиОтбора Тогда
|
|
||||||
ИмяВарианта = ИмяВарианта + "; " + СтрокаОтбора.Представление + " = " + ПредставлениеСтрокиОтбора;
|
|
||||||
КонецЕсли;
|
|
||||||
КонецЦикла;
|
|
||||||
Если Лев(ИмяВарианта, 1) = ";" Тогда
|
|
||||||
ИмяВарианта = Сред(ИмяВарианта, 3);
|
|
||||||
КонецЕсли;
|
|
||||||
Если Не ЗначениеЗаполнено(ИмяВарианта) Тогда
|
|
||||||
ИмяВарианта = "Нет";
|
|
||||||
КонецЕсли;
|
|
||||||
Возврат ИмяВарианта;
|
|
||||||
|
|
||||||
КонецФункции
|
|
||||||
|
|
||||||
Функция ПредставлениеСтрокиОтбора(Знач ДанныеСтроки, выхКоличествоПомеченных = 0, МаксЭлементов = 20) Экспорт
|
|
||||||
|
|
||||||
Результат = "";
|
|
||||||
Если ДанныеСтроки.Значение <> Неопределено Тогда
|
|
||||||
выхКоличествоПомеченных = 0;
|
|
||||||
Для Каждого ЭлементСписка Из ДанныеСтроки.Значение Цикл
|
|
||||||
Если ЭлементСписка.Пометка Тогда
|
|
||||||
выхКоличествоПомеченных = выхКоличествоПомеченных + 1;
|
|
||||||
Если выхКоличествоПомеченных < МаксЭлементов Тогда
|
|
||||||
Если Результат <> "" Тогда
|
|
||||||
Результат = Результат + "; ";
|
|
||||||
КонецЕсли;
|
|
||||||
ПредставлениеЭлемента = ЭлементСписка.Представление;
|
|
||||||
Если Не ЗначениеЗаполнено(ПредставлениеЭлемента) Тогда
|
|
||||||
ПредставлениеЭлемента = ЭлементСписка.Значение;
|
|
||||||
КонецЕсли;
|
|
||||||
Результат = Результат + ПредставлениеЭлемента;
|
|
||||||
ИначеЕсли выхКоличествоПомеченных = МаксЭлементов Тогда
|
|
||||||
Результат = Результат + "...";
|
|
||||||
КонецЕсли;
|
|
||||||
КонецЕсли;
|
|
||||||
КонецЦикла;
|
|
||||||
КонецЕсли;
|
|
||||||
Возврат Результат;
|
|
||||||
|
|
||||||
КонецФункции
|
|
||||||
|
|
||||||
Функция ИспользованиеСтрокиОтбора(Знач СтрокаОтбора) Экспорт
|
|
||||||
|
|
||||||
ИспользованиеСтрокиОтбора = СтрокаОтбора.Использование;
|
|
||||||
Если ИспользованиеСтрокиОтбора Тогда
|
|
||||||
Если СтрокаОтбора.Поле = "Данные" Тогда
|
|
||||||
ИспользованиеСтрокиОтбора = СтрокаОтбора.Значение <> Неопределено;
|
|
||||||
ИначеЕсли ТипЗнч(СтрокаОтбора.Значение) = Тип("Строка") Тогда
|
|
||||||
ИспользованиеСтрокиОтбора = ЗначениеЗаполнено(СтрокаОтбора.Значение);
|
|
||||||
КонецЕсли;
|
|
||||||
КонецЕсли;
|
|
||||||
Возврат ИспользованиеСтрокиОтбора;
|
|
||||||
|
|
||||||
КонецФункции
|
|
||||||
|
|
||||||
Функция ФильтрВыгрузкиЖурнала()
|
|
||||||
|
|
||||||
Фильтр = Новый Структура;
|
|
||||||
Если ЗначениеЗаполнено(НачалоПериода) Тогда
|
|
||||||
Фильтр.Вставить("ДатаНачала", НачалоПериода);
|
|
||||||
КонецЕсли;
|
|
||||||
Если ЗначениеЗаполнено(КонецПериода) Тогда
|
|
||||||
Фильтр.Вставить("ДатаОкончания", КонецПериода);
|
|
||||||
КонецЕсли;
|
|
||||||
Если ЗначениеЗаполнено(НачалоПериода) И ЗначениеЗаполнено(КонецПериода) И НачалоПериода > КонецПериода Тогда
|
|
||||||
ирОбщий.СообщитьЛкс("Конец периода меньше начала периода", СтатусСообщения.Важное);
|
|
||||||
Возврат Неопределено;
|
|
||||||
КонецЕсли;
|
|
||||||
Для Каждого СтрокаОтбора Из Отбор Цикл
|
|
||||||
ЗначениеОтбора = СтрокаОтбора.Значение;
|
|
||||||
Если Истина
|
|
||||||
И ЗначениеОтбора = Неопределено
|
|
||||||
И СтрокаОтбора.Поле <> "Данные"
|
|
||||||
Тогда
|
|
||||||
СтрокаОтбора.Использование = Ложь;
|
|
||||||
КонецЕсли;
|
|
||||||
Если Не СтрокаОтбора.Использование Тогда
|
|
||||||
Продолжить;
|
|
||||||
КонецЕсли;
|
|
||||||
Если ТипЗнч(ЗначениеОтбора) = Тип("СписокЗначений") Тогда
|
|
||||||
Если ЗначениеОтбора.ТипЗначения.Типы().Количество() = 0 Тогда
|
|
||||||
СписокЗначенийЛ = ЗначениеОтбора;
|
|
||||||
ЗначениеОтбора = Новый Массив();
|
|
||||||
Для Каждого ЭлементСписка Из СписокЗначенийЛ Цикл
|
|
||||||
Если ЭлементСписка.Пометка Тогда
|
|
||||||
Если СтрокаОтбора.Поле = "Пользователь" Тогда
|
|
||||||
ЗначениеЭлемента = ЭлементСписка.Представление;
|
|
||||||
Иначе
|
|
||||||
ЗначениеЭлемента = ЭлементСписка.Значение;
|
|
||||||
КонецЕсли;
|
|
||||||
ЗначениеОтбора.Добавить(ЗначениеЭлемента);
|
|
||||||
КонецЕсли;
|
|
||||||
КонецЦикла;
|
|
||||||
Иначе
|
|
||||||
ЗначениеОтбора = ЗначениеОтбора.ВыгрузитьЗначения();
|
|
||||||
КонецЕсли;
|
|
||||||
КонецЕсли;
|
|
||||||
Фильтр.Вставить(СтрокаОтбора.Поле, ЗначениеОтбора);
|
|
||||||
КонецЦикла;
|
|
||||||
Возврат Фильтр;
|
|
||||||
|
|
||||||
КонецФункции
|
|
||||||
|
|
||||||
#Если Клиент Тогда
|
|
||||||
|
|
||||||
Функция ВыбратьОбъектМетаданных(СтрокаТаблицыЗначений) Экспорт
|
|
||||||
|
|
||||||
СвойствоМетаданные = СтрокаТаблицыЗначений.Метаданные;
|
|
||||||
СвойствоДанные = СтрокаТаблицыЗначений.Данные;
|
|
||||||
Если ТипЗнч(СвойствоМетаданные) = Тип("Массив") Тогда
|
|
||||||
Если СвойствоМетаданные.Количество() = 0 Тогда
|
|
||||||
Возврат Неопределено;
|
|
||||||
КонецЕсли;
|
|
||||||
Если СвойствоМетаданные.Количество() = 1 Тогда
|
|
||||||
ПолноеИмяМД = СвойствоМетаданные[0];
|
|
||||||
Иначе
|
|
||||||
СписокВыбора = Новый СписокЗначений;
|
|
||||||
СписокВыбора.ЗагрузитьЗначения(СвойствоМетаданные);
|
|
||||||
СписокВыбора.СортироватьПоЗначению();
|
|
||||||
РезультатВыбора = СписокВыбора.ВыбратьЭлемент("Выберите объект метаданных");
|
|
||||||
Если РезультатВыбора = Неопределено Тогда
|
|
||||||
Возврат Неопределено;
|
|
||||||
КонецЕсли;
|
|
||||||
ПолноеИмяМД = РезультатВыбора.Значение;
|
|
||||||
КонецЕсли;
|
|
||||||
Иначе
|
|
||||||
ПолноеИмяМД = СвойствоМетаданные;
|
|
||||||
КонецЕсли;
|
|
||||||
Возврат ПолноеИмяМД;
|
|
||||||
|
|
||||||
КонецФункции
|
|
||||||
|
|
||||||
Функция ОткрытьСПараметром(ПолеОтбора = "Данные", ЗначениеОтбора, ПредставлениеЗначения = Неопределено) Экспорт
|
|
||||||
|
|
||||||
Форма = ПолучитьФорму(,, ЗначениеОтбора);
|
|
||||||
Форма.Открыть();
|
|
||||||
Форма.Отбор.ЗаполнитьЗначения(Ложь, "Использование");
|
|
||||||
Форма.НачалоПериода = НачалоДня(ТекущаяДата());
|
|
||||||
Форма.КонецПериода = Неопределено;
|
|
||||||
ДобавитьЭлементОтбора(Форма.Отбор, ПолеОтбора, ЗначениеОтбора, ПредставлениеЗначения, Истина);
|
|
||||||
Ответ = Вопрос("Сразу выполнить выгрузку с текущим отбором?", РежимДиалогаВопрос.ОКОтмена);
|
|
||||||
Если Ответ = КодВозвратаДиалога.ОК Тогда
|
|
||||||
Форма.ОбновитьТаблицуЖурнала();
|
|
||||||
КонецЕсли;
|
|
||||||
Возврат Форма;
|
|
||||||
|
|
||||||
КонецФункции
|
|
||||||
|
|
||||||
Функция ОткрытьДляФайла(ИмяФайла) Экспорт
|
|
||||||
|
|
||||||
Форма = ПолучитьФорму(,, ИмяФайла);
|
|
||||||
Форма.ИмяФайла = ИмяФайла;
|
|
||||||
Форма.Открыть();
|
|
||||||
Возврат Форма;
|
|
||||||
|
|
||||||
КонецФункции
|
|
||||||
|
|
||||||
Функция ОткрытьСОтбором(НачалоПериода = Неопределено, КонецПериода = Неопределено, СтруктураОтбора = Неопределено, МаксимальныйРазмерВыгрузки = Неопределено) Экспорт
|
|
||||||
|
|
||||||
Форма = ПолучитьФорму(,,);
|
|
||||||
Форма.Открыть();
|
|
||||||
Форма.Отбор.ЗаполнитьЗначения(Ложь, "Использование");
|
|
||||||
Если НачалоПериода <> Неопределено Тогда
|
|
||||||
Форма.НачалоПериода = НачалоПериода;
|
|
||||||
Иначе
|
|
||||||
Форма.НачалоПериода = НачалоДня(ТекущаяДата());
|
|
||||||
КонецЕсли;
|
|
||||||
Если КонецПериода <> Неопределено Тогда
|
|
||||||
Форма.КонецПериода = КонецПериода;
|
|
||||||
Иначе
|
|
||||||
Форма.КонецПериода = Неопределено;
|
|
||||||
КонецЕсли;
|
|
||||||
Если МаксимальныйРазмерВыгрузки <> Неопределено Тогда
|
|
||||||
Форма.МаксимальныйРазмерВыгрузки = МаксимальныйРазмерВыгрузки;
|
|
||||||
КонецЕсли;
|
|
||||||
Если СтруктураОтбора <> Неопределено Тогда
|
|
||||||
Для Каждого КлючИЗначение Из СтруктураОтбора Цикл
|
|
||||||
ЗначениеОтбора = КлючИЗначение.Значение;
|
|
||||||
Если КлючИЗначение.Ключ = "Пользователь" И ТипЗнч(ЗначениеОтбора) = Тип("Строка") Тогда
|
|
||||||
ПараметрПользователь = ПользователиИнформационнойБазы.НайтиПоИмени(ЗначениеОтбора);
|
|
||||||
Если ПараметрПользователь <> Неопределено Тогда
|
|
||||||
ЗначениеОтбора = ПараметрПользователь.УникальныйИдентификатор;
|
|
||||||
КонецЕсли;
|
|
||||||
КонецЕсли;
|
|
||||||
ДобавитьЭлементОтбора(Форма.Отбор, КлючИЗначение.Ключ, ЗначениеОтбора,, Истина);
|
|
||||||
КонецЦикла;
|
|
||||||
КонецЕсли;
|
|
||||||
Ответ = Вопрос("Сразу выполнить выгрузку с текущим отбором?", РежимДиалогаВопрос.ОКОтмена);
|
|
||||||
Если Ответ = КодВозвратаДиалога.ОК Тогда
|
|
||||||
Форма.ОбновитьТаблицуЖурнала();
|
|
||||||
КонецЕсли;
|
|
||||||
Возврат Форма;
|
|
||||||
|
|
||||||
КонецФункции
|
|
||||||
|
|
||||||
#КонецЕсли
|
|
||||||
|
|
||||||
//ирПортативный лФайл = Новый Файл(ИспользуемоеИмяФайла);
|
|
||||||
//ирПортативный ПолноеИмяФайлаБазовогоМодуля = Лев(лФайл.Путь, СтрДлина(лФайл.Путь) - СтрДлина("Модули\")) + "ирПортативный.epf";
|
|
||||||
//ирПортативный #Если Клиент Тогда
|
|
||||||
//ирПортативный Контейнер = Новый Структура();
|
|
||||||
//ирПортативный Оповестить("ирПолучитьБазовуюФорму", Контейнер);
|
|
||||||
//ирПортативный Если Не Контейнер.Свойство("ирПортативный", ирПортативный) Тогда
|
|
||||||
//ирПортативный ирПортативный = ВнешниеОбработки.ПолучитьФорму(ПолноеИмяФайлаБазовогоМодуля);
|
|
||||||
//ирПортативный ирПортативный.Открыть();
|
|
||||||
//ирПортативный КонецЕсли;
|
|
||||||
//ирПортативный #Иначе
|
|
||||||
//ирПортативный ирПортативный = ВнешниеОбработки.Создать(ПолноеИмяФайлаБазовогоМодуля, Ложь); // Это будет второй экземпляр объекта
|
|
||||||
//ирПортативный #КонецЕсли
|
|
||||||
//ирПортативный ирОбщий = ирПортативный.ПолучитьОбщийМодульЛкс("ирОбщий");
|
|
||||||
//ирПортативный ирКэш = ирПортативный.ПолучитьОбщийМодульЛкс("ирКэш");
|
|
||||||
//ирПортативный ирСервер = ирПортативный.ПолучитьОбщийМодульЛкс("ирСервер");
|
|
||||||
//ирПортативный ирПривилегированный = ирПортативный.ПолучитьОбщийМодульЛкс("ирПривилегированный");
|
|
||||||
|
|
||||||
Отбор.Колонки.Добавить("Использование", Новый ОписаниеТипов("Булево"));
|
|
||||||
Отбор.Колонки.Добавить("Поле", Новый ОписаниеТипов("Строка"));
|
|
||||||
Отбор.Колонки.Добавить("Представление", Новый ОписаниеТипов("Строка"));
|
|
||||||
Отбор.Колонки.Добавить("ОписаниеТипов", Новый ОписаниеТипов("ОписаниеТипов"));
|
|
||||||
Отбор.Колонки.Добавить("Значение");
|
|
||||||
ЭтотОбъект.МаксимальныйРазмерВыгрузки = 1000;
|
|
||||||
Binary file not shown.
|
|
@ -1,163 +0,0 @@
|
||||||
|
|
||||||
Процедура ОсновныеДействияФормыОК(Кнопка = Неопределено)
|
|
||||||
|
|
||||||
Если ПараметрСписок <> Неопределено Тогда
|
|
||||||
#Если Сервер И Не Сервер Тогда
|
|
||||||
ПараметрСписок = Новый СписокЗначений;
|
|
||||||
#КонецЕсли
|
|
||||||
Для Каждого ЭлементСписка Из ПараметрСписок Цикл
|
|
||||||
СтрокаТаблицы = СписокЗначений.Найти("" + ЭлементСписка.Значение, "ПолноеИмя");
|
|
||||||
ЭлементСписка.Пометка = СтрокаТаблицы.Пометка;
|
|
||||||
КонецЦикла;
|
|
||||||
КонецЕсли;
|
|
||||||
Закрыть(Истина);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ДействияФормыТолькоПомеченные(Кнопка)
|
|
||||||
|
|
||||||
ЭлементыФормы.СписокЗначений.ОтборСтрок.Пометка.ВидСравнения = ВидСравнения.Равно;
|
|
||||||
ЭлементыФормы.СписокЗначений.ОтборСтрок.Пометка.Использование = Истина;
|
|
||||||
ЭлементыФормы.СписокЗначений.ОтборСтрок.Пометка.Значение = Истина;
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ОбновлениеОтображения()
|
|
||||||
|
|
||||||
ЭлементыФормы.НадписьПомечено.Заголовок = "Помечено " + СписокЗначений.НайтиСтроки(Новый Структура("Пометка", Истина)).Количество() + " из";
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ПриОткрытии()
|
|
||||||
|
|
||||||
ирОбщий.Форма_ПриОткрытииЛкс(ЭтаФорма);
|
|
||||||
СписокЗначений.Очистить();
|
|
||||||
МаксКоличествоФрагментов = 3;
|
|
||||||
Если ПараметрСписок <> Неопределено Тогда
|
|
||||||
#Если Сервер И Не Сервер Тогда
|
|
||||||
ПараметрСписок = Новый СписокЗначений;
|
|
||||||
#КонецЕсли
|
|
||||||
Для Каждого ЭлементСписка Из ПараметрСписок Цикл
|
|
||||||
СтрокаТаблицы = СписокЗначений.Добавить();
|
|
||||||
СтрокаТаблицы.ПолноеИмя = ЭлементСписка.Значение;
|
|
||||||
СтрокаТаблицы.ПолноеПредставление = ЭлементСписка.Представление;
|
|
||||||
Если Не ЗначениеЗаполнено(СтрокаТаблицы.ПолноеПредставление) Тогда
|
|
||||||
СтрокаТаблицы.ПолноеПредставление = СтрокаТаблицы.ПолноеИмя;
|
|
||||||
КонецЕсли;
|
|
||||||
СтрокаТаблицы.Пометка = ЭлементСписка.Пометка;
|
|
||||||
Фрагменты = ирОбщий.СтрРазделитьЛкс(СтрокаТаблицы.ПолноеИмя);
|
|
||||||
#Если Сервер И Не Сервер Тогда
|
|
||||||
Фрагменты = Новый Массив;
|
|
||||||
#КонецЕсли
|
|
||||||
Для Счетчик = 1 По Мин(МаксКоличествоФрагментов, Фрагменты.Количество()) Цикл
|
|
||||||
СтрокаТаблицы["ИмяФрагмент" + Счетчик] = Фрагменты[Счетчик - 1];
|
|
||||||
КонецЦикла;
|
|
||||||
Фрагменты = ирОбщий.СтрРазделитьЛкс(СтрокаТаблицы.ПолноеПредставление);
|
|
||||||
#Если Сервер И Не Сервер Тогда
|
|
||||||
Фрагменты = Новый Массив;
|
|
||||||
#КонецЕсли
|
|
||||||
Для Счетчик = 1 По Мин(МаксКоличествоФрагментов, Фрагменты.Количество()) Цикл
|
|
||||||
СтрокаТаблицы["ПредставлениеФрагмент" + Счетчик] = Фрагменты[Счетчик - 1];
|
|
||||||
КонецЦикла;
|
|
||||||
Если ПараметрТекущаяСтрока = ЭлементСписка Тогда
|
|
||||||
ЭлементыФормы.СписокЗначений.ТекущаяСтрока = СтрокаТаблицы;
|
|
||||||
КонецЕсли;
|
|
||||||
КонецЦикла;
|
|
||||||
ЭтаФорма.Количество = СписокЗначений.Количество();
|
|
||||||
КонецЕсли;
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ФильтрПредставлениеПриИзменении(Элемент)
|
|
||||||
|
|
||||||
ирОбщий.ПолеВводаСИсториейВыбора_ПриИзмененииЛкс(Элемент, ЭтаФорма);
|
|
||||||
ОбновитьОтбор();
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ФильтрИмяПриИзменении(Элемент)
|
|
||||||
|
|
||||||
ирОбщий.ПолеВводаСИсториейВыбора_ПриИзмененииЛкс(Элемент, ЭтаФорма);
|
|
||||||
ОбновитьОтбор();
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ФильтрИмяНачалоВыбораИзСписка(Элемент, СтандартнаяОбработка)
|
|
||||||
|
|
||||||
ирОбщий.ПолеВводаСИсториейВыбора_НачалоВыбораИзСпискаЛкс(Элемент, ЭтаФорма);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ФильтрПредставлениеНачалоВыбораИзСписка(Элемент, СтандартнаяОбработка)
|
|
||||||
|
|
||||||
ирОбщий.ПолеВводаСИсториейВыбора_НачалоВыбораИзСпискаЛкс(Элемент, ЭтаФорма);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ОбновитьОтбор()
|
|
||||||
|
|
||||||
ирОбщий.УстановитьОтборПоПодстрокеЛкс(ЭлементыФормы.СписокЗначений.ОтборСтрок.ПолноеИмя, ФильтрИмя);
|
|
||||||
ирОбщий.УстановитьОтборПоПодстрокеЛкс(ЭлементыФормы.СписокЗначений.ОтборСтрок.ПолноеПредставление, ФильтрПредставление);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура КлсКомандаНажатие(Кнопка) Экспорт
|
|
||||||
|
|
||||||
ирОбщий.УниверсальнаяКомандаФормыЛкс(ЭтаФорма, Кнопка);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ОбработчикОжиданияСПараметрамиЛкс() Экспорт
|
|
||||||
|
|
||||||
ирОбщий.ОбработчикОжиданияСПараметрамиЛкс();
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура СтруктураКоманднойПанелиНажатие(Кнопка)
|
|
||||||
|
|
||||||
ирОбщий.ОткрытьСтруктуруКоманднойПанелиЛкс(ЭтаФорма, Кнопка);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура СписокЗначенийПриИзмененииФлажка(Элемент, Колонка)
|
|
||||||
|
|
||||||
ирОбщий.ТабличноеПолеПриИзмененииФлажкаЛкс(ЭтаФорма, Элемент, Колонка);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура СписокЗначенийПриВыводеСтроки(Элемент, ОформлениеСтроки, ДанныеСтроки) Экспорт
|
|
||||||
|
|
||||||
ирОбщий.ТабличноеПолеПриВыводеСтрокиЛкс(ЭтаФорма, Элемент, ОформлениеСтроки, ДанныеСтроки);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура СписокЗначенийПриАктивизацииСтроки(Элемент)
|
|
||||||
|
|
||||||
ирОбщий.ТабличноеПолеПриАктивизацииСтрокиЛкс(ЭтаФорма, Элемент);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура СписокЗначенийВыбор(Элемент, ВыбраннаяСтрока, Колонка, СтандартнаяОбработка)
|
|
||||||
|
|
||||||
ВыбраннаяСтрока.Пометка = Истина;
|
|
||||||
ОсновныеДействияФормыОК();
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ПриЗакрытии()
|
|
||||||
ирОбщий.Форма_ПриЗакрытииЛкс(ЭтаФорма);
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ВнешнееСобытие(Источник, Событие, Данные) Экспорт
|
|
||||||
|
|
||||||
ирОбщий.Форма_ВнешнееСобытиеЛкс(ЭтаФорма, Источник, Событие, Данные);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ТабличноеПолеПриПолученииДанных(Элемент, ОформленияСтрок) Экспорт
|
|
||||||
|
|
||||||
ирОбщий.ТабличноеПолеПриПолученииДанныхЛкс(ЭтаФорма, Элемент, ОформленияСтрок);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
ирОбщий.ИнициироватьФормуЛкс(ЭтаФорма, "Обработка.ирАнализЖурналаРегистрации.Форма.РедакторСписка");
|
|
||||||
File diff suppressed because it is too large
Load Diff
Binary file not shown.
|
|
@ -1,673 +0,0 @@
|
||||||
Перем МассивУровнейЖурнала;
|
|
||||||
Перем СтруктураКолонокБезОтбора;
|
|
||||||
Перем СтарыйОтбор;
|
|
||||||
|
|
||||||
Функция СохраняемаяНастройкаФормы(выхНаименование, выхИменаСвойств) Экспорт
|
|
||||||
НастройкаФормы = ирОбщий.КопияОбъектаЛкс(ОписаниеВариантаОтбора());
|
|
||||||
выхНаименование = ПредставлениеВариантаОтбора(НастройкаФормы);
|
|
||||||
Возврат НастройкаФормы;
|
|
||||||
КонецФункции
|
|
||||||
|
|
||||||
Процедура ЗагрузитьНастройкуВФорме(НастройкаФормы, ДопПараметры) Экспорт
|
|
||||||
|
|
||||||
Если НастройкаФормы.Свойство("НачалоПериода") Тогда
|
|
||||||
ЭтотОбъект.НачалоПериода = НастройкаФормы.НачалоПериода;
|
|
||||||
ЭтотОбъект.КонецПериода = НастройкаФормы.КонецПериода;
|
|
||||||
КонецЕсли;
|
|
||||||
ЭтотОбъект.МаксимальныйРазмерВыгрузки = НастройкаФормы.МаксимальныйРазмерВыгрузки;
|
|
||||||
Если НастройкаФормы.Свойство("АлгоритмПередВыгрузкой") Тогда
|
|
||||||
ЭтотОбъект.АлгоритмПередВыгрузкой = НастройкаФормы.АлгоритмПередВыгрузкой;
|
|
||||||
КонецЕсли;
|
|
||||||
Отбор.Очистить();
|
|
||||||
ирОбщий.ЗагрузитьВТаблицуЗначенийЛкс(НастройкаФормы.Отбор, Отбор);
|
|
||||||
НастроитьЭлементыФормы();
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура КнопкаВыбораПериодаНажатие(Элемент)
|
|
||||||
|
|
||||||
НастройкаПериода = Новый НастройкаПериода;
|
|
||||||
НастройкаПериода.УстановитьПериод(НачалоПериода, ?(КонецПериода='0001-01-01', КонецПериода, КонецДня(КонецПериода)));
|
|
||||||
НастройкаПериода.РедактироватьКакИнтервал = Истина;
|
|
||||||
НастройкаПериода.РедактироватьКакПериод = Истина;
|
|
||||||
НастройкаПериода.ВариантНастройки = ВариантНастройкиПериода.Период;
|
|
||||||
Если НастройкаПериода.Редактировать() Тогда
|
|
||||||
НачалоПериода = НастройкаПериода.ПолучитьДатуНачала();
|
|
||||||
КонецПериода = НастройкаПериода.ПолучитьДатуОкончания();
|
|
||||||
КонецЕсли;
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ТаблицаВыбор(Элемент, ВыбраннаяСтрока, Колонка, СтандартнаяОбработка)
|
|
||||||
|
|
||||||
СтрокаТаблицыЗначений = ТаблицаЗначенийЖурнала.Найти(ВыбраннаяСтрока.ПорядокСтроки, "ПорядокСтроки");
|
|
||||||
//ирОбщий.ЯчейкаТабличногоПоляРасширенногоЗначения_ВыборЛкс(ЭтаФорма, Элемент, СтандартнаяОбработка, СтрокаТаблицыЗначений[Колонка.Данные]);
|
|
||||||
ФормаСобытия = ПолучитьФорму("ФормаСобытия",, ВыбраннаяСтрока.ПорядокСтроки);
|
|
||||||
ФормаСобытия.НачальноеЗначениеВыбора = ВыбраннаяСтрока;
|
|
||||||
ФормаСобытия.СтрокаТаблицыЗначений = СтрокаТаблицыЗначений;
|
|
||||||
ФормаСобытия.Открыть();
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ОбновитьТаблицуЖурнала() Экспорт
|
|
||||||
|
|
||||||
#Если Сервер И Не Сервер Тогда
|
|
||||||
ЗагрузитьДанныеЖурналаЗавершить();
|
|
||||||
#КонецЕсли
|
|
||||||
ЗагрузитьДанныеЖурнала(ЭтаФорма, ЭлементыФормы.ДействияФормы.Кнопки.Обновить, "ЗагрузитьДанныеЖурналаЗавершить");
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
// Предопределеный метод
|
|
||||||
Процедура ПроверкаЗавершенияФоновыхЗаданий() Экспорт
|
|
||||||
|
|
||||||
ирОбщий.ПроверитьЗавершениеФоновыхЗаданийФормыЛкс(ЭтаФорма);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ЗагрузитьДанныеЖурналаЗавершить(СостояниеЗадания = Неопределено, РезультатЗадания = Неопределено) Экспорт
|
|
||||||
|
|
||||||
Если Ложь
|
|
||||||
Или СостояниеЗадания = Неопределено
|
|
||||||
Или СостояниеЗадания = СостояниеФоновогоЗадания.Завершено
|
|
||||||
Тогда
|
|
||||||
ирОбщий.СостояниеЛкс("Загрузка выгрузки журнала регистрации");
|
|
||||||
Если ЭлементыФормы.ТаблицаЖурнала.ТекущаяСтрока <> Неопределено Тогда
|
|
||||||
КлючТекущейСтроки = Новый Структура();
|
|
||||||
Для Каждого Колонка Из Метаданные().ТабличныеЧасти.ТаблицаЖурнала.Реквизиты Цикл
|
|
||||||
Если Колонка.Имя = "ПорядокСтроки" Тогда
|
|
||||||
Продолжить;
|
|
||||||
КонецЕсли;
|
|
||||||
КлючТекущейСтроки.Вставить(Колонка.Имя, ЭлементыФормы.ТаблицаЖурнала.ТекущаяСтрока[Колонка.Имя]);
|
|
||||||
КонецЦикла;
|
|
||||||
КонецЕсли;
|
|
||||||
Если ЗначениеЗаполнено(СостояниеЗадания) Тогда
|
|
||||||
ЭтотОбъект.ТаблицаЗначенийЖурнала = РезультатЗадания.ТаблицаЗначенийЖурнала;
|
|
||||||
КонецЕсли;
|
|
||||||
ТаблицаЖурнала.Загрузить(ТаблицаЗначенийЖурнала);
|
|
||||||
ЭлементыФормы.ТаблицаЖурнала.Колонки.РазделениеДанныхСеанса.Видимость = ТаблицаЗначенийЖурнала.Колонки.Найти("РазделениеДанныхСеанса") <> Неопределено;
|
|
||||||
ТекущаяСтрокаУстановлена = Ложь;
|
|
||||||
Если КлючТекущейСтроки <> Неопределено Тогда
|
|
||||||
НайденныеСтроки = ТаблицаЖурнала.НайтиСтроки(КлючТекущейСтроки);
|
|
||||||
Если НайденныеСтроки.Количество() > 0 Тогда
|
|
||||||
ЭлементыФормы.ТаблицаЖурнала.ТекущаяСтрока = НайденныеСтроки[0];
|
|
||||||
ТекущаяСтрокаУстановлена = Истина;
|
|
||||||
КонецЕсли;
|
|
||||||
КонецЕсли;
|
|
||||||
Если Не ТекущаяСтрокаУстановлена Тогда
|
|
||||||
Если ТаблицаЖурнала.Количество() > 0 Тогда
|
|
||||||
ЭлементыФормы.ТаблицаЖурнала.ТекущаяСтрока = ТаблицаЖурнала[ТаблицаЖурнала.Количество() - 1];
|
|
||||||
КонецЕсли;
|
|
||||||
КонецЕсли;
|
|
||||||
ЭлементыФормы.ТаблицаЖурнала.Колонки.ДлительностьТранзакции.Видимость = РезультатЗадания.АнализироватьТранзакцииСУчастиемОбъекта;
|
|
||||||
ЭтотОбъект.КоличествоСтрокЖурнала = ТаблицаЖурнала.Количество();
|
|
||||||
Если МаксимальныйРазмерВыгрузки > 0 И МаксимальныйРазмерВыгрузки = ТаблицаЖурнала.Количество() Тогда
|
|
||||||
ирОбщий.СообщитьЛкс("Выгрузка прервана по максимально допустимому количеству сообщений");
|
|
||||||
КонецЕсли;
|
|
||||||
ДлительностьСекунд = ТекущаяДата() - РезультатЗадания.НачалоЗадания;
|
|
||||||
ДлительностьСтрока = ирОбщий.ПредставлениеДлительностиЛкс(ДлительностьСекунд);
|
|
||||||
Если ВыводитьДлительностьВыгрузки Или ДлительностьСекунд > 5 Тогда
|
|
||||||
ирОбщий.СообщитьЛкс("Выгрузка данных журнала завершена через " + ДлительностьСтрока + ". Отбор - " + РезультатЗадания.ПредставлениеОтбора);
|
|
||||||
КонецЕсли;
|
|
||||||
ирОбщий.СостояниеЛкс("");
|
|
||||||
КонецЕсли;
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура КоманднаяПанельЖурналРегистрацииОбновить(Кнопка)
|
|
||||||
|
|
||||||
ОбновитьТаблицуЖурнала();
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ОтборПередНачаломДобавления(Элемент, Отказ, Копирование)
|
|
||||||
|
|
||||||
Отказ = Истина;
|
|
||||||
Если Копирование Тогда
|
|
||||||
Возврат;
|
|
||||||
КонецЕсли;
|
|
||||||
СписокВыбора = Новый СписокЗначений;
|
|
||||||
Для Каждого Колонка Из Метаданные().ТабличныеЧасти.ТаблицаЖурнала.Реквизиты Цикл
|
|
||||||
Если Ложь
|
|
||||||
Или Отбор.Найти(Колонка.Имя, "Поле") <> Неопределено
|
|
||||||
Или СтруктураКолонокБезОтбора.Свойство(Колонка.Имя)
|
|
||||||
Тогда
|
|
||||||
Продолжить;
|
|
||||||
КонецЕсли;
|
|
||||||
СписокВыбора.Добавить(Колонка.Имя, Колонка.Представление());
|
|
||||||
КонецЦикла;
|
|
||||||
СписокВыбора.СортироватьПоЗначению();
|
|
||||||
РезультатВыбора = СписокВыбора.ВыбратьЭлемент();
|
|
||||||
Если РезультатВыбора <> Неопределено Тогда
|
|
||||||
ПолеОтбора = РезультатВыбора.Значение;
|
|
||||||
ТекущаяСтрока = ДобавитьЭлементОтбора(Отбор, ПолеОтбора);
|
|
||||||
Элемент.ТекущаяСтрока = ТекущаяСтрока;
|
|
||||||
//Элемент.ИзменитьСтроку();
|
|
||||||
//ОтборЗначениеНачалоВыбора();
|
|
||||||
КонецЕсли;
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ПриОткрытии()
|
|
||||||
|
|
||||||
ирОбщий.Форма_ПриОткрытииЛкс(ЭтаФорма);
|
|
||||||
ирОбщий.СоздатьМенеджерСохраненияНастроекФормыЛкс(ЭтаФорма);
|
|
||||||
мАлгоритмПередВыгрузкойПараметры = ирОбщий.ТаблицаЗначенийИзТабличногоДокументаЛкс(ПолучитьМакет("АлгоритмПередВыгрузкой"),,,, Истина);
|
|
||||||
Если НЕ ЗначениеЗаполнено(НачалоПериода) Тогда
|
|
||||||
НачалоПериода = НачалоДня(ТекущаяДата());
|
|
||||||
КонецЕсли;
|
|
||||||
ДействияФормыОткрытьФайлЖурнала();
|
|
||||||
ОбновитьПодменюПоследнихОтборов();
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ПриЗакрытии()
|
|
||||||
|
|
||||||
ирОбщий.Форма_ПриЗакрытииЛкс(ЭтаФорма);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ОтборЗначениеПриИзменении(Элемент)
|
|
||||||
|
|
||||||
ТекущаяСтрока = ЭлементыФормы.Отбор.ТекущаяСтрока;
|
|
||||||
ПолеОтбора = ТекущаяСтрока.Поле;
|
|
||||||
БазовоеОписаниеТипов = Метаданные().ТабличныеЧасти.ТаблицаЖурнала.Реквизиты[ПолеОтбора].Тип;
|
|
||||||
ТекущаяСтрока.Использование = Истина;
|
|
||||||
Если ТипЗнч(ТекущаяСтрока.Значение) = Тип("СписокЗначений") Тогда
|
|
||||||
Если ПолеОтбора = "Сеанс" Тогда
|
|
||||||
ТекущаяСтрока.Значение.ТипЗначения = БазовоеОписаниеТипов;
|
|
||||||
КонецЕсли;
|
|
||||||
КонецЕсли;
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ВыбратьДатуИзСписка(Элемент, СтандартнаяОбработка, Знач ПарнаяДата, Знак)
|
|
||||||
|
|
||||||
СимволЗнака = ?(Знак = 1, "+", "-");
|
|
||||||
ИмяПарнойДаты = ?(Знак = 1, "Начало", "Конец");
|
|
||||||
СписокВыбора = Новый СписокЗначений;
|
|
||||||
СписокВыбора.Добавить(1*60, ИмяПарнойДаты + " " + СимволЗнака + " 1 минута");
|
|
||||||
СписокВыбора.Добавить(10*60, ИмяПарнойДаты + " " + СимволЗнака + " 10 минут");
|
|
||||||
СписокВыбора.Добавить(2*60*60, ИмяПарнойДаты + " " + СимволЗнака + " 2 часа");
|
|
||||||
СписокВыбора.Добавить(1*24*60*60, ИмяПарнойДаты + " " + СимволЗнака + " 1 день");
|
|
||||||
СписокВыбора.Добавить(7*24*60*60, ИмяПарнойДаты + " " + СимволЗнака + " 7 дней");
|
|
||||||
СписокВыбора.Добавить(30*24*60*60, ИмяПарнойДаты + " " + СимволЗнака + " 30 дней");
|
|
||||||
РезультатВыбора = ЭтаФорма.ВыбратьИзСписка(СписокВыбора, Элемент);
|
|
||||||
Если РезультатВыбора <> Неопределено Тогда
|
|
||||||
Если Знак = -1 Тогда
|
|
||||||
Если Не ЗначениеЗаполнено(ПарнаяДата) Тогда
|
|
||||||
ПарнаяДата = ТекущаяДата();
|
|
||||||
КонецЕсли;
|
|
||||||
КонецЕсли;
|
|
||||||
Элемент.Значение = ПарнаяДата + Знак * РезультатВыбора.Значение;
|
|
||||||
КонецЕсли;
|
|
||||||
СтандартнаяОбработка = Ложь;
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура КонецПериодаНачалоВыбораИзСписка(Элемент, СтандартнаяОбработка)
|
|
||||||
|
|
||||||
ВыбратьДатуИзСписка(Элемент, СтандартнаяОбработка, НачалоПериода, 1);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура НачалоПериодаНачалоВыбораИзСписка(Элемент, СтандартнаяОбработка)
|
|
||||||
|
|
||||||
ВыбратьДатуИзСписка(Элемент, СтандартнаяОбработка, КонецПериода, -1);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура КоманднаяПанельЖурналРегистрацииНастроитьРегистрациюСобытия(Кнопка)
|
|
||||||
|
|
||||||
Форма = ирОбщий.ПолучитьФормуЛкс("Обработка.ирНастройкаЖурналаРегистрации.Форма");
|
|
||||||
Форма.Открыть();
|
|
||||||
ТекущаяСтрока = ЭлементыФормы.ТаблицаЖурнала.ТекущаяСтрока;
|
|
||||||
Если ТекущаяСтрока <> Неопределено Тогда
|
|
||||||
СтрокаТаблицыЗначений = ТаблицаЗначенийЖурнала.Найти(ТекущаяСтрока.ПорядокСтроки, "ПорядокСтроки");
|
|
||||||
лМетаданные = Неопределено;
|
|
||||||
Если СтрокаТаблицыЗначений <> Неопределено Тогда
|
|
||||||
лМетаданные = СтрокаТаблицыЗначений.Метаданные;
|
|
||||||
КонецЕсли;
|
|
||||||
Форма.АктивизироватьСтрокуСобытия(ТекущаяСтрока.Событие, лМетаданные);
|
|
||||||
КонецЕсли;
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ФиксированныйСписокПриИзмененииФлажка(Элемент)
|
|
||||||
|
|
||||||
ЭлементыФормы.Отбор.ОбновитьСтроки();
|
|
||||||
ЭлементыФормы.Отбор.ТекущиеДанные.Использование = Истина;
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ОтборПриАктивизацииСтроки(Элемент = Неопределено)
|
|
||||||
|
|
||||||
Если Элемент = Неопределено Тогда
|
|
||||||
Элемент = ЭлементыФормы.Отбор;
|
|
||||||
КонецЕсли;
|
|
||||||
ирОбщий.ТабличноеПолеПриАктивизацииСтрокиЛкс(ЭтаФорма, Элемент);
|
|
||||||
ТекущиеДанные = ЭлементыФормы.Отбор.ТекущиеДанные;
|
|
||||||
Если ТекущиеДанные = Неопределено Тогда
|
|
||||||
ЗначениеОтбора = Неопределено;
|
|
||||||
Иначе
|
|
||||||
ЗначениеОтбора = ТекущиеДанные.Значение;
|
|
||||||
КонецЕсли;
|
|
||||||
ЭтоСписокЗначений = ТипЗнч(ЗначениеОтбора) = Тип("СписокЗначений");
|
|
||||||
Элемент.Колонки.Значение.ТолькоПросмотр = ЭтоСписокЗначений;
|
|
||||||
ЭлементыФормы.ФиксированныйСписок.Видимость = ЭтоСписокЗначений;
|
|
||||||
ЭлементыФормы.КоманднаяПанельСписка.Видимость = ЭтоСписокЗначений;
|
|
||||||
ЭлементыФормы.КоличествоЭлементовСписка.Видимость = ЭтоСписокЗначений;
|
|
||||||
Если ЭтоСписокЗначений Тогда
|
|
||||||
ЭтаФорма.КоличествоЭлементовСписка = ЗначениеОтбора.Количество();
|
|
||||||
Иначе
|
|
||||||
ЭтаФорма.КоличествоЭлементовСписка = 0;
|
|
||||||
КонецЕсли;
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура КоманднаяПанельСпискаСнятьФлажки(Кнопка)
|
|
||||||
|
|
||||||
ЭлементыФормы.ФиксированныйСписок.Значение.ЗаполнитьПометки(Ложь);
|
|
||||||
ЭлементыФормы.Отбор.ОбновитьСтроки();
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура КоманднаяПанельСпискаУстановитьФлажки(Кнопка)
|
|
||||||
|
|
||||||
ЭлементыФормы.ФиксированныйСписок.Значение.ЗаполнитьПометки(Истина);
|
|
||||||
ЭлементыФормы.Отбор.ОбновитьСтроки();
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ДействияФормыАнализТехножурнала(Кнопка)
|
|
||||||
|
|
||||||
АнализТехножурнала = ирОбщий.СоздатьОбъектПоПолномуИмениМетаданныхЛкс("Обработка.ирАнализТехножурнала");
|
|
||||||
#Если Сервер И Не Сервер Тогда
|
|
||||||
АнализТехножурнала = Обработки.ирАнализТехножурнала.Создать();
|
|
||||||
#КонецЕсли
|
|
||||||
АнализТехножурнала.ОткрытьСОтбором(НачалоПериода, КонецПериода);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ОтборПриНачалеРедактирования(Элемент, НоваяСтрока, Копирование)
|
|
||||||
|
|
||||||
Элемент.ТекущиеДанные.Значение = Элемент.ТекущиеДанные.ОписаниеТипов.ПривестиЗначение(Элемент.ТекущиеДанные.Значение);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура КоманднаяПанельЖурналРегистрацииНайтиВОтбореВыгрузки(Кнопка)
|
|
||||||
|
|
||||||
ПолеОтбора = ЭлементыФормы.ТаблицаЖурнала.ТекущаяКолонка.Данные;
|
|
||||||
Если СтруктураКолонокБезОтбора.Свойство(ПолеОтбора) Тогда
|
|
||||||
Если ЗначениеЗаполнено(СтруктураКолонокБезОтбора[ПолеОтбора]) Тогда
|
|
||||||
ПолеОтбора = СтруктураКолонокБезОтбора[ПолеОтбора];
|
|
||||||
КонецЕсли;
|
|
||||||
КонецЕсли;
|
|
||||||
ЗначениеОтбора = Неопределено;
|
|
||||||
Если ЭлементыФормы.ТаблицаЖурнала.ТекущаяСтрока <> Неопределено Тогда
|
|
||||||
ЗначениеОтбора = ЭлементыФормы.ТаблицаЖурнала.ТекущиеДанные[ПолеОтбора];
|
|
||||||
КонецЕсли;
|
|
||||||
СтрокаОтбора = ДобавитьЭлементОтбора(Отбор, ПолеОтбора, ЗначениеОтбора);
|
|
||||||
ЭлементыФормы.Отбор.ТекущаяСтрока = СтрокаОтбора;
|
|
||||||
ТекущаяСтрокаСписка = ЭлементыФормы.ФиксированныйСписок.Значение.НайтиПоЗначению(ЗначениеОтбора);
|
|
||||||
Если ТекущаяСтрокаСписка <> Неопределено Тогда
|
|
||||||
ЭлементыФормы.ФиксированныйСписок.ТекущаяСтрока = ТекущаяСтрокаСписка;
|
|
||||||
КонецЕсли;
|
|
||||||
ЭлементыФормы.Отбор.ОбновитьСтроки();
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура КоманднаяПанельОтборТекущийСеанс(Кнопка)
|
|
||||||
|
|
||||||
ДобавитьЭлементОтбора(Отбор, "Сеанс", НомерСеансаИнформационнойБазы(),, Истина, Ложь);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура СтруктураКоманднойПанелиНажатие(Кнопка)
|
|
||||||
|
|
||||||
ирОбщий.ОткрытьСтруктуруКоманднойПанелиЛкс(ЭтаФорма, Кнопка);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ОбработкаОповещения(ИмяСобытия, Параметр, Источник) Экспорт
|
|
||||||
|
|
||||||
ирОбщий.Форма_ОбработкаОповещенияЛкс(ЭтаФорма, ИмяСобытия, Параметр, Источник);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ОтборЗначениеОкончаниеВводаТекста(Элемент, Текст, Значение, СтандартнаяОбработка)
|
|
||||||
|
|
||||||
//ирОбщий.ПолеВвода_ОкончаниеВводаТекстаЛкс(Элемент, Текст, Значение, СтандартнаяОбработка, , Истина);
|
|
||||||
ирОбщий.ПолеВвода_ОкончаниеВводаТекстаЛкс(Элемент, Текст, Значение, СтандартнаяОбработка);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура КлсКомандаНажатие(Кнопка) Экспорт
|
|
||||||
|
|
||||||
ирОбщий.УниверсальнаяКомандаФормыЛкс(ЭтаФорма, Кнопка);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ОбработчикОжиданияСПараметрамиЛкс() Экспорт
|
|
||||||
|
|
||||||
ирОбщий.ОбработчикОжиданияСПараметрамиЛкс();
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ОтборЗначениеНачалоВыбора(Элемент, СтандартнаяОбработка)
|
|
||||||
|
|
||||||
ирОбщий.ПолеВводаКолонкиРасширенногоЗначения_НачалоВыбораЛкс(ЭтаФорма, ЭлементыФормы.Отбор, СтандартнаяОбработка, , Истина);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура КоманднаяПанельСпискаСортироватьПоВозрастанию(Кнопка)
|
|
||||||
|
|
||||||
ЭлементыФормы.Отбор.ТекущиеДанные.Значение.СортироватьПоЗначению();
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура КоманднаяПанельСпискаСортироватьПоУбыванию(Кнопка)
|
|
||||||
|
|
||||||
ЭлементыФормы.Отбор.ТекущиеДанные.Значение.СортироватьПоЗначению(НаправлениеСортировки.Убыв);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ДействияФормыОткрытьФайлЖурнала(Кнопка = Неопределено)
|
|
||||||
|
|
||||||
Если Кнопка <> Неопределено Тогда
|
|
||||||
Если ЗначениеЗаполнено(ИмяФайла) Тогда
|
|
||||||
Ответ = Вопрос("Хотите открыть текущий журнал регистрации?", РежимДиалогаВопрос.ДаНет);
|
|
||||||
Иначе
|
|
||||||
Ответ = КодВозвратаДиалога.Нет;
|
|
||||||
КонецЕсли;
|
|
||||||
Если Ответ = КодВозвратаДиалога.Да Тогда
|
|
||||||
ИмяФайла = "";
|
|
||||||
Иначе
|
|
||||||
//НовоеИмяФайла = ирОбщий.ВыбратьФайлЛкс(, "lgf,lgd", "Журнал регистрации 1С", ИмяФайла); // lgd выдает ошибку https://www.hostedredmine.com/issues/929797
|
|
||||||
НовоеИмяФайла = ирОбщий.ВыбратьФайлЛкс(, "lgf", "Журнал регистрации 1С", ИмяФайла);
|
|
||||||
Если НовоеИмяФайла <> Неопределено Тогда
|
|
||||||
ИмяФайла = НовоеИмяФайла;
|
|
||||||
Иначе
|
|
||||||
Возврат;
|
|
||||||
КонецЕсли;
|
|
||||||
КонецЕсли;
|
|
||||||
КонецЕсли;
|
|
||||||
ирОбщий.ОбновитьТекстПослеМаркераВСтрокеЛкс(ЭтаФорма.Заголовок,, ИмяФайла, ": ");
|
|
||||||
ЗаполнитьОтборВыгрузки();
|
|
||||||
ТаблицаЖурнала.Очистить();
|
|
||||||
ОтборПриАктивизацииСтроки();
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура КоманднаяПанельФормыОткрытьИТС(Кнопка)
|
|
||||||
|
|
||||||
ирОбщий.ОткрытьСсылкуИТСЛкс("https://its.1c.ru/db/v?doc#bookmark:dev:TI000000823");
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура КоманднаяПанельСпискаРедактироватьЭлементОтбора(Кнопка = Неопределено)
|
|
||||||
|
|
||||||
ФормаРедактора = ПолучитьФорму("РедакторСписка");
|
|
||||||
ФормаРедактора.ПараметрСписок = ЭлементыФормы.Отбор.ТекущиеДанные.Значение;
|
|
||||||
ФормаРедактора.ПараметрТекущаяСтрока = ЭлементыФормы.ФиксированныйСписок.ТекущаяСтрока;
|
|
||||||
РезультатФормы = ФормаРедактора.ОткрытьМодально();
|
|
||||||
Если РезультатФормы <> Неопределено Тогда
|
|
||||||
ЭлементыФормы.Отбор.ТекущиеДанные.Использование = Истина;
|
|
||||||
КонецЕсли;
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ОтборВыбор(Элемент, ВыбраннаяСтрока, Колонка, СтандартнаяОбработка)
|
|
||||||
|
|
||||||
Если КоличествоЭлементовСписка > 0 И ЭлементыФормы.Отбор.Колонки.Значение = Колонка Тогда
|
|
||||||
СтандартнаяОбработка = Ложь;
|
|
||||||
КоманднаяПанельСпискаРедактироватьЭлементОтбора();
|
|
||||||
КонецЕсли;
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ФиксированныйСписокВыбор(Элемент, ЭлементСписка)
|
|
||||||
|
|
||||||
КоманднаяПанельСпискаРедактироватьЭлементОтбора();
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ОтборПриИзмененииФлажка(Элемент, Колонка)
|
|
||||||
|
|
||||||
ирОбщий.ТабличноеПолеПриИзмененииФлажкаЛкс(ЭтаФорма, Элемент, Колонка);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ТаблицаЖурналаПриАктивизацииСтроки(Элемент)
|
|
||||||
|
|
||||||
ирОбщий.ТабличноеПолеПриАктивизацииСтрокиЛкс(ЭтаФорма, Элемент);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура КоманднаяПанельФормыОтображатьОтбор(Кнопка)
|
|
||||||
|
|
||||||
ПоказатьСвернутьОтбор(Не ЭлементыФормы.ДействияФормы.Кнопки.ОтображатьОтбор.Пометка);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ПоказатьСвернутьОтбор(Видимость = Истина)
|
|
||||||
|
|
||||||
ЭлементыФормы.ДействияФормы.Кнопки.ОтображатьОтбор.Пометка = Видимость;
|
|
||||||
ирОбщий.ИзменитьСвернутостьЛкс(ЭтаФорма, Видимость, ЭлементыФормы.ПанельОтбор, ЭлементыФормы.РазделительГоризонтальныйПодОтбором, ЭтаФорма.Панель, "верх");
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ПередЗакрытием(Отказ, СтандартнаяОбработка)
|
|
||||||
|
|
||||||
Если Не Отказ Тогда
|
|
||||||
ПоказатьСвернутьОтбор();
|
|
||||||
КонецЕсли;
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ОбновлениеОтображения()
|
|
||||||
|
|
||||||
ирОбщий.Форма_ОбновлениеОтображенияЛкс(ЭтаФорма);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ПроверитьИзменениеОтбораТабличногоПоляДляИстории(ПутьКДанным)
|
|
||||||
|
|
||||||
ПодключитьОбработчикИзмененияДанных("ЭлементыФормы.ТаблицаЖурнала.Отбор", "ПроверитьИзменениеОтбораТабличногоПоляДляИстории", Истина);
|
|
||||||
ПодключитьОбработчикОжидания("ПроверитьИзменениеОтбораТабличногоПоляДляИсторииОтложенно", 0.1, Истина);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ОбновитьПодменюПоследнихОтборов()
|
|
||||||
|
|
||||||
ирОбщий.ОбновитьПодменюПоследнихОтборовЛкс(ЭтаФорма, ЭлементыФормы.КоманднаяПанельЖурнала, ЭлементыФормы.ТаблицаЖурнала);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ПроверитьИзменениеОтбораДляИсторииОтложенно()
|
|
||||||
|
|
||||||
ТабличноеПоле = ЭлементыФормы.ТаблицаЖурнала;
|
|
||||||
ДобавленВСписок = ирОбщий.ДобавитьОтборВИсториюТабличногоПоляЛкс(ЭтаФорма, ТабличноеПоле, ТабличноеПоле.ОтборСтрок, СтарыйОтбор);
|
|
||||||
Если ДобавленВСписок Тогда
|
|
||||||
ОбновитьПодменюПоследнихОтборов();
|
|
||||||
КонецЕсли;
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ОбработчикИзмененияДанных(ПутьКДанным) Экспорт
|
|
||||||
|
|
||||||
ПутьКДаннымОтбораНайденных = "ЭлементыФормы." + ЭлементыФормы.ТаблицаЖурнала.Имя + ".Отбор";
|
|
||||||
Если ирОбщий.СтрНачинаетсяСЛкс(ПутьКДанным, ПутьКДаннымОтбораНайденных) Тогда
|
|
||||||
#Если Сервер И Не Сервер Тогда
|
|
||||||
ПроверитьИзменениеОтбораДляИсторииОтложенно();
|
|
||||||
#КонецЕсли
|
|
||||||
ПодключитьОбработчикОжидания("ПроверитьИзменениеОтбораДляИсторииОтложенно", 0.1, Истина);
|
|
||||||
ПодключитьОбработчикИзмененияДанных(ПутьКДаннымОтбораНайденных, "ОбработчикИзмененияДанных", Истина);
|
|
||||||
КонецЕсли;
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура КоманднаяПанельЖурналРегистрацииАнализПравДоступа(Кнопка)
|
|
||||||
|
|
||||||
ВыбраннаяСтрока = ЭлементыФормы.ТаблицаЖурнала.ТекущаяСтрока;
|
|
||||||
Если ВыбраннаяСтрока = Неопределено Тогда
|
|
||||||
Возврат;
|
|
||||||
КонецЕсли;
|
|
||||||
СтрокаТаблицыЗначений = ТаблицаЗначенийЖурнала.Найти(ВыбраннаяСтрока.ПорядокСтроки, "ПорядокСтроки");
|
|
||||||
ПолноеИмяМД = ВыбратьОбъектМетаданных(СтрокаТаблицыЗначений);
|
|
||||||
Если ПолноеИмяМД = Неопределено Тогда
|
|
||||||
Возврат;
|
|
||||||
КонецЕсли;
|
|
||||||
ФормаОтчета = ирОбщий.ПолучитьФормуЛкс("Отчет.ирАнализПравДоступа.Форма",,, ПолноеИмяМД);
|
|
||||||
ФормаОтчета.Пользователь = СтрокаТаблицыЗначений.ИмяПользователя;
|
|
||||||
ФормаОтчета.ОбъектМетаданных = ПолноеИмяМД;
|
|
||||||
ФормаОтчета.ПараметрКлючВарианта = "ПоПользователям";
|
|
||||||
ФормаОтчета.Открыть();
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура КоманднаяПанельЖурналРегистрацииОткрытьОбъектМетаданных(Кнопка)
|
|
||||||
|
|
||||||
ВыбраннаяСтрока = ЭлементыФормы.ТаблицаЖурнала.ТекущаяСтрока;
|
|
||||||
Если ВыбраннаяСтрока = Неопределено Тогда
|
|
||||||
Возврат;
|
|
||||||
КонецЕсли;
|
|
||||||
СтрокаТаблицыЗначений = ТаблицаЗначенийЖурнала.Найти(ВыбраннаяСтрока.ПорядокСтроки, "ПорядокСтроки");
|
|
||||||
ПолноеИмяМД = ВыбратьОбъектМетаданных(СтрокаТаблицыЗначений);
|
|
||||||
Если ПолноеИмяМД = Неопределено Тогда
|
|
||||||
Возврат;
|
|
||||||
КонецЕсли;
|
|
||||||
ирОбщий.ОткрытьОбъектМетаданныхЛкс(ПолноеИмяМД);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ВнешнееСобытие(Источник, Событие, Данные) Экспорт
|
|
||||||
|
|
||||||
ирОбщий.Форма_ВнешнееСобытиеЛкс(ЭтаФорма, Источник, Событие, Данные);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ТаблицаЖурналаПриВыводеСтроки(Элемент, ОформлениеСтроки, ДанныеСтроки) Экспорт
|
|
||||||
|
|
||||||
ОформлениеСтроки.Ячейки.Уровень.ОтображатьКартинку = Истина;
|
|
||||||
ИндексКартинки = -1;
|
|
||||||
//Если ДанныеСтроки.СтатусТранзакции = "" + СтатусТранзакцииЗаписиЖурналаРегистрации.Отменена тогда
|
|
||||||
// ИндексКартинки = 0;
|
|
||||||
//Иначе
|
|
||||||
ИндексКартинки = МассивУровнейЖурнала.Найти("" + ДанныеСтроки.Уровень);
|
|
||||||
ИндексКартинки = ?(ИндексКартинки <> Неопределено, ИндексКартинки, -1);
|
|
||||||
//КонецЕсли;
|
|
||||||
Если ИндексКартинки >= 0 тогда
|
|
||||||
ОформлениеСтроки.Ячейки.Уровень.ИндексКартинки = ИндексКартинки;
|
|
||||||
КонецЕсли;
|
|
||||||
Если ДанныеСтроки.Сеанс = НомерСеансаИнформационнойБазы() Тогда
|
|
||||||
ОформлениеСтроки.ЦветФона = Новый Цвет(240, 255, 240);
|
|
||||||
КонецЕсли;
|
|
||||||
//Если ДанныеСтроки.Данные = ВыбОбъект Тогда
|
|
||||||
// ОформлениеСтроки.ЦветФона = Новый Цвет(255, 250, 250);
|
|
||||||
//КонецЕсли;
|
|
||||||
СтрокаТаблицыЗначений = ТаблицаЗначенийЖурнала.Найти(ДанныеСтроки.ПорядокСтроки, "ПорядокСтроки");
|
|
||||||
Если СтрокаТаблицыЗначений <> Неопределено Тогда
|
|
||||||
Если ТаблицаЗначенийЖурнала.Колонки.Найти("РазделениеДанныхСеанса") <> Неопределено Тогда
|
|
||||||
ирОбщий.ОформитьЯчейкуСРасширеннымЗначениемЛкс(ОформлениеСтроки.Ячейки.РазделениеДанныхСеанса, СтрокаТаблицыЗначений.РазделениеДанныхСеанса, Элемент.Колонки.РазделениеДанныхСеанса);
|
|
||||||
КонецЕсли;
|
|
||||||
Если ТипЗнч(СтрокаТаблицыЗначений.Метаданные) = Тип("Строка") Тогда
|
|
||||||
КартинкаКорневогоТипа = ирОбщий.КартинкаКорневогоТипаМДЛкс(ирОбщий.ПервыйФрагментЛкс(СтрокаТаблицыЗначений.Метаданные));
|
|
||||||
Если КартинкаКорневогоТипа.Вид <> ВидКартинки.Пустая Тогда
|
|
||||||
ОформлениеСтроки.Ячейки.Метаданные.УстановитьКартинку(КартинкаКорневогоТипа);
|
|
||||||
КонецЕсли;
|
|
||||||
Иначе
|
|
||||||
ирОбщий.ОформитьЯчейкуСРасширеннымЗначениемЛкс(ОформлениеСтроки.Ячейки.Метаданные, СтрокаТаблицыЗначений.Метаданные, Элемент.Колонки.Метаданные);
|
|
||||||
КонецЕсли;
|
|
||||||
ирОбщий.ОформитьЯчейкуСРасширеннымЗначениемЛкс(ОформлениеСтроки.Ячейки.Данные, СтрокаТаблицыЗначений.Данные, Элемент.Колонки.Данные);
|
|
||||||
ирОбщий.ТабличноеПолеПриВыводеСтрокиЛкс(ЭтаФорма, Элемент, ОформлениеСтроки, ДанныеСтроки,,,,, СтрокаТаблицыЗначений);
|
|
||||||
КонецЕсли;
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ОтборПриВыводеСтроки(Элемент, ОформлениеСтроки, ДанныеСтроки) Экспорт
|
|
||||||
|
|
||||||
ирОбщий.ТабличноеПолеПриВыводеСтрокиЛкс(ЭтаФорма, Элемент, ОформлениеСтроки, ДанныеСтроки);
|
|
||||||
СтрокаОтбора = ДанныеСтроки;
|
|
||||||
ИспользованиеСтрокиОтбора = ИспользованиеСтрокиОтбора(СтрокаОтбора);
|
|
||||||
Если ТипЗнч(ДанныеСтроки.Значение) = Тип("СписокЗначений") Тогда
|
|
||||||
Если ДанныеСтроки.Значение.ТипЗначения.Типы().Количество() = 0 Тогда
|
|
||||||
КоличествоПомеченных = Неопределено;
|
|
||||||
ПредставлениеСтрокиОтбора = ПредставлениеСтрокиОтбора(ДанныеСтроки, КоличествоПомеченных);
|
|
||||||
ИспользованиеСтрокиОтбора = ИспользованиеСтрокиОтбора И ЗначениеЗаполнено(ПредставлениеСтрокиОтбора);
|
|
||||||
ОформлениеСтроки.Ячейки.Значение.УстановитьТекст("(" + КоличествоПомеченных + " из " + ДанныеСтроки.Значение.Количество() + ") " + ПредставлениеСтрокиОтбора);
|
|
||||||
КонецЕсли;
|
|
||||||
КонецЕсли;
|
|
||||||
Если ДанныеСтроки.Поле = "Данные" Тогда
|
|
||||||
ирОбщий.ОформитьЯчейкуСРасширеннымЗначениемЛкс(ОформлениеСтроки.Ячейки.Значение,,, Истина);
|
|
||||||
КонецЕсли;
|
|
||||||
Если Не ИспользованиеСтрокиОтбора Тогда
|
|
||||||
ОформлениеСтроки.ЦветТекста = ирОбщий.ЦветТекстаНеактивностиЛкс();
|
|
||||||
КонецЕсли;
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ТабличноеПолеПриПолученииДанных(Элемент, ОформленияСтрок) Экспорт
|
|
||||||
|
|
||||||
ирОбщий.ТабличноеПолеПриПолученииДанныхЛкс(ЭтаФорма, Элемент, ОформленияСтрок);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура КоманднаяПанельЖурналРегистрацииРедакторОбъектаБД(Кнопка)
|
|
||||||
|
|
||||||
ТекущаяСтрока = ЭлементыФормы.ТаблицаЖурнала.ТекущаяСтрока;
|
|
||||||
Если ТекущаяСтрока = Неопределено Тогда
|
|
||||||
Возврат;
|
|
||||||
КонецЕсли;
|
|
||||||
СтрокаТаблицыЗначений = ТаблицаЗначенийЖурнала.Найти(ТекущаяСтрока.ПорядокСтроки, "ПорядокСтроки");
|
|
||||||
Если Не ирОбщий.ЛиСсылкаНаОбъектБДЛкс(СтрокаТаблицыЗначений.Данные) Тогда
|
|
||||||
Возврат
|
|
||||||
КонецЕсли;
|
|
||||||
ирОбщий.ОткрытьСсылкуВРедактореОбъектаБДЛкс(СтрокаТаблицыЗначений.Данные);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура КоманднаяПанельОтборАлгоритм(Кнопка)
|
|
||||||
|
|
||||||
СтандартнаяОбработка = Ложь;
|
|
||||||
СтруктураАлгоритма = ирОбщий.ОбъектИзСтрокиXMLЛкс(АлгоритмПередВыгрузкой);
|
|
||||||
Результат = ирОбщий.РедактироватьАлгоритмЧерезСтруктуруЛкс(СтруктураАлгоритма, мАлгоритмПередВыгрузкойПараметры,,, "Алгоритм перед выгрузкой");
|
|
||||||
Если Результат Тогда
|
|
||||||
Если Не ЗначениеЗаполнено(СтруктураАлгоритма.ТекстАлгоритма) Тогда
|
|
||||||
ЭтотОбъект.АлгоритмПередВыгрузкой = "";
|
|
||||||
Иначе
|
|
||||||
ЭтотОбъект.АлгоритмПередВыгрузкой = ирОбщий.ОбъектВСтрокуXMLЛкс(СтруктураАлгоритма);
|
|
||||||
КонецЕсли;
|
|
||||||
КонецЕсли;
|
|
||||||
НастроитьЭлементыФормы();
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура НастроитьЭлементыФормы()
|
|
||||||
|
|
||||||
ЭлементыФормы.КоманднаяПанельОтбор.Кнопки.Алгоритм.Пометка = ЗначениеЗаполнено(АлгоритмПередВыгрузкой);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
ирОбщий.ИнициироватьФормуЛкс(ЭтаФорма, "Обработка.ирАнализЖурналаРегистрации.Форма.Форма");
|
|
||||||
СписокВыбора = ЭлементыФормы.МаксимальныйРазмерВыгрузки.СписокВыбора;
|
|
||||||
СписокВыбора.Добавить(100);
|
|
||||||
СписокВыбора.Добавить(1000);
|
|
||||||
СписокВыбора.Добавить(10000);
|
|
||||||
СписокВыбора.Добавить(100000);
|
|
||||||
СписокВыбора.Добавить(500000);
|
|
||||||
РазделительДлительности = "-";
|
|
||||||
|
|
||||||
СтруктураКолонокБезОтбора = Новый Структура();
|
|
||||||
СтруктураКолонокБезОтбора.Вставить("ПредставлениеПриложения", "ИмяПриложения");
|
|
||||||
СтруктураКолонокБезОтбора.Вставить("ПредставлениеСобытия", "Событие");
|
|
||||||
СтруктураКолонокБезОтбора.Вставить("ИмяПользователя", "Пользователь");
|
|
||||||
СтруктураКолонокБезОтбора.Вставить("Дата");
|
|
||||||
СтруктураКолонокБезОтбора.Вставить("Соединение");
|
|
||||||
СтруктураКолонокБезОтбора.Вставить("ПредставлениеМетаданных", "Метаданные");
|
|
||||||
|
|
||||||
МассивУровнейЖурнала = Новый Массив();
|
|
||||||
МассивУровнейЖурнала.Добавить("" + УровеньЖурналаРегистрации.Примечание);
|
|
||||||
МассивУровнейЖурнала.Добавить("" + УровеньЖурналаРегистрации.Информация);
|
|
||||||
МассивУровнейЖурнала.Добавить("" + УровеньЖурналаРегистрации.Предупреждение);
|
|
||||||
МассивУровнейЖурнала.Добавить("" + УровеньЖурналаРегистрации.Ошибка);
|
|
||||||
|
|
||||||
File diff suppressed because it is too large
Load Diff
Binary file not shown.
|
|
@ -1,165 +0,0 @@
|
||||||
|
|
||||||
Процедура ПриОткрытии()
|
|
||||||
|
|
||||||
Если КлючУникальности = "Автотест" Тогда
|
|
||||||
Возврат;
|
|
||||||
КонецЕсли;
|
|
||||||
ирОбщий.Форма_ПриОткрытииЛкс(ЭтаФорма);
|
|
||||||
АктивизироватьПодробныеДанные = Ложь;
|
|
||||||
Если НачальноеЗначениеВыбора <> Неопределено Тогда
|
|
||||||
ЭлементыФормы.ТаблицаЖурнала.ТекущаяСтрока = НачальноеЗначениеВыбора;
|
|
||||||
Если Истина
|
|
||||||
И СтрокаТаблицыЗначений <> Неопределено
|
|
||||||
И СтрокаТаблицыЗначений.Владелец().Колонки.Найти("РазделениеДанныхСеанса") <> Неопределено
|
|
||||||
Тогда
|
|
||||||
ЭлементыФормы.ПредставлениеРазделенияДанныхСеанса.Значение = ирОбщий.РасширенноеПредставлениеЗначенияЛкс(СтрокаТаблицыЗначений.РазделениеДанныхСеанса);
|
|
||||||
КонецЕсли;
|
|
||||||
КонецЕсли;
|
|
||||||
Если ТипЗнч(СтрокаТаблицыЗначений.Данные) = Тип("Структура") Тогда
|
|
||||||
Для Каждого КлючИЗначение Из СтрокаТаблицыЗначений.Данные Цикл
|
|
||||||
СтрокаМетаданных = ПодробныеДанные.Добавить();
|
|
||||||
СтрокаМетаданных.Свойство = КлючИЗначение.Ключ;
|
|
||||||
СтрокаМетаданных.Значение = КлючИЗначение.Значение;
|
|
||||||
СтрокаМетаданных.ПредставлениеЗначения = СтрокаМетаданных.Значение;
|
|
||||||
КонецЦикла;
|
|
||||||
АктивизироватьПодробныеДанные = Истина;
|
|
||||||
Иначе
|
|
||||||
СтрокаМетаданных = ПодробныеДанные.Добавить();
|
|
||||||
СтрокаМетаданных.Свойство = "Данные";
|
|
||||||
СтрокаМетаданных.Значение = СтрокаТаблицыЗначений.Данные;
|
|
||||||
СтрокаМетаданных.ПредставлениеЗначения = СтрокаМетаданных.Значение;
|
|
||||||
КонецЕсли;
|
|
||||||
ПодробныеДанные.Сортировать("Свойство");
|
|
||||||
СтрокаМетаданных = ПодробныеДанные.Вставить(0);
|
|
||||||
СтрокаМетаданных.Свойство = "Метаданные";
|
|
||||||
СтрокаМетаданных.Значение = СтрокаТаблицыЗначений.Метаданные;
|
|
||||||
СтрокаМетаданных.ПредставлениеЗначения = СтрокаМетаданных.Значение;
|
|
||||||
Если Истина
|
|
||||||
И ТипЗнч(СтрокаТаблицыЗначений.Метаданные) = Тип("Массив")
|
|
||||||
И СтрокаТаблицыЗначений.Метаданные.Количество() > 0
|
|
||||||
Тогда
|
|
||||||
АктивизироватьПодробныеДанные = Истина;
|
|
||||||
КонецЕсли;
|
|
||||||
Если АктивизироватьПодробныеДанные Тогда
|
|
||||||
ЭлементыФормы.ПанельДанные.ТекущаяСтраница = ЭлементыФормы.ПанельДанные.Страницы.ПодробныеДанные;
|
|
||||||
КонецЕсли;
|
|
||||||
ирОбщий.ОбновитьТекстПослеМаркераВСтрокеЛкс(ЭтаФорма.Заголовок,, "" + ЭлементыФормы.ДатаВремя.Значение + " " + ирОбщий.ПоследнийФрагментЛкс(ЭлементыФормы.ПредставлениеСобытия.Значение), ": ");
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура РасширенноеЗначениеОткрытие(Элемент, СтандартнаяОбработка)
|
|
||||||
|
|
||||||
ЗначениеПоля = СтрокаТаблицыЗначений[ирОбщий.ПоследнийФрагментЛкс(Элемент.Данные)];
|
|
||||||
Если ирКэш.ОбъектМДПоПолномуИмениЛкс(ЗначениеПоля) <> Неопределено Тогда
|
|
||||||
СтандартнаяОбработка = Ложь;
|
|
||||||
ирОбщий.ОткрытьОбъектМетаданныхЛкс(ЗначениеПоля);
|
|
||||||
Иначе
|
|
||||||
ирОбщий.ОткрытьЗначениеЛкс(ЗначениеПоля, Ложь, СтандартнаяОбработка);
|
|
||||||
КонецЕсли;
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ПредставлениеСобытияОткрытие(Элемент, СтандартнаяОбработка)
|
|
||||||
|
|
||||||
СтандартнаяОбработка = Ложь;
|
|
||||||
Если ЭлементыФормы.ТаблицаЖурнала.ТекущаяСтрока = Неопределено Тогда
|
|
||||||
Возврат;
|
|
||||||
КонецЕсли;
|
|
||||||
Форма = ирОбщий.ПолучитьФормуЛкс("Обработка.ирНастройкаЖурналаРегистрации.Форма");
|
|
||||||
Форма.Открыть();
|
|
||||||
лМетаданные = Неопределено;
|
|
||||||
Если СтрокаТаблицыЗначений <> Неопределено Тогда
|
|
||||||
лМетаданные = СтрокаТаблицыЗначений.Метаданные;
|
|
||||||
КонецЕсли;
|
|
||||||
Форма.АктивизироватьСтрокуСобытия(ЭлементыФормы.Событие.Значение, лМетаданные);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура КлсКомандаНажатие(Кнопка) Экспорт
|
|
||||||
|
|
||||||
ирОбщий.УниверсальнаяКомандаФормыЛкс(ЭтаФорма, Кнопка);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ОбработчикОжиданияСПараметрамиЛкс() Экспорт
|
|
||||||
|
|
||||||
ирОбщий.ОбработчикОжиданияСПараметрамиЛкс();
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ИмяПользователяОткрытие(Элемент, СтандартнаяОбработка)
|
|
||||||
|
|
||||||
СтандартнаяОбработка = Ложь;
|
|
||||||
ирОбщий.ОткрытьПользователяИБЛкс(ЭлементыФормы.ТаблицаЖурнала.ТекущиеДанные.ИмяПользователя);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура КП_ДоступАнализПравДоступа(Кнопка)
|
|
||||||
|
|
||||||
ПолноеИмяМД = ВыбратьОбъектМетаданных(СтрокаТаблицыЗначений);
|
|
||||||
Если ПолноеИмяМД = Неопределено Тогда
|
|
||||||
Возврат;
|
|
||||||
КонецЕсли;
|
|
||||||
ФормаОтчета = ирОбщий.ПолучитьФормуЛкс("Отчет.ирАнализПравДоступа.Форма",,, ПолноеИмяМД);
|
|
||||||
ФормаОтчета.Пользователь = СтрокаТаблицыЗначений.ИмяПользователя;
|
|
||||||
ФормаОтчета.ОбъектМетаданных = ПолноеИмяМД;
|
|
||||||
ФормаОтчета.ПараметрКлючВарианта = "ПоПользователям";
|
|
||||||
ФормаОтчета.Открыть();
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ОбновлениеОтображения()
|
|
||||||
|
|
||||||
ирОбщий.Форма_ОбновлениеОтображенияЛкс(ЭтаФорма);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ПодробныеДанныеПриВыводеСтроки(Элемент, ОформлениеСтроки, ДанныеСтроки) Экспорт
|
|
||||||
|
|
||||||
ирОбщий.ТабличноеПолеПриВыводеСтрокиЛкс(ЭтаФорма, Элемент, ОформлениеСтроки, ДанныеСтроки,,, Новый Структура("ПредставлениеЗначения", "Значение"));
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура КП_ДоступОткрытьОбъектМетаданных(Кнопка)
|
|
||||||
|
|
||||||
ПолноеИмяМД = ВыбратьОбъектМетаданных(СтрокаТаблицыЗначений);
|
|
||||||
Если ПолноеИмяМД = Неопределено Тогда
|
|
||||||
Возврат;
|
|
||||||
КонецЕсли;
|
|
||||||
ирОбщий.ОткрытьОбъектМетаданныхЛкс(ПолноеИмяМД);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура КомментарийОткрытие(Элемент, СтандартнаяОбработка)
|
|
||||||
|
|
||||||
СтандартнаяОбработка = Ложь;
|
|
||||||
ирОбщий.ОткрытьТекстЛкс(Элемент.Значение,,,, СтрокаТаблицыЗначений.ПорядокСтроки);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ВнешнееСобытие(Источник, Событие, Данные) Экспорт
|
|
||||||
|
|
||||||
ирОбщий.Форма_ВнешнееСобытиеЛкс(ЭтаФорма, Источник, Событие, Данные);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ТабличноеПолеПриПолученииДанных(Элемент, ОформленияСтрок) Экспорт
|
|
||||||
|
|
||||||
ирОбщий.ТабличноеПолеПриПолученииДанныхЛкс(ЭтаФорма, Элемент, ОформленияСтрок);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ОбработкаОповещения(ИмяСобытия, Параметр, Источник) Экспорт
|
|
||||||
|
|
||||||
ирОбщий.Форма_ОбработкаОповещенияЛкс(ЭтаФорма, ИмяСобытия, Параметр, Источник);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ПриЗакрытии()
|
|
||||||
|
|
||||||
ирОбщий.Форма_ПриЗакрытииЛкс(ЭтаФорма);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
ирОбщий.ИнициироватьФормуЛкс(ЭтаФорма, "Обработка.ирАнализЖурналаРегистрации.Форма.ФормаСобытия");
|
|
||||||
ПодробныеДанные.Колонки.Добавить("Значение");
|
|
||||||
File diff suppressed because it is too large
Load Diff
|
|
@ -1,5 +0,0 @@
|
||||||
|
|
||||||
&НаКлиенте
|
|
||||||
Процедура ОбработкаКоманды(ПараметрКоманды, ПараметрыВыполненияКоманды)
|
|
||||||
ирОбщий.ОткрытьФормуЛкс("Обработка.ирАнализТехножурнала.Форма");
|
|
||||||
КонецПроцедуры
|
|
||||||
File diff suppressed because it is too large
Load Diff
Binary file not shown.
|
|
@ -1,441 +0,0 @@
|
||||||
Перем ШаблонПоля;
|
|
||||||
Перем ШаблонЭлемента;
|
|
||||||
Перем ШаблонОбласти;
|
|
||||||
|
|
||||||
Процедура ПриОткрытии()
|
|
||||||
|
|
||||||
Если КлючУникальности = "Автотест" Тогда
|
|
||||||
Возврат;
|
|
||||||
КонецЕсли;
|
|
||||||
СтрокаСобытияБлокировки = ЭтаФорма.КлючУникальности;
|
|
||||||
ирОбщий.Форма_ПриОткрытииЛкс(ЭтаФорма);
|
|
||||||
ЭтаФорма.Заголовок = ЭтаФорма.Заголовок + " - " + Формат(СтрокаСобытияБлокировки.МоментВремени, "ЧГ=");
|
|
||||||
ЭтаФорма.Инфобаза = СтрокаСобытияБлокировки.Инфобаза;
|
|
||||||
ЭтаФорма.Соединение = СтрокаСобытияБлокировки.Соединение_;
|
|
||||||
ЭтаФорма.TCPСоединение = СтрокаСобытияБлокировки.TCPСоединение;
|
|
||||||
ЭтаФорма.Сеанс = СтрокаСобытияБлокировки.Сеанс;
|
|
||||||
ЭтаФорма.Пользователь = СтрокаСобытияБлокировки.Пользователь;
|
|
||||||
ЭтаФорма.Длительность = СтрокаСобытияБлокировки.Длительность;
|
|
||||||
ЭтаФорма.Пространства = СтрокаСобытияБлокировки.Regions;
|
|
||||||
ЭтаФорма.ПространстваМета = СтрокаСобытияБлокировки.RegionsМета;
|
|
||||||
ЭтаФорма.СтрокаМодуля = СтрокаСобытияБлокировки.СтрокаМодуля;
|
|
||||||
ЭтаФорма.Дата = СтрокаСобытияБлокировки.Дата;
|
|
||||||
ЭтаФорма.ДатаНачала = СтрокаСобытияБлокировки.ДатаНачала;
|
|
||||||
ЭтаФорма.МоментВремени = СтрокаСобытияБлокировки.МоментВремени;
|
|
||||||
ЭтаФорма.МоментВремениНачала = СтрокаСобытияБлокировки.МоментВремениНачала;
|
|
||||||
МассивСоединенийБлокираторов = ирОбщий.СтрРазделитьЛкс(СтрокаСобытияБлокировки.Блокираторы,,, Ложь);
|
|
||||||
Счетчик = 1;
|
|
||||||
Для Каждого БлокировавшееСоединение Из МассивСоединенийБлокираторов Цикл
|
|
||||||
СтрокаБлокиратора = БлокировавшиеСоединения.Добавить();
|
|
||||||
СтрокаБлокиратора.TCPСоединение = БлокировавшееСоединение;
|
|
||||||
СтрокаБлокиратора.Порядок = Счетчик;
|
|
||||||
Счетчик = Счетчик + 1;
|
|
||||||
КонецЦикла;
|
|
||||||
ПоляОбластиБлокировки.Очистить();
|
|
||||||
ОписаниеБлокировкиМета = ПолучитьОписаниеБлокировкиМета(СтрокаСобытияБлокировки);
|
|
||||||
ЗагрузитьОбластиБлокировки(ОбластиБлокировки, СтрокаСобытияБлокировки.Locks, ОписаниеБлокировкиМета);
|
|
||||||
ЭтаФорма.КоличествоЭлементов = ОбластиБлокировки.Количество();
|
|
||||||
ирОбщий.ТабличноеПолеВставитьКолонкуНомерСтрокиЛкс(ЭлементыФормы.ОбластиБлокировки);
|
|
||||||
ирОбщий.ТабличноеПолеВставитьКолонкуНомерСтрокиЛкс(ЭлементыФормы.ОбластиБлокировкиБлокиратора);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Функция ПолучитьОписаниеБлокировкиМета(Знач СтрокаБлокировки)
|
|
||||||
|
|
||||||
ОписаниеБлокировкиМета = СтрокаБлокировки.LocksМета;
|
|
||||||
Если ирОбщий.СтрокиРавныЛкс(ОписаниеБлокировкиМета, РезультатПереводаСлишкомБольшогоТекста()) Тогда
|
|
||||||
Состояние("Перевод в термины метаданных...");
|
|
||||||
ОписаниеБлокировкиМета = ПеревестиТекстБДВТерминыМетаданных(СтрокаБлокировки.Locks,,,,, 0);
|
|
||||||
СтрокаБлокировки.LocksМета = ОписаниеБлокировкиМета;
|
|
||||||
Состояние("");
|
|
||||||
КонецЕсли;
|
|
||||||
Если Не ЗначениеЗаполнено(ОписаниеБлокировкиМета) Тогда
|
|
||||||
ОписаниеБлокировкиМета = СтрокаБлокировки.Locks;
|
|
||||||
КонецЕсли;
|
|
||||||
Возврат ОписаниеБлокировкиМета;
|
|
||||||
|
|
||||||
КонецФункции
|
|
||||||
|
|
||||||
Процедура ЗагрузитьОбластиБлокировки(ТаблицаОбластейБлокировки, ОписаниеБлокировки, ОписаниеБлокировкиМета)
|
|
||||||
|
|
||||||
ТаблицаОбластейБлокировки.Очистить();
|
|
||||||
RegExpЭлементов = мПлатформа.RegExp;
|
|
||||||
RegExpЭлементов.Global = Истина;
|
|
||||||
RegExpЭлементов.Pattern = ШаблонЭлемента;
|
|
||||||
RegExpОбластей = мПлатформа.RegExp2;
|
|
||||||
RegExpОбластей.Global = Истина;
|
|
||||||
RegExpОбластей.Pattern = ШаблонОбласти;
|
|
||||||
ВхожденияЭлементов = RegExpЭлементов.НайтиВхождения(ОписаниеБлокировки);
|
|
||||||
ВхожденияЭлементовМета = RegExpЭлементов.НайтиВхождения(ОписаниеБлокировкиМета);
|
|
||||||
ИндикаторПространств = ирОбщий.ПолучитьИндикаторПроцессаЛкс(ВхожденияЭлементов.Количество(), "Пространства");
|
|
||||||
Для ИндексЭлемента = 0 По ВхожденияЭлементов.Количество() - 1 Цикл
|
|
||||||
ирОбщий.ОбработатьИндикаторЛкс(ИндикаторПространств);
|
|
||||||
ВхождениеЭлемента = ВхожденияЭлементов[ИндексЭлемента];
|
|
||||||
ВхождениеЭлементаМета = ВхожденияЭлементовМета[ИндексЭлемента];
|
|
||||||
Пространство = ВхождениеЭлемента.SubMatches(0);
|
|
||||||
ПространствоМета = ВхождениеЭлементаМета.SubMatches(0);
|
|
||||||
ТипБлокировки = ВхождениеЭлемента.SubMatches(1);
|
|
||||||
ВхожденияОбластей = RegExpОбластей.НайтиВхождения(ВхождениеЭлемента.SubMatches(2));
|
|
||||||
ВхожденияОбластейМета = RegExpОбластей.НайтиВхождения(ВхождениеЭлементаМета.SubMatches(2));
|
|
||||||
Если ВхожденияОбластей.Количество() > 0 Тогда
|
|
||||||
ИндикаторОбласти = ирОбщий.ПолучитьИндикаторПроцессаЛкс(ВхожденияОбластей.Количество(), "Области");
|
|
||||||
Для ИндексОбласти = 0 По ВхожденияОбластей.Количество() - 1 Цикл
|
|
||||||
ирОбщий.ОбработатьИндикаторЛкс(ИндикаторОбласти);
|
|
||||||
ВхождениеОбласти = ВхожденияОбластей[ИндексОбласти];
|
|
||||||
ВхождениеОбластиМета = ВхожденияОбластейМета[ИндексОбласти];
|
|
||||||
СтрокаОбластиБлокировки = ТаблицаОбластейБлокировки.Добавить();
|
|
||||||
СтрокаОбластиБлокировки.Пространство = Пространство;
|
|
||||||
СтрокаОбластиБлокировки.ПространствоМета = ПространствоМета;
|
|
||||||
СтрокаОбластиБлокировки.ТипБлокировки = ТипБлокировки;
|
|
||||||
СтрокаОбластиБлокировки.Область = СокрЛП(ВхождениеОбласти.SubMatches(0));
|
|
||||||
СтрокаОбластиБлокировки.ОбластьМета = СокрЛП(ВхождениеОбластиМета.SubMatches(0));
|
|
||||||
КонецЦикла;
|
|
||||||
ирОбщий.ОсвободитьИндикаторПроцессаЛкс();
|
|
||||||
Иначе
|
|
||||||
СтрокаОбластиБлокировки = ТаблицаОбластейБлокировки.Добавить();
|
|
||||||
СтрокаОбластиБлокировки.Пространство = Пространство;
|
|
||||||
СтрокаОбластиБлокировки.ПространствоМета = ПространствоМета;
|
|
||||||
СтрокаОбластиБлокировки.ТипБлокировки = ТипБлокировки;
|
|
||||||
КонецЕсли;
|
|
||||||
КонецЦикла;
|
|
||||||
ирОбщий.ОсвободитьИндикаторПроцессаЛкс();
|
|
||||||
ТаблицаОбластейБлокировки.Сортировать("ПространствоМета, ТипБлокировки, Область");
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ЗагрузитьПоляЭлементаБлокировки(ТаблицаПолейЭлементаБлокировки, ОписаниеПолей, ОписаниеПолейМета)
|
|
||||||
|
|
||||||
ТаблицаПолейЭлементаБлокировки.Очистить();
|
|
||||||
RegExp = мПлатформа.RegExp;
|
|
||||||
RegExp.Global = Истина;
|
|
||||||
// ШаблонПоля = "(\w+)=(?:(\d+\:\w+)|(\d+)|T""(\d+)""|(\w+)|(""""""\w*"""""")|(\[(?:(\d+)|T""(\d+)""|(\+))\:(?:(\d+)|T""(\d+)""|(\+))\]))"; // Справочно
|
|
||||||
RegExp.Pattern = ШаблонПоля;
|
|
||||||
Вхождения = RegExp.НайтиВхождения(ОписаниеПолей);
|
|
||||||
ВхожденияМета = RegExp.НайтиВхождения(ОписаниеПолейМета);
|
|
||||||
Для ИндексЭлемента = 0 По Вхождения.Количество() - 1 Цикл
|
|
||||||
Вхождение = Вхождения[ИндексЭлемента];
|
|
||||||
ВхождениеМета = ВхожденияМета[ИндексЭлемента];
|
|
||||||
СтрокаПоля = ТаблицаПолейЭлементаБлокировки.Добавить();
|
|
||||||
СтрокаПоля.Поле = Вхождение.SubMatches(0);
|
|
||||||
СтрокаПоля.ПолеМета = ВхождениеМета.SubMatches(0);
|
|
||||||
Если Вхождение.SubMatches(1) <> Неопределено Тогда
|
|
||||||
СтрокаПоля.ЗначениеSDBL = Вхождение.SubMatches(1);
|
|
||||||
СтрокаПоля.Значение = ирОбщий.ПреобразоватьЗначениеИзSDBLЛкс(СтрокаПоля.ЗначениеSDBL, мАдресЧужойСхемыБД);
|
|
||||||
Если ТипЗнч(СтрокаПоля.Значение) <> Тип("Строка") Тогда
|
|
||||||
СтрокаПоля.ТипЗначения = ТипЗнч(СтрокаПоля.Значение);
|
|
||||||
КонецЕсли;
|
|
||||||
ИначеЕсли Вхождение.SubMatches(2) <> Неопределено Тогда
|
|
||||||
СтрокаПоля.ЗначениеSDBL = Вхождение.SubMatches(2);
|
|
||||||
СтрокаПоля.Значение = Число(СтрокаПоля.ЗначениеSDBL);
|
|
||||||
СтрокаПоля.ТипЗначения = ТипЗнч(СтрокаПоля.Значение);
|
|
||||||
ИначеЕсли Вхождение.SubMatches(3) <> Неопределено Тогда
|
|
||||||
СтрокаПоля.ЗначениеSDBL = Вхождение.SubMatches(3);
|
|
||||||
СтрокаПоля.Значение = Дата(СтрокаПоля.ЗначениеSDBL);
|
|
||||||
СтрокаПоля.ТипЗначения = ТипЗнч(СтрокаПоля.Значение);
|
|
||||||
ИначеЕсли Вхождение.SubMatches(4) <> Неопределено Тогда
|
|
||||||
СтрокаПоля.ЗначениеSDBL = Вхождение.SubMatches(4);
|
|
||||||
//СтрокаПоля.Значение = Вычислить(СтрокаПоля.ЗначениеSDBL);
|
|
||||||
СтрокаПоля.Значение = "<" + СтрокаПоля.ЗначениеSDBL + ">";
|
|
||||||
ИначеЕсли Вхождение.SubMatches(5) <> Неопределено Тогда
|
|
||||||
СтрокаПоля.ЗначениеSDBL = Вхождение.SubMatches(5);
|
|
||||||
Попытка
|
|
||||||
ЗначениеСтроки = Вычислить(СтрокаПоля.ЗначениеSDBL);
|
|
||||||
Исключение
|
|
||||||
Сообщить("Ошибка преобразования строкового значения из SDBL строки " + СтрокаПоля.ЗначениеSDBL);
|
|
||||||
КонецПопытки;
|
|
||||||
СтрокаПоля.Значение = ЗначениеСтроки;
|
|
||||||
СтрокаПоля.ТипЗначения = ТипЗнч(СтрокаПоля.Значение);
|
|
||||||
ИначеЕсли Вхождение.SubMatches(6) <> Неопределено Тогда
|
|
||||||
// Диапазон
|
|
||||||
Если Вхождение.SubMatches(7) <> Неопределено Тогда
|
|
||||||
СтрокаПоля.ЗначениеС = Число(Вхождение.SubMatches(7));
|
|
||||||
СтрокаПоля.ТипЗначения = ТипЗнч(СтрокаПоля.ЗначениеС);
|
|
||||||
ИначеЕсли Вхождение.SubMatches(8) <> Неопределено Тогда
|
|
||||||
СтрокаПоля.ЗначениеС = Дата(Вхождение.SubMatches(8));
|
|
||||||
СтрокаПоля.ТипЗначения = ТипЗнч(СтрокаПоля.ЗначениеС);
|
|
||||||
Иначе
|
|
||||||
СтрокаПоля.ЗначениеC = "<+>";
|
|
||||||
КонецЕсли;
|
|
||||||
Если Вхождение.SubMatches(10) <> Неопределено Тогда
|
|
||||||
СтрокаПоля.ЗначениеПо = Число(Вхождение.SubMatches(10));
|
|
||||||
СтрокаПоля.ТипЗначения = ТипЗнч(СтрокаПоля.ЗначениеПо);
|
|
||||||
ИначеЕсли Вхождение.SubMatches(11) <> Неопределено Тогда
|
|
||||||
СтрокаПоля.ЗначениеПо = Дата(Вхождение.SubMatches(11));
|
|
||||||
СтрокаПоля.ТипЗначения = ТипЗнч(СтрокаПоля.ЗначениеПо);
|
|
||||||
Иначе
|
|
||||||
СтрокаПоля.ЗначениеПо = "<+>";
|
|
||||||
КонецЕсли;
|
|
||||||
КонецЕсли;
|
|
||||||
КонецЦикла;
|
|
||||||
ТаблицаПолейЭлементаБлокировки.Сортировать("ПолеМета");
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура БлокировавшиеСоединенияПриАктивизацииСтроки(Элемент)
|
|
||||||
|
|
||||||
ирОбщий.ТабличноеПолеПриАктивизацииСтрокиЛкс(ЭтаФорма, Элемент);
|
|
||||||
ВозможныеБлокираторы.Очистить();
|
|
||||||
Если Элемент.ТекущаяСтрока = Неопределено Тогда
|
|
||||||
Возврат;
|
|
||||||
КонецЕсли;
|
|
||||||
Если Не ЗначениеЗаполнено(Элемент.ТекущаяСтрока.Сеанс) Тогда
|
|
||||||
// Свойство WaitConnections для события TLOCK содержит номер единственного ожидаемого соединения
|
|
||||||
// https://partners.v8.1c.ru/forum/t/1326446/m/1326446
|
|
||||||
|
|
||||||
ВременныйПостроительЗапроса = Новый ПостроительЗапроса;
|
|
||||||
ВременныйПостроительЗапроса.ИсточникДанных = Новый ОписаниеИсточникаДанных(ТаблицаЖурнала);
|
|
||||||
ВременныйПостроительЗапроса.Отбор.Добавить("Инфобаза").Установить(Инфобаза);
|
|
||||||
ВременныйПостроительЗапроса.Отбор.Добавить("Событие").Установить("SDBL");
|
|
||||||
ВременныйПостроительЗапроса.Отбор.Добавить("TCPСоединение").Установить(Элемент.ТекущаяСтрока.TCPСоединение);
|
|
||||||
ЭлементОтбораМоментВремени = ВременныйПостроительЗапроса.Отбор.Добавить("МоментВремени");
|
|
||||||
ЭлементОтбораМоментВремени.Использование = Истина;
|
|
||||||
ЭлементОтбораДействие = ВременныйПостроительЗапроса.Отбор.Добавить("Действие");
|
|
||||||
|
|
||||||
// Ищем начало транзакции
|
|
||||||
ЭлементОтбораМоментВремени.ВидСравнения = ВидСравнения.МеньшеИлиРавно;
|
|
||||||
ЭлементОтбораМоментВремени.Значение = МоментВремениНачала;
|
|
||||||
ЭлементОтбораДействие.Установить("BeginTransaction");
|
|
||||||
ВременныйПостроительЗапроса.Порядок.Установить("МоментВремени Убыв");
|
|
||||||
НайденныеНачала = ВременныйПостроительЗапроса.Результат.Выгрузить();
|
|
||||||
Если НайденныеНачала.Количество() > 0 Тогда
|
|
||||||
Элемент.ТекущаяСтрока.НачалоТранзакции = НайденныеНачала[0].МоментВремени;
|
|
||||||
КонецЕсли;
|
|
||||||
Если ЗначениеЗаполнено(Элемент.ТекущаяСтрока.НачалоТранзакции) Тогда
|
|
||||||
Элемент.ТекущаяСтрока.Возраст = РазностьМоментовВремени(МоментВремениНачала, Элемент.ТекущаяСтрока.НачалоТранзакции) / 1000;
|
|
||||||
КонецЕсли;
|
|
||||||
Если ТаблицаЖурнала.Найти("BeginTransaction", "Действие") = Неопределено Тогда
|
|
||||||
Сообщить("В таблице журнала отсутствуют события начала транзакций (Действие=BeginTransaction).", СтатусСообщения.Внимание);
|
|
||||||
КонецЕсли;
|
|
||||||
Если ТаблицаЖурнала.Найти("CommitTransaction", "Действие") = Неопределено Тогда
|
|
||||||
Сообщить("В таблице журнала отсутствуют события окончания транзакций (Действие=CommitTransaction,RollbackTransaction).");
|
|
||||||
КонецЕсли;
|
|
||||||
|
|
||||||
// https://partners.v8.1c.ru/forum/topic/1326457
|
|
||||||
// Ищем конец транзакции
|
|
||||||
ЭлементОтбораМоментВремени.ВидСравнения = ВидСравнения.БольшеИлиРавно;
|
|
||||||
ЭлементОтбораМоментВремени.Значение = МоментВремениНачала;
|
|
||||||
ЭлементОтбораДействие.ВидСравнения = ВидСравнения.ВСписке;
|
|
||||||
ЭлементОтбораДействие.Использование = Истина;
|
|
||||||
СписокДействий = Новый СписокЗначений;
|
|
||||||
СписокДействий.Добавить("BeginTransaction"); // если собирали только BeginTransaction
|
|
||||||
СписокДействий.Добавить("CommitTransaction");
|
|
||||||
СписокДействий.Добавить("RollbackTransaction");
|
|
||||||
ЭлементОтбораДействие.Значение = СписокДействий;;
|
|
||||||
ВременныйПостроительЗапроса.Порядок.Установить("МоментВремени Возр");
|
|
||||||
НайденныеКонцы = ВременныйПостроительЗапроса.Результат.Выгрузить();
|
|
||||||
Если НайденныеКонцы.Количество() > 0 Тогда
|
|
||||||
Элемент.ТекущаяСтрока.КонецТранзакции = НайденныеКонцы[0].МоментВремени;
|
|
||||||
Элемент.ТекущаяСтрока.ПолнаяДлительность = РазностьМоментовВремени(Элемент.ТекущаяСтрока.КонецТранзакции, Элемент.ТекущаяСтрока.НачалоТранзакции) / 1000;
|
|
||||||
Иначе
|
|
||||||
Элемент.ТекущаяСтрока.ПолнаяДлительность = "?";
|
|
||||||
КонецЕсли;
|
|
||||||
КонецЕсли;
|
|
||||||
|
|
||||||
ВременныйПостроительЗапроса = Новый ПостроительЗапроса;
|
|
||||||
ВременныйПостроительЗапроса.ИсточникДанных = Новый ОписаниеИсточникаДанных(ТаблицаЖурнала);
|
|
||||||
ВременныйПостроительЗапроса.Отбор.Добавить("Инфобаза").Установить(Инфобаза);
|
|
||||||
ВременныйПостроительЗапроса.Отбор.Добавить("Событие").Установить("TLOCK");
|
|
||||||
ВременныйПостроительЗапроса.Отбор.Добавить("TCPСоединение").Установить(Элемент.ТекущаяСтрока.TCPСоединение);
|
|
||||||
Если Найти(Пространства, ",") = 0 Тогда
|
|
||||||
ЭлементОтбораПространства = ВременныйПостроительЗапроса.Отбор.Добавить("Regions");
|
|
||||||
ЭлементОтбораПространства.Установить(Пространства);
|
|
||||||
ЭлементОтбораПространства.ВидСравнения = ВидСравнения.Содержит;
|
|
||||||
КонецЕсли;
|
|
||||||
ВременныйПостроительЗапроса.Порядок.Установить("МоментВремени Возр");
|
|
||||||
ЭлементОтбораМоментВремени = ВременныйПостроительЗапроса.Отбор.Добавить("МоментВремени");
|
|
||||||
ЭлементОтбораМоментВремени.Использование = Истина;
|
|
||||||
//Если Элемент.ТекущаяСтрока.Порядок = 1 Тогда
|
|
||||||
// МоментВремениКонцаБлокираторов = МоментВремениНачала;
|
|
||||||
//Иначе
|
|
||||||
// МоментВремениКонцаБлокираторов = МоментВремени;
|
|
||||||
//КонецЕсли;
|
|
||||||
//Если Истина
|
|
||||||
// И ЗначениеЗаполнено(Элемент.ТекущаяСтрока.КонецТранзакции)
|
|
||||||
// И ЗначениеЗаполнено(Элемент.ТекущаяСтрока.НачалоТранзакции)
|
|
||||||
//Тогда
|
|
||||||
// ЭлементОтбораМоментВремени.ВидСравнения = ВидСравнения.ИнтервалВключаяГраницы;
|
|
||||||
// ЭлементОтбораМоментВремени.ЗначениеС = Элемент.ТекущаяСтрока.НачалоТранзакции;
|
|
||||||
// ЭлементОтбораМоментВремени.ЗначениеПо = Элемент.ТекущаяСтрока.КонецТранзакции;
|
|
||||||
//Иначе
|
|
||||||
Если ЗначениеЗаполнено(Элемент.ТекущаяСтрока.НачалоТранзакции) Тогда
|
|
||||||
ЭлементОтбораМоментВремени.ВидСравнения = ВидСравнения.ИнтервалВключаяГраницы;
|
|
||||||
ЭлементОтбораМоментВремени.ЗначениеС = Элемент.ТекущаяСтрока.НачалоТранзакции;
|
|
||||||
ЭлементОтбораМоментВремени.ЗначениеПо = МоментВремени;
|
|
||||||
Если ЗначениеЗаполнено(Элемент.ТекущаяСтрока.КонецТранзакции) Тогда
|
|
||||||
ЭлементОтбораМоментВремени.ВидСравнения = ВидСравнения.МеньшеИлиРавно;
|
|
||||||
ЭлементОтбораМоментВремени.Значение = Элемент.ТекущаяСтрока.КонецТранзакции;
|
|
||||||
КонецЕсли;
|
|
||||||
Иначе
|
|
||||||
ЭлементОтбораМоментВремени.ВидСравнения = ВидСравнения.МеньшеИлиРавно;
|
|
||||||
ЭлементОтбораМоментВремени.Значение = МоментВремени;
|
|
||||||
КонецЕсли;
|
|
||||||
лВозможныеБлокираторы = ВременныйПостроительЗапроса.Результат.Выгрузить();
|
|
||||||
Если лВозможныеБлокираторы.Количество() > 0 Тогда
|
|
||||||
Для Каждого лВозможныйБлокиратор Из лВозможныеБлокираторы Цикл
|
|
||||||
ЗаполнитьСвойстваСИменамиМетаданных(лВозможныйБлокиратор);
|
|
||||||
КонецЦикла;
|
|
||||||
ПоследнийВозможныйБлокиратор = лВозможныеБлокираторы[лВозможныеБлокираторы.Количество() - 1];
|
|
||||||
Элемент.ТекущаяСтрока.Сеанс = ПоследнийВозможныйБлокиратор.Сеанс;
|
|
||||||
Элемент.ТекущаяСтрока.Соединение = ПоследнийВозможныйБлокиратор.Соединение_;
|
|
||||||
Элемент.ТекущаяСтрока.Пользователь = ПоследнийВозможныйБлокиратор.Пользователь;
|
|
||||||
// На случай, если начала транзакции не нашли и номер соединения был использован разными сеансами
|
|
||||||
ирОбщий.ЗагрузитьВТаблицуЗначенийЛкс(лВозможныеБлокираторы.Скопировать(Новый Структура("Сеанс", ПоследнийВозможныйБлокиратор.Сеанс)), ВозможныеБлокираторы);
|
|
||||||
ЭтаФорма.КоличествоВозможныхБлокираторов = ВозможныеБлокираторы.Количество();
|
|
||||||
RegExp = мПлатформа.RegExp;
|
|
||||||
RegExp.Global = Истина;
|
|
||||||
RegExp.Pattern = ШаблонОбласти;
|
|
||||||
Индикатор = ирОбщий.ПолучитьИндикаторПроцессаЛкс(ВозможныеБлокираторы.Количество(), "Вычисление количества областей");
|
|
||||||
Для Каждого СтрокаБлокиратора Из ВозможныеБлокираторы Цикл
|
|
||||||
ирОбщий.ОбработатьИндикаторЛкс(Индикатор);
|
|
||||||
Вхождения = RegExp.НайтиВхождения(СтрокаБлокиратора.Locks);
|
|
||||||
СтрокаБлокиратора.Количество = Вхождения.Количество();
|
|
||||||
СтрокаБлокиратора.Возраст = РазностьМоментовВремени(МоментВремениНачала, СтрокаБлокиратора.МоментВремени) / 1000;
|
|
||||||
КонецЦикла;
|
|
||||||
ирОбщий.ОсвободитьИндикаторПроцессаЛкс();
|
|
||||||
ЭлементыФормы.ВозможныеБлокираторы.ТекущаяСтрока = ВозможныеБлокираторы[0];
|
|
||||||
КонецЕсли;
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ОткрытьНажатие(Элемент)
|
|
||||||
|
|
||||||
ФормаСобытия = ПолучитьФорму("Событие", , МоментВремени);
|
|
||||||
ФормаСобытия.Открыть();
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ТаблицаЖурналаВыбор(Элемент, ВыбраннаяСтрока, Колонка, СтандартнаяОбработка)
|
|
||||||
|
|
||||||
ФормаСобытия = ПолучитьФорму("Событие", ВладелецФормы, ВыбраннаяСтрока.МоментВремени);
|
|
||||||
ФормаСобытия.Открыть();
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ТаблицаЖурналаПриАктивизацииСтроки(Элемент)
|
|
||||||
|
|
||||||
ирОбщий.ТабличноеПолеПриАктивизацииСтрокиЛкс(ЭтаФорма, Элемент);
|
|
||||||
Если Элемент.ТекущаяСтрока = Неопределено Тогда
|
|
||||||
Возврат;
|
|
||||||
КонецЕсли;
|
|
||||||
//Если Элемент.ТекущаяСтрока.LocksМета = РезультатПереводаСлишкомБольшогоТекста() Тогда
|
|
||||||
// Элемент.ТекущаяСтрока.LocksМета = ПеревестиТекстБДВТерминыМетаданных(Элемент.ТекущаяСтрока.Locks, , , ,, 0);
|
|
||||||
//КонецЕсли;
|
|
||||||
ОписаниеБлокировкиМета = ПолучитьОписаниеБлокировкиМета(Элемент.ТекущаяСтрока);
|
|
||||||
ЗагрузитьОбластиБлокировки(ОбластиБлокировкиБлокиратора, Элемент.ТекущаяСтрока.Locks, ОписаниеБлокировкиМета);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ОбластиБлокировкиБлокиратораПриАктивизацииСтроки(Элемент)
|
|
||||||
|
|
||||||
Если Элемент.ТекущаяСтрока = Неопределено Тогда
|
|
||||||
Возврат;
|
|
||||||
КонецЕсли;
|
|
||||||
ПоляОбластиБлокировкиБлокиратора.Очистить();
|
|
||||||
ЗагрузитьПоляЭлементаБлокировки(ПоляОбластиБлокировкиБлокиратора, Элемент.ТекущаяСтрока.Область, Элемент.ТекущаяСтрока.ОбластьМета);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ОбластиБлокировкиПриАктивизацииСтроки(Элемент)
|
|
||||||
|
|
||||||
Если Элемент.ТекущаяСтрока = Неопределено Тогда
|
|
||||||
Возврат;
|
|
||||||
КонецЕсли;
|
|
||||||
ЗагрузитьПоляЭлементаБлокировки(ПоляОбластиБлокировки, Элемент.ТекущаяСтрока.Область, Элемент.ТекущаяСтрока.ОбластьМета);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ПоляОбластиБлокировкиВыбор(Элемент, ВыбраннаяСтрока, Колонка, СтандартнаяОбработка)
|
|
||||||
|
|
||||||
Если Колонка.Имя = "Значение" Тогда
|
|
||||||
СтандартнаяОбработка = Ложь;
|
|
||||||
ОткрытьЗначение(ВыбраннаяСтрока.Значение);
|
|
||||||
КонецЕсли;
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ПоляОбластиБлокировкиПриВыводеСтроки(Элемент, ОформлениеСтроки, ДанныеСтроки) Экспорт
|
|
||||||
|
|
||||||
Если ЗначениеЗаполнено(ДанныеСтроки.ЗначениеSDBL) Тогда
|
|
||||||
ОформлениеСтроки.Ячейки.ЗначениеС.Видимость = Ложь;
|
|
||||||
ОформлениеСтроки.Ячейки.ЗначениеПо.Видимость = Ложь;
|
|
||||||
Иначе
|
|
||||||
ОформлениеСтроки.Ячейки.Значение.Видимость = Ложь;
|
|
||||||
ОформлениеСтроки.Ячейки.ЗначениеSDBL.Видимость = Ложь;
|
|
||||||
КонецЕсли;
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура КлсКомандаНажатие(Кнопка) Экспорт
|
|
||||||
|
|
||||||
ирОбщий.УниверсальнаяКомандаФормыЛкс(ЭтаФорма, Кнопка);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ОбработчикОжиданияСПараметрамиЛкс() Экспорт
|
|
||||||
|
|
||||||
ирОбщий.ОбработчикОжиданияСПараметрамиЛкс();
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура КоманднаяПанель1Сравнить(Кнопка)
|
|
||||||
|
|
||||||
ВыводБезОформления = Ложь;
|
|
||||||
СравниваемыйДокумент1 = ирОбщий.ВывестиСтрокиТабличногоПоляСНастройкойЛкс(ЭлементыФормы.ОбластиБлокировки, ВыводБезОформления);
|
|
||||||
СравниваемыйДокумент2 = ирОбщий.ВывестиСтрокиТабличногоПоляСНастройкойЛкс(ЭлементыФормы.ОбластиБлокировкиБлокиратора, ВыводБезОформления);
|
|
||||||
ирОбщий.СравнитьЗначенияВФормеЛкс(СравниваемыйДокумент1, СравниваемыйДокумент2, , "Заблокированный", "Блокиратор",, Ложь);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ОбластиБлокировкиПриВыводеСтроки(Элемент, ОформлениеСтроки, ДанныеСтроки) Экспорт
|
|
||||||
|
|
||||||
ирОбщий.ТабличноеПолеПриВыводеСтрокиЛкс(ЭтаФорма, Элемент, ОформлениеСтроки, ДанныеСтроки);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ОбластиБлокировкиБлокиратораПриВыводеСтроки(Элемент, ОформлениеСтроки, ДанныеСтроки) Экспорт
|
|
||||||
|
|
||||||
ирОбщий.ТабличноеПолеПриВыводеСтрокиЛкс(ЭтаФорма, Элемент, ОформлениеСтроки, ДанныеСтроки);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ВозможныеБлокираторыПриВыводеСтроки(Элемент, ОформлениеСтроки, ДанныеСтроки) Экспорт
|
|
||||||
|
|
||||||
ирОбщий.ТабличноеПолеПриВыводеСтрокиЛкс(ЭтаФорма, Элемент, ОформлениеСтроки, ДанныеСтроки);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура БлокировавшиеСоединенияПриВыводеСтроки(Элемент, ОформлениеСтроки, ДанныеСтроки) Экспорт
|
|
||||||
|
|
||||||
ирОбщий.ТабличноеПолеПриВыводеСтрокиЛкс(ЭтаФорма, Элемент, ОформлениеСтроки, ДанныеСтроки);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ВнешнееСобытие(Источник, Событие, Данные) Экспорт
|
|
||||||
|
|
||||||
ирОбщий.Форма_ВнешнееСобытиеЛкс(ЭтаФорма, Источник, Событие, Данные);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ТабличноеПолеПриПолученииДанных(Элемент, ОформленияСтрок) Экспорт
|
|
||||||
|
|
||||||
ирОбщий.ТабличноеПолеПриПолученииДанныхЛкс(ЭтаФорма, Элемент, ОформленияСтрок);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ПриЗакрытии()
|
|
||||||
|
|
||||||
ирОбщий.Форма_ПриЗакрытииЛкс(ЭтаФорма);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ОбработкаОповещения(ИмяСобытия, Параметр, Источник) Экспорт
|
|
||||||
|
|
||||||
ирОбщий.Форма_ОбработкаОповещенияЛкс(ЭтаФорма, ИмяСобытия, Параметр, Источник);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
ирОбщий.ИнициироватьФормуЛкс(ЭтаФорма, "Обработка.ирАнализТехножурнала.Форма.Блокировка1С");
|
|
||||||
шИмя = "[" + мПлатформа.шБуква + "\d]+";
|
|
||||||
ШаблонПоля = "(" + шИмя + ")=(?:(\d+\:" + шИмя + ")|(-?\d+)|T""(\d+)""|(" + шИмя + ")|(""(?:(?:"""")*|[^""])*"")|(\[(?:(-?\d+)|T""(\d+)""|(\+))\:(?:(-?\d+)|T""(\d+)""|(\+))\]))";
|
|
||||||
ШаблонОбласти = "((?:\s+" + ШаблонПоля + ")+)\s*";
|
|
||||||
ШаблонЭлемента = "\s*(" + шИмя + "(?:\." + шИмя + ")+)\s+(" + шИмя + ")(" + ШаблонОбласти + "(,\s*" + ШаблонОбласти + ")*)?(?:,|$)";
|
|
||||||
File diff suppressed because it is too large
Load Diff
Binary file not shown.
|
|
@ -1,245 +0,0 @@
|
||||||
Процедура ПриОткрытии()
|
|
||||||
|
|
||||||
Если ВладелецФормы = Неопределено Тогда
|
|
||||||
Возврат;
|
|
||||||
КонецЕсли;
|
|
||||||
ирОбщий.Форма_ПриОткрытииЛкс(ЭтаФорма);
|
|
||||||
ТаблицаЖурнала = ВладелецФормы.ТаблицаЖурнала;
|
|
||||||
СтрокаСобытияБлокировки = ЭтаФорма.КлючУникальности;
|
|
||||||
Если СтрокаСобытияБлокировки = Неопределено Тогда
|
|
||||||
Возврат;
|
|
||||||
КонецЕсли;
|
|
||||||
#Если Сервер И Не Сервер Тогда
|
|
||||||
СтрокаСобытияБлокировки = Обработки.ирАнализТехножурнала.Создать().ТаблицаЖурнала.Добавить();
|
|
||||||
#КонецЕсли
|
|
||||||
ЭтаФорма.Заголовок = ЭтаФорма.Заголовок + " - " + Формат(СтрокаСобытияБлокировки.МоментВремени, "ЧГ=");
|
|
||||||
СтрокаДерева = ДеревоОжиданий.Строки.Добавить();
|
|
||||||
ЗаполнитьСвойстваСтрокиДерева(СтрокаДерева, СтрокаСобытияБлокировки);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ЗаполнитьСвойстваСтрокиДерева(Знач СтрокаДерева, Знач СтрокаСобытияБлокировки, РодительЕстьЖертва = Неопределено)
|
|
||||||
|
|
||||||
ЗаполнитьЗначенияСвойств(СтрокаДерева, СтрокаСобытияБлокировки);
|
|
||||||
СтрокаДерева.ЖертваВремя = СтрокаСобытияБлокировки.lkpto;
|
|
||||||
СтрокаДерева.Соединение1С = СтрокаСобытияБлокировки.Соединение_;
|
|
||||||
СтрокаДерева.Длительность = СтрокаСобытияБлокировки.Длительность / 1000;
|
|
||||||
СтрокаДерева.ВиновникВремя = СтрокаСобытияБлокировки.lkato;
|
|
||||||
Если СтрокаДерева.Уровень() = 2 Тогда
|
|
||||||
Возврат;
|
|
||||||
КонецЕсли;
|
|
||||||
Если РодительЕстьЖертва = Неопределено Тогда
|
|
||||||
Если СтрокаСобытияБлокировки.lka Тогда
|
|
||||||
ДобавитьДочерние(СтрокаДерева, СтрокаСобытияБлокировки.lkaid, Ложь);
|
|
||||||
КонецЕсли;
|
|
||||||
Если СтрокаСобытияБлокировки.lkp Тогда
|
|
||||||
ДобавитьДочерние(СтрокаДерева, СтрокаСобытияБлокировки.lkpid, Истина);
|
|
||||||
КонецЕсли;
|
|
||||||
Иначе
|
|
||||||
Если Истина
|
|
||||||
И СтрокаСобытияБлокировки.lkp
|
|
||||||
И РодительЕстьЖертва
|
|
||||||
Тогда
|
|
||||||
ДобавитьДочерние(СтрокаДерева, СтрокаСобытияБлокировки.lkpid, РодительЕстьЖертва);
|
|
||||||
КонецЕсли;
|
|
||||||
Если Истина
|
|
||||||
И СтрокаСобытияБлокировки.lka
|
|
||||||
И Не РодительЕстьЖертва
|
|
||||||
Тогда
|
|
||||||
ДобавитьДочерние(СтрокаДерева, СтрокаСобытияБлокировки.lkaid, РодительЕстьЖертва);
|
|
||||||
КонецЕсли;
|
|
||||||
КонецЕсли;
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ДобавитьДочерние(РодительскаяСтрокаДерева, НомераЗапросов, РодительЕстьЖертва = Истина)
|
|
||||||
|
|
||||||
#Если Сервер И Не Сервер Тогда
|
|
||||||
РодительскаяСтрокаДерева = ДеревоОжиданий.Строки.Добавить();
|
|
||||||
ТаблицаЖурнала = Обработки.ирАнализТехножурнала.Создать().ТаблицаЖурнала;
|
|
||||||
#КонецЕсли
|
|
||||||
Для Каждого НомерЗапроса Из ирОбщий.СтрРазделитьЛкс(НомераЗапросов, ",", Истина) Цикл
|
|
||||||
ВременныйПостроительЗапроса = Новый ПостроительЗапроса;
|
|
||||||
ВременныйПостроительЗапроса.ИсточникДанных = Новый ОписаниеИсточникаДанных(ТаблицаЖурнала);
|
|
||||||
Если РодительЕстьЖертва Тогда
|
|
||||||
ИмяПоляСвязи = "lkaid";
|
|
||||||
Иначе
|
|
||||||
ИмяПоляСвязи = "lkpid";
|
|
||||||
КонецЕсли;
|
|
||||||
ОтборСвязи = ВременныйПостроительЗапроса.Отбор.Добавить(ИмяПоляСвязи);
|
|
||||||
ОтборСвязи.Использование = Истина;
|
|
||||||
ОтборСвязи.ВидСравнения = ВидСравнения.Содержит;
|
|
||||||
ОтборСвязи.Значение = НомерЗапроса;
|
|
||||||
//ВременныйПостроительЗапроса.Отбор.Добавить("Инфобаза").Установить(Инфобаза);
|
|
||||||
//ВременныйПостроительЗапроса.Отбор.Добавить("ИнфобазаСУБД").Установить(Инфобаза);
|
|
||||||
ВременныйПостроительЗапроса.Порядок.Установить("МоментВремени Возр");
|
|
||||||
|
|
||||||
СтрокиЖурнала = ВременныйПостроительЗапроса.Результат.Выгрузить();
|
|
||||||
Для Каждого СтрокаСобытияБлокировки Из СтрокиЖурнала Цикл
|
|
||||||
Если Ложь
|
|
||||||
Или (Истина
|
|
||||||
И СтрокаСобытияБлокировки.Дата <= РодительскаяСтрокаДерева.Дата
|
|
||||||
И СтрокаСобытияБлокировки.Дата >= РодительскаяСтрокаДерева.ДатаНачала)
|
|
||||||
Или (Истина
|
|
||||||
И СтрокаСобытияБлокировки.ДатаНачала <= РодительскаяСтрокаДерева.Дата
|
|
||||||
И СтрокаСобытияБлокировки.ДатаНачала >= РодительскаяСтрокаДерева.ДатаНачала)
|
|
||||||
Или (Истина
|
|
||||||
И СтрокаСобытияБлокировки.Дата <= РодительскаяСтрокаДерева.Дата
|
|
||||||
И СтрокаСобытияБлокировки.Дата >= РодительскаяСтрокаДерева.ДатаНачала
|
|
||||||
И СтрокаСобытияБлокировки.ДатаНачала <= РодительскаяСтрокаДерева.Дата
|
|
||||||
И СтрокаСобытияБлокировки.ДатаНачала >= РодительскаяСтрокаДерева.ДатаНачала)
|
|
||||||
Или (Истина
|
|
||||||
И СтрокаСобытияБлокировки.Дата >= РодительскаяСтрокаДерева.Дата
|
|
||||||
И СтрокаСобытияБлокировки.Дата <= РодительскаяСтрокаДерева.ДатаНачала
|
|
||||||
И СтрокаСобытияБлокировки.ДатаНачала >= РодительскаяСтрокаДерева.Дата
|
|
||||||
И СтрокаСобытияБлокировки.ДатаНачала <= РодительскаяСтрокаДерева.ДатаНачала)
|
|
||||||
Тогда
|
|
||||||
СтрокаДерева = РодительскаяСтрокаДерева.Строки.Добавить();
|
|
||||||
СтрокаДерева.РодительЕстьЖертва = РодительЕстьЖертва;
|
|
||||||
ЗаполнитьСвойстваСтрокиДерева(СтрокаДерева, СтрокаСобытияБлокировки, РодительЕстьЖертва);
|
|
||||||
КонецЕсли;
|
|
||||||
КонецЦикла;
|
|
||||||
КонецЦикла;
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура КоманднаяПанель1НайтиВЖурнале(Кнопка)
|
|
||||||
|
|
||||||
Если ВладелецФормы <> Неопределено Тогда
|
|
||||||
Если ЭлементыФормы.ДеревоОжиданий.ТекущаяСтрока = Неопределено Тогда
|
|
||||||
Возврат;
|
|
||||||
КонецЕсли;
|
|
||||||
ВыбраннаяСтрока = ЭтотОбъект.ТаблицаЖурнала.Найти(ЭлементыФормы.ДеревоОжиданий.ТекущаяСтрока.МоментВремени, "МоментВремени");
|
|
||||||
Если ВыбраннаяСтрока = Неопределено Тогда
|
|
||||||
Возврат;
|
|
||||||
КонецЕсли;
|
|
||||||
ВладелецФормы.ЭлементыФормы.ТаблицаЖурнала.ТекущаяСтрока = ВыбраннаяСтрока;
|
|
||||||
Если ВладелецФормы.ЭлементыФормы.ТаблицаЖурнала.ТекущаяСтрока <> ВыбраннаяСтрока Тогда
|
|
||||||
Сообщить("Невозможно активизировать строку события в журнале при текущем отборе");
|
|
||||||
КонецЕсли;
|
|
||||||
ирОбщий.Форма_АктивироватьОткрытьЛкс(ВладелецФормы);
|
|
||||||
КонецЕсли;
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ДействияФормыСобытие(Кнопка = Неопределено)
|
|
||||||
|
|
||||||
Если ЭлементыФормы.ДеревоОжиданий.ТекущаяСтрока = Неопределено Тогда
|
|
||||||
Возврат;
|
|
||||||
КонецЕсли;
|
|
||||||
ФормаСобытия = ПолучитьФорму("Событие", , ЭлементыФормы.ДеревоОжиданий.ТекущаяСтрока.МоментВремени);
|
|
||||||
ФормаСобытия.Открыть();
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ОбновитьПанельТексты()
|
|
||||||
|
|
||||||
ИмяКолонки = ТекущееСвойствоНаПанели();
|
|
||||||
ЭлементыФормы.ТекстРодительскойСтроки.УстановитьТекст("");
|
|
||||||
ЭлементыФормы.ТекстВыбраннойСтроки.УстановитьТекст("");
|
|
||||||
ТекущаяСтрока = ЭлементыФормы.ДеревоОжиданий.ТекущаяСтрока;
|
|
||||||
Если Истина
|
|
||||||
И ТекущаяСтрока <> Неопределено
|
|
||||||
И ТекущаяСтрока.Родитель = Неопределено
|
|
||||||
Тогда
|
|
||||||
ЭлементыФормы.ТекстРодительскойСтроки.УстановитьТекст(ТекущаяСтрока[ИмяКолонки]);
|
|
||||||
ИначеЕсли Истина
|
|
||||||
И ТекущаяСтрока <> Неопределено
|
|
||||||
И ТекущаяСтрока.Родитель <> Неопределено
|
|
||||||
Тогда
|
|
||||||
ЭлементыФормы.ТекстРодительскойСтроки.УстановитьТекст(ТекущаяСтрока.Родитель[ИмяКолонки]);
|
|
||||||
ЭлементыФормы.ТекстВыбраннойСтроки.УстановитьТекст(ТекущаяСтрока[ИмяКолонки]);
|
|
||||||
КонецЕсли;
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Функция ТекущееСвойствоНаПанели()
|
|
||||||
|
|
||||||
Перем ИмяКолонки;
|
|
||||||
|
|
||||||
Если ЭлементыФормы.ПанельТексты.ТекущаяСтраница = ЭлементыФормы.ПанельТексты.Страницы.ТекстСУБД Тогда
|
|
||||||
ИмяКолонки = "ТекстСУБД";
|
|
||||||
ИначеЕсли ЭлементыФормы.ПанельТексты.ТекущаяСтраница = ЭлементыФормы.ПанельТексты.Страницы.ТекстСУБДМета Тогда
|
|
||||||
ИмяКолонки = "ТекстСУБДМета";
|
|
||||||
ИначеЕсли ЭлементыФормы.ПанельТексты.ТекущаяСтраница = ЭлементыФормы.ПанельТексты.Страницы.Контекст Тогда
|
|
||||||
ИмяКолонки = "Контекст";
|
|
||||||
КонецЕсли;
|
|
||||||
Возврат ИмяКолонки;
|
|
||||||
|
|
||||||
КонецФункции
|
|
||||||
|
|
||||||
Процедура ДеревоОжиданийВыбор(Элемент, ВыбраннаяСтрока, Колонка, СтандартнаяОбработка)
|
|
||||||
|
|
||||||
СтандартнаяОбработка = Ложь;
|
|
||||||
ДействияФормыСобытие();
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ДеревоОжиданийПриАктивизацииСтроки(Элемент)
|
|
||||||
|
|
||||||
ирОбщий.ТабличноеПолеПриАктивизацииСтрокиЛкс(ЭтаФорма, Элемент);
|
|
||||||
ОбновитьПанельТексты();
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура КлсКомандаНажатие(Кнопка)
|
|
||||||
|
|
||||||
ирОбщий.ОткрытьСтруктуруФормыЛкс(ЭтаФорма);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ПанельТекстыПриСменеСтраницы(Элемент, ТекущаяСтраница)
|
|
||||||
|
|
||||||
ОбновитьПанельТексты();
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ДеревоОжиданийПриВыводеСтроки(Элемент, ОформлениеСтроки, ДанныеСтроки) Экспорт
|
|
||||||
|
|
||||||
ирОбщий.ТабличноеПолеПриВыводеСтрокиЛкс(ЭтаФорма, Элемент, ОформлениеСтроки, ДанныеСтроки);
|
|
||||||
Если ДанныеСтроки.Родитель = Неопределено Тогда
|
|
||||||
Возврат;
|
|
||||||
КонецЕсли;
|
|
||||||
Если ДанныеСтроки.РодительЕстьЖертва Тогда
|
|
||||||
Картинка = ирКэш.КартинкаПоИмениЛкс("ирВыходящий");
|
|
||||||
ЦветФона = Новый Цвет(240, 240, 255);
|
|
||||||
Иначе
|
|
||||||
Картинка = ирКэш.КартинкаПоИмениЛкс("ирВходящий");
|
|
||||||
ЦветФона = Новый Цвет(240, 255, 240);
|
|
||||||
КонецЕсли;
|
|
||||||
ОформлениеСтроки.Ячейки[0].УстановитьКартинку(Картинка);
|
|
||||||
ОформлениеСтроки.ЦветФона = ЦветФона;
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура СравнитьТекстыНажатие(Элемент)
|
|
||||||
|
|
||||||
ирОбщий.СравнитьЗначенияВФормеЛкс(ЭлементыФормы.ТекстРодительскойСтроки.ПолучитьТекст(), ЭлементыФормы.ТекстВыбраннойСтроки.ПолучитьТекст(),, "Родительское", "Выбранное");
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ВнешнееСобытие(Источник, Событие, Данные) Экспорт
|
|
||||||
|
|
||||||
ирОбщий.Форма_ВнешнееСобытиеЛкс(ЭтаФорма, Источник, Событие, Данные);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ТабличноеПолеПриПолученииДанных(Элемент, ОформленияСтрок) Экспорт
|
|
||||||
|
|
||||||
ирОбщий.ТабличноеПолеПриПолученииДанныхЛкс(ЭтаФорма, Элемент, ОформленияСтрок);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ОбработкаОповещения(ИмяСобытия, Параметр, Источник) Экспорт
|
|
||||||
|
|
||||||
ирОбщий.Форма_ОбработкаОповещенияЛкс(ЭтаФорма, ИмяСобытия, Параметр, Источник);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ПриЗакрытии()
|
|
||||||
|
|
||||||
ирОбщий.Форма_ПриЗакрытииЛкс(ЭтаФорма);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
ирОбщий.ИнициироватьФормуЛкс(ЭтаФорма, "Обработка.ирАнализТехножурнала.Форма.БлокировкаСУБД");
|
|
||||||
File diff suppressed because it is too large
Load Diff
Binary file not shown.
|
|
@ -1,397 +0,0 @@
|
||||||
Перем мСтруктураХраненияСРазмерами;
|
|
||||||
|
|
||||||
Функция СохраняемаяНастройкаФормы(выхНаименование, выхИменаСвойств) Экспорт
|
|
||||||
выхИменаСвойств = "Форма.ПересобратьТекст, Форма.ПереводитьИндексы, Форма.ПереводитьВМета, Форма.ПоказыватьРазмеры";
|
|
||||||
Возврат Неопределено;
|
|
||||||
КонецФункции
|
|
||||||
|
|
||||||
Процедура КоманднаяПанель1КонсольЗапросов(Кнопка)
|
|
||||||
|
|
||||||
Если Не ЗначениеЗаполнено(ЭлементыФормы.Результат.ПолучитьТекст()) Тогда
|
|
||||||
ОбновитьЗапрос();
|
|
||||||
КонецЕсли;
|
|
||||||
ТекстЗапроса = ЭлементыФормы.Результат.ПолучитьТекст();
|
|
||||||
Если Не ЗначениеЗаполнено(ТекстЗапроса) Тогда
|
|
||||||
Возврат;
|
|
||||||
КонецЕсли;
|
|
||||||
Если ЭтоТекстSDBL И ПереводитьВМета Тогда
|
|
||||||
Запрос = Новый Запрос;
|
|
||||||
Запрос.Текст = ТекстЗапроса;
|
|
||||||
Для Каждого СтрокаПараметра Из Параметры Цикл
|
|
||||||
Запрос.Параметры.Вставить(СтрокаПараметра.Имя, СтрокаПараметра.Значение);
|
|
||||||
КонецЦикла;
|
|
||||||
ирОбщий.ОтладитьЛкс(Запрос);
|
|
||||||
Иначе
|
|
||||||
////СоединениеADO = ПодключенияИис.ПолучитьСоединениеADOПоСсылкеИис(Инфобаза.ИнфобазаСУБД,, Ложь);
|
|
||||||
//СоединениеADO = Новый COMОбъект("ADODB.Connection");
|
|
||||||
//ирОбщий.ОтладитьЛкс(СоединениеADO,, ТекстЗапроса);
|
|
||||||
ирОбщий.ОткрытьЗапросСУБДЛкс(ТекстЗапроса,, Параметры);
|
|
||||||
КонецЕсли;
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура КоманднаяПанель1ОбновитьЗапрос(Кнопка)
|
|
||||||
|
|
||||||
ОбновитьЗапрос();
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ОбновитьЗапрос()
|
|
||||||
|
|
||||||
ТипСУБДЛ = ТипСУБД;
|
|
||||||
Если ЭтоТекстSDBL Тогда
|
|
||||||
ТипСУБДЛ = "";
|
|
||||||
КонецЕсли;
|
|
||||||
Индексы.Очистить();
|
|
||||||
СтруктураЗапроса = СтруктураЗапросаИзТекстаБД(ЭлементыФормы.ТекстБД.ПолучитьТекст(), ТипСУБДЛ, ПересобратьТекст, ПереводитьИндексы, ПереводитьВМета,, ВстраиватьПараметры);
|
|
||||||
Граница1 = 0; Граница2 = 0; Граница3 = 0; Граница4 = 0;
|
|
||||||
ЭлементыФормы.Результат.ПолучитьГраницыВыделения(Граница1, Граница2, Граница3, Граница4);
|
|
||||||
ЭлементыФормы.Результат.УстановитьТекст(СтруктураЗапроса.Текст);
|
|
||||||
ЭлементыФормы.Результат.УстановитьГраницыВыделения(Граница1, Граница2, Граница3, Граница4);
|
|
||||||
Если ЗначениеЗаполнено(СтруктураЗапроса.Текст) Тогда
|
|
||||||
ПанельОсновная = ЭлементыФормы.ПанельОсновная;
|
|
||||||
ирОбщий.ПрисвоитьЕслиНеРавноЛкс(ПанельОсновная.ТекущаяСтраница, ПанельОсновная.Страницы.Результат);
|
|
||||||
КонецЕсли;
|
|
||||||
ЭтаФорма.Параметры = СтруктураЗапроса.Параметры;
|
|
||||||
ЭтаФорма.Таблицы.Очистить();
|
|
||||||
ирОбщий.ЗагрузитьВТаблицуЗначенийЛкс(СтруктураЗапроса.Таблицы, ЭтаФорма.Таблицы);
|
|
||||||
мСтруктураХраненияСРазмерами = ирОбщий.СоздатьОбъектПоПолномуИмениМетаданныхЛкс("Обработка.ирСтруктураХраненияБД");
|
|
||||||
#Если Сервер И Не Сервер Тогда
|
|
||||||
мСтруктураХраненияСРазмерами = Обработки.ирСтруктураХраненияБД.Создать();
|
|
||||||
#КонецЕсли
|
|
||||||
мСтруктураХраненияСРазмерами.ПоказыватьСУБД = Не ЭтоТекстSDBL;
|
|
||||||
мСтруктураХраненияСРазмерами.ПоказыватьSDBL = ЭтоТекстSDBL;
|
|
||||||
мСтруктураХраненияСРазмерами.ПоказыватьРазмеры = ПоказыватьРазмеры;
|
|
||||||
Если Таблицы.Количество() > 0 Тогда
|
|
||||||
СтруктураХраненияБД = ирКэш.СтруктураХраненияБДЛкс(Не ЭтоТекстSDBL,, мАдресЧужойСхемыБД);
|
|
||||||
мСтруктураХраненияСРазмерами.ОбновитьТаблицы();
|
|
||||||
Для Каждого СтрокаТаблицыБД Из Таблицы Цикл
|
|
||||||
СтрокаСтруктурыХрания = СтруктураХраненияБД.Найти(СтрокаТаблицыБД.ИмяБД, "КраткоеИмяТаблицыХранения");
|
|
||||||
Если СтрокаСтруктурыХрания <> Неопределено Тогда
|
|
||||||
СтрокаТаблицыБД.ИмяБД = СтрокаСтруктурыХрания.ИмяТаблицыХранения;
|
|
||||||
КонецЕсли;
|
|
||||||
СтрокаСтруктурыХрания = мСтруктураХраненияСРазмерами.Таблицы.Найти(СтрокаТаблицыБД.ИмяБД, "ИмяТаблицыХранения");
|
|
||||||
Если СтрокаСтруктурыХрания <> Неопределено Тогда
|
|
||||||
СтрокаТаблицыБД.КоличествоСтрок = СтрокаСтруктурыХрания.КоличествоСтрок;
|
|
||||||
СтрокаТаблицыБД.ДанныеKB = СтрокаСтруктурыХрания.РазмерДанные;
|
|
||||||
СтрокаТаблицыБД.ИндексыKB = СтрокаСтруктурыХрания.РазмерИндексы;
|
|
||||||
КонецЕсли;
|
|
||||||
КонецЦикла;
|
|
||||||
ИначеЕсли Параметры.Количество() > 0 Тогда
|
|
||||||
ЭлементыФормы.ПанельВерхняя.ТекущаяСтраница = ЭлементыФормы.ПанельВерхняя.Страницы.Параметры;
|
|
||||||
КонецЕсли;
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ПриОткрытии()
|
|
||||||
|
|
||||||
ирОбщий.Форма_ПриОткрытииЛкс(ЭтаФорма);
|
|
||||||
ирОбщий.СоздатьМенеджерСохраненияНастроекФормыЛкс(ЭтаФорма);
|
|
||||||
ЭлементыФормы.Таблицы.Колонки.КоличествоСтрок.Видимость = Не ирКэш.ЛиФайловаяБазаЛкс();
|
|
||||||
ЭтоТекстSDBLПриИзменении();
|
|
||||||
ОбновитьЗапрос();
|
|
||||||
ОбновитьДоступность();
|
|
||||||
ПодключитьОбработчикОжидания("ОбновитьРазмерТекста", 2);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ПанельОсновнаяПриСменеСтраницы(Элемент = Неопределено, ТекущаяСтраница = Неопределено)
|
|
||||||
|
|
||||||
Если Не ЗначениеЗаполнено(ЭлементыФормы.Результат.ПолучитьТекст()) Тогда
|
|
||||||
Если ЭлементыФормы.ПанельОсновная.ТекущаяСтраница = ЭлементыФормы.ПанельОсновная.Страницы.Результат Тогда
|
|
||||||
ОбновитьЗапрос();
|
|
||||||
КонецЕсли;
|
|
||||||
КонецЕсли;
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ПараметрыВыбор(Элемент, ВыбраннаяСтрока, Колонка, СтандартнаяОбработка)
|
|
||||||
|
|
||||||
Если Колонка = Элемент.Колонки.Значение И ЗначениеЗаполнено(ВыбраннаяСтрока.Метаданные) Тогда
|
|
||||||
ОткрытьЗначение(ВыбраннаяСтрока.Значение);
|
|
||||||
Иначе
|
|
||||||
Если Ложь
|
|
||||||
Или Не ЗначениеЗаполнено(ВыбраннаяСтрока.ЗначениеSDBL)
|
|
||||||
Или Не ирОбщий.НайтиПоказатьСтрокуВПолеТекстаЛкс(ЭтаФорма, ЭлементыФормы.Результат, ВыбраннаяСтрока.ЗначениеSDBL, Истина)
|
|
||||||
Тогда
|
|
||||||
ирОбщий.НайтиПоказатьСтрокуВПолеТекстаЛкс(ЭтаФорма, ЭлементыФормы.Результат, ВыбраннаяСтрока.Имя, Истина);
|
|
||||||
КонецЕсли;
|
|
||||||
КонецЕсли;
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ОбновлениеОтображения()
|
|
||||||
|
|
||||||
ирОбщий.Форма_ОбновлениеОтображенияЛкс(ЭтаФорма);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ТаблицыВыбор(Элемент, ВыбраннаяСтрока, Колонка, СтандартнаяОбработка)
|
|
||||||
|
|
||||||
КонтекстноеМенюТаблицНайтиВТексте();
|
|
||||||
СтандартнаяОбработка = Ложь;
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ТипСУБДПриИзменении(Элемент)
|
|
||||||
|
|
||||||
ОбновитьЗапрос();
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура КоманднаяПанель1НовоеОкно(Кнопка)
|
|
||||||
|
|
||||||
Форма = ПолучитьФорму("КонверторТекстаСУБД",, Новый УникальныйИдентификатор);
|
|
||||||
Форма.Открыть();
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ДействияФормыВыполнить(Кнопка)
|
|
||||||
|
|
||||||
ОбновитьЗапрос();
|
|
||||||
//ЭлементыФормы.ПанельОсновная.ТекущаяСтраница = ЭлементыФормы.ПанельОсновная.Страницы.Результат;
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ОбновитьРазмерТекста()
|
|
||||||
|
|
||||||
ЭтаФорма.КоличествоСимволов = СтрДлина(ЭлементыФормы.ТекстБД.ПолучитьТекст());
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ЭтоТекстSDBLПриИзменении(Элемент = Неопределено)
|
|
||||||
|
|
||||||
ЭлементыФормы.ТипСУБД.Доступность = Не ЭтоТекстSDBL;
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура НастроитьТехножурналПоТексту(Кнопка)
|
|
||||||
|
|
||||||
ОткрытьНастройкуТехножурналаДляРегистрацииВыполненияЗапроса(ЭлементыФормы.ТекстБД.ПолучитьТекст(), ЭтоТекстSDBL, ТипСУБД);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Функция ПолучитьТекстДляПоискаВТехножурнале()
|
|
||||||
|
|
||||||
Результат = ЭлементыФормы.ТекстБД.ПолучитьТекст();
|
|
||||||
Если Не ЭтоТекстSDBL Тогда
|
|
||||||
Результат = ПолучитьТекстSQLДляПоискаВТехножурнале(Результат);
|
|
||||||
КонецЕсли;
|
|
||||||
Возврат Результат;
|
|
||||||
|
|
||||||
КонецФункции
|
|
||||||
|
|
||||||
Процедура НайтиВТаблицеТехножурнала(Кнопка)
|
|
||||||
|
|
||||||
Если ЭтоТекстSDBL Тогда
|
|
||||||
ИмяЭлементаОтбора = "ТекстSDBL";
|
|
||||||
Иначе
|
|
||||||
ИмяЭлементаОтбора = "ТекстСУБД";
|
|
||||||
КонецЕсли;
|
|
||||||
ТекстПоиска = ПолучитьТекстДляПоискаВТехножурнале();
|
|
||||||
//ФормаЖурнала = ВладелецФормы;
|
|
||||||
ФормаЖурнала = ПолучитьФорму();
|
|
||||||
ФормаЖурнала.УстановитьРежимИтогов(Ложь);
|
|
||||||
ФормаЖурнала.ЭлементыФормы.ТаблицаЖурнала.ОтборСтрок.Сбросить();
|
|
||||||
ЭлементОтбора = ФормаЖурнала.ЭлементыФормы.ТаблицаЖурнала.ОтборСтрок[ИмяЭлементаОтбора];
|
|
||||||
ЭлементОтбора.ВидСравнения = ВидСравнения.Содержит;
|
|
||||||
ЭлементОтбора.Значение = ТекстПоиска;
|
|
||||||
ЭлементОтбора.Использование = Истина;
|
|
||||||
ФормаЖурнала.Открыть();
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура КлсКомандаНажатие(Кнопка) Экспорт
|
|
||||||
|
|
||||||
ирОбщий.УниверсальнаяКомандаФормыЛкс(ЭтаФорма, Кнопка);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ОбработчикОжиданияСПараметрамиЛкс() Экспорт
|
|
||||||
|
|
||||||
ирОбщий.ОбработчикОжиданияСПараметрамиЛкс();
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ТаблицыПриАктивизацииСтроки(Элемент)
|
|
||||||
|
|
||||||
ирОбщий.ТабличноеПолеПриАктивизацииСтрокиЛкс(ЭтаФорма, Элемент);
|
|
||||||
ТекущаяСтрокаТаблиц = ЭлементыФормы.Таблицы.ТекущаяСтрока;
|
|
||||||
Индексы.Очистить();
|
|
||||||
Если ТекущаяСтрокаТаблиц = Неопределено Тогда
|
|
||||||
Возврат;
|
|
||||||
КонецЕсли;
|
|
||||||
СтруктуруХраненияБД = ирКэш.СтруктураХраненияБДЛкс(Не ЭтоТекстSDBL,, мАдресЧужойСхемыБД);
|
|
||||||
КлючПоиска = Новый Структура("КраткоеИмяТаблицыХранения", НРег(ТекущаяСтрокаТаблиц.ИмяБД));
|
|
||||||
НайденныеСтроки = СтруктуруХраненияБД.НайтиСтроки(КлючПоиска);
|
|
||||||
Если НайденныеСтроки.Количество() > 0 Тогда
|
|
||||||
СтрокаТаблицыХранения = НайденныеСтроки[0];
|
|
||||||
Для Каждого ИндексТаблицыБД Из СтрокаТаблицыХранения.Индексы Цикл
|
|
||||||
СтрокаИндекса = Индексы.Добавить();
|
|
||||||
СтрокаИндекса.ИндексМета = ирОбщий.ПолучитьПредставлениеИндексаХраненияЛкс(ИндексТаблицыБД,, СтрокаТаблицыХранения, Ложь);
|
|
||||||
СтрокаИндекса.ИндексБД = ирОбщий.ПолучитьПредставлениеИндексаХраненияЛкс(ИндексТаблицыБД,, СтрокаТаблицыХранения, Истина);
|
|
||||||
СтрокаИндекса.ИмяХранения = ИндексТаблицыБД.ИмяИндексаХранения;
|
|
||||||
КонецЦикла;
|
|
||||||
Индексы.Сортировать("ИндексМета");
|
|
||||||
КонецЕсли;
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ИндексыВыбор(Элемент, ВыбраннаяСтрока, Колонка, СтандартнаяОбработка)
|
|
||||||
|
|
||||||
ТекущаяСтрокаТаблиц = ЭлементыФормы.Таблицы.ТекущаяСтрока;
|
|
||||||
Если ТекущаяСтрокаТаблиц = Неопределено Тогда
|
|
||||||
Возврат;
|
|
||||||
КонецЕсли;
|
|
||||||
ТекущаяСтрокаИндексов = ЭлементыФормы.Индексы.ТекущаяСтрока;
|
|
||||||
Если ТекущаяСтрокаИндексов = Неопределено Тогда
|
|
||||||
Возврат;
|
|
||||||
КонецЕсли;
|
|
||||||
Форма = мСтруктураХраненияСРазмерами.ПолучитьФорму();
|
|
||||||
Форма.ПараметрИмяТаблицы = ТекущаяСтрокаТаблиц.ИмяМета;
|
|
||||||
Форма.ПараметрИмяИндексаХранения = ТекущаяСтрокаИндексов.ИмяХранения;
|
|
||||||
Форма.ПараметрПоказыватьSDBL = Истина;
|
|
||||||
Форма.ПараметрПоказыватьСУБД = Ложь;
|
|
||||||
Форма.Открыть();
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура КоманднаяПанель1ПоказатьСтруктуруХранения(Кнопка)
|
|
||||||
|
|
||||||
ТекущаяСтрокаТаблиц = ЭлементыФормы.Таблицы.ТекущаяСтрока;
|
|
||||||
Если ТекущаяСтрокаТаблиц = Неопределено Тогда
|
|
||||||
Возврат;
|
|
||||||
КонецЕсли;
|
|
||||||
Форма = мСтруктураХраненияСРазмерами.ПолучитьФорму();
|
|
||||||
Форма.ПараметрИмяТаблицы = ТекущаяСтрокаТаблиц.ИмяМета;
|
|
||||||
Форма.ПараметрПоказыватьSDBL = ЭтоТекстSDBL;
|
|
||||||
Форма.ПараметрПоказыватьСУБД = Не ЭтоТекстSDBL;
|
|
||||||
Форма.Открыть();
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура КонтекстноеМенюТаблицНайтиВТексте(Кнопка = Неопределено)
|
|
||||||
|
|
||||||
ИмяСтраницы = ЭлементыФормы.ПанельОсновная.ТекущаяСтраница.Имя;
|
|
||||||
ТекущаяСтрока = ЭлементыФормы.Таблицы.ТекущаяСтрока;
|
|
||||||
Если ТекущаяСтрока = Неопределено Тогда
|
|
||||||
Возврат;
|
|
||||||
КонецЕсли;
|
|
||||||
Если Не ирОбщий.НайтиПоказатьСтрокуВПолеТекстаЛкс(ЭтаФорма, ЭлементыФормы[ИмяСтраницы], ТекущаяСтрока.ИмяБД, Истина) Тогда
|
|
||||||
ирОбщий.НайтиПоказатьСтрокуВПолеТекстаЛкс(ЭтаФорма, ЭлементыФормы[ИмяСтраницы], ТекущаяСтрока.ИмяМета, Истина);
|
|
||||||
КонецЕсли;
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура СтруктураКоманднойПанелиНажатие(Кнопка)
|
|
||||||
|
|
||||||
ирОбщий.ОткрытьСтруктуруКоманднойПанелиЛкс(ЭтаФорма, Кнопка);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ПереводитьВМетаПриИзменении(Элемент)
|
|
||||||
|
|
||||||
ОбновитьДоступность();
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ОбновитьДоступность()
|
|
||||||
|
|
||||||
ЭлементыФормы.ПереводитьИндексы.Доступность = ПереводитьВМета;
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ПослеВосстановленияЗначений()
|
|
||||||
|
|
||||||
ОбновитьДоступность();
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура КонтекстноеМенюКонстантаНайтиВТексте(Кнопка)
|
|
||||||
|
|
||||||
ИмяСтраницы = ЭлементыФормы.ПанельОсновная.ТекущаяСтраница.Имя;
|
|
||||||
ТекущаяСтрока = ЭлементыФормы.Параметры.ТекущаяСтрока;
|
|
||||||
Если ТекущаяСтрока = Неопределено Тогда
|
|
||||||
Возврат;
|
|
||||||
КонецЕсли;
|
|
||||||
Если Ложь
|
|
||||||
Или Не ЗначениеЗаполнено(ТекущаяСтрока.ЗначениеSDBL)
|
|
||||||
Или Не ирОбщий.НайтиПоказатьСтрокуВПолеТекстаЛкс(ЭтаФорма, ЭлементыФормы[ИмяСтраницы], ТекущаяСтрока.ЗначениеSDBL, Истина)
|
|
||||||
Тогда
|
|
||||||
Если ВстраиватьПараметры Тогда
|
|
||||||
СтрокаПоиска = ТекущаяСтрока.Значение;
|
|
||||||
Иначе
|
|
||||||
СтрокаПоиска = ТекущаяСтрока.Имя;
|
|
||||||
КонецЕсли;
|
|
||||||
ирОбщий.НайтиПоказатьСтрокуВПолеТекстаЛкс(ЭтаФорма, ЭлементыФормы[ИмяСтраницы], СтрокаПоиска, Истина);
|
|
||||||
КонецЕсли;
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ДействияФормыСравнить(Кнопка)
|
|
||||||
|
|
||||||
ирОбщий.СравнитьСодержимоеЭлементаУправленияЛкс(ЭтаФорма, ЭлементыФормы[ЭлементыФормы.ПанельОсновная.ТекущаяСтраница.Имя], "ЯзыкЗапросов");
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ДействияФормыПараметрыСУБД(Кнопка)
|
|
||||||
|
|
||||||
ирОбщий.ОткрытьФормуСоединенияСУБДЛкс();
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ПараметрыПриАктивизацииСтроки(Элемент)
|
|
||||||
|
|
||||||
ирОбщий.ТабличноеПолеПриАктивизацииСтрокиЛкс(ЭтаФорма, Элемент);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ПараметрыПриВыводеСтроки(Элемент, ОформлениеСтроки, ДанныеСтроки) Экспорт
|
|
||||||
|
|
||||||
ирОбщий.ТабличноеПолеПриВыводеСтрокиЛкс(ЭтаФорма, Элемент, ОформлениеСтроки, ДанныеСтроки);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ТаблицыПриВыводеСтроки(Элемент, ОформлениеСтроки, ДанныеСтроки) Экспорт
|
|
||||||
|
|
||||||
ирОбщий.ТабличноеПолеПриВыводеСтрокиЛкс(ЭтаФорма, Элемент, ОформлениеСтроки, ДанныеСтроки);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ВнешнееСобытие(Источник, Событие, Данные) Экспорт
|
|
||||||
|
|
||||||
ирОбщий.Форма_ВнешнееСобытиеЛкс(ЭтаФорма, Источник, Событие, Данные);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ПриЗакрытии()
|
|
||||||
|
|
||||||
ирОбщий.Форма_ПриЗакрытииЛкс(ЭтаФорма);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ТабличноеПолеПриПолученииДанных(Элемент, ОформленияСтрок) Экспорт
|
|
||||||
|
|
||||||
ирОбщий.ТабличноеПолеПриПолученииДанныхЛкс(ЭтаФорма, Элемент, ОформленияСтрок);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ОбработкаОповещения(ИмяСобытия, Параметр, Источник) Экспорт
|
|
||||||
|
|
||||||
ирОбщий.Форма_ОбработкаОповещенияЛкс(ЭтаФорма, ИмяСобытия, Параметр, Источник);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
ирОбщий.ИнициироватьФормуЛкс(ЭтаФорма, "Обработка.ирАнализТехножурнала.Форма.КонверторТекстаСУБД");
|
|
||||||
ПереводитьИндексы = Истина;
|
|
||||||
ПереводитьВМета = Истина;
|
|
||||||
ЭлементыФормы.ТипСУБД.СписокВыбора.Добавить("DBMSSQL");
|
|
||||||
ЭлементыФормы.ТипСУБД.СписокВыбора.Добавить("DBPOSTGRS");
|
|
||||||
ЭлементыФормы.ТипСУБД.СписокВыбора.Добавить("DB2");
|
|
||||||
ЭлементыФормы.ТипСУБД.СписокВыбора.Добавить("DBORACLE");
|
|
||||||
ЭлементыФормы.ТипСУБД.СписокВыбора.Добавить("DBV8DBENG");
|
|
||||||
Если ирКэш.ЛиФайловаяБазаЛкс() Тогда
|
|
||||||
ТипСУБД = "DBV8DBENG";
|
|
||||||
Иначе
|
|
||||||
ТипСУБД = "DBMSSQL";
|
|
||||||
КонецЕсли;
|
|
||||||
File diff suppressed because it is too large
Load Diff
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user