Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2013.03.22;
Скачать: [xml.tar.bz2];

Вниз

Документ Word и Delphi   Найти похожие ветки 

 
rodionov-uv   (2012-05-06 00:15) [0]

Добрый день!!!
Пишу программу для офиса. Суть программы работа с документами Word, а именно : имеем несколько папок с документами, например папки Акты, Журналы, Сопроводительные документы, Договора.
Нужно что бы в левой стороне отображались имена документов, в зависимости от того какую папку я выбрал, а в правой стороне - сам документ Word. С первой задачей я справился (С отображением имен документов в левой стороне и поиском по названию), а как отобразить сам документ я не знаю. Пробовал через олеобъект получается херня, через RxRichEdit с предварительным переводом в RTF формат очень долго и слетает форматирование документа.
Может можно как нибудь ещё???
Помогите плиз!!!!!!


 
Dennis I. Komarov ©   (2012-05-06 00:29) [1]

Зачем, если это равнозатратно открыть файл Word-ом?


 
rodionov_uv   (2012-05-06 00:35) [2]

Просто надо сперва просмотреть действительно ли это тот документ или нет и только после  открыть в Worde для редактирования.
Имя документа слишком длинное может достигать 100 знаков, а винда такое имя не поддерживает и имена делаются сокращёнными.


 
Dennis I. Komarov ©   (2012-05-06 00:58) [3]

чтобы "просмотреть" придется "открыть", так зачем открывать дважды?


 
rodionov_uv   (2012-05-06 01:18) [4]

И как вы это себе представляете?
Выбрали документ -> открылся Word -> документ оказался не тот -> закрываете Word -> выбераете следующий -> опять не тот и тд. если честно то это смешно.
Просто потом документы открываются не самим Wordом, а специализированной программой для заполнения этих документов. И выходной документ может состоять из нескольких документов совмещенных в один документ для печати.
Например документ будет состоять из двух различных договоров, трех актов и пяти журналов, которые одновременно выведутся на печать и будут содержать одни и те же поля для заполнения


 
Германн ©   (2012-05-06 01:18) [5]


> Просто надо сперва просмотреть действительно ли это тот
> документ или нет

Тогда почему так заботит что "слетает форматирование документа"?


 
rodionov_uv   (2012-05-06 01:21) [6]

просто акты очень похожи (бывают даже одинаковые имена), а различие в нескольких полях таблиц и вот эти поля сбиваются


 
Плохиш ©   (2012-05-06 01:26) [7]

Эксплорер прекрасно показывает содержимое документов офиса и не только.


 
rodionov_uv   (2012-05-06 01:29) [8]


> Эксплорер прекрасно показывает содержимое документов офиса
> и не только.


Пробовал он предлагает либо сохранить, либо открыть


 
rodionov_uv   (2012-05-06 01:35) [9]

ну неужели никто не сталкивался с подобной проблемой?
щас попробовал через ATViewer тоже предлагает либо сохранить, либо открыть.
Хотя пишут, что может работать с Wordовским форматом.


 
rodionov_uv   (2012-05-06 01:37) [10]

Может кто нить знает компонент какой нибудь, для отображения Worda


 
Плохиш ©   (2012-05-06 01:37) [11]

У меня в режиме отображения миниатюры показывает содержимое и ничего не предлагает.
А уж тоталькомандер вообще выполняет всë описанноп в [0] и стоит не состояние.


 
Германн ©   (2012-05-06 01:37) [12]

Быстрее всех показывает документы Word плагин к Total Commander. Но и он несколько замедленно показывает документ с таблицами. Да и рисунки не показывает. Но всё же работает вполне нормально для "предварительного просмотра" в рамках
> просто акты очень похожи (бывают даже одинаковые имена),
>  а различие в нескольких полях таблиц


 
rodionov_uv   (2012-05-06 01:55) [13]

Извините если за компом сидит блондинка с очень длинными ногтями, то о Total Commander и речи быть не может.
А программа для неё именно и пишется, чтоб она лишнего чего не нажала и документы не перепутала.


 
rodionov_uv   (2012-05-06 02:05) [14]


> Плохиш ©   (06.05.12 01:37) [11]
>
> У меня в режиме отображения миниатюры показывает содержимое
> и ничего не предлагает.
> А уж тоталькомандер вообще выполняет всë описанноп в [0]
> и стоит не состояние.


извените перепутал WebBrowser
> Германн ©   (06.05.12 01:37) [12]
>
> Быстрее всех показывает документы Word плагин к Total Commander.
>  Но и он несколько замедленно показывает документ с таблицами.
>  Да и рисунки не показывает. Но всё же работает вполне нормально
> для "предварительного просмотра" в рамках


Нужна именно написанная именно для этой цели своя программа


 
Германн ©   (2012-05-06 02:09) [15]


> rodionov_uv   (06.05.12 01:55) [13]
>
> Извините если за компом сидит блондинка с очень длинными
> ногтями, то о Total Commander и речи быть не может.

Хм. Я упомянул Total Commander только как пример быстрого показа содержимого Word-овского документа с таблицами, но без режима WISIWYG.
А судя по тому какие библиотеки использует сей плагин - проблемы с OLE ваши собственные.


 
rodionov_uv   (2012-05-06 02:24) [16]


> А судя по тому какие библиотеки использует сей плагин -
> проблемы с OLE ваши собственные.
>


Если можно поподробнее


 
Германн ©   (2012-05-06 02:39) [17]


> rodionov_uv   (06.05.12 02:24) [16]
>
>
> > А судя по тому какие библиотеки использует сей плагин
> -
> > проблемы с OLE ваши собственные.
> >
>
>
> Если можно поподробнее
>


> Пробовал через олеобъект получается херня

Если можно подробнее, то это к тебе. Как пробовал? что получилось? В чём х...ня?


 
Плохиш ©   (2012-05-06 02:42) [18]


> Германн ©   (06.05.12 02:39) [17]

Ты не умничай, ты код давай.


 
Германн ©   (2012-05-06 02:59) [19]


> Плохиш ©   (06.05.12 02:42) [18]
>
>
> > Германн ©   (06.05.12 02:39) [17]
>
> Ты не умничай, ты код давай.
>

Сначала ты найди и дай справку на немецком по OLE. :).


 
Anatoly Podgoretsky ©   (2012-05-06 08:24) [20]

Виндоус нормально работает с именами в 100 символов, при том в отличии от твоей поделки показывает имена в любых языках.

Виндоус нормально показывает любые документы, а не только Ворд, а Эксель даже отдельные закладки, у меня блондинки с удовольствием пользуются и не пищат, а вот пищать начнут на поделку с OLE Container


 
MsGuns ©   (2012-05-07 10:41) [21]

Рабочее место "блондинок с длинными ногтями" вовсе не компьютер


 
Dennis I. Komarov ©   (2012-05-07 22:22) [22]


> MsGuns ©   (07.05.12 10:41) [21]
> Рабочее место "блондинок с длинными ногтями" вовсе не компьютер

Эт почему? Многие дадут фору "программистам с короткими мозгами"


 
Dennis I. Komarov ©   (2012-05-07 22:40) [23]


> rodionov_uv   (06.05.12 01:18) [4]
> И как вы это себе представляете?

Я себе это представляю так:
Если куча шаблонив формата MSWord  (dot[x]).
При формировании нужного отчета программа берет нужный шаблон, вставляет в него нужные данные и далее от потребностей - открыть, сохранить, отправить...


 
MsGuns ©   (2012-05-08 11:37) [24]

>Dennis I. Komarov ©   (07.05.12 22:22) [22]
>Эт почему? Многие дадут фору "программистам с короткими мозгами"

Эт потому что ключевое слово не "блондинка", а "длинные ногти".
ЗЫ. Жена - блондинка. Угадал ? :)


 
Dennis I. Komarov ©   (2012-05-08 16:57) [25]


> MsGuns ©   (08.05.12 11:37) [24]


Нет, не угадал ;)
Вы не видели блондинок с двумя ВО? И ногти не короткие. :) Очень приятно с такими работать, в отличии от некоторых...


 
rodionov_uv   (2012-05-08 17:15) [26]

Я смотрю Вы тут тему в первых рядах держите.
Да мечта любого мужика - это блондинка.........., но разговор не о них.

Решил проблему следующим образом (пока не найду подходящего компонента).
При запуске программы запускается конвертер который при первом запуске программы создает копии файлов в формате rtf, а потом добавляет если появились новые вордовские файлы в папках.Предварительный просмотр через RxRichEdit rtf файлов, а потом если тот файл, уже открытие в программе.

Ну неужто никто не делал подобного и не знает компонента чтоб отобразить Wordовский документ?????


 
Smile   (2012-05-08 17:38) [27]

Ну неужто никто не делал подобного и не знает компонента чтоб отобразить Wordовский документ?????

Расшифруй выделенное ЖИРНЫМ (отобразить), как мне кажется, в твоем понимании это "не открыть", а нечто иное, тогда что это означает "ОТОБРАЗИТЬ"?


 
Anatoly Podgoretsky ©   (2012-05-08 18:52) [28]


