Как закрыть WORD после передачи в него данных?
Модератор: Дед Пахом
					Правила форума
При написании вопроса или обсуждении проблемы, не забывайте указывать версию Clarion который Вы используете.
А так же пользуйтесь спец. тегами при вставке исходников!!!
	При написании вопроса или обсуждении проблемы, не забывайте указывать версию Clarion который Вы используете.
А так же пользуйтесь спец. тегами при вставке исходников!!!
- RaFaeL
 - ✯ Ветеран ✯
 - Сообщения: 1417
 - Зарегистрирован: 24 Март 2009, 17:59
 - Откуда: НН
 - Благодарил (а): 12 раз
 - Поблагодарили: 2 раза
 - Контактная информация:
 
Как закрыть WORD после передачи в него данных?
Единственная известная мне проблема работы с графикой при использовании image2pdf это отсутствие поддержки прозрачных вложенных картинок, они становятся непрозрачными. Про другие сам послушал бы )
			
			
									
						- finsoftrz
 - ✯ Ветеран ✯
 - Сообщения: 5568
 - Зарегистрирован: 06 Ноябрь 2014, 12:48
 - Благодарил (а): 18 раз
 - Поблагодарили: 78 раз
 
Как закрыть WORD после передачи в него данных?
Ну, фик его знает, у меня эта библиотека в целом работает. Некоторые формы имеют искажения, проверять надо. Надо еще учесть, что используется только для первичных бланков - всяких накладных и т.п. Для отчетов стадартно xls. Про кларионовский репорт именно для отчетов я давно уже писал, что это совсем уж древний подход из 90-х, когда все печаталось на бумаге. Я от него отказался почти 20 лет назад.
			
			
									
						C6/C12, ШВС, tps/btrieve.
			
						- Губин Игорь
 - Шубуршун
 - Сообщения: 2680
 - Зарегистрирован: 16 Сентябрь 2005, 16:35
 - Откуда: Москва
 - Благодарил (а): 5 раз
 - Поблагодарили: 29 раз
 
Как закрыть WORD после передачи в него данных?
Глюк там, СЭР, при обработке вставленных и в текст и отмасштабированных картинках... УВЫ...Игорь Столяров писал(а): 25 Март 2022, 19:54 Можно сохранять из Microsoft Word документ в PDF - см. табличку с доступными форматами в прошлом ответе.
Это я только кажусь дураком! На самом деле я полный идиот!
			
						- Игорь Столяров
 - Ветеран движения
 - Сообщения: 8270
 - Зарегистрирован: 07 Июль 2005, 10:19
 - Откуда: г. Ростов-на-ДоМу
 - Благодарил (а): 34 раза
 - Поблагодарили: 106 раз
 
Как закрыть WORD после передачи в него данных?
Никогда такого не видел ... может быть зависит от версии офисного пакета ?Губин Игорь писал(а): 26 Март 2022, 14:43 Глюк там, СЭР, при обработке вставленных и в текст и отмасштабированных картинках
С другой стороны я экспортирую вставленные 1:1 WMF листы REPORT, без масштабирования ...
C графикой в REPORT проблем нет.
Если у Вас есть проблемный DOCX для теста - сбросьте, проверю экспорт в PDF.
За теми, кто отстал, не возвращаться ! 
 Кодекс
			
						- Губин Игорь
 - Шубуршун
 - Сообщения: 2680
 - Зарегистрирован: 16 Сентябрь 2005, 16:35
 - Откуда: Москва
 - Благодарил (а): 5 раз
 - Поблагодарили: 29 раз
 
Как закрыть WORD после передачи в него данных?
У нас на разных пакетах и компьютерах. При печати, если файл создавался через стандартные драйвера мелкомягких, картинки как-то странно себя ведут - приходится использовать "печатать как изображение", иначе картинки (сплошь png - иконки в описание) начинают вести себя как на испорченном телевизоре. А есть одна картинка, скан офисной печати, которую, вообще, обрезает.Игорь Столяров писал(а): 26 Март 2022, 15:12 икогда такого не видел ... может быть зависит от версии офисного пакета ?
Простите, долго генерить примеры.
Это я только кажусь дураком! На самом деле я полный идиот!
			
						- Игорь Столяров
 - Ветеран движения
 - Сообщения: 8270
 - Зарегистрирован: 07 Июль 2005, 10:19
 - Откуда: г. Ростов-на-ДоМу
 - Благодарил (а): 34 раза
 - Поблагодарили: 106 раз
 
Как закрыть WORD после передачи в него данных?
Не проблема, мне оно не надо ...
Я сталкивался с проблемой отображения PNG в REPORT, когда графику делали в шаровом редакторе GIMP.
Его любят почему-то вебдизайнеры, но он работает с какими-то хипстерскими понятиями формата PNG ...
Тупо пересохраняли графику PNG в штатном Windows PaintBrush и проблемы нет.
За теми, кто отстал, не возвращаться ! 
 Кодекс
			
						Как закрыть WORD после передачи в него данных?
