powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Delphi 7, M$Word, xp sp3+
10 сообщений из 10, страница 1 из 1
Delphi 7, M$Word, xp sp3+
    #36648523
aleksandy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Вот код, в комментариях создание через компоненты вкладки Server.
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
 procedure  TForm2.Button1Click(Sender: TObject);
 var 
  fileTemplate, asTemplate : OleVariant;
  namePos, totalPos :  String ;
  i : integer;
  newWord, newDoc : variant;
 begin 
  fileTemplate := GetCurrentDir + '\menu.dot';
  newWord := CreateOleObject('Word.Application');
  newWord.Visible := True;
  newDoc := newWord.Documents.Add(fileTemplate);
   {
  msoWord.Documents.Add(fileTemplate, EmptyParam, EmptyParam, EmptyParam);
  wordDoc.ConnectTo(msoWord.ActiveDocument);
  } 
   with  dm.query  do   begin 
    Open;
    First;
    i :=  2 ;
     while   not  Eof  do   begin 
      namePos := FieldByName('наименование').AsString;
      totalPos := FloatToStrF(FieldByName('цена_блюда').AsCurrency, ffCurrency,  10 ,  2 );
      newDoc.Tables.Item( 1 ).Cell(i,  1 ).Range.Text := namePos;
      newDoc.Tables.Item( 1 ).Cell(i,  2 ).Range.Text := totalPos;
      newDoc.Tables.Item( 1 ).Rows.Add(EmptyParam);
       {
      wordDoc.Tables.Item(1).Cell(i, 1).Range.Text := namePos;
      wordDoc.Tables.Item(1).Cell(i, 2).Range.Text := totalPos;
      wordDoc.Tables.Item(1).Rows.Add(EmptyParam);
      } 
      Inc(i);
      Next;
     end ;
    newDoc.Tables.Item( 1 ).Rows.Item(i).Delete;
     //wordDoc.Tables.Item(1).Rows.Item(i).Delete; 
    Close;
   end ;
   {
  msoWord.Visible := True;
  wordDoc.Disconnect;
  msoWord.Disconnect;
  } 
 end ;
Дома работает (M$ Word2003, xp sp2), а на других компах (M$ Word2003, xp sp3 или vista) - нет.
Кидает ошибку "Не удалось прочитать документ, возможно он поврежден". Причем из проводника файл открывается нормально... WTF???
...
Рейтинг: 0 / 0
Delphi 7, M$Word, xp sp3+
    #36648564
Фотография NextMan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
aleksandyчерез компоненты вкладки Server.
Попробуй импортировать библиотеку типов сам, фиг знает, что там у борландов стояло в тот самый момент.
Эти умники в MS-Soft умудряются некоторые методы Word.Application делать несовместимыми, от версии к версии.

Хотя - у тебя MS word один и тот же...
Но все равно, импорт Type Library никогда не помешает! :)
...
Рейтинг: 0 / 0
Delphi 7, M$Word, xp sp3+
    #36648603
aleksandy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
NextManимпорт Type Library никогда не помешает! :)
А как его сделать? Я с делфями лет 5 уже не работал, как там и что уже не помню...
...
Рейтинг: 0 / 0
Delphi 7, M$Word, xp sp3+
    #36648613
Фотография NextMan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
aleksandy, в разных дельфях - по-разному.


D 5/6/7: Project->Import Type Library

D 2007: -> Component -> Import Component ->
...
Рейтинг: 0 / 0
Delphi 7, M$Word, xp sp3+
    #36648633
Фотография NextMan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Может быть, что-то с файлом шаблона?

Между строками

Код: plaintext
1.
2.
  newWord.Visible := True;
  newDoc := newWord.Documents.Add(fileTemplate);
вставь проверку:

Код: plaintext
1.
2.
3.
4.
   if  FileExists(fileTemplate)  then 
     ShowMessage('Гут!')
   else 
     ShowMessageFmt('С файлом "%s" какая-то фигня...:(', [fileTemplate]);
?
...
Рейтинг: 0 / 0
Delphi 7, M$Word, xp sp3+
    #36648655
Фотография Anatoly Podgoretsky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторfileTemplate := GetCurrentDir + '\menu.dot';
Это больше на рулетку похоже.
...
Рейтинг: 0 / 0
Delphi 7, M$Word, xp sp3+
    #36648690
aleksandy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
NextMan,

Большой пасиб. Вроде все заработало...
...
Рейтинг: 0 / 0
Delphi 7, M$Word, xp sp3+
    #36648724
Фотография NextMan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Из-за имени файла?
...
Рейтинг: 0 / 0
Delphi 7, M$Word, xp sp3+
    #36651833
aleksandy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
NextManИз-за имени файла?
Нет после импорта :)
...
Рейтинг: 0 / 0
Delphi 7, M$Word, xp sp3+
    #36651849
Фотография NextMan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я ж говорю, эти борлондовичи халтурят...
...
Рейтинг: 0 / 0
10 сообщений из 10, страница 1 из 1
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Delphi 7, M$Word, xp sp3+
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]