> но разговор не о них.

А почему?


 
Dennis I. Komarov ©   (2012-05-08 19:36) [29]


> Anatoly Podgoretsky ©   (08.05.12 18:52) [28]

Некогда, ворд не ждет...

P.S.
     В ветке ни грамма кода...
P.P.S.
     Формат мелкомягкие давно вроде открыли...


 
rodionov_uv   (2012-05-08 20:17) [30]


> Smile   (08.05.12 17:38) [27]



> Расшифруй выделенное ЖИРНЫМ (отобразить), как мне кажется,
>  в твоем понимании это "не открыть", а нечто иное, тогда
> что это означает "ОТОБРАЗИТЬ"?


Да открыть но только не самим Word, а в окне моей программы без менюшек и без возможности редактирования, просто просмотреть как выглядит сам документ.


> Dennis I. Komarov ©   (08.05.12 19:36) [29]

 
> P.S.
>      В ветке ни грамма кода...


А какой код если я даже сам не знаю как писать и что.
Знаю как запустить  сам Word и выполнять действия в нем, а как открыть в чем-то хз...


 
rodionov_uv   (2012-05-08 23:28) [31]

Все нашел я компонент называется RichView.
С его помощью файлы doc и docx и много других форматов открываются.

вот код


procedure TMainForm.FileBoxClick(Sender: TObject);
var r: Boolean;
begin
 rve.Clear;
 rve.Format;
 rve.Update;
 rve.Clear;
 r:= rvc.ImportRV(FileBox.Items.Strings[FileBox.ItemIndex], rve, 1);
 rve.Format;
end;

procedure TMainForm.RVEReadHyperlink(Sender: TCustomRichView; const Target,
 Extras: String; DocFormat: TRVLoadFormat; var StyleNo, ItemTag: Integer;
 var ItemName: String);
begin
 ItemTag := Integer(StrNew(PChar(Target)));
end;

procedure TMainForm.RVEWriteHyperlink(Sender: TCustomRichView; id: Integer;
 RVData: TCustomRVData; ItemNo: Integer; SaveFormat: TRVSaveFormat;
 var Target, Extras: String);
begin
 Target := PChar(RVData.GetItemTag(ItemNo));
end;

procedure TMainForm.RVEJump(Sender: TObject; id: Integer);
var ItemNo: Integer;
   RVData: TCustomRVFormattedData;
   s: String;
begin
 rve.GetJumpPointLocation(id, RVData, ItemNo);
 s := PChar(RVData.GetItemTag(ItemNo));
 ShellExecute(0, "open", PChar(s), nil, nil, SW_SHOW);
end;


FileBox - это компонент TListBox
RVE - это компонент TRichView
RVS - это компонент TRVStyle
RVC - это компонент TRVOfficeConverterRVS

код взят из примера компонента.


 
Германн ©   (2012-05-09 01:32) [32]


> rodionov_uv   (08.05.12 23:28) [31]
>
> Все нашел я компонент называется RichView.
> С его помощью файлы doc и docx и много других форматов открываются.
>

И форматирование работает?


 
RDen ©   (2012-05-09 13:11) [33]

>Германн ©   (09.05.12 01:32) [32]

>И форматирование работает?

блондинка работает


 
rodionov_uv   (2012-05-09 15:22) [34]


> Германн ©   (09.05.12 01:32) [32]



> И форматирование работает?


Да и форматирование и структура документа остается, самое главное таблицы правильно отображает, что особенно важно для меня.

Единственное только с картинками обрамленными текстом проблема, а именно нет обрамления текстом картинки, сперва картинка, потом текст.


 
Dennis I. Komarov ©   (2012-05-09 17:53) [35]

А когда он "просматривает" в процессах не висит часом msword.exe? (или как его там)


 
Dennis I. Komarov ©   (2012-05-09 18:50) [36]

WINWORD.EXE его...


 
rodionov_uv   (2012-05-09 22:27) [37]


> Dennis I. Komarov ©   (09.05.12 17:53) [35]
>
> А когда он "просматривает" в процессах не висит часом msword.
> exe? (или как его там)


нет не висит.
появляется процесс WordConv.exe пока не появился документ в RichView, потом исчезает.


 
Dennis I. Komarov ©   (2012-05-09 23:17) [38]

а он от кель взялся?


 
rodionov_uv   (2012-05-09 23:19) [39]


> Dennis I. Komarov ©   (09.05.12 23:17) [38]
>
> а он от кель взялся?


