diff --git "a/src/\320\230\320\275\321\201\321\202\321\200\321\203\320\274\320\265\320\275\321\202\321\213/src/DataProcessors/\320\243\320\230_\320\232\320\276\320\275\321\201\320\276\320\273\321\214HTTP\320\227\320\260\320\277\321\200\320\276\321\201\320\276\320\262/Forms/\320\244\320\276\321\200\320\274\320\260/Form.form" "b/src/\320\230\320\275\321\201\321\202\321\200\321\203\320\274\320\265\320\275\321\202\321\213/src/DataProcessors/\320\243\320\230_\320\232\320\276\320\275\321\201\320\276\320\273\321\214HTTP\320\227\320\260\320\277\321\200\320\276\321\201\320\276\320\262/Forms/\320\244\320\276\321\200\320\274\320\260/Form.form" index be5d4eaa..63c92e80 100644 --- "a/src/\320\230\320\275\321\201\321\202\321\200\321\203\320\274\320\265\320\275\321\202\321\213/src/DataProcessors/\320\243\320\230_\320\232\320\276\320\275\321\201\320\276\320\273\321\214HTTP\320\227\320\260\320\277\321\200\320\276\321\201\320\276\320\262/Forms/\320\244\320\276\321\200\320\274\320\260/Form.form" +++ "b/src/\320\230\320\275\321\201\321\202\321\200\321\203\320\274\320\265\320\275\321\202\321\213/src/DataProcessors/\320\243\320\230_\320\232\320\276\320\275\321\201\320\276\320\273\321\214HTTP\320\227\320\260\320\277\321\200\320\276\321\201\320\276\320\262/Forms/\320\244\320\276\321\200\320\274\320\260/Form.form" @@ -553,6 +553,91 @@ true true + + ГруппаНастройки + 636 + + СохранятьПередВыполнением + 638 + true + true + + true + + + СохранятьПередВыполнением + + + ru + Будет выполнено сохранение файла запросов перед выполнением запроса + + Button + + СохранятьПередВыполнениемРасширеннаяПодсказка + 640 + true + true + + true + + Label + true + true + + Left + + + + СохранятьПередВыполнениемКонтекстноеМеню + 639 + true + true + + true + + true + + CheckBoxField + Enter + true + Left + true + + + true + true + + true + + + <key>ru</key> + <value>Настройки</value> + + + ГруппаНастройкиРасширеннаяПодсказка + 637 + true + true + + true + + Label + true + true + + Left + + + UsualGroup + + HorizontalIfPossible + true + true + true + Auto + Auto + + true true @@ -803,39 +888,6 @@ Left - - ВыполнитьЗапрос - 40 - true - true - - true - - - ВыполнитьЗапросРасширеннаяПодсказка - 41 - true - true - - true - - Label - true - true - - Left - - - UsualButton - Form.Command.ВыполнитьЗапрос - Auto - true - 3 - true - true - UserCmds - Auto - true true @@ -5951,6 +6003,37 @@ UserCmds Auto + + ВыполнитьЗапрос + 40 + true + true + + true + + + ВыполнитьЗапросРасширеннаяПодсказка + 41 + true + true + + true + + Label + true + true + + Left + + + Form.Command.ВыполнитьЗапрос + Auto + true + true + true + UserCmds + Auto + true true @@ -7568,11 +7651,31 @@ true + + СохранятьПередВыполнением + + <key>ru</key> + <value>Сохранять перед выполнением</value> + + 152 + + Boolean + + + true + + + true + + + СохранятьПередВыполнением + + ВыполнитьЗапрос <key>ru</key> - <value>Выполнить сейчас</value> + <value>Выполнить запрос</value> 1 @@ -7586,7 +7689,7 @@ ВыполнитьЗапрос - Picture + TextPicture Auto diff --git "a/src/\320\230\320\275\321\201\321\202\321\200\321\203\320\274\320\265\320\275\321\202\321\213/src/DataProcessors/\320\243\320\230_\320\232\320\276\320\275\321\201\320\276\320\273\321\214HTTP\320\227\320\260\320\277\321\200\320\276\321\201\320\276\320\262/Forms/\320\244\320\276\321\200\320\274\320\260/Module.bsl" "b/src/\320\230\320\275\321\201\321\202\321\200\321\203\320\274\320\265\320\275\321\202\321\213/src/DataProcessors/\320\243\320\230_\320\232\320\276\320\275\321\201\320\276\320\273\321\214HTTP\320\227\320\260\320\277\321\200\320\276\321\201\320\276\320\262/Forms/\320\244\320\276\321\200\320\274\320\260/Module.bsl" index 4a8e3169..41741112 100644 --- "a/src/\320\230\320\275\321\201\321\202\321\200\321\203\320\274\320\265\320\275\321\202\321\213/src/DataProcessors/\320\243\320\230_\320\232\320\276\320\275\321\201\320\276\320\273\321\214HTTP\320\227\320\260\320\277\321\200\320\276\321\201\320\276\320\262/Forms/\320\244\320\276\321\200\320\274\320\260/Module.bsl" +++ "b/src/\320\230\320\275\321\201\321\202\321\200\321\203\320\274\320\265\320\275\321\202\321\213/src/DataProcessors/\320\243\320\230_\320\232\320\276\320\275\321\201\320\276\320\273\321\214HTTP\320\227\320\260\320\277\321\200\320\276\321\201\320\276\320\262/Forms/\320\244\320\276\321\200\320\274\320\260/Module.bsl" @@ -323,25 +323,14 @@ Возврат; КонецЕсли; - ПараметрыСледующегоШага = Новый Структура; - ПараметрыСледующегоШага.Вставить("ИдентификаторСтроки", СтрокаЗапроса.ПолучитьИдентификатор()); - ПараметрыСледующегоШага.Вставить("Файл", Неопределено); - - Если СтрокаЗапроса.ВидТела = ВидыТелаЗапроса.Файл Тогда - ПараметрыЧтенияФайла = УИ_ОбщегоНазначенияКлиент.НовыйПараметрыЧтенияФайла(УникальныйИдентификатор); - ПараметрыЧтенияФайла.ПолноеИмяФайла = СтрокаЗапроса.ИмяФайлаТела; - ПараметрыЧтенияФайла.ОповещениеОЗавершении = Новый ОписаниеОповещения("ВыполнитьЗапросЗавершениеЧтенияФайлаВоВременноеХранилище", - ЭтотОбъект, ПараметрыСледующегоШага); - - УИ_ОбщегоНазначенияКлиент.НачатьЧтениеФайла(ПараметрыЧтенияФайла); - ИначеЕсли СтрокаЗапроса.ВидТела = ВидыТелаЗапроса.МультипартФорм Тогда - НачатьПомещениеФайловВоВременноеХранилищеДляСтрокТелаМультипарт(СтрокаЗапроса, - Новый ОписаниеОповещения("ВыполнитьЗапросЗавершениеЧтенияФайловМультипартВоВременноеХранилище", - ЭтотОбъект, ПараметрыСледующегоШага)); + ДопПараметры = Новый Структура; + ДопПараметры.Вставить("СтрокаЗапроса", СтрокаЗапроса); + Если СохранятьПередВыполнением И ЗначениеЗаполнено(ИмяФайлаЗапросов) Тогда + ВыполнитьСохранениеЗапросовВФайл( , Новый ОписаниеОповещения("ВыполнитьЗапросЗавершениеСохраненияФайла", + ЭтотОбъект, ДопПараметры)); Иначе - ВыполнитьЗапросЗавершениеПодготовительныхДействий(ПараметрыСледующегоШага); + ВыполнитьЗапросЗавершениеСохраненияФайла(Истина, ДопПараметры); КонецЕсли; - КонецПроцедуры &НаКлиенте @@ -537,6 +526,34 @@ #Область СлужебныеПроцедурыИФункции +&НаКлиенте +Процедура ВыполнитьЗапросЗавершениеСохраненияФайла(Результат, ДополнительныеПараметры) Экспорт + Если Результат <> Истина Тогда + Возврат; + КонецЕсли; + СтрокаЗапроса = ДополнительныеПараметры.СтрокаЗапроса; + + ПараметрыСледующегоШага = Новый Структура; + ПараметрыСледующегоШага.Вставить("ИдентификаторСтроки", СтрокаЗапроса.ПолучитьИдентификатор()); + ПараметрыСледующегоШага.Вставить("Файл", Неопределено); + + Если СтрокаЗапроса.ВидТела = ВидыТелаЗапроса.Файл Тогда + ПараметрыЧтенияФайла = УИ_ОбщегоНазначенияКлиент.НовыйПараметрыЧтенияФайла(УникальныйИдентификатор); + ПараметрыЧтенияФайла.ПолноеИмяФайла = СтрокаЗапроса.ИмяФайлаТела; + ПараметрыЧтенияФайла.ОповещениеОЗавершении = Новый ОписаниеОповещения("ВыполнитьЗапросЗавершениеЧтенияФайлаВоВременноеХранилище", + ЭтотОбъект, ПараметрыСледующегоШага); + + УИ_ОбщегоНазначенияКлиент.НачатьЧтениеФайла(ПараметрыЧтенияФайла); + ИначеЕсли СтрокаЗапроса.ВидТела = ВидыТелаЗапроса.МультипартФорм Тогда + НачатьПомещениеФайловВоВременноеХранилищеДляСтрокТелаМультипарт(СтрокаЗапроса, + Новый ОписаниеОповещения("ВыполнитьЗапросЗавершениеЧтенияФайловМультипартВоВременноеХранилище", + ЭтотОбъект, ПараметрыСледующегоШага)); + Иначе + ВыполнитьЗапросЗавершениеПодготовительныхДействий(ПараметрыСледующегоШага); + КонецЕсли; + +КонецПроцедуры + &НаКлиенте Процедура НачатьПомещениеФайловВоВременноеХранилищеДляСтрокТелаМультипарт(СтрокаЗапроса, ОписаниеОповещенияОЗавершении) ПараметрыОповещений = Новый Структура; @@ -919,15 +936,21 @@ КонецФункции &НаКлиенте -Процедура ВыполнитьСохранениеЗапросовВФайл(СохранитьКак = Ложь) +Процедура ВыполнитьСохранениеЗапросовВФайл(СохранитьКак = Ложь, ОписаниеОповещенияОЗаверешении = Неопределено) СохранитьДанныеЗапросаВДеревоЗапросов(); + ДопПараметрыОповещения = Неопределено; + Если ОписаниеОповещенияОЗаверешении <> Неопределено Тогда + ДопПараметрыОповещения = Новый Структура; + ДопПараметрыОповещения.Вставить("ОписаниеОповещенияОЗаверешении", ОписаниеОповещенияОЗаверешении); + КонецЕсли; + УИ_ОбщегоНазначенияКлиент.СохранитьДанныеКонсолиВФайл("КонсольHTTPЗапросов", СохранитьКак, СтруктураОписанияСохраняемогоФайла(), ПолучитьСтрокуДанныхФайлаДляСохраненияВФайл(), Новый ОписаниеОповещения("СохранениеВФайлЗавершение", - ЭтотОбъект)); + ЭтотОбъект, ДопПараметрыОповещения)); КонецПроцедуры @@ -1303,6 +1326,9 @@ Модифицированность = Ложь; ОбновитьЗаголовок(); + Если ДополнительныеПараметры <> Неопределено Тогда + ВыполнитьОбработкуОповещения(ДополнительныеПараметры.ОписаниеОповещенияОЗаверешении, Истина); + КонецЕсли; КонецПроцедуры &НаСервере