Компиляция ресурсов в Галактике 8.10
Модераторы: m0p3e, edward_K, Модераторы
-
- Слесарь-системщик
- Сообщения: 304
- Зарегистрирован: 29 мар 2005, 17:49
- Откуда: р.Беларусь, Унитарное предприятие "ТОП СОФТ"
- Контактная информация:
Репозитарий - подсистема Атлантиса, предназначенная для управления подключаемыми с системе компонентами (ресурсными файлами). Репозитарий хранится в базе данных и состоит из
классификатора систем,
списка компонент,
прав пользователей на компоненты
Классификатор систем
- иерархический классификатор систем ПО, установленных и способных работать с этой БД. Каждая система имеет уникальное имя, совпадающее с именем главного исполняемого файла (динамической библиотеки). Корневым элементом классификатора является абстрактная система с именем "Атлантис системы". При запуске какой-либо системы к ней подключаются компоненты принадлежащие ей, системе "Атлантис системы", а также всем системам, являющимся дочерними к запускаемой. Классификатор систем хранится в таблице ComponentModules.
Список компонент
- список установленых компонент. Каждый компонент имеет уникальное имя, путь на ресурсный файл (уникальный), ссылку на систему, приоритет подключения и описательную информацию о версии, производителе и т.д. Путь на ресурсный файл может содержать макроподстановки
переменные окружения ( напр. %TPU% ),
имя пользователя %USER%,
путь на главный исполняемый файл %STARTPATH%,
имя целевого ресурса, указанного в CFG %DstResource%,
имя служебного ресурса %InternalResource%
Для удобства компоненты можно объединять в группы. Список компонент хранится в таблице Components.
Права пользователей на компоненты
- определяют компоненты, подключаемые для каждого пользователя. Права могут выдаваться (либо запрещать доступ)
всем пользователям,
группе пользователей,
отдельному пользователю
Права пользователей хранятся в таблице ComponentUsers.
классификатора систем,
списка компонент,
прав пользователей на компоненты
Классификатор систем
- иерархический классификатор систем ПО, установленных и способных работать с этой БД. Каждая система имеет уникальное имя, совпадающее с именем главного исполняемого файла (динамической библиотеки). Корневым элементом классификатора является абстрактная система с именем "Атлантис системы". При запуске какой-либо системы к ней подключаются компоненты принадлежащие ей, системе "Атлантис системы", а также всем системам, являющимся дочерними к запускаемой. Классификатор систем хранится в таблице ComponentModules.
Список компонент
- список установленых компонент. Каждый компонент имеет уникальное имя, путь на ресурсный файл (уникальный), ссылку на систему, приоритет подключения и описательную информацию о версии, производителе и т.д. Путь на ресурсный файл может содержать макроподстановки
переменные окружения ( напр. %TPU% ),
имя пользователя %USER%,
путь на главный исполняемый файл %STARTPATH%,
имя целевого ресурса, указанного в CFG %DstResource%,
имя служебного ресурса %InternalResource%
Для удобства компоненты можно объединять в группы. Список компонент хранится в таблице Components.
Права пользователей на компоненты
- определяют компоненты, подключаемые для каждого пользователя. Права могут выдаваться (либо запрещать доступ)
всем пользователям,
группе пользователей,
отдельному пользователю
Права пользователей хранятся в таблице ComponentUsers.
Виталий
Судя по тому, что последнее сообщение за 10 марта проблем с компиляцией ни у кого нет
На аналогичной ветке про 8.0 уже поднимался вопрос о том что нельзя указать путь на прототип кроме компилирования нового прототипа вместе с формами. Ответа вроде на форуме еще нет.
Я, например, регистрирую нужный ресурс в системе support (компилирую rtf-отчет "Компилятором форм") но получаю сообщение о том что прототип не найден.
Знает ли кто-нибудь решение этой проблемы? И есть ли оно вообще?

На аналогичной ветке про 8.0 уже поднимался вопрос о том что нельзя указать путь на прототип кроме компилирования нового прототипа вместе с формами. Ответа вроде на форуме еще нет.
Я, например, регистрирую нужный ресурс в системе support (компилирую rtf-отчет "Компилятором форм") но получаю сообщение о том что прототип не найден.
Знает ли кто-нибудь решение этой проблемы? И есть ли оно вообще?
Vip'ом, да, все компилируется нормально. Но дело в том, что vip'a нет, а есть только "Компилятор форм." Пути все правильные. Ресурс с прототипом подключен - вижу его в отчете о подключенных ресурсах, но тем не менее получаю сообщение об отсутствии прототипа. На 8.0, кстати, все работает, делаю все то же самое на 8.1 - не палучаицца и все тут.
Nikos, напишите пожалуйста к какой системе и с какими параметрами вы подключаете ресурс.
У меня: support/прикладной/приоритет 500.
И вообще была ли у кого еще такая ситуация?
Nikos, напишите пожалуйста к какой системе и с какими параметрами вы подключаете ресурс.
У меня: support/прикладной/приоритет 500.
И вообще была ли у кого еще такая ситуация?
Тоже проблема с компиляцией. Но не с подключением и поиском прототипов, а с компиляцией .slk-форм. В форме поля разнесены по колонкам, а в результирующем файле отчета - сыпятся в одну ячейку
Причем не все абсолютно, а частично. Варианты - весь заголовок таблицы (вообще полей нет - чистый текст в ячейках) собрался в одну ячейку; в итоговой строке в конце таблицы все данные собрались в одну ячейку; заголовок - норамльно, а данные в каждой строке собираются в одну ячейку... Помогите, кто может!!!

-
- Местный житель
- Сообщения: 2898
- Зарегистрирован: 24 июн 2005, 12:12
- Откуда: Иркутская область
Вопрос про компоненты.
Я так понял что сейчас при вызове стандартных интерфейсов необходимо указывать компоненты, в которых они живут.
Вопросы:
1. А что с собственными интерфейсами? (конвертор допустим) Допустим есть у меня интерфейсик. Ему можно или нужно присваивать какую-то свою новую компоненту? Или можно без компонент оставить. Если нужно, то как это сделать?
2. Вроде появилась возможность делать alter interface ifacename
Я хочу добавить событие в стандартный интерфейс а мне пишет что интерфейс не найден в ресурсе, хотя я подключаю ресурс в конфиге (через openresources) для випа в котором этот интерфейс живет. Или надо опять же указать компоненту стандартного интерфейса? Если да, то каков синтаксис?
Я так понял что сейчас при вызове стандартных интерфейсов необходимо указывать компоненты, в которых они живут.
Вопросы:
1. А что с собственными интерфейсами? (конвертор допустим) Допустим есть у меня интерфейсик. Ему можно или нужно присваивать какую-то свою новую компоненту? Или можно без компонент оставить. Если нужно, то как это сделать?
2. Вроде появилась возможность делать alter interface ifacename
Я хочу добавить событие в стандартный интерфейс а мне пишет что интерфейс не найден в ресурсе, хотя я подключаю ресурс в конфиге (через openresources) для випа в котором этот интерфейс живет. Или надо опять же указать компоненту стандартного интерфейса? Если да, то каков синтаксис?
-
- Заслуженный деятель интернет-сообщества
- Сообщения: 5188
- Зарегистрирован: 29 мар 2005, 17:49
- Откуда: SPB galaxy spb
у меня в 8_10 это выглядит так
=================
#component "Z_SREDN"
alter interface otpusk1
( '')
;
overload
end;
HandleEvent
cmPrint :
{ inherited :: HandleEvent (cmPrint);
message('Печать закончена')
RereadRecord(#Otpusk);
ReReadRecord(#FactOtpusk);
RescanPanel(#FactOtpusk) ;
RescanPanel(#Otpusk) ;
}
end;
end
=========
вообще если потыкаться с консолью управления и сделать намеренную ошибку в исправляемом фейсе, то можно увидеть временные файлы и использовать их в качестве примера.
=================
#component "Z_SREDN"
alter interface otpusk1
( '')
;
overload
end;
HandleEvent
cmPrint :
{ inherited :: HandleEvent (cmPrint);
message('Печать закончена')
RereadRecord(#Otpusk);
ReReadRecord(#FactOtpusk);
RescanPanel(#FactOtpusk) ;
RescanPanel(#Otpusk) ;
}
end;
end
=========
вообще если потыкаться с консолью управления и сделать намеренную ошибку в исправляемом фейсе, то можно увидеть временные файлы и использовать их в качестве примера.