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

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 чтобы не запоминать.
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот