powered by simpleCommunicator - 2.0.38     © 2025 Programmizd 02
Форумы / Caché, Ensemble, DeepSee, MiniM, IRIS, GT.M [игнор отключен] [закрыт для гостей] / Запуск MAKOVA SMWrap на Intersystems Cache 2015
25 сообщений из 53, страница 2 из 3
Период между сообщениями больше года.
Запуск MAKOVA SMWrap на Intersystems Cache 2015
    #39564120
MyasnikovIA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Версия для ознакомления (разработка продолжается...):
https://github.com/MyasnikovIA/SMWrap2017

Старая версия Makova2.1 запускается на Cache2015 и выше:
https://github.com/MyasnikovIA/SMWrap-V2.1
...
Рейтинг: 0 / 0
Запуск MAKOVA SMWrap на Intersystems Cache 2015
    #39564227
AlexKB
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MyasnikovIA,
ЭТО ПРОСТО ЗДОРОВО!!!
...
Рейтинг: 0 / 0
Запуск MAKOVA SMWrap на Intersystems Cache 2015
    #39564270
MyasnikovIA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Не судите строго. Я еще не все баги выловил… Так сказать альфа версия 
...
Рейтинг: 0 / 0
Запуск MAKOVA SMWrap на Intersystems Cache 2015
    #39564309
AlexKB
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MyasnikovIAНе судите строго. Я еще не все баги выловил… Так сказать альфа версия 
Да, там еще много чего...
Но уже очень радует, что возрождается Makova!
...
Рейтинг: 0 / 0
Запуск MAKOVA SMWrap на Intersystems Cache 2015
    #39564325
MyasnikovIA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
AlexKB,

Основной акцент в доработки был сделан на ВЭБ технологию.
1) Хотелось бы дописать выгрузку классов Cache’ в JAVA.
2) Загружать через MStudio HTML проекты в Cache’ классы ( пример такого контроллера https://github.com/MyasnikovIA/DevelopperUtilTools класс Developper.UtilTools.ClassFromDir)
3) Дописать модуль SQL запросов, для тестирования в студии.

Главная проблема в том, что MStudio после запуска вычитывает весе классы в области имен, и если проект большой, то первичный запуск занимает много времени. Вторая проблема это при выборе класса тот снова вычитывает весь класс, а если тот занимает много места от 1500 строк и больше, тогда все подвисает до момента окончания сканирования структуры. Чтение происходит в синхронном режиме.

И многое другое, до чего дойдут руки.
Сложность в том, что написание идет в свободное время, которого, к сожалению, бывает не так много.

По тому и прошу желающих посмотреть и подсказать чего еще надо допилить в проекте.
...
Рейтинг: 0 / 0
Запуск MAKOVA SMWrap на Intersystems Cache 2015
    #39564336
Фотография DAiMor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MyasnikovIA,

Над какими частями ведется работа? сервер и клиент?
На чем вообще написана клиентская часть?
Исходники ее будут выложены?
...
Рейтинг: 0 / 0
Запуск MAKOVA SMWrap на Intersystems Cache 2015
    #39564546
MyasnikovIA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
DAiMor,

Проект написан на Delphi7. В нем присутствует платные компоненты FastReport и Дизайнер
MStudio и MСlient писались в паре.


Если коротко , то принцип работы в следующем: На сервере существуют классы , которые имеют аналог написанный на языке Pascale. В момент обращения клиента к серверу, на стороне сервера вычитывается структура Cache' класа и на основании этой информации создается экземпляр класса Pascale. К сожалению паскал не является интерпретируемым языком программирования, в связи с этим приходится изрядно потанцевать с бубном, для того, чтобы внедрить новый компонент. Естественно приходится работать над всеми тремя частями , так как при написании нового класса его необходимо добавить клиента, в дизайнера и естественно на сервер от сюда и сложности при разработке.

Этот проект в компилированном виде распространяется бесплатно , и без всяких ограничений. Естественно без всякой ответственности за последствия применения... :)

