Страница 1 из 1
Отчёты пользователя в 8.1
Добавлено: 04 сен 2007, 12:44
Semi-bit
Друг спрашивает... Почему не подключается интерфейс к кнопке Отчеты пользователя в Галактике 8.1?
Код подключения следующий
#include UserReport.vih
VipInterface UserReport_skPlan Implements IUserReport;
Interface UserReport_skPlan;
create view;
procedure Run;
begin
RunInterface(skPlan);
end;
function GetReportName: String;
begin
GetReportName := 'Ведомость обеспеченности номен. плана активные МК';
end;
function GetGroupName (Level : Word) : String;
begin
GetGroupName := '';
end;
function GetPriority : Integer;
begin
GetPriority := 0;
end;
function VisibleInModule(Ind : Byte) : String;
begin
VisibleInModule := '';
case Ind of
1 : VisibleInModule := 'MANUFPLAN';
end;
end;
end.
Однако, интерфейсы UserReport_skPlan, SkPlan через запуск внешнего интерфейса видны в Галактике
Добавлено: 04 сен 2007, 14:05
PViP
Вероятно вы не верно вызываете интерфейс.
В 8 обращение к интерфейсам происходит как <Имя_компонента::Имя_интерфейа>
К примеру
Код: Выделить всё
RunInterface('L_SoprDoc::skPlan', cmpPlansNo);
Или
skPlan - это ваш интерфейс?
Добавлено: 04 сен 2007, 14:31
Semi-bit
При чем, здесь вызов интерфейса,
когда у меня по кнопке Отчеты пользователя пишет сообщение
Нет отчетов пользователя для модуля Планирования производства ?
При вызове Отчетов пользователя не появляется окно
"Отчеты пользователя [Планирование производства]"
Наименование отчета - > "Ведомость обеспеченности номен. плана активными МК"
При этом интерфейс UserReport_skPlan и
Skplan виден через запуск внешего интерфейса
Добавлено: 04 сен 2007, 14:37
Nikos
Нужно добавить #Component "F_UserReport"
Добавлено: 04 сен 2007, 16:02
Semi-bit
Я вот так попробовал откомпилилось, но результат без измений
#include UserReport.vih
#ifdef ComponentVersion
#component "F_UserReport"
#endif
VipInterface UserReport_UserReport_skPlan Implements
#ifdef ComponentVersion
F_UserReport::IUserReport
#else
IUserReport
#ENDIF
#ifdef Atl51
licensed (FREE)
#end
;
//VipInterface UserReport_skPlan Implements IUserReport;
Interface UserReport_skPlan;
create view;
procedure Run;
begin
RunInterface(skPlan);
end;
Добавлено: 05 сен 2007, 06:22
Алексей
#define ComponentVersion
делали?
Добавлено: 05 сен 2007, 09:42
Semi-bit
сделали, спасибо, заработало
Добавлено: 30 окт 2007, 16:10
Алексей
А как сделать один пользовательский отчет, из которого можно было бы вызывать несколько других интерфейсов?
Добавлено: 30 окт 2007, 17:17
edward_K
каждый пункт меню образуется отдельным экземпляром фейса. Но можно сделать шаблон. Я компилю например так (с /b)
#define SetMenuUserR MenuZarp
//===================================
#define UserMenuGroup 'утилиты'
#define UserNameWnd 'Тест'
#define UserNameFace check_soc
#define UserNameFORM
#make "My_UsrReports.vip"
#undef UserNameFORM
#undef UserNameWnd
#undef UserNameFace
а фейс представляет из себя сплошные #ifdef и макроподстановки.
Добавлено: 19 ноя 2007, 11:29
Gameus_
Алексей писал(а):#define ComponentVersion
делали?
подскажите плиз, в каком месте это нужно писать ?
Добавлено: 19 ноя 2007, 11:35
Galex
А зачем, если можно просто #component "F_UserReport" написать?..
Добавлено: 19 ноя 2007, 11:47
Алексей
Gameus_
В проекте первой строкой.