![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Помогите подключить Crystal Reports к [D7]
paul_k © (2003-11-06 11:15:00)
Доброго дня.
В поставку Crystal 8.5 входит компонент CRPE32 для D5. Служит для вызова отчетов из приложения. Помогите , застрял в попытке подключить эту радость к D7.
нашел и применил следующую инструкцию
If your application or expert uses designtime information, you have to replace
uses DsgnIntf;
with
uses DesignIntf, DesignEditors;
But then you will run into an error message "Cannot find unit Proxies.pas"
Answer:
The solution is to add DesignIde.dcp to your list of required packages.
Но получил ряд сообщений об ошибке например
procedure TCrWinControlProperty.GetValues(Proc: TGetStrProc);
begin
{Add Form name to the list}
Proc(Designer.Name);
{Add other WinControls}
inherited GetValues(Proc);
end;
ERROR Undeclared identifier "Name"
как это победить?
paul_k (2003-11-10 17:25:00) [1]
Спасибо за совет
вот только 2 мелочи:
1. www.crystaldecisions.ru - не существует
2. на www.crystaldecisions.com необходим ключ от лицензионного кристала.
Doomin (2003-11-10 13:32:00) [2]
на www.crystaldecisions.ru лежит vcl85
paul_k (2003-11-06 15:21:00) [3]
Вроде победил переписав
procedure TCrWinControlProperty.GetValues(Proc: TGetStrProc);
begin
{Add Form name to the list}
Proc(Designer.Name);
{Add other WinControls}
inherited GetValues(Proc);
end;
как
procedure TCrWinControlProperty.GetValues(Proc: TGetStrProc);
begin
{Add Form name to the list}
Proc(Designer.Root.Name);
{Add other WinControls}
inherited GetValues(Proc);
end
и в процедуре
procedure TCrpeLogProperty.GetValues(Proc: TGetStrProc);заменил как
var
i: integer;
begin
for i := 0 to Designer.Form.ComponentCount - 1 do
begin
if Designer.Form.Components[i].ClassName = "TCrpeLog" then
Proc(Designer.Form.Components[i].Name);
end;
end;
procedure TCrpeLogProperty.GetValues(Proc: TGetStrProc);
var
i: integer;
begin
for i := 0 to Designer.Root.ComponentCount - 1 do
begin
if Designer.Root.Components[i].ClassName = "TCrpeLog" then
Proc(Designer.Root.Components[i].Name);
end;
end;
Вродезаработала радысть но, от кто бы мне объяснил что я накурочил и на какие грабли наступлю?