Имя: Пароль:
1C
 
Вставка фиксированного текста в сформированный word
0 zippygrill
 
23.12.24
13:51
Привет,
Собственно 2 вопроса по теме:
1. Место вставки текста - визуально в одном и том же месте нужно вставить, можно ли программно, как в ТабДок - R1C1 - однозначно определить место, только в Ворд?
2. с помощью 1С можно это сделать? Если нет, может на питоне знаете библиотеку способна на такое?
1 Злоп
 
23.12.24
13:55
Вставь в шаблон %%туттекст%%, а потом заменой
??
2 Волшебник
 
23.12.24
13:59
используйте закладки
3 zippygrill
 
23.12.24
14:00
(1) уже поздно так делать, документы сформированы и в работе находятся.
4 Волшебник
 
23.12.24
14:01
(3) Если документы уже сформированы и в работе, то ничего в них вставлять уже не надо.
5 Ногаминебить
 
23.12.24
15:22
Распаковать ворд в кучу хмл, найти и подменить, запаковать обратно.
6 Jackman
 
23.12.24
17:14
(0) Вам совершенно правильно подсказали в (2). Делаете документы-шаблоны, нужные места помечаете как закладки, потом к ним обращаетесь через 1С и меняете на нужный текст. Например, таким способом можно заполнять типовые договора, подставляя данные клиента.

Можете попробовать еще вот такой способ, через поиск и замену: https://infofront.su/1c-chteniye-redaktirovaniye-word/
7 Eiffil123
 
23.12.24
17:24
(6) лучше как в (1). закладки не всегда удобно, т.к. одинаковый текст может повторяться во многих местах документа, а закладку с одним именем не сделаешь. Плюс закладка не доступна в колонтитулах
8 Кирпич
 
23.12.24
22:37
python-docx
python-docx-template

если python интересует
10 1zippygrill
 
23.12.24
23:03
(5) бсп - мимо?
11 1zippygrill
 
23.12.24
23:05
(6) (7) порядка 200-400 ворд файлов, нужно в них уже фигачить текст.
крайний вариант конечно же начать все сначала ( речь про согласование документов из интегрированных систем в 1С ДО )
12 Злопчинский
 
23.12.24
23:16
(3) не запускай в работу пока не сформируешь как надо, проблемы в чем?
13 Злопчинский
 
23.12.24
23:16
(4) +100
15 maxab72
 
23.12.24
23:25
Если в вордовый файл в одно и то же место (по координатам на листе) надо вставить блок с каким-то текстом, это можно сделать и программно, используя код на VBA. Проще всего включить запись макроса, а потом перетащить код в 1с. Правда у таких созданных из 1с блоков раньше было ограничение по длине вставляемой строки, что-то порядка 1000 символов, но это было в старых офисах, в нынешнем не проверял.
17 Garykom
 
24.12.24
01:31
(0) можно
docx - zip и xml
doc - word через com/ole, libreoffice или либы для работы с doc
18 DrZombi
 
24.12.24
06:10
(0) Придется много писать, и серьезно. Линукс, понимаешь :)

Заполнение документа Word без ComОбъект
https://infostart.ru/1c/articles/590918/

И дальше в гугл в помощь, на инфостарте много таких примеров :)
20 Кирпич
 
24.12.24
13:56
(18) да нафиг это всё нужно. пять строчек на питоне и проблема решена.
21 Злопчинский
 
24.12.24
14:29
и как это на питоне будет выглядеть?
поставить питон.
поставить иде для питона
качнуть библиотеку.
разобраться в питоне.
плюнуть и сделать на 1С.
;-)
22 Кирпич
 
24.12.24
14:34
(21) ну автор же спрашивал про питон. может он в курсе. а так
поставить питон
качнуть библиотеку
обратиться к любому кто шарит в питоне. там ума много не надо. 10-20 минут и готово
23 Злопчинский
 
24.12.24
14:42
(22) упустил, что автор шарит в питоне
как и везде, в питоне все тупо упирается в знание кучи библиотек и методов.
есть для питона какой-нить репозитарий библиотек с описанием методов/процедур/функций библиотеки?
24 Кирпич
 
24.12.24
14:40
25 Ногаминебить
 
