Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > Delphi .NET
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Закрытая тема
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 15.06.2014, 17:27
Anzhelika Anzhelika вне форума
Прохожий
 
Регистрация: 07.11.2012
Сообщения: 7
Репутация: 10
Вопрос Delphi и Word, работа c SaveDialog

Добрый день! Подскажите пожалуйста, как сделать, чтобы при создании отчета появлялось окно "Сохранить как"?

На данный момент все отчеты сохраняются в папку "Мои документы"
Код:
procedure TForm7.Button1Click(Sender: TObject);
var
  Command, // строка команды
  NameTemplate, // путь к файлу шаблона
  NameResult: string; // путь до отчета
  Macros: PChar; // строка команды на выполнение в Word
begin
If (DBEdit1.Text<>'') and (Memo1.Text<>'') then
  begin

  NameTemplate := GetCurrentDir + '\Шаблон.doc';   // задаем путь до файла шаблона
  NameResult := DBEdit1.Text+' '+DBEdit2.Text+' '+DBEdit3.Text+' '+DateToStr(Now)+'.doc';
  // Далее в переменную Command добавляем команды, разделяя их []
  // открываем файл шаблона и переходим в начало документа
  Command := '[FileOpen "' + NameTemplate + '"][StartOfDocument]';
  // сохраняем документ под новым именем
  Command := Command + '[FileSaveAs "' + NameResult + '"]';
  // переходим на закладку «Дата»
  Command := Command + '[EditBookmark.name = "Дата", .Goto]';
  // Вставляем текущую дату
  Command := Command + '[Insert "' + DBEdit5.Text + '"]';

  Command := Command + '[EditBookmark.name = "Фамилия", .Goto]';
  Command := Command + '[Insert "' + DBEdit1.Text + '"]';

  Command := Command + '[EditBookmark.name = "Имя", .Goto]';
  Command := Command + '[Insert "' + DBEdit2.Text + '"]';

  Command := Command + '[EditBookmark.name = "Отчество", .Goto]';
  Command := Command + '[Insert "' + DBEdit3.Text + '"]';

  Command := Command + '[EditBookmark.name = "Должность", .Goto]';
  Command := Command + '[Insert "' + DBEdit4.Text + '"]';

  Command := Command + '[EditBookmark.name = "Результат1", .Goto]';
  Command := Command + '[Insert "' + Memo1.Text + '"]';

  Command := Command + '[EditBookmark.name = "Результат2", .Goto]';
  Command := Command + '[Insert "' + Memo2.Text + '"]';

  Command := Command + '[EditBookmark.name = "Результат3", .Goto]';
  Command := Command + '[Insert "' + Memo3.Text + '"]';

  Command := Command + '[EditBookmark.name = "Результат4_1", .Goto]';
  Command := Command + '[Insert "' + Memo4.Text + '"]';

  Command := Command + '[EditBookmark.name = "Результат4_2", .Goto]';
  Command := Command + '[Insert "' + Memo5.Text + '"]';

  Command := Command + '[EditBookmark.name = "Результат4_3", .Goto]';
  Command := Command + '[Insert "' + Memo6.Text + '"]';

  Command := Command + '[EditBookmark.name = "Результат4_4", .Goto]';
  Command := Command + '[Insert "' + Memo7.Text + '"]';

  Command := Command + '[EditBookmark.name = "Результат4_5", .Goto]';
  Command := Command + '[Insert "' + Memo8.Text + '"]';
  Command := Command + '[FileSave]'; // сохраняем файл

  Macros := PChar(Command); // Преобразуем тип String в PChar
  DDE.OpenLink; // Откываем соединение с Word
  DDE.ExecuteMacro(Macros, false); // Отправляем команды на выполнение
  end
  else MessageDlg('Нет данных для отчета!', mtError, [mbOK],0)
end;  
  #2  
Старый 15.06.2014, 19:14
Anzhelika Anzhelika вне форума
Прохожий
 
Регистрация: 07.11.2012
Сообщения: 7
Репутация: 10
По умолчанию

решение найдено. добавить:
Код:
SaveDialog1.FileName:=NameResult;
   if SaveDialog1.Execute then
 begin
  NameResult := SaveDialog1.FileName;
    Macros := PChar(Command); // Преобразуем тип String в PChar
  DDE.OpenLink; // Открываем соединение с Word
  DDE.ExecuteMacro(Macros, false); // Отправляем команды на выполнение
 end;
тема закрыта.
Закрытая тема


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра
Комбинированный вид Комбинированный вид

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 20:38.


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2023

ВКонтакте   Facebook   Twitter