Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.10.21;
Скачать: CL | DM;

Вниз

fast report в dll   Найти похожие ветки 

 
Dust ©   (2007-06-14 10:37) [0]

Есть проект на D7 с отчётом в FR 2.5 есть необходимость переработать его в dll. Отчёт на экране не отображается (молча).
Ктонибудь сталкивался с подобной проблемой? Подскажите решение.


 
Сергей М. ©   (2007-06-14 12:02) [1]


> Отчёт на экране не отображается


В смысле на вызов ShowReport нет никакой видимой реакции ? Так что ли следует истолковывать это самое "молча" ? Или все-таки preview-окно показывается, но его содержимое - "белый лист" ?


 
Dust ©   (2007-06-14 12:27) [2]

нет, окно превью не показывается вообще.
(*
library dllWeeklyReport;

uses
 windows,
 OLE2 in "..\..\..\..\Source\Rtl\Win\Ole2.pas",
 SysUtils,
 Classes,
 Forms,
 Unit1 in "Unit1.pas" {Form1},
 Unit2 in "ConnectionDlg\Unit2.pas" {ConnectionADODlg};

function MainFunc(const Whandle : dword):BOOL; stdcall;
begin
MessageBox (0, "Create1", "App", MB_OK);
CoInitialize (nil);
Form1 := TForm1.CreateParented(Whandle);
// Form1.ParentWindow := Whandle;
Form1.Show();
// Result := Bool(Form1.ShowModal());
// FreeAndNil (Form1);
// CoUninitialize();
end;
{$R *.res}
exports
 MainFunc name "MainFunc";
begin
end.
*)

program dllWeeklyReport;

uses
 Forms,
 Unit1 in "Unit1.pas" {Form1},
 Unit2 in "ConnectionDlg\Unit2.pas" {ConnectionADODlg};

{$R *.res}

begin
 Application.Initialize;
 Application.CreateForm(TForm1, Form1);
 Application.Run;
end.

во втором варианте, показанном выше (program dllWeeklyReport) отчёт отображается. Пробовал различные варианты - Form1 - модальная, немодальноая parenthandle =0 или окно предыдущего окна. Application.Handle = 0 или Application.Handle вызывающего проекта.
Остаётся загадкой в чём разница между проектом из Demos и моим отчётом. Единственное, пожалуй, что остаётся - я гружу форму отчёта из файла.


 
Bless ©   (2007-06-14 12:44) [3]


> Единственное, пожалуй, что остаётся - я гружу форму отчёта
> из файла.


А не может быть в этом все дело?

кусок
rep.LoadFromFile("1.frf");
rep.ShowReport;

поведет себя как ты и описываешь, если файла "1.frf" нет в текущей директории.

Если подставить в  LoadFromFile() полный путь к файлу, все остается по-прежнему?


 
Dust ©   (2007-06-14 13:15) [4]

2 Bless
Спасибо, именно в этом и была причина.

А вообще - не выкидывать в таких случаях исключений и возвращать True из Prepare -  чистой воды свинство и индусский код.



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

Текущий архив: 2007.10.21;
Скачать: CL | DM;

Наверх




Память: 0.45 MB
Время: 0.078 c
2-1190812703
Malik
2007-09-26 17:18
2007.10.21
Application


15-1190329171
Bogdan1024
2007-09-21 02:59
2007.10.21
Помогите рассчитать мощность UPS


15-1190181663
oldman
2007-09-19 10:01
2007.10.21
Все программисты знают, что компьютер - железный глупый ящик


15-1190197815
Sergey13
2007-09-19 14:30
2007.10.21
Сегодня самый известный сетевой символ — смайлик — отмечает юбиле


4-1176887783
ocean
2007-04-18 13:16
2007.10.21
Как развернуть раб. стол WinXP на 270 градусов?





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский