|
Работа с Word и Excel | ☑ | ||
---|---|---|---|---|
0
Falex
07.04.17
✎
16:07
|
Здравствуйте. Платформа 8.3.
Задача следующего характера: возможно ли сделать, например, в Excel шаблон (который откроется из режима предприятия). В Excel будут доступны поля базы данных 1С (представления) для заполнения полей-параметров. Также можно заполнить и таблицу, которая затем в 1С можно будет заполнить по алгоритму (число строк переменное). Есть ли примеры или конфигурации где такое реализовано? |
|||
1
Лодырь
07.04.17
✎
16:10
|
Цель то какая?
Организовать ввод данных через Excel? Не совсем понимаю чего хочется достичь в итоге. |
|||
2
dezss
07.04.17
✎
16:11
|
(1) +1
(0) Опиши пример того, что хочешь. |
|||
3
Falex
07.04.17
✎
16:28
|
Есть документ со своими полями, табличной частью.
Хочу чтобы юзер в режиме 1С сам мог создать шаблон Excel, настроить его заполнение (заполнение из доступных полей документа), произвольное количество таблиц. "Прикрепить" шаблон к этому документу и при печати открывался Excel с уже заполненными шаблонами. Причем формулы также бы работали. Далее юзер смог в открытый документ внести какие-то правки (при необходимости), например, перенести поля, поменять цифры, и закрыть документ Excel: при этом измененный файл сохранится в документе и его можно будет открыть на повторный просмотр. |
|||
4
Лодырь
07.04.17
✎
16:34
|
Пример видел например в какой то отраслевой конфе для издательств. Там было заполнение договора по шаблону. В принципе функционал встречающийся.
|
|||
5
dezss
07.04.17
✎
16:38
|
(3) Интересная тема. Если найдешь решение, напиши сюда, пожалуйста.
|
|||
6
Лодырь
07.04.17
✎
16:45
|
А чем вам СКД не нравится?
|
|||
7
Tatitutu
07.04.17
✎
16:49
|
делал примерно такое
1С знает офис,офис - знает 1С макросы и передача параметров - главное понять итоговое задание посмотри пример http://catalog.mista.ru/public/62648/ |
|||
8
Falex
07.04.17
✎
16:55
|
Будут настраивать пользователи, которые не знают СКД.
|
|||
9
Махони402
07.04.17
✎
17:12
|
(8) Не взлетит. Пользователи в режиме экселя в процессе "настройки" шаблона грохнут тебе любые маркеры, по которым ты будешь синхронизацию настраивать. А если шаблон не настраиваемый, то проще в табличном документе все сделать и эксель не приплетать.
|
|||
10
takefive
07.04.17
✎
17:40
|
кусочек кода положу...
ИмяВременногоФайла = ПолучитьИмяВременногоФайла(Расширение); ДанныеФайла = ПолучитьДанныеФайла(Бланк); ДанныеФайла.Записать(ИмяВременногоФайла); ФлагВключен = "ю"; ФлагВыключен = "o"; Шрифт = "Wingdings"; WORD //Execute(FindText,MatchCase,MatchWholeWord,MatchWildcards,MatchSoundsLike,MatchAllWordForms,Forward,Wrap,Format_,ReplaceWith) Word = Новый COMОбъект("Word.Application"); Word.Documents.Open(ИмяВременногоФайла); ДокументWord = Word.ActiveDocument(); Замена = ДокументWord.Content.Find; Для каждого ЭлементСтруктуры Из ЗначенияПолей Цикл Ключ = "["+ЭлементСтруктуры.Ключ+"]"; Значение = ЭлементСтруктуры.Значение; ЭтоЧекБокс = Лев(Ключ,5) = "[BOX_"; Если ЭтоЧекБокс Тогда Флаг = ?(Значение = Истина,ФлагВключен,ФлагВыключен); Если Замена.Execute(Ключ) Тогда Замена.Replacement.Font.Name = Шрифт; Замена.Execute(Ключ,Ложь,Истина,Ложь,,,Истина,,Истина,Флаг,2);//флажки КонецЕсли; Иначе Замена.Execute(Ключ,Ложь,Истина,Ложь,,,Истина,,Ложь,Значение,2); КонецЕсли; КонецЦикла; ДокументWord.Protect(2,0,"11111");//пароль на редактрование - 11111 ДокументWord.Save(); ДокументWord.Close(); EXCEL //Replace(What, Replacement, [LookAt], [SearchOrder], [MatchCase], [MatchByte], [SearchFormat], [ReplaceFormat]) Excel = Новый COMОбъект("Excel.Application"); Книга = Excel.Workbooks.Open(ИмяВременногоФайла); Лист = Книга.WorkSheets(1); Для каждого ЭлементСтруктуры Из ЗначенияПолей Цикл Ключ = "["+ЭлементСтруктуры.Ключ+"]"; Значение = ЭлементСтруктуры.Значение; ЧекБокс = Лев(Ключ,5) = "[BOX_"; Замена = Лист.UsedRange.Find(Ключ); Если Замена <> Неопределено Тогда Если ЧекБокс Тогда Флаг = ?(Значение = Истина,ФлагВключен,ФлагВыключен); Замена.Application.ReplaceFormat.Font.Name = Шрифт; Замена.Replace(Ключ,Флаг,,,Ложь,Ложь,Ложь,Истина);//флажки Иначе Замена.Replace(Ключ,Значение); КонецЕсли; КонецЕсли; КонецЦикла; Книга.Save(); Excel.Quit(); |
|||
11
Falex
08.04.17
✎
09:34
|
"А если шаблон не настраиваемый, то проще в табличном документе все сделать и эксель не приплетать."
в табличном документе, а потом в excel выводить с возможностью правки и сохранения? ЗЫ: а код откуда? ;) |
|||
12
Falex
08.04.17
✎
17:25
|
Типа как здесь сделано: https://www.youtube.com/watch?v=-jdetqv5XD8
(можно смотреть, начиная со 2 минуты). |
|||
13
Falex
08.04.17
✎
17:51
|
Я так понимаю, что еще такой разработки нет?
Есть типа таких как в Документообороте, но как-то мне кажется все это запутанно будет для пользователя... |
|||
14
mistеr
08.04.17
✎
18:01
|
(3) Чего-то неправильного хотят эти пользователи. Сделать в рамках интерфейса 1С все, что им нужно, будет проще (и дешевле!), чем этот онанизм с Экселем туда-сюда.
|
|||
15
Falex
08.04.17
✎
22:26
|
:)
Посоветуйте тогда как лучше организовать такой механизм настраиваемых шаблонов (с возможностью добавления своих), заполнением данных из объекта и возможностью добавления формул для расчета. Спасибо. |
|||
16
Злопчинский
08.04.17
✎
23:00
|
(15) работать в экселе.
в экселя сосать данные из 1С. в экселе - пусть творят что хотят. для использования данных из 1С эксельным пользователям дать набор стандартизированных функций. . либо в экселе творят что хотят и за данными обращаются в 1С, либо в 1С ваяем что хотим и выплевывваем в эксель. . произвольно и там и там - не взлетит. . исли не знаете что хотят в экселя - плюйте в эксель тонны плоских таблиц. пусть ваяют собственные свинтопрульные аппараты |
|||
17
mistеr
09.04.17
✎
10:06
|
(15) Смотри, как сделана рег. отчетность.
|
|||
18
Falex
09.04.17
✎
10:14
|
"Смотри, как сделана рег. отчетность." - не помню чтобы там можно сопоставление в режиме пользователя делать.
|
|||
19
Falex
09.04.17
✎
10:14
|
В Интернете еще видел какую-то обработку "Конструктор договоров"...
|
|||
20
Aleksey
09.04.17
✎
10:28
|
(12) В Договорчиках так реализовано
Никаких "встроенных" шаблонов программа не предлагает. Схема работы предполагает, что вы создадите такой шаблон самостоятельно средствами Word, загрузите его в программу, она вставит в шаблон параметры и вы укажете этим параметрам место. http://catalog.mista.ru/public/457678/ |
|||
21
mistеr
09.04.17
✎
10:29
|
(18) Придется добавить.
|
|||
22
mistеr
09.04.17
✎
10:30
|
(18) А вообще вынуждать пользователя делать работу программиста/внедренца — тупиковый путь.
|
|||
23
Aleksey
09.04.17
✎
10:32
|
БСП тоже так может, по крайне мере в типовой БП 3.0 есть Wordовский шаблон (Cогласие на обработку персональных данных (документ Microsoft Word)) с параметрами "{/v8 Область.НомерДата и т.п.}
|
|||
24
Gantoha
09.04.17
✎
10:32
|
например средненький договор очень тяжело запрограммировать , так как там ветвлений может быть очень много.
|
|||
25
Gantoha
09.04.17
✎
10:35
|
я имею ввиду такой договор у которого разделы меняются и приложения в зависимости от того , что в договор попало.
Кстати ..вот учебный центр 1 1с делает свои договора в ворде копи пастом .. хотя мог бы что нибудь и автоматизировать. |
|||
26
Aleksey
09.04.17
✎
10:40
|
(25) Нужно им Договорчики продать, чтобы не мучались
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |