Удаление области текста в документе ворд

1. Chernika33 27.06.22 17:29 Сейчас в теме
Всем здрасьте!
Помогите пожалуйста, есть обработка выгрузки небольшого по объему справочника в документ ворд.
Как реализовать, что бы она выделяла нужный фрагмент в документе ворд (Например начало БД № 1 и конец БД № 1) и удаляла его.
Заранее спасибо.
По теме из базы знаний
Ответы
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
2. FatPanzer 27.06.22 17:39 Сейчас в теме
Зачем что-то удалять, если можно просто не выгружать?
3. Chernika33 27.06.22 17:44 Сейчас в теме
(2) Потому, что строк справочника может быть, как и больше так и меньше. Нужна корректная информацию при выгрузке, что бы он удалял ненужное или все удалял по БД и создавал новое
4. FatPanzer 27.06.22 17:46 Сейчас в теме
(3) Еще раз повторю. Зачем что-то выгружать, чтобы потом удалять? Может сразу не выгружать?
5. Chernika33 27.06.22 17:49 Сейчас в теме
(4)Подскажите, как реализовать?
6. FatPanzer 27.06.22 17:51 Сейчас в теме
(5) Просто не выгружать ненужную информацию. Я разве не об этом уже третий комментарий пишу?
7. Chernika33 27.06.22 17:52 Сейчас в теме
(6) Не подскажите, как проверить это?
8. FatPanzer 27.06.22 17:54 Сейчас в теме
(7) Конечно подскажу. Применить к фильтру выгрузки те же условия, которые вы хотели применить при удалении "выгруженной лишней информации".
9. Chernika33 27.06.22 17:58 Сейчас в теме
(8)Можно по подробнее? (Как мне проверить информацию по строке)

Запись строки:
WordПриложение.Selection.TypeText(строка(Выборка.Информация));
10. FatPanzer 27.06.22 17:59 Сейчас в теме
(9) Круто. давно в викторины не играл...
11. Chernika33 27.06.22 18:01 Сейчас в теме
(10) Спасибо тебе. Может кто побольше подскажет
12. FatPanzer 27.06.22 18:01 Сейчас в теме
(9) Смотрите. У меня есть.
Товары.Пиво.КружечкаЧешского.Выпить();

Не работает! Как думаете- почему?
14. SlavaKron 27.06.22 19:56 Сейчас в теме
(9)
Как мне проверить информацию по строке
Нужно удалять текст, добавленный в файл ранее или добавленный в текущем цикле?
15. FatPanzer 27.06.22 20:00 Сейчас в теме
(14) Автор не в курсе. Он говорит про "обработку, которая выгружает", но зачем то приводит код, который открывает ранее созданный файл.

Особенно мне интересно, как он в только что открытом файле хочет увидеть выделенные строки...
16. SlavaKron 27.06.22 20:04 Сейчас в теме
(15) Всё возможно. Если нужно ограничить именно результаты выборки, то ответ в (8). Но, наверно, всё-таки тут другое)
FatPanzer; +1 Ответить
17. FatPanzer 27.06.22 20:06 Сейчас в теме
18. SlavaKron 27.06.22 20:08 Сейчас в теме
(17) Там, скорее, концепция. В 8 - план действия. Осталось концепт-код написать.
19. FatPanzer 27.06.22 20:09 Сейчас в теме
22. Chernika33 28.06.22 09:08 Сейчас в теме
(14) Добавленный ранее. Например строки от "Начало Выгрузки " до "Конец Выгрузки"
13. Chernika33 27.06.22 18:02 Сейчас в теме
// Реализация логики команды
Если ИдентификаторКоманды = "ВыгрузкаИнформацииПоОбработкам" Тогда
СсылкаНаОрганизацию = Справочники.Организации.НайтиПоКоду("000000001");  
ИНН = СсылкаНаОрганизацию.ИНН;
НаименованиеБД = СсылкаНаОрганизацию.Наименование;

ПутьКФайлу = "C:\Users\\Desktop\Задания\Автоматчиеская проверка поключенных обработок в БД\Новая папка\1.docx"; 

	WordПриложение = Новый COMОбъект("Word.Application"); 
	WordПриложение.Visible = Истина;
	WordПриложение.Documents.Open(ПутьКФАйлу); 
	WordФайл = WordПриложение.ActiveDocument();

	   
	   
	   
	
	 WordПриложение.Selection.TypeText(строка("БД- " + Справочники.Организации.НаименованиеПоУмолчанию() + "ИНН - " + ИНН));
WordПриложение.Selection.TypeText(строка(Символ(10)));

	
	Выборка = Справочники.ДополнительныеОтчетыИОбработки.Выбрать();
				Пока Выборка.Следующий() Цикл
					// для каждого клиента формируем свой элемент
										// запишем код клиента в атрибут тега
					WordПриложение.Selection.TypeText(строка(Выборка.ИмяОбъекта));
					WordПриложение.Selection.TypeText(строка(Выборка.ИмяФайла));
					WordПриложение.Selection.TypeText(строка(Выборка.Версия));
					WordПриложение.Selection.TypeText(строка(Выборка.Информация));
					WordПриложение.Selection.TypeText(строка(Символ(10)));
				КонецЦикла;

	

	
	//Поиск.ClearFormatting();
	WordФайл.Close(); 
	WordПриложение.Quit();


Показать
20. Zevzm 28.06.22 08:32 Сейчас в теме
(13) У вас, наверное, все та же задача, если информацию ранее выгружали, то снова ее в файл писать не нужно? Но вы все равно проходите по всему справочнику каждый раз, может быть тогда просто очистить документ перед заполнением и заполнить более новой информацией?
23. Chernika33 28.06.22 09:12 Сейчас в теме
(20) Все таже :) Перешла в Word, ексель то не захотел :)
21. Zevzm 28.06.22 08:35 Сейчас в теме
(13) Или же у вас в выборке записи дублируются, тогда как вам и писали раньше, либо свою выборку заполните в ТЗ и сверните ее, либо, если умеете пользоваться запросами выберите различные. Все зависит от того, что у вас повторяется...
24. Chernika33 28.06.22 09:14 Сейчас в теме
(21) Может по всем строчкам, может не повториться ни одной
25. Zevzm 28.06.22 09:26 Сейчас в теме
(24) Положите все в ТЗ и делайте с этими данными что вздумается: сворачивайте, сортируйте, отбирайте....
26. Chernika33 28.06.22 09:27 Сейчас в теме
(25) Попробую сегодня разобраться, спасибо
27. Zevzm 28.06.22 09:51 Сейчас в теме
(26) Вот таким запросом вы можете получить данные и выгрузить их в ТЗ. Символ ПС добавите потом при записи файл
Запрос = Новый Запрос;
	Запрос.Текст = 
		"ВЫБРАТЬ РАЗЛИЧНЫЕ
		|	ДополнительныеОтчетыИОбработки.ИмяОбъекта КАК ИмяОбъекта,
		|	ДополнительныеОтчетыИОбработки.ИмяФайла КАК ИмяФайла,
		|	ДополнительныеОтчетыИОбработки.Версия КАК Версия,
		|	ДополнительныеОтчетыИОбработки.Информация КАК Информация
		|ИЗ
		|	Справочник.ДополнительныеОтчетыИОбработки КАК ДополнительныеОтчетыИОбработки";
	
	РезультатЗапроса = Запрос.Выполнить();
	
	ТаблицаЗначенийЗапрос = РезультатЗапроса.Выгрузить();
Показать


Дальше посмотрите ТЗ в отладчике, есть ли там дубликаты и что с ней делать, затем перебирайте строки и пишите в файл.

Строку в файл можете формировать сразу из нескольких значений колонок и писать в файл один раз, используя функцию СтрШаблон(). Почитайте про нее, в будущем пригодится.
28. Zevzm 28.06.22 09:56 Сейчас в теме
(24) Наиболее часто используемые символы есть в наборе "Символы" (Определяет набор специальных символов), например: Символы.ПС.
Коды в ASCII чтобы не запоминать.
Оставьте свое сообщение
Вакансии
Программист 1С
Москва
зарплата от 180 000 руб. до 220 000 руб.
Полный день

Аналитик 1С / Бизнес-аналитик
Нижний Новгород
зарплата от 100 000 руб. до 250 000 руб.
Временный (на проект)

Программист 1С
Москва
зарплата от 250 000 руб.
Полный день

Программист 1C
Волгоград
зарплата от 200 000 руб.
Полный день

Аналитик
Санкт-Петербург
зарплата от 200 000 руб. до 250 000 руб.
Полный день