компиляция стандартных форм в 8.00
Модераторы: m0p3e, edward_K, Модераторы
-
- Местный житель
- Сообщения: 216
- Зарегистрирован: 29 мар 2005, 17:49
- Откуда: Беларусь, Минск
- Контактная информация:
компиляция стандартных форм в 8.00
Так как в 8.00 нет вроде больше параметра OpenResources то у меня возникла проблема - как указать в каком именно патче лежит новый прототип для сборки форм.
Кто нить придумал какое-либо другое решение, кроме компилирования нового прототипа вместе с формами?
Кто нить придумал какое-либо другое решение, кроме компилирования нового прототипа вместе с формами?
-
- На пенсии
- Сообщения: 797
- Зарегистрирован: 29 мар 2005, 17:49
- Откуда: г. Тюмень
- Контактная информация:
Идея репозитария в принципе очень не плохая, но реализация притянута за уши. К чему на сегодняшний день этот репозитарий? Что он вообще делает? По большому счету это тот же OpenRes.
Еще один минус - то что клиент должен иметь support, чтоб ему ресурники подключали
Нам пришлось написать интерфейс регистрации собственных ресурсников, чтоб клиента не напрягать и облегчить работу наших системщиков
Еще один минус - то что клиент должен иметь support, чтоб ему ресурники подключали
Нам пришлось написать интерфейс регистрации собственных ресурсников, чтоб клиента не напрягать и облегчить работу наших системщиков
Жду выхода Вселенная 2.12!
-
- На пенсии
- Сообщения: 797
- Зарегистрирован: 29 мар 2005, 17:49
- Откуда: г. Тюмень
- Контактная информация:
Сборка выполняется в ресурсник, который Галка подхватывает без регистрации, например, в debug.res.
Запуск непосредственно выполняется из Галактики через ард-отчет.
Выполнено по запросу наших системщиков в том виде в котором они хотели, так что если нужно расширить функционал, дописывайте.
Запуск непосредственно выполняется из Галактики через ард-отчет.
Выполнено по запросу наших системщиков в том виде в котором они хотели, так что если нужно расширить функционал, дописывайте.
resreg.ardКод: Выделить всё
.Form MF_ARDResReg .ARD .GROUP '[Тюмбит-АСУ]' .NameInList 'Регистрация пользовательских компонентов - [Тюмбит-АСУ]' .DEFO LANDSCAPE .P 60 .begin if visualizationactive StopVisual('', 0); RunInterface('MF_ResReg'); StartNewVisual(vtRotateVisual, vfTimer + vfBreak + vfConfirm, 'Выполнено', 1); MF_ARDResReg.fexit; end. .endform
resreg.vipКод: Выделить всё
interface MF_ResReg 'Регистрация пользовательских компонентов - [Тюмбит-АСУ]' EscClose, Blue; Show at (, , 80, 22); const StartUserPriority = 30000; end; create view as select Components.* from ComponentModules, Components, ComponentUsers, Synonym Components SynComponents where (( 'galnet' == ComponentModules.EXEName and StartUserPriority <<= Components.Priority and Components.Atl_nRec == ComponentUsers.ResCode and StartUserPriority <<= SynComponents.Priority )); Browse brComponents (,,sci1378Esc); Table Components; fields Components.Name 'Компонент': [30], NoProtect; Components.Resource 'Ресурс': [50], NoProtect, PickButton; Components.Priority 'Приоритет': [10], NoProtect; end; function GetFreePriority: Word; { var P: Word; P := StartUserPriority; _loop SynComponents { if P < SynComponents.Priority break; else P := SynComponents.Priority + 1; } GetFreePriority := P; } Panel pnlComponents Table Components; HandleEvent cmInsertRecord: { insert current Components; ClearBuffer(tnComponentUsers); ComponentUsers.ResCode := Components.Atl_nRec; ComponentUsers.GroupCode := 0; ComponentUsers.UserCode := 0; ComponentUsers.Flags := 0; //приоритет низкий ComponentUsers.DenyFlag := false; insert current ComponentUsers; } cmUpdateRecord: { update current Components; } cmDeleteRecord: { delete all ComponentUsers; delete current Components; } cmCheckField: { case CurField of #Components.Name: { if Components.Name = '' { Message('Не задано имя ресурса', Error); Abort; Exit; } else { set Components.Resource := '%startpath%tyumbit\'+ Components.Name + '.res'; } } #Components.Resource: { if Components.Resource = '' { Message('Не задан ресурс', Error); Abort; Exit; } } #Components.Priority: { if Components.Priority < StartUserPriority { Message('Приоритет должен быть более 30000', Error); Abort; Exit; } } end; } cmCheckRecord: { if Components.Name = '' { Message('Не задано имя ресурса', Error); Abort; Exit; } if Components.Resource = '' { Message('Не задан ресурс', Error); Abort; Exit; } if Components.Priority < StartUserPriority { Message('Приоритет должен быть выше 30000', Error); Abort; Exit; } } cmSetDefault: { ClearBuffer(tnComponents); Components.Priority := GetFreePriority; Components.Flags := 10; if GetFirst ComponentModules = tsOK Components.ModuleCode := ComponentModules.Atl_nRec; } end; end; HandleEvent cmPick: { case CurField of #Components.Resource: { var sTmp: String; sTmp := GetFileName('*.RES', 'Выберите ресурс...'); if sTmp <> '' set Components.Resource := sTmp; } end; } cmClose: { UpdateTable; } end; end.
Жду выхода Вселенная 2.12!
-
- Местный житель
- Сообщения: 412
- Зарегистрирован: 28 апр 2005, 11:34
- Откуда: Галактика Млечный Путь
понятное дело гоморойно в ехе-шнике имена ресурсов в каждой версии дописывать,сделали в базе реестр. но могли и параметр в конфиге оставить. а если мне например надо одной группе юзеров подключить ресурсы , а другим нет, что в этом случае делать...возможно эта ф-ность нужна для отдела продаж, будут продавать лицензии на заполнение реестра ресурсов, как к примеру прошел опыт с лицензией на вип.
-
- Местный житель
- Сообщения: 216
- Зарегистрирован: 29 мар 2005, 17:49
- Откуда: Беларусь, Минск
- Контактная информация:
ну вот теперь моя тема стала как никогда актуальна, поскольку пошел процесс перехода уже не только на 8.0, но и на 8.1
и вывод - я побадался недели две - и пошел требовать репозитарий. и вам того же советую.
зы. сейчас мучаюсь с patchman - репозитарий по сравнению с этой поделкой - замечательная вестчь. по-крайней мере он хоть нормально работает... а тут...
и вывод - я побадался недели две - и пошел требовать репозитарий. и вам того же советую.
зы. сейчас мучаюсь с patchman - репозитарий по сравнению с этой поделкой - замечательная вестчь. по-крайней мере он хоть нормально работает... а тут...
dP
Основная идея репозитария - централизованное хранение информации о подключаемых ресурсах, возможность админу контролировать её.
Скажете, с OpenResources это тоже было возможно? При условии одного единственного конфига - да. Но если представить, что у каждого пользователя свой, а ещё есть и командная строка, то становится очевидным, что предсказать, какие же именно ресурсы и в каком порядке будут подключаться, не так то просто. Контролировать, что пользователь подключает в командной строке было вообще нереально.
Что делать, если нет саппорта с репозитарием? Выход есть - экспорт/импорт репозитария в xml.
Как быть с подключением ресурсов для компиляции? Полагаю, скоро будет возможность при компиляции указать систему, ресурсы которой надо подключать для данной компиляции. (Вот и ещё одно преимущество репозитария, кстати)
зы.
Скажете, с OpenResources это тоже было возможно? При условии одного единственного конфига - да. Но если представить, что у каждого пользователя свой, а ещё есть и командная строка, то становится очевидным, что предсказать, какие же именно ресурсы и в каком порядке будут подключаться, не так то просто. Контролировать, что пользователь подключает в командной строке было вообще нереально.
В репозитарии можно настроить группы пользователей, а для групп - подключаемые ресурсы. Можно и отдельно для пользователей.san писал(а):а если мне например надо одной группе юзеров подключить ресурсы , а другим нет, что в этом случае делать
Приоритет ресурса не пустое число, а определяет порядок поиска объектов в ресурсе. Если я ничего не путаю, то в случае конфигурирования интерфейса, лежащего в ресурсе с приоритетом 30000, результат этого конфигурирования виден не будет, т.к. у рабочего ресурса конфигуратора приоритет ниже.Max_Fin писал(а):решили, что наши ресурники будут иметь приоритет не ниже 30000
Что делать, если нет саппорта с репозитарием? Выход есть - экспорт/импорт репозитария в xml.
Как быть с подключением ресурсов для компиляции? Полагаю, скоро будет возможность при компиляции указать систему, ресурсы которой надо подключать для данной компиляции. (Вот и ещё одно преимущество репозитария, кстати)
зы.
То, что vip с некоторого момента стал распостраняться с Галактикой - ошибка и недосмотр. Vip не является частью Галактики или Support'а и по большому счёту не нужен для её функционирования. Изначально предполагалось, что vip получают те, кто купил Атлантис. Так что для тех, кто использовал vip в составе купленного Атлантиса, ничего не изменилось. А остальные, выходит, использовали его нелегально. Разве где-то сказано, что купив пару модулей Галактики можно разрабатывать свои интерфейсы?san писал(а):будут продавать лицензии на заполнение реестра ресурсов, как к примеру прошел опыт с лицензией на вип.
-
- Местный житель
- Сообщения: 2896
- Зарегистрирован: 24 июн 2005, 12:12
- Откуда: Иркутская область
cruger
Если сейчас, я например подключаю ресурс mto.res в котором собрано всё по МТО и мне надо что-то подправить
Я компилю на стороне в этот ресурс ФРМ-ку с исправлениями и подкладываю её в папку например resources на сервер с именем mto1.res
Далее в стартапе меняю имя подключаемого ресурса mto.res на mto1.res и никого не выгоняя из системы имею при каждом новом запуске Галактики подключенную нужную ФРМ-ку. Кому нужна - тот перегрузится
А в случае с репозитарием как такое будет возможно? Можно на горячую заменить один ресурс на другой?
Т.е. если я раньше компилил фрм-ку и подключал в конфиге один ресурс где лежит прототип, то теперь мне надо целую систему надо указывать? А зачем? Ведь при компиляции кадый ресурс подключается, считывается целиком... а оно надо?Как быть с подключением ресурсов для компиляции? Полагаю, скоро будет возможность при компиляции указать систему, ресурсы которой надо подключать для данной компиляции. (Вот и ещё одно преимущество репозитария, кстати)
Если сейчас, я например подключаю ресурс mto.res в котором собрано всё по МТО и мне надо что-то подправить
Я компилю на стороне в этот ресурс ФРМ-ку с исправлениями и подкладываю её в папку например resources на сервер с именем mto1.res
Далее в стартапе меняю имя подключаемого ресурса mto.res на mto1.res и никого не выгоняя из системы имею при каждом новом запуске Галактики подключенную нужную ФРМ-ку. Кому нужна - тот перегрузится
А в случае с репозитарием как такое будет возможно? Можно на горячую заменить один ресурс на другой?
-
- Местный житель
- Сообщения: 412
- Зарегистрирован: 28 апр 2005, 11:34
- Откуда: Галактика Млечный Путь
Разрешено все что не запрещено.cruger писал(а): Разве где-то сказано, что купив пару модулей Галактики можно разрабатывать свои интерфейсы?
Не обязательно интерфейсы.Раньше при покупке например f-com была возможность компилировать строчным компилятором fcom и отдельно был vip. Потом ф-ком убрали в вип и некоторое время была возможность компилировать вип-ом,пока на него не ввели лицензии.В итоге отобрали строчный компилятор форм.
Почему сейчас купив лицензию на компилятор форм я не могу использовать строчный компилятор? Пускай он не будет компилировать интерфейсы, а формы то почему нельзя?
Не обладаю достоверной статистикой, но рискну предположить: не менее чем на 90-95 процентах предприятий пользователи работают с единым набором ресурсных файлов (файлы от разработчиков плюс, при необходимости, собственные доработки USERx.RES и DEBUGx.RES), и для них проблема управления компонентами вообще не стоит. А вот наличие на одном предприятии нескольких БД - явление гораздо более частое, и то, что репозитарий является составной частью БД, нисколько не добавляет удобств в администрировании. По сути дела, одна разновидность "децентрализации" сменилась другой. К тому же, если и есть смысл манипулировать набором ресурсных файлов, то только в "Галактике", но никак не в Supportе или PatchManagerе.cruger писал(а):Основная идея репозитария - централизованное хранение информации о подключаемых ресурсах, возможность админу контролировать её. Скажете, с OpenResources это тоже было возможно? При условии одного единственного конфига - да. Но если представить, что у каждого пользователя свой, а ещё есть и командная строка, то становится очевидным, что предсказать, какие же именно ресурсы и в каком порядке будут подключаться, не так то просто. Контролировать, что пользователь подключает в командной строке было вообще нереально.
Могу ошибаться, но дело, скорее всего, не в недосмотре. Без VIPа БД не сконвертировать и, следовательно, версию не поменять. Полагаю, потому он и входил в дистрибутив. А уж коли он там присутствовал, то отчего ж было им не пользоваться? Если человек купил в магазине, к примеру, компьютер, а впридачу ему дали еще и принтер (сами дали, никто не просил), так теперь на этом принтере принципиально не печатать?cruger писал(а):То, что vip с некоторого момента стал распостраняться с Галактикой - ошибка и недосмотр. Vip не является частью Галактики или Support'а и по большому счёту не нужен для её функционирования. Изначально предполагалось, что vip получают те, кто купил Атлантис. Так что для тех, кто использовал vip в составе купленного Атлантиса, ничего не изменилось. А остальные, выходит, использовали его нелегально. Разве где-то сказано, что купив пару модулей Галактики можно разрабатывать свои интерфейсы?
Меня он тоже не вдохновил. Предлагаю попробовать скромную любительскую альтернативу профессиональной программе. Может быть, кому-то понравится.dp писал(а):сейчас мучаюсь с patchman - репозитарий по сравнению с этой поделкой - замечательная вестчь. по-крайней мере он хоть нормально работает... а тут...
Действительно, зачем? "Возможность" совершенно не означает безальтернативную "необходимость".Алексей писал(а): Т.е. если я раньше компилил фрм-ку и подключал в конфиге один ресурс где лежит прототип, то теперь мне надо целую систему надо указывать? А зачем?
Полагаю, такой же финт можно проделать и с репозитарием, отчего нет? Только зачем же заменять один ресурс на другой. Можно просто подключать дополнительный с более высоким приоритетом.Алексей писал(а): Далее в стартапе меняю имя подключаемого ресурса mto.res на mto1.res и никого не выгоняя из системы имею при каждом новом запуске Галактики подключенную нужную ФРМ-ку.
Потому что строчный компилятор входит в состав Атлантиса, а не в состав встроенного в Галактику и Саппорт компилятора форм.san писал(а): Почему сейчас купив лицензию на компилятор форм я не могу использовать строчный компилятор?
А ресурсы конфигуратора? И в любом случае - проконтролировать, что именно запускает пользователь, было невозможно. Кому-то это не нужно? Кто-то не использует доп. ресурсов? Тогда какая разница: репозитарий или конфиг?KATZ писал(а): Не обладаю достоверной статистикой, но рискну предположить: не менее чем на 90-95 процентах предприятий пользователи работают с единым набором ресурсных файлов (файлы от разработчиков плюс, при необходимости, собственные доработки USERx.RES и DEBUGx.RES), и для них проблема управления компонентами вообще не стоит.
Как раз в этом и состоит удобство, ибо имеется чёткое представление, что работает с конкретной БД. Ну а вообще работа на нескольких БД, как бы это сказать, не является учитываемом при разработке способом эксплуатации. Кроме того, для планируемых дальнейших доработок системы просто-таки жизненно важно наличие в БД ссылок на ресурсы, работающие с ней.KATZ писал(а): А вот наличие на одном предприятии нескольких БД - явление гораздо более частое, и то, что репозитарий является составной частью БД, нисколько не добавляет удобств в администрировании.
Дистрибутив конвертора - это конечно да. Но он почему то обнаруживается и в ехе каталоге самой Галактики. Полагаю, его пытаются использовать для компиляции именно оттуда. И ещё его новые версии почему-то включаются в патчи. Галактики, а не конвертора.KATZ писал(а): Без VIPа БД не сконвертировать и, следовательно, версию не поменять. Полагаю, потому он и входил в дистрибутив.