Topic: Автоматическое присвоение отчету имени файла и его сохранение

У меня отчет открывается в PDF.
При этом, ОС ему автоматически присваивает случайное имя и сохраняет во временной папке.

Каким образом сделать так, чтобы при открытии отчета он сразу имел нужное имя файла и сохранялся в заданном месте?

Re: Автоматическое присвоение отчету имени файла и его сохранение

Сделал пример
http://myvisualdatabase.com/forum/viewt … ?pid=23109

Dmitry.

Re: Автоматическое присвоение отчету имени файла и его сохранение

Опробовал скрипт и заметил интересную вещь - если акробат уже запущен то всё срабатывает на отлично (у меня сохраняет в pdf), а если нет то выходит ошибка (во вложении)

Post's attachments

Attachment icon Безымянный.png 27.24 kb, 228 downloads since 2017-11-21 

Re: Автоматическое присвоение отчету имени файла и его сохранение

Ещё вопрос. Как сделать выбор папки сохранения? Диалог TSaveDialog необходимо указывать имя файла что бы вернуть путь

Re: Автоматическое присвоение отчету имени файла и его сохранение

ZBear wrote:

Опробовал скрипт и заметил интересную вещь - если акробат уже запущен то всё срабатывает на отлично (у меня сохраняет в pdf), а если нет то выходит ошибка (во вложении)

данная ошибка происходит при запуске примера, который я дал выше? или в вашем проекте?

Dmitry.

Re: Автоматическое присвоение отчету имени файла и его сохранение

ZBear wrote:

Ещё вопрос. Как сделать выбор папки сохранения? Диалог TSaveDialog необходимо указывать имя файла что бы вернуть путь

пример с диалогом выбора папки

procedure Form1_Button2_OnClick (Sender: string; var Cancel: boolean);
var
    s: string;
begin
    s := '';
    SelectDirectory('Caption', 'c:\', s); // default dialog
    SelectDirectory('Caption', 'c:\', s, True); // with button create a directory
    SelectDirectory('Caption', 'c:\', s, True, True); // with button create a directory and shows files
    if s<>'' then ShowMessage(s);
end;
Dmitry.

Re: Автоматическое присвоение отчету имени файла и его сохранение

Мой скрипт:

procedure Form1_Button74_OnAfterClick (Sender: string);

var
    sFile: string;
    sDest: string;
    sName: string;
    sRas: string;

begin
if Form1.CheckBox5.Checked = True then
        begin
           sFile := Form1.frxPDFExport1.FileName;
           sName := ''+FormatDateTime('YYYYMMDD_hhmm', now)+'' ;
           sRas := '.pdf';
           sDest := 'Рayments\'+FormatDateTime('YYYY-MM-DD', now)+'\';

          if ForceDirectories(sDest) then
            begin
             CopyFile(sFile, sDest+sName+sRas);
             OpenFile(sDest+sName+sRas); // if you want open file
            end;

            DeleteFile(sFile);

      end;
end;