Страница 1 из 1

Диалог сохранения\экспорта отчётов

Добавлено: 07 июл 2009, 06:21
Igor M. Sharafutdinov
Добрый день!
Пытаюсь сделать своё диалоговое окно для сохранения\экспорта отчётов.
1) Вызываю стандартный SaveFileDialog, в нём выбираю тип файла (к примеру PDF), задаю имя файла и место для его сохранения. Закрываю диалог.
2) Дальше делаю так:

Код: Выделить всё

if (dlgSaveReport.ShowDialog() == DialogResult.OK)
            {
                StiExportService service=null;

                switch (dlgSaveReport.FilterIndex)
                {
                    case 1://Adobe PDF
                        service = new StiPdfExportService();
                        break;
                    case 2:
                        ...
                }
                
                stivReportWindow.InvokeProcessExport(service);
            }


После этого открывается окно параметров, выбираю параметры, жму OK, но дальше открывается снова диалог для выбора имени файла и места сохранения.
Как можно его убрать? Где указать имя файла, полученное на первом этапе?


И второе: Как можно при отправке экспортированного отчёта по почте обойтись без диалога, где нужно указать имя файла и место сохранения?
Было бы достаточно сохранить его во временную директорию, приаттачить к письму и удалить.

Спасибо!

Диалог сохранения\экспорта отчётов

Добавлено: 08 июл 2009, 07:21
Jan
Здравствуйте,
Пытаюсь сделать своё диалоговое окно для сохранения\экспорта отчётов.
Проблема в методе InvokeProcessExport:
StiExportService service = sender as StiExportService;
service.Export(CurrentReport, null, false);
В этом методе вызвается метод Export, который в свою очередь вызвает диалог. ЛУчше всего воспользоваться методом ExportDocument отчета.
И второе: Как можно при отправке экспортированного отчёта по почте обойтись без диалога, где нужно указать имя файла и место сохранения?
Было бы достаточно сохранить его во временную директорию, приаттачить к письму и удалить.
Никак. Мы используем стандартный интерфейсы MAPI. Насколько я помню этого нельзя сделать не знаю конкретного браузера. Можно сделать отсылку письма без использования почтового клиента, но это немного другая песня.

Спасибо.