24.12.24
14:53
(10) Ну питон тоже не особо бсп. :)
Вон в (18) и описание подкинули. Кстати там несложно насколько я помню.
26 Кирпич
 
24.12.24
15:18
вот нацарапал уже на питоне

import glob
import pathlib
from docx import Document

in_dir = "c:\\temp\\docs\\"	   #ГДЕ ЛЕЖАТ ФАЙЛЫ  
out_dir = "c:\\temp\\docs\\out\\" #КУДА СВАЛИТЬ ПЕРЕДЕЛАННЫЕ ФАЙЛЫ
filelist = glob.glob(in_dir + '*.docx')

oldstr = "Не допускайте"
newstr = "ДОПУСКАЙТЕ"

for f in filelist:
	print(f)
	doc = Document(f)
	for p in doc.paragraphs:
		p.text = str.replace(p.text, oldstr, newstr)
	ff = out_dir+pathlib.Path(f).name
	doc.save(ff)
	print(ff + " saved")

print("ok")
27 Волшебник
 
24.12.24
15:13
(26) Для форматирования программного кода используйте флаг "Оформление" справа и теги PRE

28 Злопчинский
 
24.12.24
19:37
(26) Некузяво
for p in doc.paragraphs:
зачем каждый параграф обрабатывать по отдельности.
надо сразу во всем тексте!
29 Волшебник
 
24.12.24
20:40
(28) Злоп, я не верю, что Вы вдруг решили на старости лет освоить питон и поправлять грандов. Ну простите.
30 Кирпич
 
24.12.24
20:53
(28) ну моё дело показать, как решить проблему. Я эту либу не изучал. Просто попробовал - работает. Оптимизировать будем потом.
31 Злопчинский
 
24.12.24
21:17
(29) а чего это вдруг нет?
питон прикольный язык, и вся его мощь - в доп.библиотеках. "Учить" я их не собираюсь, а поднатаскивать школьников для тривиальных задач - тут что питон, что фортран...
32 Злопчинский
 
24.12.24
21:22
(29) я не старый, я - мудрый...
33 Кирпич
 
24.12.24
21:34
(31) ну давай показывай как "сразу во всем тексте!"
школьники ждут.
34 Волшебник
 
24.12.24
21:59
(32) Ну ок. Питон сейчас в школах изучают вместо Бейсика. Он структурирует мышление, там лесенка обязательна.
Я знаю питон. Мои дочи знают питон.
Вы тоже теперь знаете питон?

Программирование — это вторая грамотность.
35 Злопчинский
 
24.12.24
22:24
(33) я джун, ожидал что мастер покажет
но мастер - сова... ;-)
36 Злопчинский
 
24.12.24
22:27
(34) нахрена в школе что питон, что бэйсик? больше пользы принесло бы основы построения алгоритмов, формализация задач.
я со своим подопечным половину урока бьюсь чтобы мог внятно сформулировать последовательность действий хотя бы...
но видно сейчас так весь мир - ххп... поэтому и ракеты взрываются и посадка на марс накрывается и на луну долететь проблема... и ссут в подъездах байдены всякие
37 Волшебник
 
24.12.24
22:37
(36) у Вас старческий маразм
38 Волшебник
 
24.12.24
22:39
Пока не очень поздно, я предлагаю собрать бригаду помощи Злоп или Злопчинский
Отец похоронил своего сына.
Ему плохо. Он живёт в Питере, насколько я понимаю.

Это не шутка.
39 Волшебник
 
24.12.24
22:43
(38)+ Я не умею собирать бригады в телеграме. Сделайте кто-то и пригласите меня админом.
40 Garykom
 
25.12.24
07:51
(0) Чем не устраивает встроенное в 1С ДО 2.1?
АвтозаполнениеШаблоновФайловСервер.ВыполнитьАвтоЗаполнениеШаблона
41 Garykom
 
25.12.24
07:55
(40)+ Путем небольшой доработки используем даже для вставки таблиц в шаблоны ДО
Идея отсюда https://infostart.ru/1c/articles/259510/
Там комменты глянуть
Оптимист верит, что мы живем в лучшем из миров. Пессимист боится, что так оно и есть.