Форум программистов, компьютерный форум, киберфорум
Наши страницы
1С: Типовые и стандартные решения
Войти
Регистрация
Восстановить пароль
 
 
Рейтинг 4.91/11: Рейтинг темы: голосов - 11, средняя оценка - 4.91
Оленька
24 / 24 / 1
Регистрация: 11.04.2008
Сообщений: 540
1

Формирование отчета в Word

12.09.2017, 08:14. Просмотров 2088. Ответов 44
Метки нет (Все метки)

Необходимо вывести отчет в Word (с этим проблем нет).
В зависимости от выбранных параметров, в Word должны выходить те или иные блоки с текстом и с картинками.
Вопрос и заключается в том, как выводить эти блоки и где их хранить (откуда брать)?
0
Лучшие ответы (1)
QA
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
12.09.2017, 08:14
Ответы с готовыми решениями:

Формирование отчета СКД
Формирую отчет на СКД. В результате запроса получаем покупателя...

УПП 1.3. Формирование отчета по продажам (с заданной периодичностью)
Добрый день, Подскажите, пожалуйста, у меня есть запрос по регистру Продажи обороты, в итоге...

Формирование отчета под разными пользователями. Нет прав доступа к полю отчёта.
Добрый день! Как может быть такая штука - захожу под одним пользователем, запускаю отчёт, всё...

Формирование отчета
Здравствуйте! Помогите переправить отчет пожалйста. Есть отчет Движение Товаров, он выводит...

Формирование отчета
Подскажите, как сделать формирование отчета, если он выполнен без использования схемы компоновки...

44
GreenkA
Форумчанин
Эксперт 1С
3009 / 1934 / 520
Регистрация: 25.06.2009
Сообщений: 6,820
12.09.2017, 10:35 2
Цитата Сообщение от Оленька Посмотреть сообщение
Необходимо вывести отчет в Word (с этим проблем нет).
У вас есть шаблон или вы просто создаете новый документ ворда?

Цитата Сообщение от Оленька Посмотреть сообщение
В зависимости от выбранных параметров, в Word должны выходить те или иные блоки с текстом и с картинками.
Здесь вариантов несколько: замена блоков текста, заполнение переменных... Что нравится. Таблицы будут? В любом случае надо поработать для начала с шаблоном ворда, потом подгрузить в макеты конфигурации в виде двоичных данных например.
Если у вас есть типовая конфигурация какая-нибудь, УТ к примеру, можно посмотреть реализацию там и использовать прописанные механизмы, чтобы не изобретать велосипед.
0
Оленька
24 / 24 / 1
Регистрация: 11.04.2008
Сообщений: 540
12.09.2017, 11:14  [ТС] 3
Отчет планирую делать через шаблон.
Конфигурация УПП.
Меня не смущает текст вставить в шаблон, меня больше смущают картинки, их где-то надо хранить и вставить аккуратно рядом с текстом.

