From 9f8af02165da62f1f1486c5d43def1e5dfee0d7b Mon Sep 17 00:00:00 2001 From: Dmitry Date: Mon, 16 May 2022 11:29:19 +0300 Subject: [PATCH] =?UTF-8?q?=D1=84=D0=B8=D0=BB=D1=8C=D1=82=D1=80=20=D1=82?= =?UTF-8?q?=D0=B0=D0=B1=D0=BB=D0=B8=D1=86=20=D0=B8=20=D0=BF=D0=B0=D1=80?= =?UTF-8?q?=D0=B0=D0=BC=D0=B5=D1=82=D1=80=D1=8B=20=D0=BA=D0=BE=D0=BD=D0=B2?= =?UTF-8?q?=D0=B5=D1=80=D1=82=D0=B0=D1=86=D0=B8=D0=B8=20=D0=B2=20=D1=84?= =?UTF-8?q?=D0=BE=D1=80=D0=BC=D0=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Word2MXL/Ext/ObjectModule.bsl | 5 +- Word2MXL/Forms/Форма/Ext/Form.xml | 157 +++++++++++++++++++---- Word2MXL/Forms/Форма/Ext/Form/Module.bsl | 10 +- 3 files changed, 142 insertions(+), 30 deletions(-) diff --git a/Word2MXL/Ext/ObjectModule.bsl b/Word2MXL/Ext/ObjectModule.bsl index d5a2b4e..3f27589 100644 --- a/Word2MXL/Ext/ObjectModule.bsl +++ b/Word2MXL/Ext/ObjectModule.bsl @@ -1,4 +1,4 @@ -Функция ВывестиДокументВордВМоксель(ИмяФайла, рСантиметр = 6.25, рШиринаСтраницы = 75) Экспорт +Функция ВывестиДокументВордВМоксель(ИмяФайла, рСантиметр = 6.25, рШиринаСтраницы = 75, ФильтрТаблиц = "Условие=Истина") Экспорт // источник: https://infostart.ru/1c/articles/1499795/ комВорд = Неопределено; комДокумент = Неопределено; @@ -36,7 +36,8 @@ // подготовка вывода таблиц мКомТаблиц = Новый Массив; - Для каждого комТаблица Из комДокумент.Tables Цикл + всеТаблицы = Фильтр(ФильтрТаблиц, комДокумент.Tables); + Для каждого комТаблица Из всеТаблицы Цикл мКомТаблиц.Добавить(Новый Структура("Начало,Конец,Таблица", комТаблица.Range.Start, комТаблица.Range.End, комТаблица)); КонецЦикла; diff --git a/Word2MXL/Forms/Форма/Ext/Form.xml b/Word2MXL/Forms/Форма/Ext/Form.xml index 8db845b..a554710 100644 --- a/Word2MXL/Forms/Форма/Ext/Form.xml +++ b/Word2MXL/Forms/Форма/Ext/Form.xml @@ -1,5 +1,7 @@ 
+ Use + UseList + + рСантиметр + + + + + рШиринаСтраницы + + + + + ФильтрТаблиц + true + true + + + - - - ДокументРезультат - true - true - - - + + + + <v8:item> + <v8:lang>ru</v8:lang> + <v8:content>Результат</v8:content> + </v8:item> + + + + ru + Результат + + + + + + Item.ДокументРезультат + + + + + + + ДокументРезультат + None + true + true + + + + + - + @@ -128,6 +179,62 @@ + + + <v8:item> + <v8:lang>ru</v8:lang> + <v8:content>Фильтр таблиц</v8:content> + </v8:item> + + + xs:string + + 0 + Variable + + + + ФильтрТаблиц + + + + + <v8:item> + <v8:lang>ru</v8:lang> + <v8:content>Пунктов в сантиметре</v8:content> + </v8:item> + + + xs:decimal + + 10 + 2 + Nonnegative + + + + рСантиметр + + + + + <v8:item> + <v8:lang>ru</v8:lang> + <v8:content>Ширина страницы (в пунктах)</v8:content> + </v8:item> + + + xs:decimal + + 10 + 0 + Nonnegative + + + + рШиринаСтраницы + + diff --git a/Word2MXL/Forms/Форма/Ext/Form/Module.bsl b/Word2MXL/Forms/Форма/Ext/Form/Module.bsl index 96ed8f9..63ecf4a 100644 --- a/Word2MXL/Forms/Форма/Ext/Form/Module.bsl +++ b/Word2MXL/Forms/Форма/Ext/Form/Module.bsl @@ -24,7 +24,8 @@ ОбновитьОтображениеДанных(Элементы.Состояние); КонвертироватьНаСервере(ОписаниеФайла.Адрес, ОписаниеФайла.СсылкаНаФайл.Расширение); Элементы.ГруппаПрогресс.Видимость = Ложь; - Элементы.ГруппаРезультат.Видимость = Истина; + Элементы.СтраницаРезультат.Видимость = Истина; + Элементы.ГруппаСтраницы.ТекущаяСтраница = Элементы.СтраницаРезультат; КонецПроцедуры &НаКлиенте @@ -59,7 +60,7 @@ ИмяФайла = ВремФайл; Попытка - РезультатКонвертации = Обработка.ВывестиДокументВордВМоксель(ИмяФайла); + РезультатКонвертации = Обработка.ВывестиДокументВордВМоксель(ИмяФайла, рСантиметр, рШиринаСтраницы, ФильтрТаблиц); Исключение Ошибка = ОписаниеОшибки(); Причина = ИнформацияОбОшибке(); @@ -88,5 +89,8 @@ &НаСервере Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) Элементы.ГруппаПрогресс.Видимость = Ложь; - Элементы.ГруппаРезультат.Видимость = Ложь; + Элементы.СтраницаРезультат.Видимость = Ложь; + ФильтрТаблиц = "Условие = (Элемент.Columns.Count > 1 И Элемент.Rows.Count > 1) ИЛИ Элемент.Rows.Count = 4"; + рСантиметр = 6.25; + рШиринаСтраницы = 75; КонецПроцедуры \ No newline at end of file