Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2007.10.21;
Скачать: [xml.tar.bz2];

Вниз

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;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.45 MB
Время: 0.036 c
15-1190458347
vasIZmax
2007-09-22 14:52
2007.10.21
Четыре часа возился с такой проблемой.


15-1190559516
DDDeN
2007-09-23 18:58
2007.10.21
Средство создания значков


1-1186583018
ExMiST
2007-08-08 18:23
2007.10.21
сессионные переменные, Delphi, CGI


2-1191060985
antonn
2007-09-29 14:16
2007.10.21
GetProcessAffinityMask


2-1190983310
hinst
2007-09-28 16:41
2007.10.21
Не отвечает





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