наверное компонент TRVOfficeConverterRVS обращается к нему


 
rodionov_uv   (2012-05-09 23:21) [40]

Сам файл Wordconv.exe находится в папке C:\Program Files\Microsoft Office\Office12\


 
Dennis I. Komarov ©   (2012-05-09 23:25) [41]

У меня такого нет, и что дальше?


 
rodionov_uv   (2012-05-10 00:06) [42]


> Dennis I. Komarov ©   (09.05.12 23:25) [41]
>
> У меня такого нет, и что дальше?


В смысле, что дальше?


 
rodionov_uv   (2012-05-10 00:09) [43]

Он (файл) входит в состав офиса.
Посмотрел на трех компах, везде есть


 
Германн ©   (2012-05-10 00:15) [44]


> Dennis I. Komarov ©   (09.05.12 23:25) [41]
>
> У меня такого нет

А сам MS Office есть?


 
rodionov_uv   (2012-05-10 00:16) [45]

По крайней мере в 2007 и 2010 офисах есть, а ниже мне и не надо, т.к. на компах в конторе установлены выше указанные офисы.


> Единственное только с картинками обрамленными текстом проблема,
>  а именно нет обрамления текстом картинки, сперва картинка,
>  потом текст.


Эта проблема конечно остается, хотелось бы, что бы точно все было, как в Worde.


 
rodionov_uv   (2012-05-10 00:18) [46]


> Германн ©   (10.05.12 00:15) [44]


> А сам MS Office есть?


Конечно


 
Германн ©   (2012-05-10 00:38) [47]


> rodionov_uv   (10.05.12 00:18) [46]
>
>

Я не у тебя спрашивал. )))


 
Германн ©   (2012-05-10 01:40) [48]


> rodionov_uv   (10.05.12 00:16) [45]
>
> По крайней мере в 2007 и 2010 офисах есть, а ниже мне и
> не надо, т.к. на компах в конторе установлены выше указанные
> офисы.
>
>
> > Единственное только с картинками обрамленными текстом
> проблема,
> >  а именно нет обрамления текстом картинки, сперва картинка,
>
> >  потом текст.
>
>
> Эта проблема конечно остается, хотелось бы, что бы точно
> все было, как в Worde.
>

Сначала проверь а самом Worde как он отобразит rtf-файл, который он сам конвертировал из doc(x)-файла. Если он отобразит "точно", то ...
Если нет, тогда попробуй найти другой формат, например html. Теоретически (информация по стандартным конвертерам MS Office, имхо, хранится в Форт-Ноксе:) сей конвертер должен уметь конвертировать документы так же как и сам Word.


 
rodionov_uv   (2012-05-10 01:54) [49]

Так компонент и конвектирует в html, а не в rtf, а потом уже сохраняет либо в rtf либо в другой формат. Потому что в строке rvc.ImportRV(FileBox.Items.Strings[FileBox.ItemIndex], rve, 1)
1 это и есть конвектировать в html.
Если конвектировать в другой формат то в RichView будет каша.
А сам Word, по крайней мере у меня на компах сохраняет в rtf так же как и оригинальный файл.


 
Германн ©   (2012-05-10 02:15) [50]


> rodionov_uv   (10.05.12 01:54) [49]
>
> Так компонент и конвектирует в html, а не в rtf, а потом
> уже сохраняет либо в rtf либо в другой формат.

Это - бред.
Попробуй забыть тот компонент. И сосредоточься на самом конвертере.


 
rodionov_uv   (2012-05-10 02:38) [51]

Удалено модератором


 
Германн ©   (2012-05-10 02:45) [52]


> Что делать?

Копать!
Тут уж тебе вряд ли кто реально поможет.


 
Dennis I. Komarov ©   (2012-05-10 19:59) [53]

Пардонс, есть такой. Что-то сразу его не разглядел...



Страницы: 1 2 вся ветка

Форум: "Начинающим";
Текущий архив: 2013.03.22;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.59 MB
Время: 0.065 c
15-1346298363
brother
2012-08-30 07:46
2013.03.22
Помогите с алгоритмом


2-1344598041
vasa777
2012-08-10 15:27
2013.03.22
treeview


3-1285141692
Сергей
2010-09-22 11:48
2013.03.22
Подсказка в DBGrid


15-1329373822
Димка На
2012-02-16 10:30
2013.03.22
Как узнать кто "мучает" диск?


15-1332248400
Труп Васи Доброго
2012-03-20 17:00
2013.03.22
Кому не лень и не пофигу помогите





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский