From dc2cfd390de57eec39f2bb4d4ada250a5801bd9f Mon Sep 17 00:00:00 2001 From: Artur Ayukhanov Date: Mon, 4 May 2020 18:49:59 +0300 Subject: [PATCH 1/7] =?UTF-8?q?=D0=98=D1=81=D0=BF=D1=80=D0=B0=D0=B2=D0=BB?= =?UTF-8?q?=D0=B5=D0=BD=D0=B0=20=D0=BE=D1=88=D0=B8=D0=B1=D0=BA=D0=B0=20?= =?UTF-8?q?=D0=BC=D0=BE=D0=B4=D1=83=D0=BB=D1=8F=20=D0=90=D1=81=D0=B8=D0=BD?= =?UTF-8?q?=D0=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit было исключение при попытке возврата значение в поле только для чтения единый модуль Асинк в бдд и тдд --- .../Ext/Form/Module.bsl" | 748 ++++++++--------- .../Ext/Form/Module.bsl" | 3 +- .../Ext/Form/Module.bsl" | 781 +++++++++--------- .../Ext/Form/Module.bsl" | 156 ++-- 4 files changed, 849 insertions(+), 839 deletions(-) diff --git "a/epf/bddRunner/bddRunner/Forms/\320\234\320\276\320\264\321\203\320\273\321\214\320\220\321\201\320\270\320\275\320\272/Ext/Form/Module.bsl" "b/epf/bddRunner/bddRunner/Forms/\320\234\320\276\320\264\321\203\320\273\321\214\320\220\321\201\320\270\320\275\320\272/Ext/Form/Module.bsl" index 520bc7bae..e35e6e907 100644 --- "a/epf/bddRunner/bddRunner/Forms/\320\234\320\276\320\264\321\203\320\273\321\214\320\220\321\201\320\270\320\275\320\272/Ext/Form/Module.bsl" +++ "b/epf/bddRunner/bddRunner/Forms/\320\234\320\276\320\264\321\203\320\273\321\214\320\220\321\201\320\270\320\275\320\272/Ext/Form/Module.bsl" @@ -8,17 +8,17 @@ // ------------------------------------------------------- // // МОДАЛЬНЫЕ ВЫЗОВЫ -// +// // Правило присвоения имен методам: // -// 1. смв_<ИмяМетодаВБезмодальномВарианте>. Например, "смв_ПоказатьПредупреждение". -// 2. смв_<ИмяТипаОбъекта>_<ИмяМетодаОбъектаВБезмодальномВарианте>. Например, "смв_Форма_ПоказатьВыборИзМеню". +// 1. смв_<ИмяМетодаВБезмодальномВарианте>. Например, "смв_ПоказатьПредупреждение". +// 2. смв_<ИмяТипаОбъекта>_<ИмяМетодаОбъектаВБезмодальномВарианте>. Например, "смв_Форма_ПоказатьВыборИзМеню". // В этом случае первым параметром метода должен идти сам объект, метод которого вызывается. // // Префикс "смв" - аббревиатура "Синхронные/модальные вызовы". // -// Веб-клиент не поддерживает "Выполнить", поэтому вариант веб-клиента считаем всегда безмодальным и асинхронным. +// Веб-клиент не поддерживает "Выполнить", поэтому вариант веб-клиента считаем всегда безмодальным и асинхронным. // По сути все методы по сигнатуре должны совпадать с исходными методами из самых последних версий платформы 8.3, // и лишь обеспечивать обратную совместимость с более старыми платформами. // Т.е. основные модули пишем так, как если бы работали на последней платформе без режима совместимости. @@ -28,20 +28,20 @@ &НаКлиенте Процедура ПустоеОповещение(РезультатВыполнения, ДополнительныеПараметры = Неопределено) Экспорт - + КонецПроцедуры &НаКлиенте Процедура ПолучениеКаталогаВременныхФайловДляСохраненияЗавершение(КаталогВременныхФайлов, ДополнительныеПараметры) Экспорт - + Если ЗначениеЗаполнено(КаталогВременныхФайлов) Тогда - - смв_ПолучитьФайлы(ДополнительныеПараметры.ОповещениеЗавершенияСохранения, + + смв_ПолучитьФайлы(ДополнительныеПараметры.ОповещениеЗавершенияСохранения, ДополнительныеПараметры.ДанныеДляСохранения, КаталогВременныхФайлов); - + КонецЕсли; - + КонецПроцедуры #КонецОбласти @@ -50,88 +50,88 @@ &НаКлиенте Функция СформироватьСтрокуФильтраДиалогаВыбораФайла(СписокФорматовФайлов) Экспорт - + Результат = ""; Разделитель = ""; - + Для Каждого ТипФайла Из СтроковыеУтилиты().РазложитьСтрокуВМассивПодстрок(СписокФорматовФайлов) Цикл - + Результат = Результат + Разделитель + СформироватьСтрокуФильтра(ТипФайла); Разделитель = "|"; - + КонецЦикла; - + Возврат Результат; - + КонецФункции &НаКлиенте Функция СформироватьСтрокуФильтра(ФорматФайла) - + Результат = ""; - + Если ВРег(ФорматФайла) = "WORD" Тогда - + Результат = "Документы Word|*.doc?"; - + ИначеЕсли ВРег(ФорматФайла) = "EXCEL" Тогда - + Результат = "Книги Excel|*.xls?"; - + ИначеЕсли ВРег(ФорматФайла) = "PDF" Тогда - + Результат = "Файлы PDF|*.pdf"; - + ИначеЕсли ВРег(ФорматФайла) = "TEXT" Тогда - + Результат = "Текстовые файлы|*.txt"; - + ИначеЕсли ВРег(ФорматФайла) = "XML" Тогда - + Результат = "Файлы XML|*.xml"; - + Иначе - + Результат = "Все файлы|*.*"; - + КонецЕсли; - + Возврат Результат; КонецФункции &НаКлиенте Функция СформироватьСтрокуФильтраПоРасширению(Знач РасширениеФайла) - + РасширениеФайла = ВРег(РасширениеФайла); - + Результат = ""; Если РасширениеФайла = "CF" Тогда - + Результат = "Файл конфигурации (cf) |*.%1"; - + ИначеЕсли РасширениеФайла = "EPF" Тогда - + Результат = "Внешняя обработка (epf)|*.%1"; - + ИначеЕсли РасширениеФайла = "MXL" Тогда - + Результат = "Табличный документ 1с (mxl)|*.%1"; - + Иначе - + Результат = "%1|*.%1"; - + КонецЕсли; - + Возврат СтроковыеУтилиты().ПодставитьПараметрыВСтроку(Результат, РасширениеФайла); - + КонецФункции &НаКлиенте Функция ТиповаяСтруктураДиалогаВыбораФайла(Заголовок = "", Каталог = "", МножественныйВыбор = Ложь, ПолноеИмяФайла = "", Фильтр = "") - + ТиповаяСтруктура = Новый Структура; - + ТиповаяСтруктура.Вставить("Заголовок", ?(ПустаяСтрока(Заголовок), ЗаголовокПоУмолчанию(), Заголовок)); ТиповаяСтруктура.Вставить("Каталог", ?(ПустаяСтрока(Каталог), "", Каталог)); ТиповаяСтруктура.Вставить("МножественныйВыбор", МножественныйВыбор); @@ -139,9 +139,9 @@ ТиповаяСтруктура.Вставить("ПредварительныеПросмотр", Истина); ТиповаяСтруктура.Вставить("ПроверятьСуществованиеФайла", Истина); ТиповаяСтруктура.Вставить("Фильтр", ?(ПустаяСтрока(Фильтр), "Все файлы (*.*)|*.*", Фильтр)); - + Возврат ТиповаяСтруктура; - + КонецФункции &НаКлиенте @@ -158,13 +158,13 @@ &НаКлиенте Функция смв_НовыйОписаниеОповещения(ИмяПроцедуры, Модуль, ДополнительныеПараметры = Неопределено, ИмяПроцедурыОбработкиОшибки = "", МодульОбработкиОшибки = Неопределено) Экспорт - + #Если ВебКлиент Тогда - + Возврат Новый ОписаниеОповещения(ИмяПроцедуры, Модуль, ДополнительныеПараметры); - + #Иначе - + Если МодальностьЗапрещена Тогда Возврат Вычислить("Новый ОписаниеОповещения(ИмяПроцедуры, Модуль, ДополнительныеПараметры)"); // С ошибками пока не будем бороться, были какие-то сложности с типом параметров @@ -172,41 +172,41 @@ Возврат Новый Структура("ИмяПроцедуры, Модуль, ДополнительныеПараметры, ИмяПроцедурыОбработкиОшибки, МодульОбработкиОшибки" , ИмяПроцедуры, Модуль, ДополнительныеПараметры, ИмяПроцедурыОбработкиОшибки, МодульОбработкиОшибки); КонецЕсли; - + #КонецЕсли - + КонецФункции &НаКлиенте Процедура смв_ВыполнитьОбработкуОповещения(ОписаниеОповещения, Результат = Неопределено, КоличествоПараметровОбработчика = 2) Экспорт - + Если ОписаниеОповещения = Неопределено Тогда Возврат; КонецЕсли; - + #Если ВебКлиент Тогда - + ВыполнитьОбработкуОповещения(ОписаниеОповещения); - + #Иначе - + Если МодальностьЗапрещена Тогда Если КоличествоПараметровОбработчика = 2 Тогда Выполнить("ВыполнитьОбработкуОповещения(ОписаниеОповещения, Результат)"); ИначеЕсли КоличествоПараметровОбработчика = 1 Тогда Выполнить("ВыполнитьОбработкуОповещения(ОписаниеОповещения)"); КонецЕсли; - Иначе + Иначе // Если модальность не запрещена, то в ОписаниеОповещения у нас будет Структура Если КоличествоПараметровОбработчика = 2 Тогда Выполнить("ОписаниеОповещения.Модуль." + ОписаниеОповещения.ИмяПроцедуры + "(Результат, ОписаниеОповещения.ДополнительныеПараметры)"); ИначеЕсли КоличествоПараметровОбработчика = 1 Тогда - Выполнить("ОписаниеОповещения.Модуль." + ОписаниеОповещения.ИмяПроцедуры + "(ОписаниеОповещения.ДополнительныеПараметры)"); + Выполнить("ОписаниеОповещения.Модуль." + ОписаниеОповещения.ИмяПроцедуры + "(ОписаниеОповещения.ДополнительныеПараметры)"); КонецЕсли; КонецЕсли; - + #КонецЕсли - + КонецПроцедуры #КонецОбласти @@ -221,68 +221,68 @@ , ОписаниеОповещенияОЗакрытии = Неопределено , РежимОткрытияОкна = Неопределено) Экспорт - + // Синтаксис из 8.2.9 и 8.2.19: - - // ОткрытьФорму(<ИмяФормы>, <Параметры>, <Владелец>, <Уникальность>, <Окно>) - + + // ОткрытьФорму(<ИмяФормы>, <Параметры>, <Владелец>, <Уникальность>, <Окно>) + // Т.е. отсутствуют последние 3 параметра - а в них и РежимОткрытияОкна, и ОписаниеОповещенияОЗакрытии. // Значит, тут нам надо понять - открывать ли форму модально там, где запрета на модальность еще нет - - + + // Теперь варианты РежимОткрытияОкнаФормы в 8.2.9: // БлокироватьОкноВладельца (LockOwnerWindow) // Независимый (Independent) - + Если Найти(ИмяФормы, ".") = 0 Тогда - + ИмяФормы = ВладелецФормы.ПутьКФормам + ИмяФормы; - + КонецЕсли; - + Если НЕ МодальностьЗапрещена Тогда - + ОткрыватьМодально = Истина; - + Если РежимОткрытияОкна = Неопределено Или РежимОткрытияОкна = РежимОткрытияОкнаФормы.Независимый Тогда - + ОткрыватьМодально = Ложь; - + КонецЕсли; - + КонецЕсли; - + #Если ВебКлиент Тогда - + ОткрытьФорму(ИмяФормы, ПараметрыФормы, Владелец, Уникальность, , , ОписаниеОповещенияОЗакрытии, РежимОткрытияОкна); - + #Иначе - + Если МодальностьЗапрещена Тогда - + Выполнить("ОткрытьФорму(ИмяФормы, ПараметрыФормы, Владелец, Уникальность, Окно, , ОписаниеОповещенияОЗакрытии, РежимОткрытияОкна)"); - - Иначе - + + Иначе + Если ОткрыватьМодально Тогда РезультатОткрытия = Вычислить("ОткрытьФормуМодально(ИмяФормы, ПараметрыФормы, Владелец)"); смв_ВыполнитьОбработкуОповещения(ОписаниеОповещенияОЗакрытии, РезультатОткрытия); - Иначе + Иначе Выполнить("ОткрытьФорму(ИмяФормы, ПараметрыФормы, Владелец, Уникальность, Окно)"); КонецЕсли; - + КонецЕсли; - + #КонецЕсли - + КонецПроцедуры &НаКлиенте Функция смв_ПустоеОповещение() Экспорт - + Возврат смв_НовыйОписаниеОповещения("ПустоеОповещение", ЭтаФорма); - + КонецФункции @@ -294,20 +294,20 @@ Заголовок = ЗаголовокПоУмолчанию(); КонецЕсли; #Если ВебКлиент Тогда - + ПоказатьПредупреждение(ОписаниеОповещенияОЗавершении, ТекстПредупреждения, Таймаут, Заголовок); - + #Иначе - + Если МодальностьЗапрещена Тогда Выполнить("ПоказатьПредупреждение(ОписаниеОповещенияОЗавершении, ТекстПредупреждения, Таймаут, Заголовок)"); Иначе Выполнить("Предупреждение(ТекстПредупреждения, Таймаут, Заголовок)"); смв_ВыполнитьОбработкуОповещения(ОписаниеОповещенияОЗавершении, , 1); КонецЕсли; - + #КонецЕсли - + КонецПроцедуры &НаКлиенте @@ -317,11 +317,11 @@ Таймаут = 0, КнопкаПоУмолчанию = Неопределено, Заголовок = "", - КнопкаТаймаута = Неопределено) Экспорт - + КнопкаТаймаута = Неопределено) Экспорт + Если ПустаяСтрока(Заголовок) Тогда Заголовок = ЗаголовокПоУмолчанию(); - КонецЕсли; + КонецЕсли; #Если ВебКлиент Тогда ПоказатьВопрос(ОписаниеОповещенияОЗавершении, ТекстВопроса, Кнопки, Таймаут, КнопкаПоУмолчанию, Заголовок, КнопкаТаймаута); #Иначе @@ -332,25 +332,25 @@ Выполнить("ОписаниеОповещенияОЗавершении.Модуль." + ОписаниеОповещенияОЗавершении.ИмяПроцедуры + "(Ответ, ОписаниеОповещенияОЗавершении.ДополнительныеПараметры)"); КонецЕсли; #КонецЕсли - -КонецПроцедуры + +КонецПроцедуры &НаКлиенте Процедура смв_ПоказатьЗначение(ОписаниеОповещенияОЗавершении = Неопределено, Значение) Экспорт - + #Если ВебКлиент Тогда - + ПоказатьЗначение(ОписаниеОповещенияОЗавершении, Значение); - + #Иначе - + Если МодальностьЗапрещена Тогда Выполнить("ПоказатьЗначение(ОписаниеОповещенияОЗавершении, Значение)"); Иначе Выполнить("ОткрытьЗначение(Значение)"); смв_ВыполнитьОбработкуОповещения(ОписаниеОповещенияОЗавершении); КонецЕсли; - + #КонецЕсли КонецПроцедуры @@ -360,8 +360,8 @@ Строка = "", Подсказка = "", Длина = 0, - Многострочность = Ложь) Экспорт - + Многострочность = Ложь) Экспорт + #Если ВебКлиент Тогда ПоказатьВводСтроки(ОписаниеОповещенияОЗавершении, Строка, Подсказка, Длина, Многострочность); #Иначе @@ -369,7 +369,7 @@ Выполнить("ПоказатьВводСтроки(ОписаниеОповещенияОЗавершении, Строка, Подсказка, Длина, Многострочность)"); Иначе Если ВвестиСтроку(Строка, Подсказка, Длина, Многострочность) Тогда - + // Здесь необходимо убедиться, что в строку не был передан вредоносный код // Поскольку в 8.2.19 она будет направлена в Выполнить() // UPD кажется, это в данном случае не имеет смысла. @@ -378,19 +378,19 @@ // Иначе // ВызватьИсключение "Некорректно введена строка"; // КонецЕсли; - + КонецЕсли; КонецЕсли; #КонецЕсли - -КонецПроцедуры + +КонецПроцедуры &НаКлиенте Процедура смв_ПоказатьВводДаты(ОписаниеОповещенияОЗавершении, ВыбраннаяДата = "", Подсказка = "", - ЧастьДаты = Неопределено) Экспорт - + ЧастьДаты = Неопределено) Экспорт + #Если ВебКлиент Тогда ПоказатьВводДаты(ОписаниеОповещенияОЗавершении, ВыбраннаяДата, Подсказка, ЧастьДаты); #Иначе @@ -402,72 +402,72 @@ КонецЕсли; КонецЕсли; #КонецЕсли - -КонецПроцедуры + +КонецПроцедуры #КонецОбласти &НаКлиенте Процедура смв_ПоказатьВыборЭлемента(ОписаниеОповещенияОЗавершении, Список, Заголовок = "", Элемент = Неопределено) Экспорт - + Если ПустаяСтрока(Заголовок) Тогда Заголовок = ЗаголовокПоУмолчанию(); КонецЕсли; - + #Если ВебКлиент Тогда - + Список.ПоказатьВыборЭлемента(ОписаниеОповещенияОЗавершении, Заголовок, Элемент); - + #Иначе - + Если МодальностьЗапрещена Тогда Выполнить("Список.ПоказатьВыборЭлемента(ОписаниеОповещенияОЗавершении, Заголовок, Элемент)"); Иначе ВыбранныйЭлемент = Вычислить("Список.ВыбратьЭлемент(Заголовок, Элемент)"); смв_ВыполнитьОбработкуОповещения(ОписаниеОповещенияОЗавершении, ВыбранныйЭлемент, 2); КонецЕсли; - + #КонецЕсли КонецПроцедуры &НаКлиенте Процедура смв_Форма_ПоказатьВыборИзМеню(Форма, ОписаниеОповещенияОЗавершении, СписокЗначений, ЭлементФормы = Неопределено, НачальноеЗначение = Неопределено) Экспорт - + #Если ВебКлиент Тогда - + Форма.ПоказатьВыборИзМеню(ОписаниеОповещенияОЗавершении, СписокЗначений, ЭлементФормы); - + #Иначе - + Если МодальностьЗапрещена Тогда Выполнить("Форма.ПоказатьВыборИзМеню(ОписаниеОповещенияОЗавершении, СписокЗначений, ЭлементФормы)"); // вроде бы после 8.3.7, ПоказатьВыборИзМеню глючит - надо бы проверить. Иначе ВыбранноеЗначение = Форма.ВыбратьИзМеню(СписокЗначений, ЭлементФормы); смв_ВыполнитьОбработкуОповещения(ОписаниеОповещенияОЗавершении, ВыбранноеЗначение); КонецЕсли; - + #КонецЕсли КонецПроцедуры &НаКлиенте Процедура смв_ДиалогРедактированияСтандартногоПериода_Показать(Диалог, ОписаниеОповещения) Экспорт - + #Если ВебКлиент Тогда - + Диалог.Показать(ОписаниеОповещения); - + #Иначе - + Если МодальностьЗапрещена Тогда Выполнить("Диалог.Показать(ОписаниеОповещения)"); Иначе - Если Диалог.Редактировать() Тогда + Если Диалог.Редактировать() Тогда смв_ВыполнитьОбработкуОповещения(ОписаниеОповещения, Диалог.Период); КонецЕсли; КонецЕсли; - + #КонецЕсли КонецПроцедуры @@ -479,10 +479,10 @@ Заголовок = "", Каталог = "", МножественныйВыбор = Ложь) Экспорт - + ПараметрыДиалога = ТиповаяСтруктураДиалогаВыбораФайла(Заголовок, Каталог, МножественныйВыбор); - - смв_ПоказатьДиалогВыбораФайла(ОписаниеОповещенияОЗавершении, + + смв_ПоказатьДиалогВыбораФайла(ОписаниеОповещенияОЗавершении, РежимДиалогаВыбораФайла.ВыборКаталога, ПараметрыДиалога); КонецПроцедуры @@ -494,10 +494,10 @@ Каталог = Неопределено, ПолноеИмяФайла = Неопределено, МножественныйВыбор = Ложь) Экспорт - + ПараметрыДиалога = ТиповаяСтруктураДиалогаВыбораФайла(Заголовок, Каталог, МножественныйВыбор, ПолноеИмяФайла, Фильтр); - - смв_ПоказатьДиалогВыбораФайла(ОписаниеОповещенияОЗавершении, + + смв_ПоказатьДиалогВыбораФайла(ОписаниеОповещенияОЗавершении, РежимДиалогаВыбораФайла.Открытие, ПараметрыДиалога); КонецПроцедуры @@ -508,15 +508,15 @@ Заголовок = Неопределено, Каталог = Неопределено, ПолноеИмяФайла = Неопределено) Экспорт - + ПараметрыДиалога = ТиповаяСтруктураДиалогаВыбораФайла(Заголовок, Каталог, Ложь, ПолноеИмяФайла, Фильтр); - смв_ПоказатьДиалогВыбораФайла(ОписаниеОповещенияОЗавершении, + смв_ПоказатьДиалогВыбораФайла(ОписаниеОповещенияОЗавершении, РежимДиалогаВыбораФайла.Сохранение, ПараметрыДиалога); - + КонецПроцедуры - + &НаКлиенте Процедура смв_ПоказатьДиалогВыбораФайла(ОписаниеОповещенияОЗавершении, РежимРаботы, @@ -525,20 +525,20 @@ ЗаполнитьЗначенияСвойств(Диалог, ПараметрыВыбора); #Если ВебКлиент Тогда Если ПроверитьРасширениеРаботыСФайламиВебКлиент() Тогда - + Диалог.Показать(ОписаниеОповещенияОЗавершении); - + Иначе - + смв_ПоказатьПредупреждение(, "Не подключено Расширения для работы с файлами. Обратитесь к администратору для решения проблемы.", 30); - + КонецЕсли; #Иначе Если МодальностьЗапрещена Тогда Выполнить("Диалог.Показать(ОписаниеОповещенияОЗавершении)"); ИначеЕсли Диалог.Выбрать() Тогда Результат = Новый Массив; - + Если РежимРаботы = РежимДиалогаВыбораФайла.ВыборКаталога Тогда Результат.Добавить(Диалог.Каталог); Иначе @@ -546,7 +546,7 @@ Результат.Добавить(Файл); КонецЦикла; КонецЕсли; - + смв_ВыполнитьОбработкуОповещения(ОписаниеОповещенияОЗавершении, Результат); КонецЕсли; #КонецЕсли @@ -563,497 +563,497 @@ #Область Получение_Помещение_файлов &НаКлиенте -Процедура смв_ПоместитьФайлы(ОписаниеОповещенияОЗавершении, +Процедура смв_ПоместитьФайлы(ОписаниеОповещенияОЗавершении, ПомещаемыеФайлы) Экспорт - + #Если ВебКлиент Тогда - + Если ПроверитьРасширениеРаботыСФайламиВебКлиент() Тогда - + НачатьПомещениеФайлов(ОписаниеОповещенияОЗавершении, ПомещаемыеФайлы, , Ложь, ВладелецФормы.УникальныйИдентификатор); - + Иначе - + смв_ПоказатьПредупреждение(, "Не подключено Расширения для работы с файлами. Обратитесь к администратору для решения проблемы.", 30); - + КонецЕсли; - - + + #Иначе - + ПомещенныеФайлы = Новый Массив; - + Если ПомещаемыеФайлы.Количество() = 0 Тогда - + смв_ВыполнитьОбработкуОповещения(ОписаниеОповещенияОЗавершении, ПомещенныеФайлы); - + ИначеЕсли МодальностьЗапрещена Тогда - + Выполнить("НачатьПомещениеФайлов(ОписаниеОповещенияОЗавершении, ПомещаемыеФайлы, , Ложь, ВладелецФормы.УникальныйИдентификатор)"); - + ИначеЕсли ПоместитьФайлы(ПомещаемыеФайлы, ПомещенныеФайлы, , Ложь, ВладелецФормы.УникальныйИдентификатор) Тогда - + смв_ВыполнитьОбработкуОповещения(ОписаниеОповещенияОЗавершении, ПомещенныеФайлы); - + КонецЕсли; - + #КонецЕсли - + КонецПроцедуры &НаКлиенте -Процедура смв_ПоместитьФайлыЧерезДиалог(ОписаниеОповещенияОЗавершении, +Процедура смв_ПоместитьФайлыЧерезДиалог(ОписаниеОповещенияОЗавершении, Фильтр = Неопределено, Заголовок = Неопределено, Каталог = Неопределено, ПолноеИмяФайла = Неопределено, МножественныйВыбор = Ложь) Экспорт - + ПараметрыДиалога = ТиповаяСтруктураДиалогаВыбораФайла(Заголовок, Каталог, МножественныйВыбор, ПолноеИмяФайла, Фильтр); ДиалогОткрытияФайла = Новый ДиалогВыбораФайла(РежимДиалогаВыбораФайла.Открытие); ЗаполнитьЗначенияСвойств(ДиалогОткрытияФайла, ПараметрыДиалога); #Если ВебКлиент Тогда - + Если ПроверитьРасширениеРаботыСФайламиВебКлиент() Тогда - + НачатьПомещениеФайлов(ОписаниеОповещенияОЗавершении, , ДиалогОткрытияФайла, Истина, ВладелецФормы.УникальныйИдентификатор); - + Иначе - + смв_ПоказатьПредупреждение(, "Не подключено Расширения для работы с файлами. Обратитесь к администратору для решения проблемы.", 30); - + КонецЕсли; - - + + #Иначе - + ПомещенныеФайлы = Новый Массив; - + Если МодальностьЗапрещена Тогда - + Выполнить("НачатьПомещениеФайлов(ОписаниеОповещенияОЗавершении, , ДиалогОткрытияФайла, Истина, ВладелецФормы.УникальныйИдентификатор);"); - + ИначеЕсли ПоместитьФайлы(, ПомещенныеФайлы, ДиалогОткрытияФайла, Истина, ВладелецФормы.УникальныйИдентификатор) Тогда - + смв_ВыполнитьОбработкуОповещения(ОписаниеОповещенияОЗавершении, ПомещенныеФайлы); - + КонецЕсли; - + #КонецЕсли - + КонецПроцедуры &НаКлиенте Процедура смв_ПоместитьФайл(ОписаниеОповещенияОЗавершении, - АдресХранения, ПомещаемыйФайл, Интерактивно = Ложь) Экспорт - + АдресХранения, Знач ПомещаемыйФайл, Интерактивно = Ложь) Экспорт + #Если ВебКлиент Тогда - + Если ПроверитьРасширениеРаботыСФайламиВебКлиент() Тогда - + НачатьПомещениеФайла(ОписаниеОповещенияОЗавершении, АдресХранения, ПомещаемыйФайл, Интерактивно, ВладелецФормы.УникальныйИдентификатор); - + Иначе - + смв_ПоказатьПредупреждение(, "Не подключено Расширения для работы с файлами. Обратитесь к администратору для решения проблемы.", 30); - + КонецЕсли; - - + + #Иначе - + Если МодальностьЗапрещена Тогда - + Выполнить("НачатьПомещениеФайла(ОписаниеОповещенияОЗавершении, АдресХранения, ПомещаемыйФайл, Интерактивно, ВладелецФормы.УникальныйИдентификатор)"); - + ИначеЕсли ПоместитьФайл(АдресХранения, ПомещаемыйФайл, ПомещаемыйФайл, Интерактивно, ВладелецФормы.УникальныйИдентификатор) Тогда - + Выполнить("ОписаниеОповещенияОЗавершении.Модуль." + ОписаниеОповещенияОЗавершении.ИмяПроцедуры + "(Истина, АдресХранения, ПомещаемыйФайл, ОписаниеОповещенияОЗавершении.ДополнительныеПараметры)"); КонецЕсли; - + #КонецЕсли - + КонецПроцедуры &НаКлиенте -Процедура смв_ПолучитьФайлы(ОписаниеОповещенияОЗавершении, +Процедура смв_ПолучитьФайлы(ОписаниеОповещенияОЗавершении, СохраняемыеФайлы, КаталогСохранения) Экспорт - + #Если ВебКлиент Тогда - + Если ПроверитьРасширениеРаботыСФайламиВебКлиент() Тогда - + НачатьПолучениеФайлов(ОписаниеОповещенияОЗавершении, СохраняемыеФайлы, КаталогСохранения, Ложь); - + Иначе - + смв_ПоказатьПредупреждение(, "Не подключено Расширения для работы с файлами. Обратитесь к администратору для решения проблемы.", 30); - + КонецЕсли; - - + + #Иначе - + СохраненныеФайлы = Новый Массив; - + Если МодальностьЗапрещена Тогда - + Выполнить("НачатьПолучениеФайлов(ОписаниеОповещенияОЗавершении, СохраняемыеФайлы, КаталогСохранения, Ложь)"); - + ИначеЕсли ПолучитьФайлы(СохраняемыеФайлы, СохраненныеФайлы, КаталогСохранения, Ложь) Тогда - + смв_ВыполнитьОбработкуОповещения(ОписаниеОповещенияОЗавершении, СохраненныеФайлы); - + КонецЕсли; - + #КонецЕсли - + КонецПроцедуры &НаКлиенте -Процедура смв_ПолучитьФайлыЧерезДиалог(ОписаниеОповещенияОЗавершении, +Процедура смв_ПолучитьФайлыЧерезДиалог(ОписаниеОповещенияОЗавершении, СохраняемыеФайлы, Заголовок = "", Каталог = "" ) Экспорт - + Если СохраняемыеФайлы.Количество() = 1 Тогда - + ТестФайл = Новый Файл(СохраняемыеФайлы[0].Имя); Расширение = СтрЗаменить(ВРег(ТестФайл.Расширение), ".", ""); Фильтр = СформироватьСтрокуФильтраПоРасширению(Расширение); - + ПараметрыДиалога = ТиповаяСтруктураДиалогаВыбораФайла(Заголовок, Каталог, Ложь, ТестФайл.Имя, Фильтр); ДиалогВыбораКаталог = Новый ДиалогВыбораФайла(РежимДиалогаВыбораФайла.Сохранение); - + Иначе - + ПараметрыДиалога = ТиповаяСтруктураДиалогаВыбораФайла(Заголовок, Каталог); ДиалогВыбораКаталог = Новый ДиалогВыбораФайла(РежимДиалогаВыбораФайла.ВыборКаталога); - + КонецЕсли; - + ЗаполнитьЗначенияСвойств(ДиалогВыбораКаталог, ПараметрыДиалога); - + #Если ВебКлиент Тогда - + Если ПроверитьРасширениеРаботыСФайламиВебКлиент() Тогда - + НачатьПолучениеФайлов(ОписаниеОповещенияОЗавершении, СохраняемыеФайлы, ДиалогВыбораКаталог, Истина); - + Иначе - + смв_ПоказатьПредупреждение(, "Не подключено Расширения для работы с файлами. Обратитесь к администратору для решения проблемы.", 30); - + КонецЕсли; - - + + #Иначе - + СохраненныеФайлы = Новый Массив; - + Если МодальностьЗапрещена Тогда - + Выполнить("НачатьПолучениеФайлов(ОписаниеОповещенияОЗавершении, СохраняемыеФайлы, ДиалогВыбораКаталог, Истина)"); - + ИначеЕсли ПолучитьФайлы(СохраняемыеФайлы, СохраненныеФайлы, ДиалогВыбораКаталог, Истина) Тогда - + смв_ВыполнитьОбработкуОповещения(ОписаниеОповещенияОЗавершении, СохраненныеФайлы); - + КонецЕсли; - + #КонецЕсли - + КонецПроцедуры &НаКлиенте -Процедура смв_ПолучитьФайлыВоВременныйКаталог(ОписаниеОповещенияОЗавершении, +Процедура смв_ПолучитьФайлыВоВременныйКаталог(ОписаниеОповещенияОЗавершении, СохраняемыеФайлы) Экспорт - + ДополнительныеПараметры = Новый Структура; ДополнительныеПараметры.Вставить("ДанныеДляСохранения", СохраняемыеФайлы); - ДополнительныеПараметры.Вставить("ОповещениеЗавершенияСохранения", ОписаниеОповещенияОЗавершении); - + ДополнительныеПараметры.Вставить("ОповещениеЗавершенияСохранения", ОписаниеОповещенияОЗавершении); + ОписаниеОповещения = смв_НовыйОписаниеОповещения("ПолучениеКаталогаВременныхФайловДляСохраненияЗавершение", ЭтаФорма, ДополнительныеПараметры); - + смв_КаталогВременныхФайлов(ОписаниеОповещения); - + КонецПроцедуры &НаКлиенте Функция НовыйОписаниеПередаваемогоФайла(ИмяФайла, ДанныеДляПередачи) Экспорт - + Адрес = ПоместитьВоВременноеХранилище(ДанныеДляПередачи, ВладелецФормы.УникальныйИдентификатор); - + Возврат Новый ОписаниеПередаваемогоФайла(ИмяФайла, Адрес); - + КонецФункции #КонецОбласти &НаКлиенте -Процедура смв_ЗапуститьПриложение(ОписаниеОповещенияОЗавершении, +Процедура смв_ЗапуститьПриложение(ОписаниеОповещенияОЗавершении, СтрокаЗапускаПриложения, ТекущийКаталог = "", ДождатьсяЗавершения = Ложь, КодВозврата = Неопределено) Экспорт - + #Если ВебКлиент Тогда - + НачатьЗапускПриложения(ОписаниеОповещенияОЗавершении, СтрокаЗапускаПриложения, ТекущийКаталог, ДождатьсяЗавершения); - + #Иначе - + Если МодальностьЗапрещена Тогда - + Выполнить("НачатьЗапускПриложения(ОписаниеОповещенияОЗавершении, СтрокаЗапускаПриложения, ТекущийКаталог, ДождатьсяЗавершения)"); - + Иначе - + ЗапуститьПриложение(СтрокаЗапускаПриложения, ТекущийКаталог, ДождатьсяЗавершения, КодВозврата); смв_ВыполнитьОбработкуОповещения(ОписаниеОповещенияОЗавершении, КодВозврата); - + КонецЕсли; - + #КонецЕсли - + КонецПроцедуры &НаКлиенте Процедура смв_УстановитьРасширениеРаботыСФайлами(ОписаниеОповещенияОЗавершении = Неопределено) Экспорт - + #Если ВебКлиент Тогда - - + + НачатьУстановкуРасширенияРаботыСФайлами(ОписаниеОповещенияОЗавершении); - + #Иначе - + Если МодальностьЗапрещена Тогда - + Выполнить("НачатьУстановкуРасширенияРаботыСФайлами(ОписаниеОповещенияОЗавершении)"); - + Иначе - + УстановитьРасширениеРаботыСФайлами(); смв_ВыполнитьОбработкуОповещения(ОписаниеОповещенияОЗавершении); - + КонецЕсли; - + #КонецЕсли - + КонецПроцедуры &НаКлиенте Процедура смв_ПодключитьРасширениеРаботыСФайлами(ОписаниеОповещенияОЗавершении = Неопределено) Экспорт - + #Если ВебКлиент Тогда - - + + НачатьПодключениеРасширенияРаботыСФайлами(ОписаниеОповещенияОЗавершении); - + #Иначе - + Если МодальностьЗапрещена Тогда - + Выполнить("НачатьПодключениеРасширенияРаботыСФайлами(ОписаниеОповещенияОЗавершении)"); - + Иначе - + ПодключитьРасширениеРаботыСФайлами(); смв_ВыполнитьОбработкуОповещения(ОписаниеОповещенияОЗавершении); - + КонецЕсли; - + #КонецЕсли - + КонецПроцедуры #Область Операции_с_файлами &НаКлиенте Процедура смв_НайтиФайлы(ОписаниеОповещенияОЗавершении, Путь, Маска = Неопределено, ИскатьВПодкаталогах = Ложь) Экспорт - + #Если ВебКлиент Тогда - + НачатьПоискФайлов(ОписаниеОповещенияОЗавершении, Путь, Маска, ИскатьВПодкаталогах); - + #Иначе - + Если МодальностьЗапрещена Тогда - + Выполнить("НачатьПоискФайлов(ОписаниеОповещенияОЗавершении, Путь, Маска, ИскатьВПодкаталогах)"); - + Иначе - + Результат = НайтиФайлы(Путь, Маска, ИскатьВПодкаталогах); смв_ВыполнитьОбработкуОповещения(ОписаниеОповещенияОЗавершении, Результат); - + КонецЕсли; - + #КонецЕсли - + КонецПроцедуры &НаКлиенте Процедура смв_КаталогВременныхФайлов(ОписаниеОповещенияОЗавершении) Экспорт - + #Если ВебКлиент Тогда - + Если ПроверитьРасширениеРаботыСФайламиВебКлиент() Тогда - + НачатьПолучениеКаталогаВременныхФайлов(ОписаниеОповещенияОЗавершении); - + Иначе - + смв_ПоказатьПредупреждение(, "Не подключено Расширения для работы с файлами. Обратитесь к администратору для решения проблемы.", 30); - + КонецЕсли; - - + + #Иначе - + Если МодальностьЗапрещена Тогда - + Выполнить("НачатьПолучениеКаталогаВременныхФайлов(ОписаниеОповещенияОЗавершении)"); - + Иначе - + смв_ВыполнитьОбработкуОповещения(ОписаниеОповещенияОЗавершении, КаталогВременныхФайлов()); - + КонецЕсли; - + #КонецЕсли - + КонецПроцедуры &НаКлиенте Процедура смв_Файл_ПолучитьВремяИзменения(Файл, ОписаниеОповещенияОЗавершении) Экспорт - + #Если ВебКлиент Тогда - + Если ПроверитьРасширениеРаботыСФайламиВебКлиент() Тогда - + Файл.НачатьПолучениеВремениИзменения(ОписаниеОповещенияОЗавершении); - + Иначе - + смв_ПоказатьПредупреждение(, "Не подключено Расширения для работы с файлами. Обратитесь к администратору для решения проблемы.", 30); - + КонецЕсли; - - + + #Иначе - + Если МодальностьЗапрещена Тогда - + Выполнить("Файл.НачатьПолучениеВремениИзменения(ОписаниеОповещенияОЗавершении)"); - + Иначе - + смв_ВыполнитьОбработкуОповещения(ОписаниеОповещенияОЗавершении, Файл.ПолучитьВремяИзменения()); - + КонецЕсли; - + #КонецЕсли - + КонецПроцедуры &НаКлиенте Процедура смв_Файл_Существует(Файл, ОписаниеОповещенияОЗавершении) Экспорт - + #Если ВебКлиент Тогда - + Если ПроверитьРасширениеРаботыСФайламиВебКлиент() Тогда - + Файл.НачатьПроверкуСуществования (ОписаниеОповещенияОЗавершении); - + Иначе - + смв_ПоказатьПредупреждение(, "Не подключено Расширения для работы с файлами. Обратитесь к администратору для решения проблемы.", 30); - + КонецЕсли; - - + + #Иначе - + Если МодальностьЗапрещена Тогда - + Выполнить("Файл.НачатьПроверкуСуществования (ОписаниеОповещенияОЗавершении)"); - + Иначе - + смв_ВыполнитьОбработкуОповещения(ОписаниеОповещенияОЗавершении, Файл.Существует()); - + КонецЕсли; - + #КонецЕсли - + КонецПроцедуры &НаКлиенте Процедура смв_Файл_ЭтоФайл(Файл, ОписаниеОповещенияОЗавершении) Экспорт - + #Если ВебКлиент Тогда - + Если ПроверитьРасширениеРаботыСФайламиВебКлиент() Тогда - + Файл.НачатьПроверкуЭтоФайл(ОписаниеОповещенияОЗавершении); - + Иначе - + смв_ПоказатьПредупреждение(, "Не подключено Расширения для работы с файлами. Обратитесь к администратору для решения проблемы.", 30); - + КонецЕсли; - - + + #Иначе - + Если МодальностьЗапрещена Тогда - + Выполнить("Файл.НачатьПроверкуЭтоФайл(ОписаниеОповещенияОЗавершении)"); - + Иначе - + смв_ВыполнитьОбработкуОповещения(ОписаниеОповещенияОЗавершении, Файл.ЭтоФайл()); - + КонецЕсли; - + #КонецЕсли - + КонецПроцедуры &НаКлиенте Процедура смв_Файл_ЭтоКаталог(Файл, ОписаниеОповещенияОЗавершении) Экспорт - + #Если ВебКлиент Тогда - + Если ПроверитьРасширениеРаботыСФайламиВебКлиент() Тогда - + Файл.НачатьПроверкуЭтоКаталог(ОписаниеОповещенияОЗавершении); - + Иначе - + смв_ПоказатьПредупреждение(, "Не подключено Расширения для работы с файлами. Обратитесь к администратору для решения проблемы.", 30); - + КонецЕсли; - - + + #Иначе - + Если МодальностьЗапрещена Тогда - + Выполнить("Файл.НачатьПроверкуЭтоКаталог(ОписаниеОповещенияОЗавершении)"); - + Иначе - + смв_ВыполнитьОбработкуОповещения(ОписаниеОповещенияОЗавершении, Файл.ЭтоКаталог()); - + КонецЕсли; - + #КонецЕсли - + КонецПроцедуры #КонецОбласти @@ -1062,17 +1062,17 @@ &НаКлиенте Функция СтроковыеУтилиты() - + Если СтроковыеУтилиты = Неопределено Тогда - + СтроковыеУтилиты = ВладелецФормы.Плагин("СтроковыеУтилиты"); - + КонецЕсли; - + Возврат СтроковыеУтилиты; - + КонецФункции - + #КонецОбласти &НаКлиенте diff --git "a/epf/bddRunner/bddRunner/Forms/\320\243\320\277\321\200\320\260\320\262\320\273\321\217\320\265\320\274\320\260\321\217\320\244\320\276\321\200\320\274\320\260/Ext/Form/Module.bsl" "b/epf/bddRunner/bddRunner/Forms/\320\243\320\277\321\200\320\260\320\262\320\273\321\217\320\265\320\274\320\260\321\217\320\244\320\276\321\200\320\274\320\260/Ext/Form/Module.bsl" index daa3239ad..cc70d8d13 100644 --- "a/epf/bddRunner/bddRunner/Forms/\320\243\320\277\321\200\320\260\320\262\320\273\321\217\320\265\320\274\320\260\321\217\320\244\320\276\321\200\320\274\320\260/Ext/Form/Module.bsl" +++ "b/epf/bddRunner/bddRunner/Forms/\320\243\320\277\321\200\320\260\320\262\320\273\321\217\320\265\320\274\320\260\321\217\320\244\320\276\321\200\320\274\320\260/Ext/Form/Module.bsl" @@ -19606,7 +19606,8 @@ КонецЕсли; - Оповещение = АСинк().смв_НовыйОписаниеОповещения("ОткрытьИнструментЗавершение", ЭтаФорма, Новый Структура("ИмяИнструмента, ИмяФормыИнструмента", ИмяИнструмента, ИмяФормы)); + Оповещение = АСинк().смв_НовыйОписаниеОповещения("ОткрытьИнструментЗавершение", ЭтаФорма, + Новый Структура("ИмяИнструмента, ИмяФормыИнструмента", ИмяИнструмента, ИмяФормы)); АСинк().смв_ПоместитьФайл(Оповещение, АдресХранилища, ФайлИнструмента.ПолноеИмя , Ложь); КонецЕсли; diff --git "a/epf/xddTestRunner/xddTestRunner/Forms/\320\234\320\276\320\264\321\203\320\273\321\214\320\220\321\201\320\270\320\275\320\272/Ext/Form/Module.bsl" "b/epf/xddTestRunner/xddTestRunner/Forms/\320\234\320\276\320\264\321\203\320\273\321\214\320\220\321\201\320\270\320\275\320\272/Ext/Form/Module.bsl" index 5091a63b8..e63b38d2b 100644 --- "a/epf/xddTestRunner/xddTestRunner/Forms/\320\234\320\276\320\264\321\203\320\273\321\214\320\220\321\201\320\270\320\275\320\272/Ext/Form/Module.bsl" +++ "b/epf/xddTestRunner/xddTestRunner/Forms/\320\234\320\276\320\264\321\203\320\273\321\214\320\220\321\201\320\270\320\275\320\272/Ext/Form/Module.bsl" @@ -8,17 +8,17 @@ // ------------------------------------------------------- // // МОДАЛЬНЫЕ ВЫЗОВЫ -// +// // Правило присвоения имен методам: // -// 1. смв_<ИмяМетодаВБезмодальномВарианте>. Например, "смв_ПоказатьПредупреждение". -// 2. смв_<ИмяТипаОбъекта>_<ИмяМетодаОбъектаВБезмодальномВарианте>. Например, "смв_Форма_ПоказатьВыборИзМеню". +// 1. смв_<ИмяМетодаВБезмодальномВарианте>. Например, "смв_ПоказатьПредупреждение". +// 2. смв_<ИмяТипаОбъекта>_<ИмяМетодаОбъектаВБезмодальномВарианте>. Например, "смв_Форма_ПоказатьВыборИзМеню". // В этом случае первым параметром метода должен идти сам объект, метод которого вызывается. // // Префикс "смв" - аббревиатура "Синхронные/модальные вызовы". // -// Веб-клиент не поддерживает "Выполнить", поэтому вариант веб-клиента считаем всегда безмодальным и асинхронным. +// Веб-клиент не поддерживает "Выполнить", поэтому вариант веб-клиента считаем всегда безмодальным и асинхронным. // По сути все методы по сигнатуре должны совпадать с исходными методами из самых последних версий платформы 8.3, // и лишь обеспечивать обратную совместимость с более старыми платформами. // Т.е. основные модули пишем так, как если бы работали на последней платформе без режима совместимости. @@ -28,20 +28,20 @@ &НаКлиенте Процедура ПустоеОповещение(РезультатВыполнения, ДополнительныеПараметры = Неопределено) Экспорт - + КонецПроцедуры &НаКлиенте Процедура ПолучениеКаталогаВременныхФайловДляСохраненияЗавершение(КаталогВременныхФайлов, ДополнительныеПараметры) Экспорт - + Если ЗначениеЗаполнено(КаталогВременныхФайлов) Тогда - - смв_ПолучитьФайлы(ДополнительныеПараметры.ОповещениеЗавершенияСохранения, + + смв_ПолучитьФайлы(ДополнительныеПараметры.ОповещениеЗавершенияСохранения, ДополнительныеПараметры.ДанныеДляСохранения, КаталогВременныхФайлов); - + КонецЕсли; - + КонецПроцедуры #КонецОбласти @@ -50,88 +50,88 @@ &НаКлиенте Функция СформироватьСтрокуФильтраДиалогаВыбораФайла(СписокФорматовФайлов) Экспорт - + Результат = ""; Разделитель = ""; - + Для Каждого ТипФайла Из СтроковыеУтилиты().РазложитьСтрокуВМассивПодстрок(СписокФорматовФайлов) Цикл - + Результат = Результат + Разделитель + СформироватьСтрокуФильтра(ТипФайла); Разделитель = "|"; - + КонецЦикла; - + Возврат Результат; - + КонецФункции &НаКлиенте Функция СформироватьСтрокуФильтра(ФорматФайла) - + Результат = ""; - + Если ВРег(ФорматФайла) = "WORD" Тогда - + Результат = "Документы Word|*.doc?"; - + ИначеЕсли ВРег(ФорматФайла) = "EXCEL" Тогда - + Результат = "Книги Excel|*.xls?"; - + ИначеЕсли ВРег(ФорматФайла) = "PDF" Тогда - + Результат = "Файлы PDF|*.pdf"; - + ИначеЕсли ВРег(ФорматФайла) = "TEXT" Тогда - + Результат = "Текстовые файлы|*.txt"; - + ИначеЕсли ВРег(ФорматФайла) = "XML" Тогда - + Результат = "Файлы XML|*.xml"; - + Иначе - + Результат = "Все файлы|*.*"; - + КонецЕсли; - + Возврат Результат; КонецФункции &НаКлиенте Функция СформироватьСтрокуФильтраПоРасширению(Знач РасширениеФайла) - + РасширениеФайла = ВРег(РасширениеФайла); - + Результат = ""; Если РасширениеФайла = "CF" Тогда - + Результат = "Файл конфигурации (cf) |*.%1"; - + ИначеЕсли РасширениеФайла = "EPF" Тогда - + Результат = "Внешняя обработка (epf)|*.%1"; - + ИначеЕсли РасширениеФайла = "MXL" Тогда - + Результат = "Табличный документ 1с (mxl)|*.%1"; - + Иначе - + Результат = "%1|*.%1"; - + КонецЕсли; - + Возврат СтроковыеУтилиты().ПодставитьПараметрыВСтроку(Результат, РасширениеФайла); - + КонецФункции &НаКлиенте Функция ТиповаяСтруктураДиалогаВыбораФайла(Заголовок = "", Каталог = "", МножественныйВыбор = Ложь, ПолноеИмяФайла = "", Фильтр = "") - + ТиповаяСтруктура = Новый Структура; - + ТиповаяСтруктура.Вставить("Заголовок", ?(ПустаяСтрока(Заголовок), ЗаголовокПоУмолчанию(), Заголовок)); ТиповаяСтруктура.Вставить("Каталог", ?(ПустаяСтрока(Каталог), "", Каталог)); ТиповаяСтруктура.Вставить("МножественныйВыбор", МножественныйВыбор); @@ -139,9 +139,9 @@ ТиповаяСтруктура.Вставить("ПредварительныеПросмотр", Истина); ТиповаяСтруктура.Вставить("ПроверятьСуществованиеФайла", Истина); ТиповаяСтруктура.Вставить("Фильтр", ?(ПустаяСтрока(Фильтр), "Все файлы (*.*)|*.*", Фильтр)); - + Возврат ТиповаяСтруктура; - + КонецФункции &НаКлиенте @@ -158,13 +158,13 @@ &НаКлиенте Функция смв_НовыйОписаниеОповещения(ИмяПроцедуры, Модуль, ДополнительныеПараметры = Неопределено, ИмяПроцедурыОбработкиОшибки = "", МодульОбработкиОшибки = Неопределено) Экспорт - + #Если ВебКлиент Тогда - + Возврат Новый ОписаниеОповещения(ИмяПроцедуры, Модуль, ДополнительныеПараметры); - + #Иначе - + Если МодальностьЗапрещена Тогда Возврат Вычислить("Новый ОписаниеОповещения(ИмяПроцедуры, Модуль, ДополнительныеПараметры)"); // С ошибками пока не будем бороться, были какие-то сложности с типом параметров @@ -172,41 +172,41 @@ Возврат Новый Структура("ИмяПроцедуры, Модуль, ДополнительныеПараметры, ИмяПроцедурыОбработкиОшибки, МодульОбработкиОшибки" , ИмяПроцедуры, Модуль, ДополнительныеПараметры, ИмяПроцедурыОбработкиОшибки, МодульОбработкиОшибки); КонецЕсли; - + #КонецЕсли - + КонецФункции &НаКлиенте Процедура смв_ВыполнитьОбработкуОповещения(ОписаниеОповещения, Результат = Неопределено, КоличествоПараметровОбработчика = 2) Экспорт - + Если ОписаниеОповещения = Неопределено Тогда Возврат; КонецЕсли; - + #Если ВебКлиент Тогда - + ВыполнитьОбработкуОповещения(ОписаниеОповещения); - + #Иначе - + Если МодальностьЗапрещена Тогда Если КоличествоПараметровОбработчика = 2 Тогда Выполнить("ВыполнитьОбработкуОповещения(ОписаниеОповещения, Результат)"); ИначеЕсли КоличествоПараметровОбработчика = 1 Тогда Выполнить("ВыполнитьОбработкуОповещения(ОписаниеОповещения)"); КонецЕсли; - Иначе + Иначе // Если модальность не запрещена, то в ОписаниеОповещения у нас будет Структура Если КоличествоПараметровОбработчика = 2 Тогда Выполнить("ОписаниеОповещения.Модуль." + ОписаниеОповещения.ИмяПроцедуры + "(Результат, ОписаниеОповещения.ДополнительныеПараметры)"); ИначеЕсли КоличествоПараметровОбработчика = 1 Тогда - Выполнить("ОписаниеОповещения.Модуль." + ОписаниеОповещения.ИмяПроцедуры + "(ОписаниеОповещения.ДополнительныеПараметры)"); + Выполнить("ОписаниеОповещения.Модуль." + ОписаниеОповещения.ИмяПроцедуры + "(ОписаниеОповещения.ДополнительныеПараметры)"); КонецЕсли; КонецЕсли; - + #КонецЕсли - + КонецПроцедуры #КонецОбласти @@ -221,68 +221,68 @@ , ОписаниеОповещенияОЗакрытии = Неопределено , РежимОткрытияОкна = Неопределено) Экспорт - + // Синтаксис из 8.2.9 и 8.2.19: - - // ОткрытьФорму(<ИмяФормы>, <Параметры>, <Владелец>, <Уникальность>, <Окно>) - + + // ОткрытьФорму(<ИмяФормы>, <Параметры>, <Владелец>, <Уникальность>, <Окно>) + // Т.е. отсутствуют последние 3 параметра - а в них и РежимОткрытияОкна, и ОписаниеОповещенияОЗакрытии. // Значит, тут нам надо понять - открывать ли форму модально там, где запрета на модальность еще нет - - + + // Теперь варианты РежимОткрытияОкнаФормы в 8.2.9: // БлокироватьОкноВладельца (LockOwnerWindow) // Независимый (Independent) - + Если Найти(ИмяФормы, ".") = 0 Тогда - + ИмяФормы = ВладелецФормы.ПутьКФормам + ИмяФормы; - + КонецЕсли; - + Если НЕ МодальностьЗапрещена Тогда - + ОткрыватьМодально = Истина; - + Если РежимОткрытияОкна = Неопределено Или РежимОткрытияОкна = РежимОткрытияОкнаФормы.Независимый Тогда - + ОткрыватьМодально = Ложь; - + КонецЕсли; - + КонецЕсли; - + #Если ВебКлиент Тогда - + ОткрытьФорму(ИмяФормы, ПараметрыФормы, Владелец, Уникальность, , , ОписаниеОповещенияОЗакрытии, РежимОткрытияОкна); - + #Иначе - + Если МодальностьЗапрещена Тогда - + Выполнить("ОткрытьФорму(ИмяФормы, ПараметрыФормы, Владелец, Уникальность, Окно, , ОписаниеОповещенияОЗакрытии, РежимОткрытияОкна)"); - - Иначе - + + Иначе + Если ОткрыватьМодально Тогда РезультатОткрытия = Вычислить("ОткрытьФормуМодально(ИмяФормы, ПараметрыФормы, Владелец)"); смв_ВыполнитьОбработкуОповещения(ОписаниеОповещенияОЗакрытии, РезультатОткрытия); - Иначе + Иначе Выполнить("ОткрытьФорму(ИмяФормы, ПараметрыФормы, Владелец, Уникальность, Окно)"); КонецЕсли; - + КонецЕсли; - + #КонецЕсли - + КонецПроцедуры &НаКлиенте Функция смв_ПустоеОповещение() Экспорт - + Возврат смв_НовыйОписаниеОповещения("ПустоеОповещение", ЭтаФорма); - + КонецФункции @@ -294,20 +294,20 @@ Заголовок = ЗаголовокПоУмолчанию(); КонецЕсли; #Если ВебКлиент Тогда - + ПоказатьПредупреждение(ОписаниеОповещенияОЗавершении, ТекстПредупреждения, Таймаут, Заголовок); - + #Иначе - + Если МодальностьЗапрещена Тогда Выполнить("ПоказатьПредупреждение(ОписаниеОповещенияОЗавершении, ТекстПредупреждения, Таймаут, Заголовок)"); Иначе Выполнить("Предупреждение(ТекстПредупреждения, Таймаут, Заголовок)"); смв_ВыполнитьОбработкуОповещения(ОписаниеОповещенияОЗавершении, , 1); КонецЕсли; - + #КонецЕсли - + КонецПроцедуры &НаКлиенте @@ -317,11 +317,11 @@ Таймаут = 0, КнопкаПоУмолчанию = Неопределено, Заголовок = "", - КнопкаТаймаута = Неопределено) Экспорт - + КнопкаТаймаута = Неопределено) Экспорт + Если ПустаяСтрока(Заголовок) Тогда Заголовок = ЗаголовокПоУмолчанию(); - КонецЕсли; + КонецЕсли; #Если ВебКлиент Тогда ПоказатьВопрос(ОписаниеОповещенияОЗавершении, ТекстВопроса, Кнопки, Таймаут, КнопкаПоУмолчанию, Заголовок, КнопкаТаймаута); #Иначе @@ -332,25 +332,25 @@ Выполнить("ОписаниеОповещенияОЗавершении.Модуль." + ОписаниеОповещенияОЗавершении.ИмяПроцедуры + "(Ответ, ОписаниеОповещенияОЗавершении.ДополнительныеПараметры)"); КонецЕсли; #КонецЕсли - -КонецПроцедуры + +КонецПроцедуры &НаКлиенте Процедура смв_ПоказатьЗначение(ОписаниеОповещенияОЗавершении = Неопределено, Значение) Экспорт - + #Если ВебКлиент Тогда - + ПоказатьЗначение(ОписаниеОповещенияОЗавершении, Значение); - + #Иначе - + Если МодальностьЗапрещена Тогда Выполнить("ПоказатьЗначение(ОписаниеОповещенияОЗавершении, Значение)"); Иначе Выполнить("ОткрытьЗначение(Значение)"); смв_ВыполнитьОбработкуОповещения(ОписаниеОповещенияОЗавершении); КонецЕсли; - + #КонецЕсли КонецПроцедуры @@ -360,8 +360,8 @@ Строка = "", Подсказка = "", Длина = 0, - Многострочность = Ложь) Экспорт - + Многострочность = Ложь) Экспорт + #Если ВебКлиент Тогда ПоказатьВводСтроки(ОписаниеОповещенияОЗавершении, Строка, Подсказка, Длина, Многострочность); #Иначе @@ -369,7 +369,7 @@ Выполнить("ПоказатьВводСтроки(ОписаниеОповещенияОЗавершении, Строка, Подсказка, Длина, Многострочность)"); Иначе Если ВвестиСтроку(Строка, Подсказка, Длина, Многострочность) Тогда - + // Здесь необходимо убедиться, что в строку не был передан вредоносный код // Поскольку в 8.2.19 она будет направлена в Выполнить() // UPD кажется, это в данном случае не имеет смысла. @@ -378,19 +378,19 @@ // Иначе // ВызватьИсключение "Некорректно введена строка"; // КонецЕсли; - + КонецЕсли; КонецЕсли; #КонецЕсли - -КонецПроцедуры + +КонецПроцедуры &НаКлиенте Процедура смв_ПоказатьВводДаты(ОписаниеОповещенияОЗавершении, ВыбраннаяДата = "", Подсказка = "", - ЧастьДаты = Неопределено) Экспорт - + ЧастьДаты = Неопределено) Экспорт + #Если ВебКлиент Тогда ПоказатьВводДаты(ОписаниеОповещенияОЗавершении, ВыбраннаяДата, Подсказка, ЧастьДаты); #Иначе @@ -402,72 +402,72 @@ КонецЕсли; КонецЕсли; #КонецЕсли - -КонецПроцедуры + +КонецПроцедуры #КонецОбласти &НаКлиенте Процедура смв_ПоказатьВыборЭлемента(ОписаниеОповещенияОЗавершении, Список, Заголовок = "", Элемент = Неопределено) Экспорт - + Если ПустаяСтрока(Заголовок) Тогда Заголовок = ЗаголовокПоУмолчанию(); КонецЕсли; - + #Если ВебКлиент Тогда - + Список.ПоказатьВыборЭлемента(ОписаниеОповещенияОЗавершении, Заголовок, Элемент); - + #Иначе - + Если МодальностьЗапрещена Тогда Выполнить("Список.ПоказатьВыборЭлемента(ОписаниеОповещенияОЗавершении, Заголовок, Элемент)"); Иначе ВыбранныйЭлемент = Вычислить("Список.ВыбратьЭлемент(Заголовок, Элемент)"); смв_ВыполнитьОбработкуОповещения(ОписаниеОповещенияОЗавершении, ВыбранныйЭлемент, 2); КонецЕсли; - + #КонецЕсли КонецПроцедуры &НаКлиенте Процедура смв_Форма_ПоказатьВыборИзМеню(Форма, ОписаниеОповещенияОЗавершении, СписокЗначений, ЭлементФормы = Неопределено, НачальноеЗначение = Неопределено) Экспорт - + #Если ВебКлиент Тогда - + Форма.ПоказатьВыборИзМеню(ОписаниеОповещенияОЗавершении, СписокЗначений, ЭлементФормы); - + #Иначе - + Если МодальностьЗапрещена Тогда Выполнить("Форма.ПоказатьВыборИзМеню(ОписаниеОповещенияОЗавершении, СписокЗначений, ЭлементФормы)"); // вроде бы после 8.3.7, ПоказатьВыборИзМеню глючит - надо бы проверить. Иначе ВыбранноеЗначение = Форма.ВыбратьИзМеню(СписокЗначений, ЭлементФормы); смв_ВыполнитьОбработкуОповещения(ОписаниеОповещенияОЗавершении, ВыбранноеЗначение); КонецЕсли; - + #КонецЕсли КонецПроцедуры &НаКлиенте Процедура смв_ДиалогРедактированияСтандартногоПериода_Показать(Диалог, ОписаниеОповещения) Экспорт - + #Если ВебКлиент Тогда - + Диалог.Показать(ОписаниеОповещения); - + #Иначе - + Если МодальностьЗапрещена Тогда Выполнить("Диалог.Показать(ОписаниеОповещения)"); Иначе - Если Диалог.Редактировать() Тогда + Если Диалог.Редактировать() Тогда смв_ВыполнитьОбработкуОповещения(ОписаниеОповещения, Диалог.Период); КонецЕсли; КонецЕсли; - + #КонецЕсли КонецПроцедуры @@ -479,10 +479,10 @@ Заголовок = "", Каталог = "", МножественныйВыбор = Ложь) Экспорт - + ПараметрыДиалога = ТиповаяСтруктураДиалогаВыбораФайла(Заголовок, Каталог, МножественныйВыбор); - - смв_ПоказатьДиалогВыбораФайла(ОписаниеОповещенияОЗавершении, + + смв_ПоказатьДиалогВыбораФайла(ОписаниеОповещенияОЗавершении, РежимДиалогаВыбораФайла.ВыборКаталога, ПараметрыДиалога); КонецПроцедуры @@ -494,10 +494,10 @@ Каталог = Неопределено, ПолноеИмяФайла = Неопределено, МножественныйВыбор = Ложь) Экспорт - + ПараметрыДиалога = ТиповаяСтруктураДиалогаВыбораФайла(Заголовок, Каталог, МножественныйВыбор, ПолноеИмяФайла, Фильтр); - - смв_ПоказатьДиалогВыбораФайла(ОписаниеОповещенияОЗавершении, + + смв_ПоказатьДиалогВыбораФайла(ОписаниеОповещенияОЗавершении, РежимДиалогаВыбораФайла.Открытие, ПараметрыДиалога); КонецПроцедуры @@ -508,15 +508,15 @@ Заголовок = Неопределено, Каталог = Неопределено, ПолноеИмяФайла = Неопределено) Экспорт - + ПараметрыДиалога = ТиповаяСтруктураДиалогаВыбораФайла(Заголовок, Каталог, Ложь, ПолноеИмяФайла, Фильтр); - смв_ПоказатьДиалогВыбораФайла(ОписаниеОповещенияОЗавершении, + смв_ПоказатьДиалогВыбораФайла(ОписаниеОповещенияОЗавершении, РежимДиалогаВыбораФайла.Сохранение, ПараметрыДиалога); - + КонецПроцедуры - + &НаКлиенте Процедура смв_ПоказатьДиалогВыбораФайла(ОписаниеОповещенияОЗавершении, РежимРаботы, @@ -525,20 +525,20 @@ ЗаполнитьЗначенияСвойств(Диалог, ПараметрыВыбора); #Если ВебКлиент Тогда Если ПроверитьРасширениеРаботыСФайламиВебКлиент() Тогда - + Диалог.Показать(ОписаниеОповещенияОЗавершении); - + Иначе - + смв_ПоказатьПредупреждение(, "Не подключено Расширения для работы с файлами. Обратитесь к администратору для решения проблемы.", 30); - + КонецЕсли; #Иначе Если МодальностьЗапрещена Тогда Выполнить("Диалог.Показать(ОписаниеОповещенияОЗавершении)"); ИначеЕсли Диалог.Выбрать() Тогда Результат = Новый Массив; - + Если РежимРаботы = РежимДиалогаВыбораФайла.ВыборКаталога Тогда Результат.Добавить(Диалог.Каталог); Иначе @@ -546,7 +546,7 @@ Результат.Добавить(Файл); КонецЦикла; КонецЕсли; - + смв_ВыполнитьОбработкуОповещения(ОписаниеОповещенияОЗавершении, Результат); КонецЕсли; #КонецЕсли @@ -555,497 +555,506 @@ #КонецОбласти +&НаСервере +Процедура ЗаписьЖурналаРегистрацииСервер(Сообщение) + ЗаписьЖурналаРегистрации("Отладка",,,,Сообщение); +КонецПроцедуры + #Область Получение_Помещение_файлов &НаКлиенте -Процедура смв_ПоместитьФайлы(ОписаниеОповещенияОЗавершении, +Процедура смв_ПоместитьФайлы(ОписаниеОповещенияОЗавершении, ПомещаемыеФайлы) Экспорт - + #Если ВебКлиент Тогда - + Если ПроверитьРасширениеРаботыСФайламиВебКлиент() Тогда - - НачатьПомещениеФайлов(ОписаниеОповещенияОЗавершении, ПомещаемыеФайлы, , Ложь, КлючУникальности.УникальныйИдентификатор); - + + НачатьПомещениеФайлов(ОписаниеОповещенияОЗавершении, ПомещаемыеФайлы, , Ложь, ВладелецФормы.УникальныйИдентификатор); + Иначе - + смв_ПоказатьПредупреждение(, "Не подключено Расширения для работы с файлами. Обратитесь к администратору для решения проблемы.", 30); - + КонецЕсли; - - + + #Иначе - + ПомещенныеФайлы = Новый Массив; - - Если МодальностьЗапрещена Тогда - - Выполнить("НачатьПомещениеФайлов(ОписаниеОповещенияОЗавершении, ПомещаемыеФайлы, , Ложь, КлючУникальности.УникальныйИдентификатор)"); - - ИначеЕсли ПоместитьФайлы(ПомещаемыеФайлы, ПомещенныеФайлы, , Ложь, КлючУникальности.УникальныйИдентификатор) Тогда - + + Если ПомещаемыеФайлы.Количество() = 0 Тогда + смв_ВыполнитьОбработкуОповещения(ОписаниеОповещенияОЗавершении, ПомещенныеФайлы); - + + ИначеЕсли МодальностьЗапрещена Тогда + + Выполнить("НачатьПомещениеФайлов(ОписаниеОповещенияОЗавершении, ПомещаемыеФайлы, , Ложь, ВладелецФормы.УникальныйИдентификатор)"); + + ИначеЕсли ПоместитьФайлы(ПомещаемыеФайлы, ПомещенныеФайлы, , Ложь, ВладелецФормы.УникальныйИдентификатор) Тогда + + смв_ВыполнитьОбработкуОповещения(ОписаниеОповещенияОЗавершении, ПомещенныеФайлы); + КонецЕсли; - + #КонецЕсли - + КонецПроцедуры &НаКлиенте -Процедура смв_ПоместитьФайлыЧерезДиалог(ОписаниеОповещенияОЗавершении, +Процедура смв_ПоместитьФайлыЧерезДиалог(ОписаниеОповещенияОЗавершении, Фильтр = Неопределено, Заголовок = Неопределено, Каталог = Неопределено, ПолноеИмяФайла = Неопределено, МножественныйВыбор = Ложь) Экспорт - + ПараметрыДиалога = ТиповаяСтруктураДиалогаВыбораФайла(Заголовок, Каталог, МножественныйВыбор, ПолноеИмяФайла, Фильтр); ДиалогОткрытияФайла = Новый ДиалогВыбораФайла(РежимДиалогаВыбораФайла.Открытие); ЗаполнитьЗначенияСвойств(ДиалогОткрытияФайла, ПараметрыДиалога); #Если ВебКлиент Тогда - + Если ПроверитьРасширениеРаботыСФайламиВебКлиент() Тогда - - НачатьПомещениеФайлов(ОписаниеОповещенияОЗавершении, , ДиалогОткрытияФайла, Истина, КлючУникальности.УникальныйИдентификатор); - + + НачатьПомещениеФайлов(ОписаниеОповещенияОЗавершении, , ДиалогОткрытияФайла, Истина, ВладелецФормы.УникальныйИдентификатор); + Иначе - + смв_ПоказатьПредупреждение(, "Не подключено Расширения для работы с файлами. Обратитесь к администратору для решения проблемы.", 30); - + КонецЕсли; - - + + #Иначе - + ПомещенныеФайлы = Новый Массив; - + Если МодальностьЗапрещена Тогда - - Выполнить("НачатьПомещениеФайлов(ОписаниеОповещенияОЗавершении, , ДиалогОткрытияФайла, Истина, КлючУникальности.УникальныйИдентификатор);"); - - ИначеЕсли ПоместитьФайлы(, ПомещенныеФайлы, ДиалогОткрытияФайла, Истина, КлючУникальности.УникальныйИдентификатор) Тогда - + + Выполнить("НачатьПомещениеФайлов(ОписаниеОповещенияОЗавершении, , ДиалогОткрытияФайла, Истина, ВладелецФормы.УникальныйИдентификатор);"); + + ИначеЕсли ПоместитьФайлы(, ПомещенныеФайлы, ДиалогОткрытияФайла, Истина, ВладелецФормы.УникальныйИдентификатор) Тогда + смв_ВыполнитьОбработкуОповещения(ОписаниеОповещенияОЗавершении, ПомещенныеФайлы); - + КонецЕсли; - + #КонецЕсли - + КонецПроцедуры &НаКлиенте Процедура смв_ПоместитьФайл(ОписаниеОповещенияОЗавершении, - АдресХранения, ПомещаемыйФайл, Интерактивно = Ложь) Экспорт - + АдресХранения, Знач ПомещаемыйФайл, Интерактивно = Ложь) Экспорт + #Если ВебКлиент Тогда - + Если ПроверитьРасширениеРаботыСФайламиВебКлиент() Тогда - - НачатьПомещениеФайла(ОписаниеОповещенияОЗавершении, АдресХранения, ПомещаемыйФайл, Интерактивно, КлючУникальности.УникальныйИдентификатор); - + + НачатьПомещениеФайла(ОписаниеОповещенияОЗавершении, АдресХранения, ПомещаемыйФайл, Интерактивно, + ВладелецФормы.УникальныйИдентификатор); + Иначе - + смв_ПоказатьПредупреждение(, "Не подключено Расширения для работы с файлами. Обратитесь к администратору для решения проблемы.", 30); - + КонецЕсли; - - + + #Иначе - + Если МодальностьЗапрещена Тогда - - Выполнить("НачатьПомещениеФайла(ОписаниеОповещенияОЗавершении, АдресХранения, ПомещаемыйФайл, Интерактивно, КлючУникальности.УникальныйИдентификатор)"); - - ИначеЕсли ПоместитьФайлы(АдресХранения, ПомещаемыйФайл, ПомещаемыйФайл, Интерактивно, КлючУникальности.УникальныйИдентификатор) Тогда - - Выполнить("ОписаниеОповещения.Модуль." + ОписаниеОповещенияОЗавершении.ИмяПроцедуры + "(Истина, АдресХранилища, ПомещаемыйФайл, ОписаниеОповещения.ДополнительныеПараметры)"); - + + Выполнить("НачатьПомещениеФайла(ОписаниеОповещенияОЗавершении, АдресХранения, ПомещаемыйФайл, Интерактивно, ВладелецФормы.УникальныйИдентификатор)"); + + ИначеЕсли ПоместитьФайл(АдресХранения, ПомещаемыйФайл, ПомещаемыйФайл, Интерактивно, ВладелецФормы.УникальныйИдентификатор) Тогда + + Выполнить("ОписаниеОповещенияОЗавершении.Модуль." + ОписаниеОповещенияОЗавершении.ИмяПроцедуры + "(Истина, АдресХранения, ПомещаемыйФайл, ОписаниеОповещенияОЗавершении.ДополнительныеПараметры)"); КонецЕсли; - + #КонецЕсли - + КонецПроцедуры &НаКлиенте -Процедура смв_ПолучитьФайлы(ОписаниеОповещенияОЗавершении, +Процедура смв_ПолучитьФайлы(ОписаниеОповещенияОЗавершении, СохраняемыеФайлы, КаталогСохранения) Экспорт - + #Если ВебКлиент Тогда - + Если ПроверитьРасширениеРаботыСФайламиВебКлиент() Тогда - + НачатьПолучениеФайлов(ОписаниеОповещенияОЗавершении, СохраняемыеФайлы, КаталогСохранения, Ложь); - + Иначе - + смв_ПоказатьПредупреждение(, "Не подключено Расширения для работы с файлами. Обратитесь к администратору для решения проблемы.", 30); - + КонецЕсли; - - + + #Иначе - + СохраненныеФайлы = Новый Массив; - + Если МодальностьЗапрещена Тогда - + Выполнить("НачатьПолучениеФайлов(ОписаниеОповещенияОЗавершении, СохраняемыеФайлы, КаталогСохранения, Ложь)"); - + ИначеЕсли ПолучитьФайлы(СохраняемыеФайлы, СохраненныеФайлы, КаталогСохранения, Ложь) Тогда - + смв_ВыполнитьОбработкуОповещения(ОписаниеОповещенияОЗавершении, СохраненныеФайлы); - + КонецЕсли; - + #КонецЕсли - + КонецПроцедуры &НаКлиенте -Процедура смв_ПолучитьФайлыЧерезДиалог(ОписаниеОповещенияОЗавершении, +Процедура смв_ПолучитьФайлыЧерезДиалог(ОписаниеОповещенияОЗавершении, СохраняемыеФайлы, Заголовок = "", Каталог = "" ) Экспорт - + Если СохраняемыеФайлы.Количество() = 1 Тогда - + ТестФайл = Новый Файл(СохраняемыеФайлы[0].Имя); Расширение = СтрЗаменить(ВРег(ТестФайл.Расширение), ".", ""); Фильтр = СформироватьСтрокуФильтраПоРасширению(Расширение); - + ПараметрыДиалога = ТиповаяСтруктураДиалогаВыбораФайла(Заголовок, Каталог, Ложь, ТестФайл.Имя, Фильтр); ДиалогВыбораКаталог = Новый ДиалогВыбораФайла(РежимДиалогаВыбораФайла.Сохранение); - + Иначе - + ПараметрыДиалога = ТиповаяСтруктураДиалогаВыбораФайла(Заголовок, Каталог); ДиалогВыбораКаталог = Новый ДиалогВыбораФайла(РежимДиалогаВыбораФайла.ВыборКаталога); - + КонецЕсли; - + ЗаполнитьЗначенияСвойств(ДиалогВыбораКаталог, ПараметрыДиалога); - + #Если ВебКлиент Тогда - + Если ПроверитьРасширениеРаботыСФайламиВебКлиент() Тогда - + НачатьПолучениеФайлов(ОписаниеОповещенияОЗавершении, СохраняемыеФайлы, ДиалогВыбораКаталог, Истина); - + Иначе - + смв_ПоказатьПредупреждение(, "Не подключено Расширения для работы с файлами. Обратитесь к администратору для решения проблемы.", 30); - + КонецЕсли; - - + + #Иначе - + СохраненныеФайлы = Новый Массив; - + Если МодальностьЗапрещена Тогда - + Выполнить("НачатьПолучениеФайлов(ОписаниеОповещенияОЗавершении, СохраняемыеФайлы, ДиалогВыбораКаталог, Истина)"); - + ИначеЕсли ПолучитьФайлы(СохраняемыеФайлы, СохраненныеФайлы, ДиалогВыбораКаталог, Истина) Тогда - + смв_ВыполнитьОбработкуОповещения(ОписаниеОповещенияОЗавершении, СохраненныеФайлы); - + КонецЕсли; - + #КонецЕсли - + КонецПроцедуры &НаКлиенте -Процедура смв_ПолучитьФайлыВоВременныйКаталог(ОписаниеОповещенияОЗавершении, +Процедура смв_ПолучитьФайлыВоВременныйКаталог(ОписаниеОповещенияОЗавершении, СохраняемыеФайлы) Экспорт - + ДополнительныеПараметры = Новый Структура; ДополнительныеПараметры.Вставить("ДанныеДляСохранения", СохраняемыеФайлы); - ДополнительныеПараметры.Вставить("ОповещениеЗавершенияСохранения", ОписаниеОповещенияОЗавершении); - + ДополнительныеПараметры.Вставить("ОповещениеЗавершенияСохранения", ОписаниеОповещенияОЗавершении); + ОписаниеОповещения = смв_НовыйОписаниеОповещения("ПолучениеКаталогаВременныхФайловДляСохраненияЗавершение", ЭтаФорма, ДополнительныеПараметры); - + смв_КаталогВременныхФайлов(ОписаниеОповещения); - + КонецПроцедуры &НаКлиенте Функция НовыйОписаниеПередаваемогоФайла(ИмяФайла, ДанныеДляПередачи) Экспорт - - Адрес = ПоместитьВоВременноеХранилище(ДанныеДляПередачи, КлючУникальности.УникальныйИдентификатор); - + + Адрес = ПоместитьВоВременноеХранилище(ДанныеДляПередачи, ВладелецФормы.УникальныйИдентификатор); + Возврат Новый ОписаниеПередаваемогоФайла(ИмяФайла, Адрес); - + КонецФункции #КонецОбласти &НаКлиенте -Процедура смв_ЗапуститьПриложение(ОписаниеОповещенияОЗавершении, +Процедура смв_ЗапуститьПриложение(ОписаниеОповещенияОЗавершении, СтрокаЗапускаПриложения, ТекущийКаталог = "", ДождатьсяЗавершения = Ложь, КодВозврата = Неопределено) Экспорт - + #Если ВебКлиент Тогда - + НачатьЗапускПриложения(ОписаниеОповещенияОЗавершении, СтрокаЗапускаПриложения, ТекущийКаталог, ДождатьсяЗавершения); - + #Иначе - + Если МодальностьЗапрещена Тогда - + Выполнить("НачатьЗапускПриложения(ОписаниеОповещенияОЗавершении, СтрокаЗапускаПриложения, ТекущийКаталог, ДождатьсяЗавершения)"); - + Иначе - + ЗапуститьПриложение(СтрокаЗапускаПриложения, ТекущийКаталог, ДождатьсяЗавершения, КодВозврата); смв_ВыполнитьОбработкуОповещения(ОписаниеОповещенияОЗавершении, КодВозврата); - + КонецЕсли; - + #КонецЕсли - + КонецПроцедуры &НаКлиенте Процедура смв_УстановитьРасширениеРаботыСФайлами(ОписаниеОповещенияОЗавершении = Неопределено) Экспорт - + #Если ВебКлиент Тогда - - + + НачатьУстановкуРасширенияРаботыСФайлами(ОписаниеОповещенияОЗавершении); - + #Иначе - + Если МодальностьЗапрещена Тогда - + Выполнить("НачатьУстановкуРасширенияРаботыСФайлами(ОписаниеОповещенияОЗавершении)"); - + Иначе - + УстановитьРасширениеРаботыСФайлами(); смв_ВыполнитьОбработкуОповещения(ОписаниеОповещенияОЗавершении); - + КонецЕсли; - + #КонецЕсли - + КонецПроцедуры &НаКлиенте Процедура смв_ПодключитьРасширениеРаботыСФайлами(ОписаниеОповещенияОЗавершении = Неопределено) Экспорт - + #Если ВебКлиент Тогда - - + + НачатьПодключениеРасширенияРаботыСФайлами(ОписаниеОповещенияОЗавершении); - + #Иначе - + Если МодальностьЗапрещена Тогда - + Выполнить("НачатьПодключениеРасширенияРаботыСФайлами(ОписаниеОповещенияОЗавершении)"); - + Иначе - + ПодключитьРасширениеРаботыСФайлами(); смв_ВыполнитьОбработкуОповещения(ОписаниеОповещенияОЗавершении); - + КонецЕсли; - + #КонецЕсли - + КонецПроцедуры #Область Операции_с_файлами &НаКлиенте Процедура смв_НайтиФайлы(ОписаниеОповещенияОЗавершении, Путь, Маска = Неопределено, ИскатьВПодкаталогах = Ложь) Экспорт - + #Если ВебКлиент Тогда - + НачатьПоискФайлов(ОписаниеОповещенияОЗавершении, Путь, Маска, ИскатьВПодкаталогах); - + #Иначе - + Если МодальностьЗапрещена Тогда - + Выполнить("НачатьПоискФайлов(ОписаниеОповещенияОЗавершении, Путь, Маска, ИскатьВПодкаталогах)"); - + Иначе - + Результат = НайтиФайлы(Путь, Маска, ИскатьВПодкаталогах); смв_ВыполнитьОбработкуОповещения(ОписаниеОповещенияОЗавершении, Результат); - + КонецЕсли; - + #КонецЕсли - + КонецПроцедуры &НаКлиенте Процедура смв_КаталогВременныхФайлов(ОписаниеОповещенияОЗавершении) Экспорт - + #Если ВебКлиент Тогда - + Если ПроверитьРасширениеРаботыСФайламиВебКлиент() Тогда - + НачатьПолучениеКаталогаВременныхФайлов(ОписаниеОповещенияОЗавершении); - + Иначе - + смв_ПоказатьПредупреждение(, "Не подключено Расширения для работы с файлами. Обратитесь к администратору для решения проблемы.", 30); - + КонецЕсли; - - + + #Иначе - + Если МодальностьЗапрещена Тогда - + Выполнить("НачатьПолучениеКаталогаВременныхФайлов(ОписаниеОповещенияОЗавершении)"); - + Иначе - + смв_ВыполнитьОбработкуОповещения(ОписаниеОповещенияОЗавершении, КаталогВременныхФайлов()); - + КонецЕсли; - + #КонецЕсли - + КонецПроцедуры &НаКлиенте Процедура смв_Файл_ПолучитьВремяИзменения(Файл, ОписаниеОповещенияОЗавершении) Экспорт - + #Если ВебКлиент Тогда - + Если ПроверитьРасширениеРаботыСФайламиВебКлиент() Тогда - + Файл.НачатьПолучениеВремениИзменения(ОписаниеОповещенияОЗавершении); - + Иначе - + смв_ПоказатьПредупреждение(, "Не подключено Расширения для работы с файлами. Обратитесь к администратору для решения проблемы.", 30); - + КонецЕсли; - - + + #Иначе - + Если МодальностьЗапрещена Тогда - + Выполнить("Файл.НачатьПолучениеВремениИзменения(ОписаниеОповещенияОЗавершении)"); - + Иначе - + смв_ВыполнитьОбработкуОповещения(ОписаниеОповещенияОЗавершении, Файл.ПолучитьВремяИзменения()); - + КонецЕсли; - + #КонецЕсли - + КонецПроцедуры &НаКлиенте Процедура смв_Файл_Существует(Файл, ОписаниеОповещенияОЗавершении) Экспорт - + #Если ВебКлиент Тогда - + Если ПроверитьРасширениеРаботыСФайламиВебКлиент() Тогда - + Файл.НачатьПроверкуСуществования (ОписаниеОповещенияОЗавершении); - + Иначе - + смв_ПоказатьПредупреждение(, "Не подключено Расширения для работы с файлами. Обратитесь к администратору для решения проблемы.", 30); - + КонецЕсли; - - + + #Иначе - + Если МодальностьЗапрещена Тогда - + Выполнить("Файл.НачатьПроверкуСуществования (ОписаниеОповещенияОЗавершении)"); - + Иначе - + смв_ВыполнитьОбработкуОповещения(ОписаниеОповещенияОЗавершении, Файл.Существует()); - + КонецЕсли; - + #КонецЕсли - + КонецПроцедуры &НаКлиенте Процедура смв_Файл_ЭтоФайл(Файл, ОписаниеОповещенияОЗавершении) Экспорт - + #Если ВебКлиент Тогда - + Если ПроверитьРасширениеРаботыСФайламиВебКлиент() Тогда - + Файл.НачатьПроверкуЭтоФайл(ОписаниеОповещенияОЗавершении); - + Иначе - + смв_ПоказатьПредупреждение(, "Не подключено Расширения для работы с файлами. Обратитесь к администратору для решения проблемы.", 30); - + КонецЕсли; - - + + #Иначе - + Если МодальностьЗапрещена Тогда - + Выполнить("Файл.НачатьПроверкуЭтоФайл(ОписаниеОповещенияОЗавершении)"); - + Иначе - + смв_ВыполнитьОбработкуОповещения(ОписаниеОповещенияОЗавершении, Файл.ЭтоФайл()); - + КонецЕсли; - + #КонецЕсли - + КонецПроцедуры &НаКлиенте Процедура смв_Файл_ЭтоКаталог(Файл, ОписаниеОповещенияОЗавершении) Экспорт - + #Если ВебКлиент Тогда - + Если ПроверитьРасширениеРаботыСФайламиВебКлиент() Тогда - + Файл.НачатьПроверкуЭтоКаталог(ОписаниеОповещенияОЗавершении); - + Иначе - + смв_ПоказатьПредупреждение(, "Не подключено Расширения для работы с файлами. Обратитесь к администратору для решения проблемы.", 30); - + КонецЕсли; - - + + #Иначе - + Если МодальностьЗапрещена Тогда - + Выполнить("Файл.НачатьПроверкуЭтоКаталог(ОписаниеОповещенияОЗавершении)"); - + Иначе - + смв_ВыполнитьОбработкуОповещения(ОписаниеОповещенияОЗавершении, Файл.ЭтоКаталог()); - + КонецЕсли; - + #КонецЕсли - + КонецПроцедуры #КонецОбласти @@ -1054,17 +1063,17 @@ &НаКлиенте Функция СтроковыеУтилиты() - + Если СтроковыеУтилиты = Неопределено Тогда - - СтроковыеУтилиты = КлючУникальности.Плагин("СтроковыеУтилиты"); - + + СтроковыеУтилиты = ВладелецФормы.Плагин("СтроковыеУтилиты"); + КонецЕсли; - + Возврат СтроковыеУтилиты; - + КонецФункции - + #КонецОбласти &НаКлиенте diff --git "a/epf/xddTestRunner/xddTestRunner/Forms/\320\243\320\277\321\200\320\260\320\262\320\273\321\217\320\265\320\274\320\260\321\217\320\244\320\276\321\200\320\274\320\260/Ext/Form/Module.bsl" "b/epf/xddTestRunner/xddTestRunner/Forms/\320\243\320\277\321\200\320\260\320\262\320\273\321\217\320\265\320\274\320\260\321\217\320\244\320\276\321\200\320\274\320\260/Ext/Form/Module.bsl" index 32e45e530..168a67db0 100644 --- "a/epf/xddTestRunner/xddTestRunner/Forms/\320\243\320\277\321\200\320\260\320\262\320\273\321\217\320\265\320\274\320\260\321\217\320\244\320\276\321\200\320\274\320\260/Ext/Form/Module.bsl" +++ "b/epf/xddTestRunner/xddTestRunner/Forms/\320\243\320\277\321\200\320\260\320\262\320\273\321\217\320\265\320\274\320\260\321\217\320\244\320\276\321\200\320\274\320\260/Ext/Form/Module.bsl" @@ -161,14 +161,14 @@ Закрыть(); Если Объект.ЭтоВстроеннаяОбработка Тогда // Для встроенной в конф. обработки открываем форму - + ОткрытьФорму(ЭтаФорма.ИмяФормы); - + Иначе ОписаниеЗавершения = АСинк().смв_НовыйОписаниеОповещения("КомандаПерезагрузитьФормуЗавершение", ЭтаФорма); АСинк().смв_ПоместитьФайл(ОписаниеЗавершения, АдресХранилища, ЭтаФорма.ИспользуемоеИмяФайла ); - + КонецЕсли; КонецПроцедуры @@ -231,7 +231,7 @@ // Для встроенного в состав конфигурации браузера тестов // плагины также загружаем из встроенных обработок Если Объект.ЭтоВстроеннаяОбработка Тогда - + ЗагрузитьВстроенныеПлагины(); Для Каждого Плагин Из Объект.Плагины Цикл КэшФормПлагинов.Вставить(Плагин.Ключ, Истина); @@ -240,13 +240,13 @@ ДобавитьКомандыЗагрузчиковНаФорме(); Иначе - + КаталогПлагинов = ПолучитьПутьКПлагинам(); ОбработчикПоискаКлиентскихПлагинов = АСинк().смв_НовыйОписаниеОповещения("ОбработчикПоискаКлиентскихПлагинов", ЭтаФорма); - АСинк().смв_НайтиФайлы(ОбработчикПоискаКлиентскихПлагинов, + АСинк().смв_НайтиФайлы(ОбработчикПоискаКлиентскихПлагинов, КаталогПлагинов, "*.epf", Ложь); - + КонецЕсли; КонецПроцедуры @@ -271,7 +271,7 @@ КонецЦикла; ПодключитьНайденныеКлиентскиеПлагины(ПомещенныеФайлы, ИдентификаторыПлагинов); - + Иначе Для каждого ФайлОбработки Из НайденныеФайлы Цикл @@ -286,17 +286,17 @@ КонецЦикла; Если ПомещаемыеФайлы.Количество() Тогда - + ПараметрыЗавершения = Новый Структура("ИдентификаторыПлагинов", ИдентификаторыПлагинов); ОписаниеЗавершения = АСинк().смв_НовыйОписаниеОповещения("ОбработчикПоискаКлиентскихПлагиновЗавершение", ЭтаФорма, ПараметрыЗавершения); АСинк().смв_ПоместитьФайлы(ОписаниеЗавершения, ПомещаемыеФайлы); - + Иначе - + ПодключитьНайденныеКлиентскиеПлагины(Новый Массив, ИдентификаторыПлагинов); - + КонецЕсли; - + КонецЕсли; КонецПроцедуры @@ -1161,7 +1161,7 @@ НастройкиШагов.xddShutdown = ПараметрыЗапуска.Свойство(ПарсерКоманднойСтроки.Объект.ВозможныеКлючи.xddShutdown); СобратьНастройкиОтчетовТестирования(НастройкиШагов, ПараметрыЗапуска); - + Если Не ЕстьПоддержкаАсинхронныхВызовов Тогда ВыполнитьПакетныйЗапускСинхронно(НастройкиШагов); Иначе @@ -1270,37 +1270,37 @@ ОбработкаОповещения = АСинк().смв_ОписаниеОповещения("ВыполнитьШагПакетногоЗапуска", ЭтаФорма, Состояние, "ВыполнитьШагПакетногоЗапускаИсключение", ЭтаФорма); Состояние.ТекущийШаг = Состояние.СледующийШаг; - + Если Состояние.СледующийШаг = "ЗагрузитьТесты" Тогда - + НачатьЗагрузкуТестовПакетныйРежим(ОбработкаОповещения); - + ИначеЕсли Состояние.СледующийШаг = "ЗапуститьТесты" Тогда - + НачатьВыполнениеТестов(РезультатПредыдущегоШага, ОбработкаОповещения); - + ИначеЕсли Состояние.СледующийШаг = "СоставитьОтчет" Тогда - + СоставитьОтчетОТестировании(РезультатПредыдущегоШага, ОбработкаОповещения); - + ИначеЕсли Состояние.СледующийШаг = "ЗавершитьРаботу" Тогда Если Состояние.НастройкиШагов.Параметры_xddExitCodePath <> Неопределено Тогда - + СформироватьФайлКодаВозврата(Состояние.НастройкиШагов.Параметры_xddExitCodePath, Состояние.РезультатыТестирования); - + КонецЕсли; ТестКлиенты = Состояние.НастройкиШагов.ТестКлиенты; - + Если ТестКлиенты <> Неопределено Тогда - + ТестКлиенты.ЗавершитьВсеТестКлиенты(); - + КонецЕсли; ПрекратитьРаботуСистемы(); - + КонецЕсли; КонецПроцедуры // ВыполнитьШагПакетногоЗапуска() @@ -1323,7 +1323,7 @@ &НаКлиенте Процедура НачатьЗагрузкуТестовПакетныйРежим(Знач ОбработкаОповещения) - + Параметры_xddRun = ОбработкаОповещения.ДополнительныеПараметры.НастройкиШагов.Параметры_xddRun; ИдентификаторЗагрузчика = Параметры_xddRun[0]; Загрузчик = ЭтаФорма.Плагин(ИдентификаторЗагрузчика); @@ -1333,7 +1333,7 @@ ОбработкаОповещения.ДополнительныеПараметры.СледующийШаг = "ЗапуститьТесты"; ОбработкаОповещения.ДополнительныеПараметры.Вставить("Загрузчик", Загрузчик); Загрузчик.НачатьЗагрузку(ОбработкаОповещения, ЭтаФорма, ПутьКТестам); - + КонецПроцедуры &НаКлиенте @@ -1434,11 +1434,11 @@ Отчет = НаборОтчетов[ПараметрыДиспетчера.ИндексОтчета]; ПараметрыДиспетчера.ИндексОтчета = ПараметрыДиспетчера.ИндексОтчета + 1; - + КонецЕсли; Если ПараметрыДиспетчера.ИндексОтчета >= НаборОтчетов.Количество() Тогда - + ПоказатьПутьОтчетТестирования(ПараметрыДиспетчера, СписокОтчетов); ПараметрыДиспетчера.ИндексВидаОтчета = ПараметрыДиспетчера.ИндексВидаОтчета + 1; @@ -1448,9 +1448,9 @@ ОбработчикЭкспорта = АСинк().смв_НовыОписаниеОповещения("ДиспетчерЭкспортаОтчетовАсинхронныйПакетныйРежим", ЭтаФорма, ПараметрыДиспетчера, "ДиспетчерЭкспортаОтчетовАсинхронныйПакетныйРежимИсключение", ЭтаФорма); - + ОписаниеПлагина = ГенераторОтчета.ОписаниеПлагина(Объект.ТипыПлагинов); - + ЕстьПотоковыйВывод = ОписаниеПлагина.Свойство("ПотоковыйВывод") И ОписаниеПлагина.ПотоковыйВывод; ФормироватьСводныйФайл = Истина; Если ЕстьПотоковыйВывод Тогда @@ -1458,8 +1458,8 @@ ФормироватьСводныйФайл = ОписаниеПлагина.ФормироватьСводныйФайл; КонецЕсли; КонецЕсли; - - Если ФормироватьСводныйФайл Тогда + + Если ФормироватьСводныйФайл Тогда // т.к. при потоковом выводе нет смысла записывать сводный файл по тестированию ГенераторОтчета.НачатьЭкспорт(ОбработчикЭкспорта, Отчет, СтрокаЭкспорта.Путь); Иначе @@ -1467,11 +1467,11 @@ КонецЕсли; Иначе - + ОбработкаОповещения = ПараметрыДиспетчера.Финализация; ОбработкаОповещения.ДополнительныеПараметры.СледующийШаг = "ЗавершитьРаботу"; Асинк().смв_ВыполнитьОбработкуОповещения(ОбработкаОповещения); - + КонецЕсли; КонецПроцедуры @@ -1718,13 +1718,12 @@ ПутьИнструмента = ПутьКВнешнимИнструментам + ИмяИнструмента + ".epf"; ФайлИнструмента = Новый Файл(ПутьИнструмента); - - ОписаниеОповещения = АСинк().смв_НовыйОписаниеОповещения("ОткрытьИнструментПроверкаСуществованияКонец", ЭтаФорма, - Новый Структура("ИмяИнструмента, ИмяФормы, ФайлИнструмента", - ИмяИнструмента, - ИмяФормы, - ФайлИнструмента)); - + + ОписаниеОповещения = АСинк().смв_НовыйОписаниеОповещения( + "ОткрытьИнструментПроверкаСуществованияКонец", ЭтаФорма, + Новый Структура("ИмяИнструмента, ИмяФормы, ФайлИнструмента", + ИмяИнструмента, ИмяФормы, ФайлИнструмента)); + АСинк().смв_Файл_Существует(ФайлИнструмента, ОписаниеОповещения); КонецЕсли; @@ -1744,9 +1743,10 @@ Возврат; КонецЕсли; - Оповещение = АСинк().смв_НовыйОписаниеОповещения("ОткрытьИнструментЗавершение", ЭтаФорма, Новый Структура("ИмяИнструмента, ИмяФормыИнструмента", ИмяИнструмента, ИмяФормы)); + Оповещение = АСинк().смв_НовыйОписаниеОповещения("ОткрытьИнструментЗавершение", ЭтаФорма, + Новый Структура("ИмяИнструмента, ИмяФормыИнструмента", ИмяИнструмента, ИмяФормы)); АСинк().смв_ПоместитьФайл(Оповещение, АдресХранилища, ФайлИнструмента.ПолноеИмя, Ложь); - + КонецПроцедуры &НаКлиенте @@ -1777,14 +1777,14 @@ Перем АдресХранилища; Если ПодключенныеВнешниеОбработки.Получить(ФайлОбработки.ИмяБезРасширения) = Неопределено Тогда - + ЭтоОтчет = (НРег(ФайлОбработки.Расширение) = ".erf"); - + Оповещение = АСинк().смв_НовыйОписаниеОповещения("ПодключитьВнешнююОбработкуЗавершение", ЭтаФорма, Новый Структура("ФайлОбработки, ЭтоОтчет", ФайлОбработки, ЭтоОтчет)); АСинк().смв_ПоместитьФайл(Оповещение, АдресХранилища, ФайлОбработки.ПолноеИмя, Ложь); - + КонецЕсли; - + КонецПроцедуры #Область АсинхронныйAPI @@ -1792,23 +1792,23 @@ &НаКлиенте Процедура НачатьПодключениеВнешнейОбработки(Знач ОбработкаОповещения, Знач ФайлОбработки) Экспорт Перем АдресХранилища; - + Если ПодключенныеВнешниеОбработки.Получить(ФайлОбработки.ИмяБезРасширения) = Неопределено Тогда - + ЭтоОтчет = (НРег(ФайлОбработки.Расширение) = ".erf"); ПараметрыОповещения = Новый Структура; ПараметрыОповещения.Вставить("ФайлОбработки", ФайлОбработки); ПараметрыОповещения.Вставить("ЭтоОтчет", ЭтоОтчет); ПараметрыОповещения.Вставить("ОбработкаЗавершения", ОбработкаОповещения); - + Оповещение = АСинк().смв_НовыйОписаниеОповещения("ПодключитьВнешнююОбработкуЗавершение", ЭтаФорма, ПараметрыОповещения); АСинк().смв_ПоместитьФайл(Оповещение, АдресХранилища, ФайлОбработки.ПолноеИмя , Ложь); - + Иначе - + АСинк().смв_ВыполнитьОбработкуОповещения(ОбработкаОповещения); - + КонецЕсли; КонецПроцедуры @@ -1825,7 +1825,7 @@ ДополнительныеПараметры.Вставить("ОбработкаОповещения", ОбработкаОповещения); ДополнительныеПараметры.Вставить("ИдентификаторВыбранногоЗагрузчика", ИдентификаторВыбранногоЗагрузчика); ДополнительныеПараметры.Вставить("Путь", Путь); - + Обработчик = АСинк().смв_НовыйОписаниеОповещения("ЗагрузкаТестовЗавершение", ЭтаФорма, ДополнительныеПараметры); ФормаЗагрузчика.НачатьЗагрузку(Обработчик, ЭтаФорма, Путь); @@ -2105,9 +2105,9 @@ ПодключенныеВнешниеОбработки.Вставить(ФайлОбработки.ИмяБезРасширения, Истина); Если ДополнительныеПараметры.Свойство("ОбработкаЗавершения") Тогда - + АСинк().смв_ВыполнитьОбработкуОповещения(ДополнительныеПараметры.ОбработкаЗавершения, Результат); - + КонецЕсли; КонецПроцедуры @@ -2201,7 +2201,7 @@ КонецЕсли; ПодготовитьВыводВЛогФайл(); - + ВывестиСообщение(ПолучитьНаименованиеИВерсиюОбработкиКлиент(), СтатусСообщения.ОченьВажное); Отладка(СтрШаблон_("ВыводитьЛогВыполненияСценариевВТекстовыйФайл <%1>", Объект.ВыводитьЛогВыполненияСценариевВТекстовыйФайл)); @@ -2211,13 +2211,13 @@ &НаКлиенте Процедура ПодготовитьВыводВЛогФайл() - + Перем ПлагинВыводВЛогФайл; - + Если Объект.ВыводитьЛогВыполненияСценариевВТекстовыйФайл Тогда - + ПлагинВыводВЛогФайл = Плагин("ВыводВЛогФайл"); - + ПлагинВыводВЛогФайл.ОткрытьФайл(Объект.ИмяФайлаЛогВыполненияСценариев); КонецЕсли; @@ -2233,7 +2233,7 @@ &НаКлиенте Функция СтрШаблон_(Знач СтрокаШаблон, Знач Парам1 = Неопределено, Знач Парам2 = Неопределено, Знач Парам3 = Неопределено, Знач Парам4 = Неопределено, Знач Парам5 = Неопределено, - Знач Парам6 = Неопределено, Знач Парам7 = Неопределено, Знач Парам8 = Неопределено, + Знач Парам6 = Неопределено, Знач Парам7 = Неопределено, Знач Парам8 = Неопределено, Знач Парам9 = Неопределено) Экспорт МассивПараметров = Новый Массив; @@ -2365,11 +2365,11 @@ Возврат Ложь; КонецЕсли; - Если ВерсияПриложенияБольшеИлиРавнаЧемЗаданная(СистемнаяИнформация.ВерсияПриложения, "8.3.13.0") Тогда + Если ВерсияПриложенияБольшеИлиРавнаЧемЗаданная(СистемнаяИнформация.ВерсияПриложения, "8.3.13.0") Тогда РежимСовместимостиПоУмолчанию = Метаданные.СвойстваОбъектов.РежимСовместимости.НеИспользовать; //РежимИспользованияСинхронныхВызововРасширенийПлатформыИВнешнихКомпонент.НеИспользовать; РежимСовместимости = РежимСовместимости(РежимСовместимостиПоУмолчанию); - Если РежимСовместимости = РежимСовместимостиПоУмолчанию Тогда + Если РежимСовместимости = РежимСовместимостиПоУмолчанию Тогда Возврат Истина; КонецЕсли; РежимСовместимостиВерсия = СтрЗаменить(РежимСовместимости, "Версия", ""); @@ -2381,7 +2381,7 @@ //Метаданные.СвойстваОбъектов.РежимИспользованияСинхронныхВызововРасширенийПлатформыИВнешнихКомпонент.НеИспользовать[ИмяСвойства].Использовать КонецЕсли; - + Если ИспользуютсяСинхронныеВызовыРасширенийПлатформыИВнешнихКомпонент(СистемнаяИнформация.ВерсияПриложения) Тогда Возврат Ложь; КонецЕсли; @@ -2457,25 +2457,25 @@ &НаКлиенте Функция АСинк() Экспорт - + Если АСинк = Неопределено Тогда - + Если Объект.ЭтоВстроеннаяОбработка Тогда - + АСинк = ПолучитьФорму("Обработка.xddTestRunner.Форма.МодульАсинк", , ЭтаФорма, ЭтаФорма); - + Иначе - + АСинк = ПолучитьФорму("ВнешняяОбработка.xddTestRunner.Форма.МодульАсинк", , ЭтаФорма, ЭтаФорма); - + КонецЕсли; - + АСинк.МодальностьЗапрещена = ЕстьПоддержкаАсинхронныхВызовов; - + КонецЕсли; - + Возврат АСинк; - + КонецФункции From f422ab54b50efdb9e2ceb95b218c443f10d57727 Mon Sep 17 00:00:00 2001 From: Artur Ayukhanov Date: Mon, 4 May 2020 19:18:00 +0300 Subject: [PATCH 2/7] =?UTF-8?q?=D0=98=D1=81=D0=BF=D1=80=D0=B0=D0=B2=D0=BB?= =?UTF-8?q?=D0=B5=D0=BD=20=D0=B1=D0=B0=D0=B3=20=D0=B7=D0=B0=D0=BF=D1=83?= =?UTF-8?q?=D1=81=D0=BA=D0=B0=20=D1=82=D0=B5=D1=81=D1=82=D0=BE=D0=B2=20?= =?UTF-8?q?=D0=B2=20=D1=80=D0=B5=D0=B6=D0=B8=D0=BC=D0=B5=20=D0=B0=D1=81?= =?UTF-8?q?=D0=B8=D0=BD=D1=85=D1=80=D0=BE=D0=BD=D0=BD=D0=BE=D1=81=D1=82?= =?UTF-8?q?=D0=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit fix #725 --- .../Ext/Form/Module.bsl" | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git "a/epf/xddTestRunner/xddTestRunner/Forms/\320\243\320\277\321\200\320\260\320\262\320\273\321\217\320\265\320\274\320\260\321\217\320\244\320\276\321\200\320\274\320\260/Ext/Form/Module.bsl" "b/epf/xddTestRunner/xddTestRunner/Forms/\320\243\320\277\321\200\320\260\320\262\320\273\321\217\320\265\320\274\320\260\321\217\320\244\320\276\321\200\320\274\320\260/Ext/Form/Module.bsl" index 168a67db0..2afa21183 100644 --- "a/epf/xddTestRunner/xddTestRunner/Forms/\320\243\320\277\321\200\320\260\320\262\320\273\321\217\320\265\320\274\320\260\321\217\320\244\320\276\321\200\320\274\320\260/Ext/Form/Module.bsl" +++ "b/epf/xddTestRunner/xddTestRunner/Forms/\320\243\320\277\321\200\320\260\320\262\320\273\321\217\320\265\320\274\320\260\321\217\320\244\320\276\321\200\320\274\320\260/Ext/Form/Module.bsl" @@ -1268,7 +1268,7 @@ &НаКлиенте Процедура ВыполнитьШагПакетногоЗапуска(Знач РезультатПредыдущегоШага, Знач Состояние) Экспорт - ОбработкаОповещения = АСинк().смв_ОписаниеОповещения("ВыполнитьШагПакетногоЗапуска", ЭтаФорма, Состояние, "ВыполнитьШагПакетногоЗапускаИсключение", ЭтаФорма); + ОбработкаОповещения = АСинк().смв_НовыйОписаниеОповещения("ВыполнитьШагПакетногоЗапуска", ЭтаФорма, Состояние, "ВыполнитьШагПакетногоЗапускаИсключение", ЭтаФорма); Состояние.ТекущийШаг = Состояние.СледующийШаг; Если Состояние.СледующийШаг = "ЗагрузитьТесты" Тогда From d12381fa81470242d20b0cd653f19ecb36c1b160 Mon Sep 17 00:00:00 2001 From: Artur Ayukhanov Date: Mon, 4 May 2020 19:53:51 +0300 Subject: [PATCH 3/7] =?UTF-8?q?=D0=B8=D1=81=D0=BF=D1=80=D0=B0=D0=B2=D0=B8?= =?UTF-8?q?=D0=BB=20=D0=B2=D0=BD=D0=B5=D1=81=D0=B5=D0=BD=D0=BD=D1=83=D1=8E?= =?UTF-8?q?=20=D0=BE=D0=BF=D0=B5=D1=87=D0=B0=D1=82=D0=BA=D1=83=20#727?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Ext/Form/Module.bsl" | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git "a/epf/xddTestRunner/xddTestRunner/Forms/\320\243\320\277\321\200\320\260\320\262\320\273\321\217\320\265\320\274\320\260\321\217\320\244\320\276\321\200\320\274\320\260/Ext/Form/Module.bsl" "b/epf/xddTestRunner/xddTestRunner/Forms/\320\243\320\277\321\200\320\260\320\262\320\273\321\217\320\265\320\274\320\260\321\217\320\244\320\276\321\200\320\274\320\260/Ext/Form/Module.bsl" index 2afa21183..ba6af1a1a 100644 --- "a/epf/xddTestRunner/xddTestRunner/Forms/\320\243\320\277\321\200\320\260\320\262\320\273\321\217\320\265\320\274\320\260\321\217\320\244\320\276\321\200\320\274\320\260/Ext/Form/Module.bsl" +++ "b/epf/xddTestRunner/xddTestRunner/Forms/\320\243\320\277\321\200\320\260\320\262\320\273\321\217\320\265\320\274\320\260\321\217\320\244\320\276\321\200\320\274\320\260/Ext/Form/Module.bsl" @@ -1446,7 +1446,7 @@ КонецЕсли; - ОбработчикЭкспорта = АСинк().смв_НовыОписаниеОповещения("ДиспетчерЭкспортаОтчетовАсинхронныйПакетныйРежим", ЭтаФорма, ПараметрыДиспетчера, + ОбработчикЭкспорта = АСинк().смв_НовыйОписаниеОповещения("ДиспетчерЭкспортаОтчетовАсинхронныйПакетныйРежим", ЭтаФорма, ПараметрыДиспетчера, "ДиспетчерЭкспортаОтчетовАсинхронныйПакетныйРежимИсключение", ЭтаФорма); ОписаниеПлагина = ГенераторОтчета.ОписаниеПлагина(Объект.ТипыПлагинов); From 86a13fbc15c77eb8d3b59b8fd1927331ba072a5d Mon Sep 17 00:00:00 2001 From: Artur Ayukhanov Date: Mon, 4 May 2020 19:57:18 +0300 Subject: [PATCH 4/7] =?UTF-8?q?=D0=BF=D0=BE=D0=BA=D0=B0=D0=B7=20=D0=BE?= =?UTF-8?q?=D0=B1=D1=89=D0=B5=D0=B9=20=D1=82=D0=B5=D1=85=D0=BD=D0=B8=D1=87?= =?UTF-8?q?=D0=B5=D1=81=D0=BA=D0=BE=D0=B9=20=D0=B8=D0=BD=D1=84=D0=BE=D1=80?= =?UTF-8?q?=D0=BC=D0=B0=D1=86=D0=B8=D0=B8=20=D0=B2=20=D0=BB=D0=BE=D0=B3?= =?UTF-8?q?=D0=B5=20=D0=BF=D1=80=D0=B8=20=D0=BF=D0=B0=D0=BA=D0=B5=D1=82?= =?UTF-8?q?=D0=BD=D0=BE=D0=BC=20=D0=B7=D0=B0=D0=BF=D1=83=D1=81=D0=BA=D0=B5?= =?UTF-8?q?=20=D1=82=D0=B5=D1=81=D1=82=D0=BE=D0=B2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Ext/Form/Module.bsl" | 150 +++++++++--------- 1 file changed, 75 insertions(+), 75 deletions(-) diff --git "a/epf/xddTestRunner/xddTestRunner/Forms/\320\243\320\277\321\200\320\260\320\262\320\273\321\217\320\265\320\274\320\260\321\217\320\244\320\276\321\200\320\274\320\260/Ext/Form/Module.bsl" "b/epf/xddTestRunner/xddTestRunner/Forms/\320\243\320\277\321\200\320\260\320\262\320\273\321\217\320\265\320\274\320\260\321\217\320\244\320\276\321\200\320\274\320\260/Ext/Form/Module.bsl" index ba6af1a1a..66a09af3a 100644 --- "a/epf/xddTestRunner/xddTestRunner/Forms/\320\243\320\277\321\200\320\260\320\262\320\273\321\217\320\265\320\274\320\260\321\217\320\244\320\276\321\200\320\274\320\260/Ext/Form/Module.bsl" +++ "b/epf/xddTestRunner/xddTestRunner/Forms/\320\243\320\277\321\200\320\260\320\262\320\273\321\217\320\265\320\274\320\260\321\217\320\244\320\276\321\200\320\274\320\260/Ext/Form/Module.bsl" @@ -161,14 +161,14 @@ Закрыть(); Если Объект.ЭтоВстроеннаяОбработка Тогда // Для встроенной в конф. обработки открываем форму - + ОткрытьФорму(ЭтаФорма.ИмяФормы); - + Иначе ОписаниеЗавершения = АСинк().смв_НовыйОписаниеОповещения("КомандаПерезагрузитьФормуЗавершение", ЭтаФорма); АСинк().смв_ПоместитьФайл(ОписаниеЗавершения, АдресХранилища, ЭтаФорма.ИспользуемоеИмяФайла ); - + КонецЕсли; КонецПроцедуры @@ -231,7 +231,7 @@ // Для встроенного в состав конфигурации браузера тестов // плагины также загружаем из встроенных обработок Если Объект.ЭтоВстроеннаяОбработка Тогда - + ЗагрузитьВстроенныеПлагины(); Для Каждого Плагин Из Объект.Плагины Цикл КэшФормПлагинов.Вставить(Плагин.Ключ, Истина); @@ -240,13 +240,13 @@ ДобавитьКомандыЗагрузчиковНаФорме(); Иначе - + КаталогПлагинов = ПолучитьПутьКПлагинам(); ОбработчикПоискаКлиентскихПлагинов = АСинк().смв_НовыйОписаниеОповещения("ОбработчикПоискаКлиентскихПлагинов", ЭтаФорма); - АСинк().смв_НайтиФайлы(ОбработчикПоискаКлиентскихПлагинов, + АСинк().смв_НайтиФайлы(ОбработчикПоискаКлиентскихПлагинов, КаталогПлагинов, "*.epf", Ложь); - + КонецЕсли; КонецПроцедуры @@ -271,7 +271,7 @@ КонецЦикла; ПодключитьНайденныеКлиентскиеПлагины(ПомещенныеФайлы, ИдентификаторыПлагинов); - + Иначе Для каждого ФайлОбработки Из НайденныеФайлы Цикл @@ -286,17 +286,17 @@ КонецЦикла; Если ПомещаемыеФайлы.Количество() Тогда - + ПараметрыЗавершения = Новый Структура("ИдентификаторыПлагинов", ИдентификаторыПлагинов); ОписаниеЗавершения = АСинк().смв_НовыйОписаниеОповещения("ОбработчикПоискаКлиентскихПлагиновЗавершение", ЭтаФорма, ПараметрыЗавершения); АСинк().смв_ПоместитьФайлы(ОписаниеЗавершения, ПомещаемыеФайлы); - + Иначе - + ПодключитьНайденныеКлиентскиеПлагины(Новый Массив, ИдентификаторыПлагинов); - + КонецЕсли; - + КонецЕсли; КонецПроцедуры @@ -1161,7 +1161,7 @@ НастройкиШагов.xddShutdown = ПараметрыЗапуска.Свойство(ПарсерКоманднойСтроки.Объект.ВозможныеКлючи.xddShutdown); СобратьНастройкиОтчетовТестирования(НастройкиШагов, ПараметрыЗапуска); - + Если Не ЕстьПоддержкаАсинхронныхВызовов Тогда ВыполнитьПакетныйЗапускСинхронно(НастройкиШагов); Иначе @@ -1270,37 +1270,37 @@ ОбработкаОповещения = АСинк().смв_НовыйОписаниеОповещения("ВыполнитьШагПакетногоЗапуска", ЭтаФорма, Состояние, "ВыполнитьШагПакетногоЗапускаИсключение", ЭтаФорма); Состояние.ТекущийШаг = Состояние.СледующийШаг; - + Если Состояние.СледующийШаг = "ЗагрузитьТесты" Тогда - + НачатьЗагрузкуТестовПакетныйРежим(ОбработкаОповещения); - + ИначеЕсли Состояние.СледующийШаг = "ЗапуститьТесты" Тогда - + НачатьВыполнениеТестов(РезультатПредыдущегоШага, ОбработкаОповещения); - + ИначеЕсли Состояние.СледующийШаг = "СоставитьОтчет" Тогда - + СоставитьОтчетОТестировании(РезультатПредыдущегоШага, ОбработкаОповещения); - + ИначеЕсли Состояние.СледующийШаг = "ЗавершитьРаботу" Тогда Если Состояние.НастройкиШагов.Параметры_xddExitCodePath <> Неопределено Тогда - + СформироватьФайлКодаВозврата(Состояние.НастройкиШагов.Параметры_xddExitCodePath, Состояние.РезультатыТестирования); - + КонецЕсли; ТестКлиенты = Состояние.НастройкиШагов.ТестКлиенты; - + Если ТестКлиенты <> Неопределено Тогда - + ТестКлиенты.ЗавершитьВсеТестКлиенты(); - + КонецЕсли; ПрекратитьРаботуСистемы(); - + КонецЕсли; КонецПроцедуры // ВыполнитьШагПакетногоЗапуска() @@ -1323,7 +1323,7 @@ &НаКлиенте Процедура НачатьЗагрузкуТестовПакетныйРежим(Знач ОбработкаОповещения) - + Параметры_xddRun = ОбработкаОповещения.ДополнительныеПараметры.НастройкиШагов.Параметры_xddRun; ИдентификаторЗагрузчика = Параметры_xddRun[0]; Загрузчик = ЭтаФорма.Плагин(ИдентификаторЗагрузчика); @@ -1333,7 +1333,7 @@ ОбработкаОповещения.ДополнительныеПараметры.СледующийШаг = "ЗапуститьТесты"; ОбработкаОповещения.ДополнительныеПараметры.Вставить("Загрузчик", Загрузчик); Загрузчик.НачатьЗагрузку(ОбработкаОповещения, ЭтаФорма, ПутьКТестам); - + КонецПроцедуры &НаКлиенте @@ -1434,11 +1434,11 @@ Отчет = НаборОтчетов[ПараметрыДиспетчера.ИндексОтчета]; ПараметрыДиспетчера.ИндексОтчета = ПараметрыДиспетчера.ИндексОтчета + 1; - + КонецЕсли; Если ПараметрыДиспетчера.ИндексОтчета >= НаборОтчетов.Количество() Тогда - + ПоказатьПутьОтчетТестирования(ПараметрыДиспетчера, СписокОтчетов); ПараметрыДиспетчера.ИндексВидаОтчета = ПараметрыДиспетчера.ИндексВидаОтчета + 1; @@ -1448,9 +1448,9 @@ ОбработчикЭкспорта = АСинк().смв_НовыйОписаниеОповещения("ДиспетчерЭкспортаОтчетовАсинхронныйПакетныйРежим", ЭтаФорма, ПараметрыДиспетчера, "ДиспетчерЭкспортаОтчетовАсинхронныйПакетныйРежимИсключение", ЭтаФорма); - + ОписаниеПлагина = ГенераторОтчета.ОписаниеПлагина(Объект.ТипыПлагинов); - + ЕстьПотоковыйВывод = ОписаниеПлагина.Свойство("ПотоковыйВывод") И ОписаниеПлагина.ПотоковыйВывод; ФормироватьСводныйФайл = Истина; Если ЕстьПотоковыйВывод Тогда @@ -1458,8 +1458,8 @@ ФормироватьСводныйФайл = ОписаниеПлагина.ФормироватьСводныйФайл; КонецЕсли; КонецЕсли; - - Если ФормироватьСводныйФайл Тогда + + Если ФормироватьСводныйФайл Тогда // т.к. при потоковом выводе нет смысла записывать сводный файл по тестированию ГенераторОтчета.НачатьЭкспорт(ОбработчикЭкспорта, Отчет, СтрокаЭкспорта.Путь); Иначе @@ -1467,11 +1467,11 @@ КонецЕсли; Иначе - + ОбработкаОповещения = ПараметрыДиспетчера.Финализация; ОбработкаОповещения.ДополнительныеПараметры.СледующийШаг = "ЗавершитьРаботу"; Асинк().смв_ВыполнитьОбработкуОповещения(ОбработкаОповещения); - + КонецЕсли; КонецПроцедуры @@ -1718,12 +1718,12 @@ ПутьИнструмента = ПутьКВнешнимИнструментам + ИмяИнструмента + ".epf"; ФайлИнструмента = Новый Файл(ПутьИнструмента); - + ОписаниеОповещения = АСинк().смв_НовыйОписаниеОповещения( "ОткрытьИнструментПроверкаСуществованияКонец", ЭтаФорма, - Новый Структура("ИмяИнструмента, ИмяФормы, ФайлИнструмента", + Новый Структура("ИмяИнструмента, ИмяФормы, ФайлИнструмента", ИмяИнструмента, ИмяФормы, ФайлИнструмента)); - + АСинк().смв_Файл_Существует(ФайлИнструмента, ОписаниеОповещения); КонецЕсли; @@ -1743,10 +1743,10 @@ Возврат; КонецЕсли; - Оповещение = АСинк().смв_НовыйОписаниеОповещения("ОткрытьИнструментЗавершение", ЭтаФорма, + Оповещение = АСинк().смв_НовыйОписаниеОповещения("ОткрытьИнструментЗавершение", ЭтаФорма, Новый Структура("ИмяИнструмента, ИмяФормыИнструмента", ИмяИнструмента, ИмяФормы)); АСинк().смв_ПоместитьФайл(Оповещение, АдресХранилища, ФайлИнструмента.ПолноеИмя, Ложь); - + КонецПроцедуры &НаКлиенте @@ -1777,14 +1777,14 @@ Перем АдресХранилища; Если ПодключенныеВнешниеОбработки.Получить(ФайлОбработки.ИмяБезРасширения) = Неопределено Тогда - + ЭтоОтчет = (НРег(ФайлОбработки.Расширение) = ".erf"); - + Оповещение = АСинк().смв_НовыйОписаниеОповещения("ПодключитьВнешнююОбработкуЗавершение", ЭтаФорма, Новый Структура("ФайлОбработки, ЭтоОтчет", ФайлОбработки, ЭтоОтчет)); АСинк().смв_ПоместитьФайл(Оповещение, АдресХранилища, ФайлОбработки.ПолноеИмя, Ложь); - + КонецЕсли; - + КонецПроцедуры #Область АсинхронныйAPI @@ -1792,23 +1792,23 @@ &НаКлиенте Процедура НачатьПодключениеВнешнейОбработки(Знач ОбработкаОповещения, Знач ФайлОбработки) Экспорт Перем АдресХранилища; - + Если ПодключенныеВнешниеОбработки.Получить(ФайлОбработки.ИмяБезРасширения) = Неопределено Тогда - + ЭтоОтчет = (НРег(ФайлОбработки.Расширение) = ".erf"); ПараметрыОповещения = Новый Структура; ПараметрыОповещения.Вставить("ФайлОбработки", ФайлОбработки); ПараметрыОповещения.Вставить("ЭтоОтчет", ЭтоОтчет); ПараметрыОповещения.Вставить("ОбработкаЗавершения", ОбработкаОповещения); - + Оповещение = АСинк().смв_НовыйОписаниеОповещения("ПодключитьВнешнююОбработкуЗавершение", ЭтаФорма, ПараметрыОповещения); АСинк().смв_ПоместитьФайл(Оповещение, АдресХранилища, ФайлОбработки.ПолноеИмя , Ложь); - + Иначе - + АСинк().смв_ВыполнитьОбработкуОповещения(ОбработкаОповещения); - + КонецЕсли; КонецПроцедуры @@ -1825,7 +1825,7 @@ ДополнительныеПараметры.Вставить("ОбработкаОповещения", ОбработкаОповещения); ДополнительныеПараметры.Вставить("ИдентификаторВыбранногоЗагрузчика", ИдентификаторВыбранногоЗагрузчика); ДополнительныеПараметры.Вставить("Путь", Путь); - + Обработчик = АСинк().смв_НовыйОписаниеОповещения("ЗагрузкаТестовЗавершение", ЭтаФорма, ДополнительныеПараметры); ФормаЗагрузчика.НачатьЗагрузку(Обработчик, ЭтаФорма, Путь); @@ -2105,9 +2105,9 @@ ПодключенныеВнешниеОбработки.Вставить(ФайлОбработки.ИмяБезРасширения, Истина); Если ДополнительныеПараметры.Свойство("ОбработкаЗавершения") Тогда - + АСинк().смв_ВыполнитьОбработкуОповещения(ДополнительныеПараметры.ОбработкаЗавершения, Результат); - + КонецЕсли; КонецПроцедуры @@ -2201,8 +2201,8 @@ КонецЕсли; ПодготовитьВыводВЛогФайл(); - - ВывестиСообщение(ПолучитьНаименованиеИВерсиюОбработкиКлиент(), СтатусСообщения.ОченьВажное); + + ВывестиСообщениеВЛогФайл(Плагин("Информатор").ТехническаяИнформация()); Отладка(СтрШаблон_("ВыводитьЛогВыполненияСценариевВТекстовыйФайл <%1>", Объект.ВыводитьЛогВыполненияСценариевВТекстовыйФайл)); Отладка(СтрШаблон_("ИмяФайлаЛогВыполненияСценариев <%1>", Объект.ИмяФайлаЛогВыполненияСценариев)); @@ -2211,13 +2211,13 @@ &НаКлиенте Процедура ПодготовитьВыводВЛогФайл() - + Перем ПлагинВыводВЛогФайл; - + Если Объект.ВыводитьЛогВыполненияСценариевВТекстовыйФайл Тогда - + ПлагинВыводВЛогФайл = Плагин("ВыводВЛогФайл"); - + ПлагинВыводВЛогФайл.ОткрытьФайл(Объект.ИмяФайлаЛогВыполненияСценариев); КонецЕсли; @@ -2233,7 +2233,7 @@ &НаКлиенте Функция СтрШаблон_(Знач СтрокаШаблон, Знач Парам1 = Неопределено, Знач Парам2 = Неопределено, Знач Парам3 = Неопределено, Знач Парам4 = Неопределено, Знач Парам5 = Неопределено, - Знач Парам6 = Неопределено, Знач Парам7 = Неопределено, Знач Парам8 = Неопределено, + Знач Парам6 = Неопределено, Знач Парам7 = Неопределено, Знач Парам8 = Неопределено, Знач Парам9 = Неопределено) Экспорт МассивПараметров = Новый Массив; @@ -2365,11 +2365,11 @@ Возврат Ложь; КонецЕсли; - Если ВерсияПриложенияБольшеИлиРавнаЧемЗаданная(СистемнаяИнформация.ВерсияПриложения, "8.3.13.0") Тогда + Если ВерсияПриложенияБольшеИлиРавнаЧемЗаданная(СистемнаяИнформация.ВерсияПриложения, "8.3.13.0") Тогда РежимСовместимостиПоУмолчанию = Метаданные.СвойстваОбъектов.РежимСовместимости.НеИспользовать; //РежимИспользованияСинхронныхВызововРасширенийПлатформыИВнешнихКомпонент.НеИспользовать; РежимСовместимости = РежимСовместимости(РежимСовместимостиПоУмолчанию); - Если РежимСовместимости = РежимСовместимостиПоУмолчанию Тогда + Если РежимСовместимости = РежимСовместимостиПоУмолчанию Тогда Возврат Истина; КонецЕсли; РежимСовместимостиВерсия = СтрЗаменить(РежимСовместимости, "Версия", ""); @@ -2381,7 +2381,7 @@ //Метаданные.СвойстваОбъектов.РежимИспользованияСинхронныхВызововРасширенийПлатформыИВнешнихКомпонент.НеИспользовать[ИмяСвойства].Использовать КонецЕсли; - + Если ИспользуютсяСинхронныеВызовыРасширенийПлатформыИВнешнихКомпонент(СистемнаяИнформация.ВерсияПриложения) Тогда Возврат Ложь; КонецЕсли; @@ -2457,25 +2457,25 @@ &НаКлиенте Функция АСинк() Экспорт - + Если АСинк = Неопределено Тогда - + Если Объект.ЭтоВстроеннаяОбработка Тогда - + АСинк = ПолучитьФорму("Обработка.xddTestRunner.Форма.МодульАсинк", , ЭтаФорма, ЭтаФорма); - + Иначе - + АСинк = ПолучитьФорму("ВнешняяОбработка.xddTestRunner.Форма.МодульАсинк", , ЭтаФорма, ЭтаФорма); - + КонецЕсли; - + АСинк.МодальностьЗапрещена = ЕстьПоддержкаАсинхронныхВызовов; - + КонецЕсли; - + Возврат АСинк; - + КонецФункции From 1b2ce446e8a6096a87acd79186e553684743c355 Mon Sep 17 00:00:00 2001 From: Artur Ayukhanov Date: Mon, 4 May 2020 20:42:55 +0300 Subject: [PATCH 5/7] =?UTF-8?q?=D0=B2=20=D1=82=D0=B5=D1=85=D0=BD=D0=B8?= =?UTF-8?q?=D1=87=D0=B5=D1=81=D0=BA=D0=BE=D0=B9=20=D0=B8=D0=BD=D1=84=D0=BE?= =?UTF-8?q?=D1=80=D0=BC=D0=B0=D1=86=D0=B8=D0=B8=20=D0=B2=D1=8B=D0=B2=D0=BE?= =?UTF-8?q?=D0=B4=D1=8F=D1=82=D1=81=D1=8F=20=D0=BF=D1=80=D0=B8=D0=B7=D0=BD?= =?UTF-8?q?=D0=B0=D0=BA=20=D1=81=D0=B8=D0=BD=D1=85=D1=80=D0=BE=D0=BD=D0=BD?= =?UTF-8?q?=D0=BE=D1=81=D1=82=D0=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit + слегка уточнен порядок вывода данных --- .../Ext/Form.xml" | 11 + .../Ext/Form/Module.bsl" | 188 +++++++++++------- ...4\320\260\321\202\320\276\321\200.feature" | 10 +- .../Ext/Form/Module.bsl" | 47 +++-- 4 files changed, 160 insertions(+), 96 deletions(-) diff --git "a/epf/xddTestRunner/xddTestRunner/Forms/\320\243\320\277\321\200\320\260\320\262\320\273\321\217\320\265\320\274\320\260\321\217\320\244\320\276\321\200\320\274\320\260/Ext/Form.xml" "b/epf/xddTestRunner/xddTestRunner/Forms/\320\243\320\277\321\200\320\260\320\262\320\273\321\217\320\265\320\274\320\260\321\217\320\244\320\276\321\200\320\274\320\260/Ext/Form.xml" index 4fa4c1c97..1e6d59880 100644 --- "a/epf/xddTestRunner/xddTestRunner/Forms/\320\243\320\277\321\200\320\260\320\262\320\273\321\217\320\265\320\274\320\260\321\217\320\244\320\276\321\200\320\274\320\260/Ext/Form.xml" +++ "b/epf/xddTestRunner/xddTestRunner/Forms/\320\243\320\277\321\200\320\260\320\262\320\273\321\217\320\265\320\274\320\260\321\217\320\244\320\276\321\200\320\274\320\260/Ext/Form.xml" @@ -533,6 +533,17 @@ xs:boolean + + + <v8:item> + <v8:lang>ru</v8:lang> + <v8:content>Есть поддержка немодальных форм</v8:content> + </v8:item> + + + xs:boolean + + diff --git "a/epf/xddTestRunner/xddTestRunner/Forms/\320\243\320\277\321\200\320\260\320\262\320\273\321\217\320\265\320\274\320\260\321\217\320\244\320\276\321\200\320\274\320\260/Ext/Form/Module.bsl" "b/epf/xddTestRunner/xddTestRunner/Forms/\320\243\320\277\321\200\320\260\320\262\320\273\321\217\320\265\320\274\320\260\321\217\320\244\320\276\321\200\320\274\320\260/Ext/Form/Module.bsl" index 66a09af3a..cdafe6aa6 100644 --- "a/epf/xddTestRunner/xddTestRunner/Forms/\320\243\320\277\321\200\320\260\320\262\320\273\321\217\320\265\320\274\320\260\321\217\320\244\320\276\321\200\320\274\320\260/Ext/Form/Module.bsl" +++ "b/epf/xddTestRunner/xddTestRunner/Forms/\320\243\320\277\321\200\320\260\320\262\320\273\321\217\320\265\320\274\320\260\321\217\320\244\320\276\321\200\320\274\320\260/Ext/Form/Module.bsl" @@ -18,6 +18,8 @@ ОбъектНаСервере = РеквизитФормыВЗначение("Объект"); ЕстьПоддержкаАсинхронныхВызовов = КонфигурацияПоддерживаетАсинхронныеВызовы(); + ЕстьПоддержкаНемодальныхФорм = УзнатьЕстьПоддержкаНемодальныхФорм(); + ЕстьЗащитаОтОпасныхДействий = УзнатьЕстьЗащитаОтОпасныхДействий(); ЭтаФорма.Заголовок = ОбъектНаСервере.ЗаголовокФормы(); @@ -161,14 +163,14 @@ Закрыть(); Если Объект.ЭтоВстроеннаяОбработка Тогда // Для встроенной в конф. обработки открываем форму - + ОткрытьФорму(ЭтаФорма.ИмяФормы); - + Иначе ОписаниеЗавершения = АСинк().смв_НовыйОписаниеОповещения("КомандаПерезагрузитьФормуЗавершение", ЭтаФорма); АСинк().смв_ПоместитьФайл(ОписаниеЗавершения, АдресХранилища, ЭтаФорма.ИспользуемоеИмяФайла ); - + КонецЕсли; КонецПроцедуры @@ -231,7 +233,7 @@ // Для встроенного в состав конфигурации браузера тестов // плагины также загружаем из встроенных обработок Если Объект.ЭтоВстроеннаяОбработка Тогда - + ЗагрузитьВстроенныеПлагины(); Для Каждого Плагин Из Объект.Плагины Цикл КэшФормПлагинов.Вставить(Плагин.Ключ, Истина); @@ -240,13 +242,13 @@ ДобавитьКомандыЗагрузчиковНаФорме(); Иначе - + КаталогПлагинов = ПолучитьПутьКПлагинам(); ОбработчикПоискаКлиентскихПлагинов = АСинк().смв_НовыйОписаниеОповещения("ОбработчикПоискаКлиентскихПлагинов", ЭтаФорма); - АСинк().смв_НайтиФайлы(ОбработчикПоискаКлиентскихПлагинов, + АСинк().смв_НайтиФайлы(ОбработчикПоискаКлиентскихПлагинов, КаталогПлагинов, "*.epf", Ложь); - + КонецЕсли; КонецПроцедуры @@ -271,7 +273,7 @@ КонецЦикла; ПодключитьНайденныеКлиентскиеПлагины(ПомещенныеФайлы, ИдентификаторыПлагинов); - + Иначе Для каждого ФайлОбработки Из НайденныеФайлы Цикл @@ -286,17 +288,17 @@ КонецЦикла; Если ПомещаемыеФайлы.Количество() Тогда - + ПараметрыЗавершения = Новый Структура("ИдентификаторыПлагинов", ИдентификаторыПлагинов); ОписаниеЗавершения = АСинк().смв_НовыйОписаниеОповещения("ОбработчикПоискаКлиентскихПлагиновЗавершение", ЭтаФорма, ПараметрыЗавершения); АСинк().смв_ПоместитьФайлы(ОписаниеЗавершения, ПомещаемыеФайлы); - + Иначе - + ПодключитьНайденныеКлиентскиеПлагины(Новый Массив, ИдентификаторыПлагинов); - + КонецЕсли; - + КонецЕсли; КонецПроцедуры @@ -1161,7 +1163,7 @@ НастройкиШагов.xddShutdown = ПараметрыЗапуска.Свойство(ПарсерКоманднойСтроки.Объект.ВозможныеКлючи.xddShutdown); СобратьНастройкиОтчетовТестирования(НастройкиШагов, ПараметрыЗапуска); - + Если Не ЕстьПоддержкаАсинхронныхВызовов Тогда ВыполнитьПакетныйЗапускСинхронно(НастройкиШагов); Иначе @@ -1270,37 +1272,37 @@ ОбработкаОповещения = АСинк().смв_НовыйОписаниеОповещения("ВыполнитьШагПакетногоЗапуска", ЭтаФорма, Состояние, "ВыполнитьШагПакетногоЗапускаИсключение", ЭтаФорма); Состояние.ТекущийШаг = Состояние.СледующийШаг; - + Если Состояние.СледующийШаг = "ЗагрузитьТесты" Тогда - + НачатьЗагрузкуТестовПакетныйРежим(ОбработкаОповещения); - + ИначеЕсли Состояние.СледующийШаг = "ЗапуститьТесты" Тогда - + НачатьВыполнениеТестов(РезультатПредыдущегоШага, ОбработкаОповещения); - + ИначеЕсли Состояние.СледующийШаг = "СоставитьОтчет" Тогда - + СоставитьОтчетОТестировании(РезультатПредыдущегоШага, ОбработкаОповещения); - + ИначеЕсли Состояние.СледующийШаг = "ЗавершитьРаботу" Тогда Если Состояние.НастройкиШагов.Параметры_xddExitCodePath <> Неопределено Тогда - + СформироватьФайлКодаВозврата(Состояние.НастройкиШагов.Параметры_xddExitCodePath, Состояние.РезультатыТестирования); - + КонецЕсли; ТестКлиенты = Состояние.НастройкиШагов.ТестКлиенты; - + Если ТестКлиенты <> Неопределено Тогда - + ТестКлиенты.ЗавершитьВсеТестКлиенты(); - + КонецЕсли; ПрекратитьРаботуСистемы(); - + КонецЕсли; КонецПроцедуры // ВыполнитьШагПакетногоЗапуска() @@ -1323,7 +1325,7 @@ &НаКлиенте Процедура НачатьЗагрузкуТестовПакетныйРежим(Знач ОбработкаОповещения) - + Параметры_xddRun = ОбработкаОповещения.ДополнительныеПараметры.НастройкиШагов.Параметры_xddRun; ИдентификаторЗагрузчика = Параметры_xddRun[0]; Загрузчик = ЭтаФорма.Плагин(ИдентификаторЗагрузчика); @@ -1333,7 +1335,7 @@ ОбработкаОповещения.ДополнительныеПараметры.СледующийШаг = "ЗапуститьТесты"; ОбработкаОповещения.ДополнительныеПараметры.Вставить("Загрузчик", Загрузчик); Загрузчик.НачатьЗагрузку(ОбработкаОповещения, ЭтаФорма, ПутьКТестам); - + КонецПроцедуры &НаКлиенте @@ -1434,11 +1436,11 @@ Отчет = НаборОтчетов[ПараметрыДиспетчера.ИндексОтчета]; ПараметрыДиспетчера.ИндексОтчета = ПараметрыДиспетчера.ИндексОтчета + 1; - + КонецЕсли; Если ПараметрыДиспетчера.ИндексОтчета >= НаборОтчетов.Количество() Тогда - + ПоказатьПутьОтчетТестирования(ПараметрыДиспетчера, СписокОтчетов); ПараметрыДиспетчера.ИндексВидаОтчета = ПараметрыДиспетчера.ИндексВидаОтчета + 1; @@ -1448,9 +1450,9 @@ ОбработчикЭкспорта = АСинк().смв_НовыйОписаниеОповещения("ДиспетчерЭкспортаОтчетовАсинхронныйПакетныйРежим", ЭтаФорма, ПараметрыДиспетчера, "ДиспетчерЭкспортаОтчетовАсинхронныйПакетныйРежимИсключение", ЭтаФорма); - + ОписаниеПлагина = ГенераторОтчета.ОписаниеПлагина(Объект.ТипыПлагинов); - + ЕстьПотоковыйВывод = ОписаниеПлагина.Свойство("ПотоковыйВывод") И ОписаниеПлагина.ПотоковыйВывод; ФормироватьСводныйФайл = Истина; Если ЕстьПотоковыйВывод Тогда @@ -1458,8 +1460,8 @@ ФормироватьСводныйФайл = ОписаниеПлагина.ФормироватьСводныйФайл; КонецЕсли; КонецЕсли; - - Если ФормироватьСводныйФайл Тогда + + Если ФормироватьСводныйФайл Тогда // т.к. при потоковом выводе нет смысла записывать сводный файл по тестированию ГенераторОтчета.НачатьЭкспорт(ОбработчикЭкспорта, Отчет, СтрокаЭкспорта.Путь); Иначе @@ -1467,11 +1469,11 @@ КонецЕсли; Иначе - + ОбработкаОповещения = ПараметрыДиспетчера.Финализация; ОбработкаОповещения.ДополнительныеПараметры.СледующийШаг = "ЗавершитьРаботу"; Асинк().смв_ВыполнитьОбработкуОповещения(ОбработкаОповещения); - + КонецЕсли; КонецПроцедуры @@ -1718,12 +1720,12 @@ ПутьИнструмента = ПутьКВнешнимИнструментам + ИмяИнструмента + ".epf"; ФайлИнструмента = Новый Файл(ПутьИнструмента); - + ОписаниеОповещения = АСинк().смв_НовыйОписаниеОповещения( "ОткрытьИнструментПроверкаСуществованияКонец", ЭтаФорма, Новый Структура("ИмяИнструмента, ИмяФормы, ФайлИнструмента", ИмяИнструмента, ИмяФормы, ФайлИнструмента)); - + АСинк().смв_Файл_Существует(ФайлИнструмента, ОписаниеОповещения); КонецЕсли; @@ -1743,10 +1745,10 @@ Возврат; КонецЕсли; - Оповещение = АСинк().смв_НовыйОписаниеОповещения("ОткрытьИнструментЗавершение", ЭтаФорма, + Оповещение = АСинк().смв_НовыйОписаниеОповещения("ОткрытьИнструментЗавершение", ЭтаФорма, Новый Структура("ИмяИнструмента, ИмяФормыИнструмента", ИмяИнструмента, ИмяФормы)); АСинк().смв_ПоместитьФайл(Оповещение, АдресХранилища, ФайлИнструмента.ПолноеИмя, Ложь); - + КонецПроцедуры &НаКлиенте @@ -1777,14 +1779,14 @@ Перем АдресХранилища; Если ПодключенныеВнешниеОбработки.Получить(ФайлОбработки.ИмяБезРасширения) = Неопределено Тогда - + ЭтоОтчет = (НРег(ФайлОбработки.Расширение) = ".erf"); - + Оповещение = АСинк().смв_НовыйОписаниеОповещения("ПодключитьВнешнююОбработкуЗавершение", ЭтаФорма, Новый Структура("ФайлОбработки, ЭтоОтчет", ФайлОбработки, ЭтоОтчет)); АСинк().смв_ПоместитьФайл(Оповещение, АдресХранилища, ФайлОбработки.ПолноеИмя, Ложь); - + КонецЕсли; - + КонецПроцедуры #Область АсинхронныйAPI @@ -1792,23 +1794,23 @@ &НаКлиенте Процедура НачатьПодключениеВнешнейОбработки(Знач ОбработкаОповещения, Знач ФайлОбработки) Экспорт Перем АдресХранилища; - + Если ПодключенныеВнешниеОбработки.Получить(ФайлОбработки.ИмяБезРасширения) = Неопределено Тогда - + ЭтоОтчет = (НРег(ФайлОбработки.Расширение) = ".erf"); ПараметрыОповещения = Новый Структура; ПараметрыОповещения.Вставить("ФайлОбработки", ФайлОбработки); ПараметрыОповещения.Вставить("ЭтоОтчет", ЭтоОтчет); ПараметрыОповещения.Вставить("ОбработкаЗавершения", ОбработкаОповещения); - + Оповещение = АСинк().смв_НовыйОписаниеОповещения("ПодключитьВнешнююОбработкуЗавершение", ЭтаФорма, ПараметрыОповещения); АСинк().смв_ПоместитьФайл(Оповещение, АдресХранилища, ФайлОбработки.ПолноеИмя , Ложь); - + Иначе - + АСинк().смв_ВыполнитьОбработкуОповещения(ОбработкаОповещения); - + КонецЕсли; КонецПроцедуры @@ -1825,7 +1827,7 @@ ДополнительныеПараметры.Вставить("ОбработкаОповещения", ОбработкаОповещения); ДополнительныеПараметры.Вставить("ИдентификаторВыбранногоЗагрузчика", ИдентификаторВыбранногоЗагрузчика); ДополнительныеПараметры.Вставить("Путь", Путь); - + Обработчик = АСинк().смв_НовыйОписаниеОповещения("ЗагрузкаТестовЗавершение", ЭтаФорма, ДополнительныеПараметры); ФормаЗагрузчика.НачатьЗагрузку(Обработчик, ЭтаФорма, Путь); @@ -2105,9 +2107,9 @@ ПодключенныеВнешниеОбработки.Вставить(ФайлОбработки.ИмяБезРасширения, Истина); Если ДополнительныеПараметры.Свойство("ОбработкаЗавершения") Тогда - + АСинк().смв_ВыполнитьОбработкуОповещения(ДополнительныеПараметры.ОбработкаЗавершения, Результат); - + КонецЕсли; КонецПроцедуры @@ -2201,7 +2203,7 @@ КонецЕсли; ПодготовитьВыводВЛогФайл(); - + ВывестиСообщениеВЛогФайл(Плагин("Информатор").ТехническаяИнформация()); Отладка(СтрШаблон_("ВыводитьЛогВыполненияСценариевВТекстовыйФайл <%1>", Объект.ВыводитьЛогВыполненияСценариевВТекстовыйФайл)); @@ -2211,13 +2213,13 @@ &НаКлиенте Процедура ПодготовитьВыводВЛогФайл() - + Перем ПлагинВыводВЛогФайл; - + Если Объект.ВыводитьЛогВыполненияСценариевВТекстовыйФайл Тогда - + ПлагинВыводВЛогФайл = Плагин("ВыводВЛогФайл"); - + ПлагинВыводВЛогФайл.ОткрытьФайл(Объект.ИмяФайлаЛогВыполненияСценариев); КонецЕсли; @@ -2233,7 +2235,7 @@ &НаКлиенте Функция СтрШаблон_(Знач СтрокаШаблон, Знач Парам1 = Неопределено, Знач Парам2 = Неопределено, Знач Парам3 = Неопределено, Знач Парам4 = Неопределено, Знач Парам5 = Неопределено, - Знач Парам6 = Неопределено, Знач Парам7 = Неопределено, Знач Парам8 = Неопределено, + Знач Парам6 = Неопределено, Знач Парам7 = Неопределено, Знач Парам8 = Неопределено, Знач Парам9 = Неопределено) Экспорт МассивПараметров = Новый Массив; @@ -2365,11 +2367,11 @@ Возврат Ложь; КонецЕсли; - Если ВерсияПриложенияБольшеИлиРавнаЧемЗаданная(СистемнаяИнформация.ВерсияПриложения, "8.3.13.0") Тогда + Если ВерсияПриложенияБольшеИлиРавнаЧемЗаданная(СистемнаяИнформация.ВерсияПриложения, "8.3.13.0") Тогда РежимСовместимостиПоУмолчанию = Метаданные.СвойстваОбъектов.РежимСовместимости.НеИспользовать; //РежимИспользованияСинхронныхВызововРасширенийПлатформыИВнешнихКомпонент.НеИспользовать; РежимСовместимости = РежимСовместимости(РежимСовместимостиПоУмолчанию); - Если РежимСовместимости = РежимСовместимостиПоУмолчанию Тогда + Если РежимСовместимости = РежимСовместимостиПоУмолчанию Тогда Возврат Истина; КонецЕсли; РежимСовместимостиВерсия = СтрЗаменить(РежимСовместимости, "Версия", ""); @@ -2381,7 +2383,7 @@ //Метаданные.СвойстваОбъектов.РежимИспользованияСинхронныхВызововРасширенийПлатформыИВнешнихКомпонент.НеИспользовать[ИмяСвойства].Использовать КонецЕсли; - + Если ИспользуютсяСинхронныеВызовыРасширенийПлатформыИВнешнихКомпонент(СистемнаяИнформация.ВерсияПриложения) Тогда Возврат Ложь; КонецЕсли; @@ -2429,6 +2431,46 @@ КонецФункции +&НаСервереБезКонтекста +Функция УзнатьЕстьПоддержкаНемодальныхФорм() + СистемнаяИнформация = Новый СистемнаяИнформация; + Массив1 = РазложитьСтрокуВМассивПодстрок(СистемнаяИнформация.ВерсияПриложения, "."); + Массив2 = РазложитьСтрокуВМассивПодстрок("8.3.3.641", "."); + + Версия1БольшеИлиРавно = Истина; + Для Ккк = 0 По Массив1.Количество() - 1 Цикл + Элем1 = Массив1.Получить(Ккк); + Элем2 = Массив2.Получить(Ккк); + + Если Число(Элем2) > Число(Элем1) Тогда + Версия1БольшеИлиРавно = Ложь; + ИначеЕсли Число(Элем2) < Число(Элем1) Тогда + Прервать; + КонецЕсли; + КонецЦикла; + + Возврат Версия1БольшеИлиРавно; +КонецФункции + +&НаСервереБезКонтекста +Функция УзнатьЕстьЗащитаОтОпасныхДействий() + СистемнаяИнформация = Новый СистемнаяИнформация; + Массив1 = РазложитьСтрокуВМассивПодстрок(СистемнаяИнформация.ВерсияПриложения, "."); + Массив2 = РазложитьСтрокуВМассивПодстрок("8.3.9.2033", "."); + + Версия1БольшеИлиРавно = Истина; + Для Ккк = 0 По Массив1.Количество() - 1 Цикл + Элем1 = Массив1.Получить(Ккк); + Элем2 = Массив2.Получить(Ккк); + + Если Число(Элем2) > Число(Элем1) Тогда + Версия1БольшеИлиРавно = Ложь; + КонецЕсли; + КонецЦикла; + + Возврат Версия1БольшеИлиРавно; +КонецФункции + &НаКлиентеНаСервереБезКонтекста Функция ПолучитьКаталогВременныхФайлов() ИмяВременногоФайла = ПолучитьИмяВременногоФайла("123"); @@ -2457,25 +2499,25 @@ &НаКлиенте Функция АСинк() Экспорт - + Если АСинк = Неопределено Тогда - + Если Объект.ЭтоВстроеннаяОбработка Тогда - + АСинк = ПолучитьФорму("Обработка.xddTestRunner.Форма.МодульАсинк", , ЭтаФорма, ЭтаФорма); - + Иначе - + АСинк = ПолучитьФорму("ВнешняяОбработка.xddTestRunner.Форма.МодульАсинк", , ЭтаФорма, ЭтаФорма); - + КонецЕсли; - + АСинк.МодальностьЗапрещена = ЕстьПоддержкаАсинхронныхВызовов; - + КонецЕсли; - + Возврат АСинк; - + КонецФункции diff --git "a/features/libraries/\320\224\320\260\320\275\320\275\321\213\320\265/\320\230\320\275\321\204\320\276\321\200\320\274\320\260\321\202\320\276\321\200.feature" "b/features/libraries/\320\224\320\260\320\275\320\275\321\213\320\265/\320\230\320\275\321\204\320\276\321\200\320\274\320\260\321\202\320\276\321\200.feature" index 73604a78a..fb42663c2 100644 --- "a/features/libraries/\320\224\320\260\320\275\320\275\321\213\320\265/\320\230\320\275\321\204\320\276\321\200\320\274\320\260\321\202\320\276\321\200.feature" +++ "b/features/libraries/\320\224\320\260\320\275\320\275\321\213\320\265/\320\230\320\275\321\204\320\276\321\200\320\274\320\260\321\202\320\276\321\200.feature" @@ -15,10 +15,11 @@ Тогда переменная "ТехническаяИнформация" соответствует простому шаблону "- Синоним конфигурации: ADD/BDD, ver. *.*.*" Тогда переменная "ТехническаяИнформация" соответствует простому шаблону "- Версия конфигурации: *.*.*" Тогда переменная "ТехническаяИнформация" соответствует простому шаблону "- Платформа 1С: 8.3.*.*" + Тогда переменная "ТехническаяИнформация" соответствует простому шаблону "- Тип базы: Файловая" + Тогда переменная "ТехническаяИнформация" соответствует простому шаблону "- Режим запуска: Управляемое приложение (Тонкий клиент)" Тогда переменная "ТехническаяИнформация" соответствует простому шаблону "- Режим совместимости (для TestManager): *" Тогда переменная "ТехническаяИнформация" соответствует простому шаблону "- Режим совместимости интерфейса (для TestManager): Такси" - Тогда переменная "ТехническаяИнформация" соответствует простому шаблону "- Режим запуска: Управляемое приложение (Тонкий клиент)" - Тогда переменная "ТехническаяИнформация" соответствует простому шаблону "- Тип базы: Файловая" + Тогда переменная "ТехническаяИнформация" соответствует простому шаблону "- Режим синхронности: выключен" Тогда переменная "ТехническаяИнформация" соответствует простому шаблону "- Язык (для TestManager): Русский" Тогда переменная "ТехническаяИнформация" соответствует простому шаблону "- Локализация (для TestManager): *" Тогда переменная "ТехническаяИнформация" соответствует простому шаблону "- Операционная система: * x* *" @@ -35,10 +36,11 @@ | - Синоним конфигурации: ADD/BDD, ver. *.*.* | | - Версия конфигурации: *.*.* | | - Платформа 1С: 8.3.*.* | + | - Тип базы: Файловая | + | - Режим запуска: Управляемое приложение (Тонкий клиент) | | - Режим совместимости (для TestManager): * | | - Режим совместимости интерфейса (для TestManager): Такси | - | - Режим запуска: Управляемое приложение (Тонкий клиент) | - | - Тип базы: Файловая | + | - Режим синхронности: выключен | | - Язык (для TestManager): Русский | | - Локализация (для TestManager): * | | - Операционная система: * x* * | diff --git "a/plugins/\320\230\320\275\321\204\320\276\321\200\320\274\320\260\321\202\320\276\321\200/\320\230\320\275\321\204\320\276\321\200\320\274\320\260\321\202\320\276\321\200/Forms/\320\244\320\276\321\200\320\274\320\260/Ext/Form/Module.bsl" "b/plugins/\320\230\320\275\321\204\320\276\321\200\320\274\320\260\321\202\320\276\321\200/\320\230\320\275\321\204\320\276\321\200\320\274\320\260\321\202\320\276\321\200/Forms/\320\244\320\276\321\200\320\274\320\260/Ext/Form/Module.bsl" index d0ff29c7f..a4c2e4b33 100644 --- "a/plugins/\320\230\320\275\321\204\320\276\321\200\320\274\320\260\321\202\320\276\321\200/\320\230\320\275\321\204\320\276\321\200\320\274\320\260\321\202\320\276\321\200/Forms/\320\244\320\276\321\200\320\274\320\260/Ext/Form/Module.bsl" +++ "b/plugins/\320\230\320\275\321\204\320\276\321\200\320\274\320\260\321\202\320\276\321\200/\320\230\320\275\321\204\320\276\321\200\320\274\320\260\321\202\320\276\321\200/Forms/\320\244\320\276\321\200\320\274\320\260/Ext/Form/Module.bsl" @@ -28,11 +28,14 @@ Данные.Вставить("ВерсияВанессаАДД", Ванесса.ПолучитьВерсиюОбработкиКлиент()); Данные.Вставить("РежимСовместимости", УзнатьРежимСовместимостиКлиент("Не использовать")); - + + Данные.Вставить("РежимСинхронности", ФорматВключенВыключен(Не Ванесса.ЕстьПоддержкаАсинхронныхВызовов)); + Данные.Вставить("ЕстьЗащитаОтОпасныхДействий", ФорматВключенВыключен(Ванесса.ЕстьЗащитаОтОпасныхДействий)); + СисИнфо = Новый СистемнаяИнформация; Данные.Вставить("ВерсияОСКлиент", СисИнфо.ВерсияОС); Данные.Вставить("ТипПлатформыКлиент", "" + СисИнфо.ТипПлатформы); - + Возврат ТехническаяИнформацияСервер(Данные); КонецФункции @@ -95,7 +98,7 @@ Данные.Вставить("РежимЗапуска", "" + ТекущийРежимЗапуска() + " (" + ПредставлениеСеанса() + ")"); Данные.Вставить("ЯзыкСеанса", ТекущийЯзык()); Данные.Вставить("ЛокализацияСеанса", ТекущийКодЛокализации()); - + ТипБазы = "Клиент-серверная ИБ"; Если ЭтоФайловаяБаза() Тогда ТипБазы = "Файловая ИБ"; @@ -107,8 +110,8 @@ Данные.Вставить("ТипБазы", ТипБазы); Данные.Вставить("ОперационнаяСистема", ОперационнаяСистема); - - Результат = + + Результат = " |Техническая информация: | - Версия Vanessa-ADD: " + Данные.ВерсияВанессаАДД + " @@ -116,14 +119,16 @@ | - Синоним конфигурации: " + Данные.СинонимКонфигурации + " | - Версия конфигурации: " + Данные.ВерсияКонфигурации + " | - Платформа 1С: " + Данные.ВерсияПриложения + " + | - Тип базы: " + Данные.ТипБазы + " + | - Режим запуска: " + Данные.РежимЗапуска + " | - Режим совместимости (для TestManager): " + Данные.РежимСовместимости + " | - Режим совместимости интерфейса (для TestManager): " + Данные.РежимСовместимостиИнтерфейса + " - | - Режим запуска: " + Данные.РежимЗапуска + " - | - Тип базы: " + Данные.ТипБазы + " + | - Режим синхронности: " + Данные.РежимСинхронности + " + | - Защита от опасных действий: " + Данные.ЕстьЗащитаОтОпасныхДействий + " | - Язык (для TestManager): " + Данные.ЯзыкСеанса + " | - Локализация (для TestManager): " + Данные.ЛокализацияСеанса + " |" + Данные.ОперационнаяСистема + " - |"; + |"; Возврат Результат; КонецФункции @@ -156,27 +161,31 @@ &НаСервереБезКонтекста //Функция ПолучитьИмяПриложенияСеанса(НомерСоединения, Представление = Ложь) //НомерСоединения (Число) номер соединения по которому необходимо получить контекст сеанса -//Представление (Булево) - если Истина то функция вернет представления контекста сеанса (удобочитаемое) +//Представление (Булево) - если Истина то функция вернет представления контекста сеанса (удобочитаемое) //Пример ИмяПриложения: "WebServerExtension" Представление:"Модуль расширения веб-сервера" //Возвращает (Строка) - имя приложения (Контекст сеанса) или представление имени приложения // Функция ПолучитьИмяПриложенияТекущегоСоединения(НомерСоединения, Представление = Ложь) Экспорт - ИмяПриложения = ""; - - СеансыИБ = ПолучитьСеансыИнформационнойБазы(); - Для Каждого Сеанс Из СеансыИБ Цикл + ИмяПриложения = ""; + + СеансыИБ = ПолучитьСеансыИнформационнойБазы(); + Для Каждого Сеанс Из СеансыИБ Цикл Если Сеанс.НомерСоединения = НомерСоединения Тогда Если Представление Тогда - ИмяПриложения = ПредставлениеПриложения(Сеанс.ИмяПриложения); + ИмяПриложения = ПредставлениеПриложения(Сеанс.ИмяПриложения); Иначе ИмяПриложения = Сеанс.ИмяПриложения; - КонецЕсли; - КонецЕсли; + КонецЕсли; + КонецЕсли; КонецЦикла; - + Возврат ИмяПриложения; - + КонецФункции -#КонецОбласти +&НаКлиенте +Функция ФорматВключенВыключен(БулевоЗначение) + Возврат Формат(БулевоЗначение, "БЛ=выключен; БИ=включен"); +КонецФункции +#КонецОбласти From 143ac98362889a242b41247ab2196cd5e85daefa Mon Sep 17 00:00:00 2001 From: Artur Ayukhanov Date: Mon, 4 May 2020 20:55:36 +0300 Subject: [PATCH 6/7] =?UTF-8?q?=D0=B2=20=D1=82=D0=B5=D1=85=D0=BD=D0=B8?= =?UTF-8?q?=D1=87=D0=B5=D1=81=D0=BA=D0=BE=D0=B9=20=D0=B8=D0=BD=D1=84=D0=BE?= =?UTF-8?q?=D1=80=D0=BC=D0=B0=D1=86=D0=B8=D0=B8=20=D0=B2=D1=8B=D0=B2=D0=BE?= =?UTF-8?q?=D0=B4=D1=8F=D1=82=D1=81=D1=8F=20=D0=BF=D1=80=D0=B8=D0=B7=D0=BD?= =?UTF-8?q?=D0=B0=D0=BA=20=D0=B7=D0=B0=D1=89=D0=B8=D1=82=D1=8B=20=D0=BE?= =?UTF-8?q?=D1=82=20=D0=BE=D0=BF=D0=B0=D1=81=D0=BD=D1=8B=D1=85=20=D0=B4?= =?UTF-8?q?=D0=B5=D0=B9=D1=81=D1=82=D0=B2=D0=B8=D0=B9=20=D1=82=D0=B5=D0=BA?= =?UTF-8?q?=D1=83=D1=89=D0=B5=D0=B3=D0=BE=20=D0=BF=D0=BE=D0=BB=D1=8C=D0=B7?= =?UTF-8?q?=D0=BE=D0=B2=D0=B0=D1=82=D0=B5=D0=BB=D1=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...20\274\320\260\321\202\320\276\321\200.feature" | 2 ++ .../Ext/Form/Module.bsl" | 14 +++++++++++++- 2 files changed, 15 insertions(+), 1 deletion(-) diff --git "a/features/libraries/\320\224\320\260\320\275\320\275\321\213\320\265/\320\230\320\275\321\204\320\276\321\200\320\274\320\260\321\202\320\276\321\200.feature" "b/features/libraries/\320\224\320\260\320\275\320\275\321\213\320\265/\320\230\320\275\321\204\320\276\321\200\320\274\320\260\321\202\320\276\321\200.feature" index fb42663c2..d93454110 100644 --- "a/features/libraries/\320\224\320\260\320\275\320\275\321\213\320\265/\320\230\320\275\321\204\320\276\321\200\320\274\320\260\321\202\320\276\321\200.feature" +++ "b/features/libraries/\320\224\320\260\320\275\320\275\321\213\320\265/\320\230\320\275\321\204\320\276\321\200\320\274\320\260\321\202\320\276\321\200.feature" @@ -20,6 +20,7 @@ Тогда переменная "ТехническаяИнформация" соответствует простому шаблону "- Режим совместимости (для TestManager): *" Тогда переменная "ТехническаяИнформация" соответствует простому шаблону "- Режим совместимости интерфейса (для TestManager): Такси" Тогда переменная "ТехническаяИнформация" соответствует простому шаблону "- Режим синхронности: выключен" + Тогда переменная "ТехническаяИнформация" соответствует простому шаблону "- Защита от опасных действий: включен" Тогда переменная "ТехническаяИнформация" соответствует простому шаблону "- Язык (для TestManager): Русский" Тогда переменная "ТехническаяИнформация" соответствует простому шаблону "- Локализация (для TestManager): *" Тогда переменная "ТехническаяИнформация" соответствует простому шаблону "- Операционная система: * x* *" @@ -41,6 +42,7 @@ | - Режим совместимости (для TestManager): * | | - Режим совместимости интерфейса (для TestManager): Такси | | - Режим синхронности: выключен | + | - Защита от опасных действий: включен | | - Язык (для TestManager): Русский | | - Локализация (для TestManager): * | | - Операционная система: * x* * | diff --git "a/plugins/\320\230\320\275\321\204\320\276\321\200\320\274\320\260\321\202\320\276\321\200/\320\230\320\275\321\204\320\276\321\200\320\274\320\260\321\202\320\276\321\200/Forms/\320\244\320\276\321\200\320\274\320\260/Ext/Form/Module.bsl" "b/plugins/\320\230\320\275\321\204\320\276\321\200\320\274\320\260\321\202\320\276\321\200/\320\230\320\275\321\204\320\276\321\200\320\274\320\260\321\202\320\276\321\200/Forms/\320\244\320\276\321\200\320\274\320\260/Ext/Form/Module.bsl" index a4c2e4b33..bf6d6cff5 100644 --- "a/plugins/\320\230\320\275\321\204\320\276\321\200\320\274\320\260\321\202\320\276\321\200/\320\230\320\275\321\204\320\276\321\200\320\274\320\260\321\202\320\276\321\200/Forms/\320\244\320\276\321\200\320\274\320\260/Ext/Form/Module.bsl" +++ "b/plugins/\320\230\320\275\321\204\320\276\321\200\320\274\320\260\321\202\320\276\321\200/\320\230\320\275\321\204\320\276\321\200\320\274\320\260\321\202\320\276\321\200/Forms/\320\244\320\276\321\200\320\274\320\260/Ext/Form/Module.bsl" @@ -30,7 +30,6 @@ Данные.Вставить("РежимСовместимости", УзнатьРежимСовместимостиКлиент("Не использовать")); Данные.Вставить("РежимСинхронности", ФорматВключенВыключен(Не Ванесса.ЕстьПоддержкаАсинхронныхВызовов)); - Данные.Вставить("ЕстьЗащитаОтОпасныхДействий", ФорматВключенВыключен(Ванесса.ЕстьЗащитаОтОпасныхДействий)); СисИнфо = Новый СистемнаяИнформация; Данные.Вставить("ВерсияОСКлиент", СисИнфо.ВерсияОС); @@ -111,6 +110,8 @@ Данные.Вставить("ТипБазы", ТипБазы); Данные.Вставить("ОперационнаяСистема", ОперационнаяСистема); + Данные.Вставить("ЕстьЗащитаОтОпасныхДействий", ФорматВключенВыключенСервер(ЕстьЗащитаОтОпасныхДействийТекущегоПользователя())); + Результат = " |Техническая информация: @@ -183,9 +184,20 @@ КонецФункции +&НаСервереБезКонтекста +Функция ЕстьЗащитаОтОпасныхДействийТекущегоПользователя() Экспорт + Возврат ПользователиИнформационнойБазы.ТекущийПользователь() + .ЗащитаОтОпасныхДействий.ПредупреждатьОбОпасныхДействиях; +КонецФункции + &НаКлиенте Функция ФорматВключенВыключен(БулевоЗначение) Возврат Формат(БулевоЗначение, "БЛ=выключен; БИ=включен"); КонецФункции +&НаСервереБезКонтекста +Функция ФорматВключенВыключенСервер(БулевоЗначение) + Возврат Формат(БулевоЗначение, "БЛ=выключен; БИ=включен"); +КонецФункции + #КонецОбласти From c6cd83d1a8bcb410b958d2a3502f8e3ec962dc08 Mon Sep 17 00:00:00 2001 From: Artur Ayukhanov Date: Mon, 4 May 2020 22:18:31 +0300 Subject: [PATCH 7/7] =?UTF-8?q?=D1=83=D1=81=D1=82=D0=B0=D0=BD=D0=BE=D0=B2?= =?UTF-8?q?=D0=B8=D0=BB=20=D0=BD=D0=BE=D0=BC=D0=B5=D1=80=20=D0=B2=D0=B5?= =?UTF-8?q?=D1=80=D1=81=D0=B8=D0=B8=206.6.5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- epf/bddRunner/bddRunner/Ext/ObjectModule.bsl | 2 +- epf/xddTestRunner/xddTestRunner/Ext/ObjectModule.bsl | 2 +- lib/CF/83/Configuration.xml | 4 ++-- lib/CF/83NoSync/Configuration.xml | 4 ++-- lib/CF/83xdd/Configuration.xml | 4 ++-- lib/CF/83xddNoSync/Configuration.xml | 4 ++-- packagedef | 2 +- .../Ext/ObjectModule.bsl" | 2 +- 8 files changed, 12 insertions(+), 12 deletions(-) diff --git a/epf/bddRunner/bddRunner/Ext/ObjectModule.bsl b/epf/bddRunner/bddRunner/Ext/ObjectModule.bsl index 438b2ee7f..e44455871 100644 --- a/epf/bddRunner/bddRunner/Ext/ObjectModule.bsl +++ b/epf/bddRunner/bddRunner/Ext/ObjectModule.bsl @@ -7,7 +7,7 @@ Функция ПолучитьВерсиюОбработки(ДобавлятьНазвание = Истина, ТолькоЦифры = Ложь) Экспорт - Версия = "6.6.0"; + Версия = "6.6.5"; Если ТолькоЦифры Тогда Возврат Версия; diff --git a/epf/xddTestRunner/xddTestRunner/Ext/ObjectModule.bsl b/epf/xddTestRunner/xddTestRunner/Ext/ObjectModule.bsl index 0798e3a4d..2c804c2b8 100644 --- a/epf/xddTestRunner/xddTestRunner/Ext/ObjectModule.bsl +++ b/epf/xddTestRunner/xddTestRunner/Ext/ObjectModule.bsl @@ -1,6 +1,6 @@  Функция Версия() Экспорт - Версия = "6.6.0"; + Версия = "6.6.5"; Возврат Версия; КонецФункции diff --git a/lib/CF/83/Configuration.xml b/lib/CF/83/Configuration.xml index 8448d221d..ddcccfbed 100644 --- a/lib/CF/83/Configuration.xml +++ b/lib/CF/83/Configuration.xml @@ -32,7 +32,7 @@ ru - ADD/BDD, ver. 6.6.0 + ADD/BDD, ver. 6.6.5 @@ -45,7 +45,7 @@ Russian - 6.6.0 + 6.6.5 false false diff --git a/lib/CF/83NoSync/Configuration.xml b/lib/CF/83NoSync/Configuration.xml index 3742f4e5e..a5f97c7a9 100644 --- a/lib/CF/83NoSync/Configuration.xml +++ b/lib/CF/83NoSync/Configuration.xml @@ -32,7 +32,7 @@ ru - ADD/BDD, ver. 6.6.0 + ADD/BDD, ver. 6.6.5 @@ -45,7 +45,7 @@ Russian - 6.6.0 + 6.6.5 false false diff --git a/lib/CF/83xdd/Configuration.xml b/lib/CF/83xdd/Configuration.xml index b9583c667..4b20d408f 100644 --- a/lib/CF/83xdd/Configuration.xml +++ b/lib/CF/83xdd/Configuration.xml @@ -32,7 +32,7 @@ ru - ADD/TDD, ver. 6.6.0 + ADD/TDD, ver. 6.6.5 @@ -45,7 +45,7 @@ Russian - 6.6.0 + 6.6.5 false true diff --git a/lib/CF/83xddNoSync/Configuration.xml b/lib/CF/83xddNoSync/Configuration.xml index 20d868f63..b008bb729 100644 --- a/lib/CF/83xddNoSync/Configuration.xml +++ b/lib/CF/83xddNoSync/Configuration.xml @@ -32,7 +32,7 @@ ru - ADD/TDD, ver. 6.6.0 + ADD/TDD, ver. 6.6.5 @@ -45,7 +45,7 @@ Russian - 6.6.0 + 6.6.5 false true diff --git a/packagedef b/packagedef index 14ef41af4..c3b9971a9 100644 --- a/packagedef +++ b/packagedef @@ -161,7 +161,7 @@ Сообщить("ИНФОРМАЦИЯ - Создан файл релиза " + ФайлКонечный.ПолноеИмя); КонецПроцедуры -ВерсияПакета = "6.6.0"; +ВерсияПакета = "6.6.5"; Описание.Имя("add") .Версия(ВерсияПакета) diff --git "a/plugins/\320\241\320\265\321\200\320\270\320\260\320\273\320\270\320\267\320\260\321\202\320\276\321\200MXL/\320\241\320\265\321\200\320\270\320\260\320\273\320\270\320\267\320\260\321\202\320\276\321\200MXL/Ext/ObjectModule.bsl" "b/plugins/\320\241\320\265\321\200\320\270\320\260\320\273\320\270\320\267\320\260\321\202\320\276\321\200MXL/\320\241\320\265\321\200\320\270\320\260\320\273\320\270\320\267\320\260\321\202\320\276\321\200MXL/Ext/ObjectModule.bsl" index 24672ec41..c71418756 100644 --- "a/plugins/\320\241\320\265\321\200\320\270\320\260\320\273\320\270\320\267\320\260\321\202\320\276\321\200MXL/\320\241\320\265\321\200\320\270\320\260\320\273\320\270\320\267\320\260\321\202\320\276\321\200MXL/Ext/ObjectModule.bsl" +++ "b/plugins/\320\241\320\265\321\200\320\270\320\260\320\273\320\270\320\267\320\260\321\202\320\276\321\200MXL/\320\241\320\265\321\200\320\270\320\260\320\273\320\270\320\267\320\260\321\202\320\276\321\200MXL/Ext/ObjectModule.bsl" @@ -22,7 +22,7 @@ Перем мТЗКэшОбъектов; Функция Версия() Экспорт - Версия = "6.6.0"; + Версия = "6.6.5"; Возврат Версия; КонецФункции