К сожалению я не получал разрешения на выкладывание исходного кода. Но честно говоря, за год до того, как правообладатель дал мне эту версию, я уже имел на руках ранее украденный исходный код всего проекта. Несмотря на это у меня не получилось его развернуть. Хотя дало понимание о принципе работы серверной части. Благодаря чему я видоизменил серверную часть и смог запустить старую версию SMWrap Makova 2.1 ( https://github.com/MyasnikovIA/SMWrap-V2.1) .
Для того , чтобы ускорить работу MStudio пришлось переписывать процентов 20 содержимого, так как не все старые методы быстро работали на новой версии Cache' так еще столько же необходимо переписать, чтобы студия стара работать приближено, по скорости к встроенной студии.

Я не смог найти простой способ конвертировать проект с Delphi7 на RadStudio. При конвертации необходимо опять же переписывать большинство классов. Но с другой стороны сильно не упорствовал, так как основным родом моей деятельности является WEB разработка в связи с этим, болшее время дорабатывал студию.

Возможно я повторюсь наверное, но главная цель этого проекта не поучения дохода, а расширения рынка труда на технологии Cache'.

В данный момент допиливаю студию., а пилить там еще много :)
В будущем конечно хотелось бы добавить компоненты OpenGL,Glut , для 3D интерпретации данных , и сконвертировать проект на RadStudio но это только в далеких планах
...
Рейтинг: 0 / 0
Запуск MAKOVA SMWrap на Intersystems Cache 2015
    #39564569
Фотография DAiMor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MyasnikovIA,

OpenGL, 3D - это у вас какие то прям очень сильно далеко идущие планы
А почему RadStudio, понимаю что Delphi7 ему является в некотором роде додственником, но уже очень далеким и довольно дорогим. Не смотрели в сторону Lazarus? На него должно быть легче перейти и бесплатнее.

Я так понимаю там и редактор Cache кода, значит еще поддержку новых возможностей языка допиливать.
...
Рейтинг: 0 / 0
Запуск MAKOVA SMWrap на Intersystems Cache 2015
    #39564609
MyasnikovIA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
DAiMor,

Я смотрел в сторону Lazarus , но тот компилирует уж очень большие EXE файлы. конечно же есть способы уменьшить размер, но я не большой специалист в нем. Хотя приятно было увидеть возможность компиляции как под Windows, так и под Linux.

Подсветка синтаксиса сделана на компоненте SynEdit, тот точно есть в Lazarus. Там так же есть и компонент дизайнера. только по умолчанию он не установлен. но точно есть.

У SMWrap MAKOVA уже сформировался определенный круг потребителей, даже несколько проектов развиваются до сих пор на Cache 5 (в аптечной сфере). хотелось бы сохранить эту аудиторию, ну и по возможности расширить за счет Вэб разработчиков. Так как в России любят не очень дорогой программный продукт , а еще лучше если он бесплатный, то такая штука может быть интересна.

Что касается OpenGL , на Delphi7 есть ухе готовый компонент , надо только написать интерпретацию паскаль классов в Cache , и пересобрать проект, работы примерно на месяц. Но это после ускорения работы студии и исправления критичных "багов", это первостепенно. К сожалению одному сложновато все протестировать...
...
Рейтинг: 0 / 0
Запуск MAKOVA SMWrap на Intersystems Cache 2015
    #39566570
Фотография DAiMor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MyasnikovIAПодсветка синтаксиса сделана на компоненте SynEditЗнакомый компонент, если мне память не изменяет то в АИРе в Editor тоже его применял.
...
Рейтинг: 0 / 0
Запуск MAKOVA SMWrap на Intersystems Cache 2015
    #39566575
Фотография DAiMor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Кстати о целесообразности продолжения развития данного проекта

Я не успел столкнуться с этим проектом. Я незнаю насчет SMWrap, если у него есть потребители наверно есть смысл.
А вот про студию, имеет ли смысл заморачиваться? Ведь она должна быть сильно устарела, и нужно много в ней пилить, чтобы хотя бы до уровня встроенной студии дойти.
...
Рейтинг: 0 / 0
Запуск MAKOVA SMWrap на Intersystems Cache 2015
    #39578519
Шваров Евгений
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MyasnikovIAAlexKB,

Основной акцент в доработки был сделан на ВЭБ технологию.
1) Хотелось бы дописать выгрузку классов Cache’ в JAVA.
2) Загружать через MStudio HTML проекты в Cache’ классы ( пример такого контроллера https://github.com/MyasnikovIA/DevelopperUtilTools класс Developper.UtilTools.ClassFromDir)
3) Дописать модуль SQL запросов, для тестирования в студии.

Главная проблема в том, что MStudio после запуска вычитывает весе классы в области имен, и если проект большой, то первичный запуск занимает много времени. Вторая проблема это при выборе класса тот снова вычитывает весь класс, а если тот занимает много места от 1500 строк и больше, тогда все подвисает до момента окончания сканирования структуры. Чтение происходит в синхронном режиме.

И многое другое, до чего дойдут руки.
Сложность в том, что написание идет в свободное время, которого, к сожалению, бывает не так много.

По тому и прошу желающих посмотреть и подсказать чего еще надо допилить в проекте.
Здорово! Похоже проделана огромная работа.
Я как обычно выскажусь, что исходники не в UDL (а в XML) и в одном файле - как участвовать-то в разработке? С переводом кода в UDL можем помочь.
...
Рейтинг: 0 / 0
Запуск MAKOVA SMWrap на Intersystems Cache 2015
    #39580787
MyasnikovIA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Шваров Евгений,
Добрый день .
Полностью перевести проект в UDL вряд ли получится. Это связанно с тем, что в проекте содержатся глобалы и *.mac , которые тоже нужны , для SMWrap Studio (информация о шаблонах классов). Как я понимаю, в UDL нет возможности переносить глобалы и *.mac программы. Конечно можно написать класс инсталлер, в котором динамически создавать необходимые ресурсы. Но из за этого мы скорее всего ограничим количество пользователей(из за версии Cache’).
Я стараюсь переработать проект так, чтобы он работал на всех версиях Cache’ выше 2013. В связи с этим и был выбран формат XML для переноса пакета программ.
Если вы можете предложить иной способ для переноса классов , программ и глобалов в одном файле, То буду очень рад расширить свои горизонты познания, и переработать проект.
...
Рейтинг: 0 / 0
Запуск MAKOVA SMWrap на Intersystems Cache 2015
    #39580871
Alexey Maslov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MyasnikovIA,

> ...можно написать класс инсталлер... Но из за этого мы скорее всего ограничим количество пользователей(из за версии Cache’)

> чтобы он работал на всех версиях Cache’ выше 2013

Installer в Cache’ 2013, ЕМНИП, уже вполне себе работал.
...
Рейтинг: 0 / 0
Запуск MAKOVA SMWrap на Intersystems Cache 2015
    #39580910
MyasnikovIA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Alexey Maslov,