Добавлено через 15 минут
Причем еще к каждому блоку текста своя картинка.
Я вот и думаю, как бы вставлять полностью блок (и текст и картинка). Только где и в каком виде этот блок хранить лучше в 1С?
0
GreenkA
Форумчанин
Эксперт 1С
3009 / 1934 / 520
Регистрация: 25.06.2009
Сообщений: 6,820
12.09.2017, 11:41 4
Цитата Сообщение от Оленька Посмотреть сообщение
Только где и в каком виде этот блок хранить лучше в 1С
Я думала, у вас информация уже где-то хранится в БД) В справочнике каком, картинки - в хранилище значений...
А много таких блоков будет?
0
Оленька
24 / 24 / 1
Регистрация: 11.04.2008
Сообщений: 540
12.09.2017, 11:48  [ТС] 5
Цитата Сообщение от GreenkA Посмотреть сообщение
Я думала, у вас информация уже где-то хранится в БД) В справочнике каком, картинки - в хранилище значений...
А много таких блоков будет?
Нет, информация еще нигде не хранится. Я сейчас и думаю как это все организовать, чтобы и хранилось это где-то и откуда достать было можно без проблем.
Блоков много, блоки вида:
0
Миниатюры
Формирование отчета в Word  
GreenkA
Форумчанин
Эксперт 1С
3009 / 1934 / 520
Регистрация: 25.06.2009
Сообщений: 6,820
12.09.2017, 11:51 6
Оленька, а почему бы не довести это дело до ума, создав справочник с деталями, там будет описание в виде текста, а не картинки, и картинку отдельно засунуть в реквизит типа ХранилищеЗначения? Дальше можно там же на форме элемента справочника сделать кнопку "печать" с выводом этой информации? Или у вас в одном отчете может быть несколько деталей?
0
Оленька
24 / 24 / 1
Регистрация: 11.04.2008
Сообщений: 540
12.09.2017, 11:53  [ТС] 7
У меня в одном отчете будет несколько деталей (их будет как минимум 10)
0
GreenkA
Форумчанин
Эксперт 1С
3009 / 1934 / 520
Регистрация: 25.06.2009
Сообщений: 6,820
12.09.2017, 11:53 8
Текст в виде картинки создаст вам проблемы с качеством отображения и пропорциональности Ш и В при выводе.
0
Оленька
24 / 24 / 1
Регистрация: 11.04.2008
Сообщений: 540
12.09.2017, 11:56  [ТС] 9
Т.е. это отчет из каких деталей состоит.

Добавлено через 42 секунды
Текст то я думаю текстом вставить, а вот картинку уже отдельно вставлять.

Добавлено через 1 минуту
но опять таки при подстановке нужно как-то будет состыковать картинку и текст нужный и вставить это в общий отчет
0
GreenkA
Форумчанин
Эксперт 1С
3009 / 1934 / 520
Регистрация: 25.06.2009
Сообщений: 6,820
12.09.2017, 11:56 10
Оленька, так какая задача? Это заказ покупателя, комплектующие к чему-то? Что у вас еще есть в конфигурации? По хорошему: я вам предложила вариант со справочником и реквизитом для хранения картинки. Эта информация может пригодиться где-то еще, кроме печати в ворд.
0
Оленька
24 / 24 / 1
Регистрация: 11.04.2008
Сообщений: 540
12.09.2017, 12:17  [ТС] 11
Задача вывести "Предложение" в Word, со всеми описаниями и картинками (из чего состоит модель).
Заказчик просит, чтобы так блоки и хранились в файлах word по блокам.
Просто при формировании предложения, чтобы в общий файл копировалась информация из маленьких файлов. Тем самым подставлялись блоки.
Возможно ли вообще заполнять файл Word данными из другого файла Word?
0
GreenkA
Форумчанин
Эксперт 1С
3009 / 1934 / 520
Регистрация: 25.06.2009
Сообщений: 6,820
12.09.2017, 15:22 12
Цитата Сообщение от Оленька Посмотреть сообщение
Заказчик просит, чтобы так блоки и хранились в файлах word по блокам.
Где-то на ПК или в конфигурации 1С?
Вообще странный заказчик, эта информация будет статична? Количество деталей неизменно?

Цитата Сообщение от Оленька Посмотреть сообщение
Возможно ли вообще заполнять файл Word данными из другого файла Word?
да.
0
Yulunga
507 / 372 / 90
Регистрация: 22.04.2013
Сообщений: 2,440
Записей в блоге: 1
Завершенные тесты: 1
12.09.2017, 19:32 13
GreenkA, наверно надо просто блоки. условно выделить 5см в ширину на картинку и остальные 21.9-5см - на текст. текст+картинка = 1 блок.
и сказать заказчику что они кабутабы хранятся в ворде. но достать их нельзя. надо вам - делайте отчёт из одного элемента и выводите в ворд. будет то что хотите.
а надо много - они же все одинаковые. высотой сделать чтобы билось на высоту страницы.
сделать макет и выводить его.