Мешает!SergioRaguzini писал(а): 25 Март 2022, 19:22 Есть еще одна, непонятная для меня ситуация при работе с Word, когда после экспорта отчета в файл MsWord и дальнейшим PROP:Deactivate, в Диспетчере задач Windows остается работающим в фоне процесс winword.exe хотя окно Word закрыто и внешне вроде бы это ничему не мешает.
Именно про это и был мой вопрос! Надо корректно закрыть WORD, он должен уйти из процессов в Диспетчере задач.
При всем моем уважении к вам (ко всем) как к "продвинутым" программистам - ничего не меняется, а именно:
как и 20 лет назад слишком далеки вы от народа.... у вас у всех крутые компы с "последними наворотами" и вы думаете что и у всех остальных так же. А оно не так, особенно в органах местной муниципальной власти - там у людей компы 2000-2004 года рождения (и покупать людям что то новое никто не торопиться). И когда тот же WORD висит в процессах по 20-30 раз то виснет все (в самый неподходящий момент).
Это первое!
Второе! Пока никто из вас ничем конкретным мне не помог .... я перепробовал все, что вы тут предложили .... но WORD остается висеть в прцесах в Диспетчере задач.
- ingasoftplus
 - Ветеран
 - Сообщения: 481
 - Зарегистрирован: 26 Декабрь 2006, 17:07
 - Откуда: Оттуда :)
 - Благодарил (а): 131 раз
 - Поблагодарили: 9 раз
 
Как закрыть WORD после передачи в него данных?
У нас тупо работает схема (на примере екселя, но для ворда тоже пойдет):
где pskill = https://docs.microsoft.com/en-us/sysint ... ads/pskill
			
			
									
						Код: Выделить всё
 
            ! Close all Open MS XLS Instances
    
            case message('Are you sure you want to close all Microsoft Excel Instances?','SYSTEM MESSAGE',ICON:Question,'&Yes|&No',2)
            of 1
                run('pskill excel.exe',1)
                message('All Microsoft Excel Instances closed','SYSTEM MESSAGE')
            of 2                                          
    
            end- Игорь Столяров
 - Ветеран движения
 - Сообщения: 8270
 - Зарегистрирован: 07 Июль 2005, 10:19
 - Откуда: г. Ростов-на-ДоМу
 - Благодарил (а): 34 раза
 - Поблагодарили: 106 раз
 
Как закрыть WORD после передачи в него данных?
Не обладая даром телепатии - не могу прокомментировать этот наезд ...
Попробуйте пожалуйста без самодеятельности выполнить точно вот такой код:
Код: Выделить всё
  WordControl{'Application.ActiveDocument.Close'}  ! У Вас есть код до этого места
  WordControl{'Application.Quit'}
  WordControl{Prop:ReportException} = False
  Loop 5 times
    WordControl{PROP:Deactivate}
  end
  Loop 5 times
     Destroy(WordControl) ! уничтожили OLE-контрол
  end
За теми, кто отстал, не возвращаться ! 
 Кодекс
			
						Как закрыть WORD после передачи в него данных?
run('pskill WINWORD.exe',1)
Спасибо! Все отрабатывает как надо!
Как закрыть WORD после передачи в него данных?
У меня компелятор не знает что такое: "WordControl"Игорь Столяров писал(а): 28 Март 2022, 12:33 Попробуйте пожалуйста без самодеятельности выполнить точно вот такой код:
WordControl{'Application.ActiveDocument.Close'}
..........
- Игорь Столяров
 - Ветеран движения
 - Сообщения: 8270
 - Зарегистрирован: 07 Июль 2005, 10:19
 - Откуда: г. Ростов-на-ДоМу
 - Благодарил (а): 34 раза
 - Поблагодарили: 106 раз
 
Как закрыть WORD после передачи в него данных?
Это название объекта Microsoft Word.
В Вашем примере используется красивое и понятное имя объекта: feqOLE
Просто замените пожалуйста "WordControl" на "feqOLE" ...
За теми, кто отстал, не возвращаться ! 
 Кодекс
			
						Как закрыть WORD после передачи в него данных?
Игорь Столяров писал(а): 28 Март 2022, 13:00 Просто замените пожалуйста "WordControl" на "feqOLE" ...
Код: Выделить всё
!==============================================================================================================================
 if CONF:Close_File then                                                      ! Закроем документ если надо
       !feqOLE{'Documents.Close()'}                                              ! Закрываем документ
       !run('pskill WINWORD.exe',1)
    feqOLE{'Application.ActiveDocument.Close'}  ! У Вас есть код до этого места
    feqOLE{'Application.Quit'}
    feqOLE{Prop:ReportException} = False
    Loop 5 times
      feqOLE{PROP:Deactivate}
    end
    Loop 5 times
       Destroy(feqOLE) ! уничтожили OLE-контрол
    end
 end
!==============================================================================================================================https://wampi.ru/image/RJ6huNy
Как закрыть WORD после передачи в него данных?
То как вы посоветовали работает нормально спасибо.... вопрос в догонку:ingasoftplus писал(а): 28 Март 2022, 11:39 У нас тупо работает схема (на примере екселя, но для ворда тоже пойдет):
Меня тут упрекнули, что я сохраняю фай как *.doc
Код: Выделить всё
Loc:SaveFileName = Clip(CONF:Path_Save_WORD) &'вх.'& Clip(UCH:Number) &'.doc'  ! Каталог для хранения файлов  + имяА как сделать так, чтобы расширение в имени файла корректно сформировалось само?
- Дед Пахом
 - Старичок
 - Сообщения: 3346
 - Зарегистрирован: 07 Июль 2005, 16:51
 - Откуда: Москва, Россия
 - Благодарил (а): 20 раз
 - Поблагодарили: 56 раз
 - Контактная информация:
 
Как закрыть WORD после передачи в него данных?
Без цикла тоже можно:
Код: Выделить всё
Destroy(feqOLE) ! уничтожили OLE-контрол
Destroy(feqOLE) ! уничтожили уже уничтоженный OLE-контрол
Destroy(feqOLE) ! уничтожили уже дважды уничтоженный OLE-контрол
Destroy(feqOLE) ! уничтожили уже трижды уничтоженный OLE-контрол
Destroy(feqOLE) ! уничтожили уже четырежды уничтоженный OLE-контрол, прямо зомби апокалипсис
С уважением, ДП
			
						