Отчёты пользователя в 8.1

Программирование на Атлантисе (VIP, FCOM, ARD), FastReport

Модераторы: m0p3e, edward_K, Модераторы

Ответить
Semi-bit
Постоянный обитатель
Сообщения: 123
Зарегистрирован: 01 фев 2007, 12:45
Откуда: Магнитогорск
Контактная информация:

Отчёты пользователя в 8.1

Сообщение 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 через запуск внешнего интерфейса видны в Галактике
PViP
Местный житель
Сообщения: 254
Зарегистрирован: 08 июн 2007, 08:26
Откуда: Красноярск
Контактная информация:

Сообщение PViP »

Вероятно вы не верно вызываете интерфейс.
В 8 обращение к интерфейсам происходит как <Имя_компонента::Имя_интерфейа>
К примеру

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

RunInterface('L_SoprDoc::skPlan', cmpPlansNo);
Или skPlan - это ваш интерфейс?
Semi-bit
Постоянный обитатель
Сообщения: 123
Зарегистрирован: 01 фев 2007, 12:45
Откуда: Магнитогорск
Контактная информация:

Сообщение Semi-bit »

При чем, здесь вызов интерфейса,
когда у меня по кнопке Отчеты пользователя пишет сообщение
Нет отчетов пользователя для модуля Планирования производства ?
При вызове Отчетов пользователя не появляется окно
"Отчеты пользователя [Планирование производства]"
Наименование отчета - > "Ведомость обеспеченности номен. плана активными МК"
При этом интерфейс UserReport_skPlan и
Skplan виден через запуск внешего интерфейса
Испытываю траблы с даблами
ВИП — Велосипедо-Изобретательская Парадигма
САППОРТ — Сборище Абсолютно Пустых Посредственно Образованных Ржущих Троллей
Nikos
Местный житель
Сообщения: 577
Зарегистрирован: 29 мар 2005, 17:49
Откуда: Томск

Сообщение Nikos »

Нужно добавить #Component "F_UserReport"
Semi-bit
Постоянный обитатель
Сообщения: 123
Зарегистрирован: 01 фев 2007, 12:45
Откуда: Магнитогорск
Контактная информация:

Сообщение 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;
Испытываю траблы с даблами
ВИП — Велосипедо-Изобретательская Парадигма
САППОРТ — Сборище Абсолютно Пустых Посредственно Образованных Ржущих Троллей
Алексей
Местный житель
Сообщения: 2896
Зарегистрирован: 24 июн 2005, 12:12
Откуда: Иркутская область

Сообщение Алексей »

#define ComponentVersion
делали?
Semi-bit
Постоянный обитатель
Сообщения: 123
Зарегистрирован: 01 фев 2007, 12:45
Откуда: Магнитогорск
Контактная информация:

Сообщение Semi-bit »

сделали, спасибо, заработало
Испытываю траблы с даблами
ВИП — Велосипедо-Изобретательская Парадигма
САППОРТ — Сборище Абсолютно Пустых Посредственно Образованных Ржущих Троллей
Алексей
Местный житель
Сообщения: 2896
Зарегистрирован: 24 июн 2005, 12:12
Откуда: Иркутская область

Сообщение Алексей »

А как сделать один пользовательский отчет, из которого можно было бы вызывать несколько других интерфейсов?
edward_K
Заслуженный деятель интернет-сообщества
Сообщения: 5187
Зарегистрирован: 29 мар 2005, 17:49
Откуда: SPB galaxy spb

Сообщение 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 и макроподстановки.
Gameus_
Местный житель
Сообщения: 209
Зарегистрирован: 18 окт 2006, 17:03
Откуда: Ростов на Дону Новочеркасск Новороссийск
Контактная информация:

Сообщение Gameus_ »

Алексей писал(а):#define ComponentVersion
делали?


подскажите плиз, в каком месте это нужно писать ?
Galex
Постоянный обитатель
Сообщения: 175
Зарегистрирован: 29 июн 2006, 14:39
Контактная информация:

Сообщение Galex »

А зачем, если можно просто #component "F_UserReport" написать?..
Алексей
Местный житель
Сообщения: 2896
Зарегистрирован: 24 июн 2005, 12:12
Откуда: Иркутская область

Сообщение Алексей »

Gameus_
В проекте первой строкой.
Ответить