так ?
0
GreenkA
Форумчанин
Эксперт 1С
3009 / 1934 / 520
Регистрация: 25.06.2009
Сообщений: 6,820
12.09.2017, 19:49 14

Не по теме:

Yulunga, Андрей, ты такая Юлунга со своими "кабутабы":D



Добавлено через 4 минуты
По сути я просто не понимаю, зачеееем во всей этой ситуации 1С?) С кучей лишнего кода, если еще и файлы ворда храниться будут на ПК: открыли файлик, выделили - Ctrl+c -> Ctrl+v -> Все!) Быстро, просто.
0
Оленька
24 / 24 / 1
Регистрация: 11.04.2008
Сообщений: 540
13.09.2017, 09:18  [ТС] 15
Так блоки то формируются в зависимости от модели. А у каждой модели свой набор запчастей.
Плюс, на других страницах будут тех.характеристики, которые также берутся из 1С из модели.
Моделей просто много, и чтобы не тратить время на Ctrl+c -> Ctrl+v заказчик и хочет, чтобы автоматом все формировалось и выдавало уже готовое предложение. Чтобы пользователь уже только распечатывал и отправлял покупателям.
В базе хранить файлы мы уже отказываемся, т.к. файлов уже море в базе. База уже больше 80ГБ(((((

Добавлено через 1 час 0 минут
Цитата Сообщение от GreenkA Посмотреть сообщение
Вообще странный заказчик, эта информация будет статична? Количество деталей неизменно?
Информация статична будет. Может и будет меняться текст или картинка раз в 5 лет.
Заказчик просто хочет весь рабочий процесс пользователей автоматизировать, чтобы они долго не думали, а выдавали сразу что нужно и без ошибок (с теми блоками, которые принадлежат той или иной модели).

Добавлено через 1 минуту
А как заполнять один Word файл другим Word файлом?
Есть где-нибудь такая информация, желательно с примерами?
0
GreenkA
Форумчанин
Эксперт 1С
3009 / 1934 / 520
Регистрация: 25.06.2009
Сообщений: 6,820
13.09.2017, 09:30 16
Оленька, а где будут храниться пути к файлам? Детали в 1С вообще в каком виде? Справочник хоть есть?

Не по теме:

Ерунду какую-то хотите сделать, даже помогать желания нет...

0
Оленька
24 / 24 / 1
Регистрация: 11.04.2008
Сообщений: 540
13.09.2017, 09:44  [ТС] 17
В 1С есть справочник моделей, в нем есть стандартная комплектация перечень и доп комплектация (это как раз и есть мои блоки) - справочник опций, без картинок.
Идея в том, что при создании отчета берется общий макет (костяк) и уже в зависимости от опций в этот макет подставляются блоки из других шаблонов с текстом и картинкой. Т.е. идея - эти блоки хранить в Word уже в готовом варианте (с текстом и картинками) и только подставлять при создании.
Где хранить еще не решили, пока у нас все хранится в спр."Хранилище дополнительной информации", но в идеале хотим уже все файлы хранить отдельно от базы. Но когда это будет, неизвестно.

Цитата Сообщение от GreenkA Посмотреть сообщение
Не по теме:
Ерунду какую-то хотите сделать, даже помогать желания нет...
Я понимаю, что со стороны кажется ерундой. Наверно я не очень понятно объясняю, что хочу в итоге получить. Поэтому и прошу какую-нибудь информацию как из одного файла Word можно вставлять данные в другой файл Word.
0
Yulunga
507 / 372 / 90
Регистрация: 22.04.2013
Сообщений: 2,440
Записей в блоге: 1
Завершенные тесты: 1
13.09.2017, 10:21 18
Цитата Сообщение от Оленька Посмотреть сообщение
Наверно я не очень понятно объясняю
да понятно, конечно
Цитата Сообщение от Оленька Посмотреть сообщение
как из одного файла Word можно вставлять данные в другой файл Word
а вот это надо искать на форуме вордоводов. а 1с-кой просто повторить те же действия, что и они.
0
GreenkA
Форумчанин
Эксперт 1С
3009 / 1934 / 520
Регистрация: 25.06.2009
Сообщений: 6,820
13.09.2017, 18:33 19
Оленька, не смотря на "нежелание" сработала однодневная акция "Оленьке от Оленьки") Так что набросала вам простую базу, разбирайтесь в реализации.
Там всего два объекта: справочник Запчасти с реквизитом - "Путь к файлу", свои два файла для тестов я тоже выложила, пути замените на свои.
И документ - "Предложение", где в табличной части выбираются детали. По команде Печать происходит формирование вордовского файла.
Все процедуры и функции смотрите в общих модулях ПечатьКлиент и ПечатьСервер. Выложу сюда процедуру печати на клиенте, на сервере запросом только получаются пути к файлам и возвращаются на клиент:
1C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
Процедура ВыводВВорд(Ссылка) Экспорт
    МассивПутей = ПечатьСервер.ПолучитьМассивПутейКФайлам(Ссылка);
    
    Состояние(НСтр("ru = 'Выполняется формирование печатных форм'"));
    Попытка
        Если МассивПутей.Количество()<>0 Тогда 
            Word = Новый COMОбъект("Word.Application");
            ИмяВременногоФайла = ПолучитьИмяВременногоФайла(".doc");
            КопироватьФайл(МассивПутей[0],ИмяВременногоФайла);//скопируем первый файл в новый вордовский документ
            WordDoc = Word.Documents.ADD(ИмяВременногоФайла);
            
            Для к = 1 по МассивПутей.Количество()-1 Цикл
                WordDoc.Application.Selection.InsertFile(МассивПутей[к]);
                WordDoc.Application.Selection.InsertBreak(1); //можно закомментить, если разрыв не нужен и картинки должны идти подряд
            КонецЦикла;
            Word.Visible = Истина;
            Word.Activate();
        КонецЕсли; 
    Исключение
        ВызватьИсключение НСтр("ru ='Проверьте пути к файлам описания у выбранных запчастей!'");
    КонецПопытки;
    
    Состояние(НСтр("ru = 'Формирование печатных форм завершено'"));
КонецПроцедуры
И еще вот вдогонку, если интересно - Работа с MS Word из 1С "для самых маленьких"
1
Вложения
Тип файла: zip 1Cv8_base.zip (36.7 Кб, 3 просмотров)
Тип файла: zip Docs.zip (225.8 Кб, 3 просмотров)
Оленька
24 / 24 / 1
Регистрация: 11.04.2008
Сообщений: 540
14.09.2017, 13:38  [ТС] 20
Пишу так:
1C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
МСВорд                       = Новый COMОбъект("Word.Application");
        
Документ                     = МСВорд.Documents.Add(ИмяФайла);
Документ2                    = МСВорд.Documents.Add(ИмяФайла2);
            
Документ2.Select();
Документ2.Application.Selection.Copy();
Документ2.Close();
            
Документ.Application.Selection.MoveDown();
Документ.Application.Selection.InsertNewPage();
Документ.Application.Selection.Paste();
        
Документ.Activate();
                        
МСВорд.Visible       = 1;
МСВорд.WindowState = 1;
МСВорд.ShowMe();
И всё вроде бы хорошо, но текст из 2го файла вставляется перед тестом первого(((((
И ничего не помогает поменять порядок. Что я не так делаю?(((((
0
14.09.2017, 13:38
Answers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
14.09.2017, 13:38

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

формирование отчета в 1С 8.0
с нуля разработал конфигуратор (1С Предприятие 8 ) суть заключается в чем, есть элеватор семян по...

Формирование отчета
Здравствуйте! Никак не могу разобраться. Я создал отчет с нуля. Мне нужно при выборе элемента...

Формирование отчета в самописной конфигурации
В начале немного о конфигурации - приведу скриншоты объектов конигурации. Справочники...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2020, vBulletin Solutions, Inc.