В действительности я сталкивался с инсталлером в Cache’2013 ( http://docs.intersystems.com/latest/csp/docbook/DocBook.UI.Page.cls?KEY=GCI_manifest) . Но опять же остается проблема с *.mac и глобалы в UDL. Так же мне кажется, что удобно распространять весь проект, все сложив в один файл.
И есть еще одна проблема, я еще не знаю как в коде (MUMPS) переключить CACHELIB в режим записи и обратно. Если кто-нибудь подскажет пример скрипта переключения, то тогда создам инсталлер и он появится на ресурсе https://github.com/MyasnikovIA/SMWrap2017 и http://www.smwrap.ru/Download.html
Наверняка есть иной способ, для распространения готового проекта (классы, глобалы и *.Mac) в одном файле, для простого развёртывания по заложенному сценарию. Но увы его не знаю, По этому использую XML.
...
Рейтинг: 0 / 0
Запуск MAKOVA SMWrap на Intersystems Cache 2015
    #39580948
Alexey Maslov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MyasnikovIA,

> остается проблема с *.mac и глобалы в UDL
...
> удобно распространять весь проект, все сложив в один файл.

Проблема выглядит надуманной, если используется Installer. Передавайте всё через xml вместе с Installer'ом, с той разбивкой на файлы, какая вам удобна.

> как в коде (MUMPS) переключить CACHELIB в режим записи и обратно

Могу поискать пример кода, но если уж принимаете решение использовать Installer, то лучше с его помощью это и сделать. Кстати, переименовав ваши программы/классы/глобалы в %z*, вы избежите необходимости открывать CACHELIB на запись. Это, собственно, рекомендуется ISC, в противном случае каждый апгрэйд Cache будет требовать переустановки SMWrap.
...
Рейтинг: 0 / 0
Запуск MAKOVA SMWrap на Intersystems Cache 2015
    #39580981
MyasnikovIA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Alexey Maslov,

Что касается %Z* , то вы абсолютно правы. Я так и хотел сделать, но на SMWrap уже написан один проект (автоматизация аптек). Он использует в своих модулях классы из системной области (пример: %TMTimer) Естественно Cache’, преобразовывает в “%Library.TMTimer ” преобразовать его в “%ZLibrary.TM*” проблематично. Проект писался продолжительный период времени (более 10 лет на Cache’5), и браться за его переделку очень страшно. Новая версия должна быть максимально совместима с предыдущими наработками, для безболезненного перехода на неё. Предполагаю, что в других проектах может быть такая же проблема. В связи с этим я не вижу возможности отказаться от записи в область “CACHELIB”.
При переходе между версиями Cache’ конечно же придется опять импортировать SMWrap.xml. По-другому никак. Нужно будет этот факт отметить в инструкции.
Напишите, пожалуйста, пример код переключения CACHELIB в режим записи и обратно. Вещь полезная, может пригодиться в других разработках.
...
Рейтинг: 0 / 0
Запуск MAKOVA SMWrap на Intersystems Cache 2015
    #39581077
Alexey Maslov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MyasnikovIAЧто касается %Z*
...
Проект писался продолжительный период времени (более 10 лет на Cache’5), и браться за его переделку очень страшно.Рекомендуется не %Z*/z*, а только %z*, с тех пор как появился %ZEN.*. Насчёт страшно: не знаю, мы свой проект (немаленький, поверьте) в своё время переделали, вообще отказавшись от %-ных классов, и вздохнули с облегчением: настолько упростилась и разработка, и эксплуатация. Но хозяин - барин.

MyasnikovIAНапишите, пожалуйста, пример код переключения CACHELIB в режим записи и обратно. Вещь полезная, может пригодиться в других разработках.Костяк кода:
Код: javascript
1.
2.
3.
 set db=##class(SYS.Database).%OpenId(database)
 set db.ReadOnly=0 // или =1
 set status=db.%Save()

У меня этот код выполнялся на последнем этапе установки Cache', поэтому проверки/установки необходимых привилегий отсутствуют. Посмотрите в документации класса SYS.Database, что там требуется.
...
Рейтинг: 0 / 0
Запуск MAKOVA SMWrap на Intersystems Cache 2015
    #39581152
MyasnikovIA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Alexey Maslov,

Большое спасибо.
...
Рейтинг: 0 / 0
Запуск MAKOVA SMWrap на Intersystems Cache 2015
    #39581263
Фотография DAiMor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MyasnikovIAНовая версия должна быть максимально совместима с предыдущими наработками, для безболезненного перехода на неёне стоит думать о этом так, большая часть вашей сейчас работы это поддержка новых версий Cache. Это в любом случае для конечного пользователя приведет к необходимости провести обновление. Или смотрите на ваши изменения как на отдельный проект. Обе стороны проекта должны быть новой версии, зачем вам поддерживать в клиенте старый сервер и наоборот. Старый проект не ваш, вы просто предлагаете пользователям старого проекта перейти на ваш, пусть и основанном на старом. Но большую часть старого вы можете поддержать путем миграции, не думаю что это очень сложно сделать.
...
Рейтинг: 0 / 0
Запуск MAKOVA SMWrap на Intersystems Cache 2015
    #39581305
Фотография ну я
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DAiMorMyasnikovIAНовая версия должна быть максимально совместима с предыдущими наработками, для безболезненного перехода на неёне стоит думать о этом так, большая часть вашей сейчас работы это поддержка новых версий Cache. Это в любом случае для конечного пользователя приведет к необходимости провести обновление. Или смотрите на ваши изменения как на отдельный проект. Обе стороны проекта должны быть новой версии, зачем вам поддерживать в клиенте старый сервер и наоборот. Старый проект не ваш, вы просто предлагаете пользователям старого проекта перейти на ваш, пусть и основанном на старом. Но большую часть старого вы можете поддержать путем миграции, не думаю что это очень сложно сделать.
Можно написать Олегу Чередниченко на oli @ esc . ru про переход на другую версию SMWrap проекта МАптека+
...
Рейтинг: 0 / 0
Запуск MAKOVA SMWrap на Intersystems Cache 2015
    #39581319
Alexey Maslov Насчёт страшно: не знаю, мы свой проект (немаленький, поверьте) в своё время переделали, вообще отказавшись от %-ных классов, и вздохнули с облегчением: настолько упростилась и разработка, и эксплуатация. Но хозяин - барин.

Поддерживаю. В этом случае многое упростится. В том числе появится возможность тестировать/использовать разные версии в разных неймспейсах.
...
Рейтинг: 0 / 0
Запуск MAKOVA SMWrap на Intersystems Cache 2015
    #39581413
MyasnikovIA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
DAiMor,

Причина, по которой я стал задуряться с обратной совместимостью, связанна с тем, чтобы не растерять старые проекты. А в идеале запустить новый исполняемый файл на старом проекте и чтобы все заработало. Но как показала практика это утопия, и скорее всего, придется пойти по пути написания конвертора. Если у вас есть еще мнение по поводу направления развития проекта, то высказывайте, я его обязательно постараюсь учесть.
Заранее спасибо.
...
Рейтинг: 0 / 0
Запуск MAKOVA SMWrap на Intersystems Cache 2015
    #39581414
MyasnikovIA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ну я,

Большое спасибо. Контакт Олега у меня уже есть, мы с ним общались пару лет назад, по этому вопросу. Собственно говоря, с этого разговора и появилась идея возродить проект. С того времени уже сменил работодателя (сейчас работаю в сфере ЖКХ на технологии Cache’ WEB), и проект М-аптека использую в качестве полигона для тестирования (Новосибирская версия 2.28). Контакты с бывшими работодателями не поддерживаю. В прочем там работают ребята умные, думаю, они сориентируются.
От Олега я получил великолепную программку конвертора ”Convert2012.mac”, она есть в SMWrap.xml. На её основе можно создать конвертор, там уже все основное есть. Остается немного допилить. Специалисты проекта М-Аптека смогут это сделать лучше меня.
...
Рейтинг: 0 / 0
Запуск MAKOVA SMWrap на Intersystems Cache 2015
    #39581415
MyasnikovIA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Павел Мархотин,

Честно говоря не могу представить такую ситуацию, когда есть необходимость на одном сервере держать несколько версий SMWrap. Кажется это совсем крайний случай.
Сейчас все компоненты формы расположены в классах “%Library.TM*”, это позваляет иметь доступ из любой области имен. Естественно для того, чтобы поместить эти классы в системе необходимо открыть на запись “CACHELIB”, (об этом писал ранее) . Благодаря помощи “Alexey Maslov” я понял как запилить старый инсталлятор(*.exe) для развертывания классов в новых версиях при инсталляции SMWrap (как в версии smwrap3.4.0.6.exe). Просто в инсталляции появится выбор места установки, в зависимости от неё классы будут развёртываться или “%Library.TM*” или “%ZLibrary.TM*”( %Z* не требует режим записи в “CACHELIB” ) . Но это еще только мысли в слух. Надо будет все переосмыслить, чтобы учесть все пожелания.
“И овцы целы и волки сыты - Вечная память пастуху”
...
Рейтинг: 0 / 0
25 сообщений из 53, страница 2 из 3
Форумы / Caché, Ensemble, DeepSee, MiniM, IRIS, GT.M [игнор отключен] [закрыт для гостей] / Запуск MAKOVA SMWrap на Intersystems Cache 2015
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]