|
Загрузить текст рутины в переменную
|
|||
---|---|---|---|
#18+
Доброго дня . Каким образом в Каше можно загрузить текст программы в переменную ? И какой команды ее сохранить и компилировать - например в формате .int ? Спасибо. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.03.2020, 10:57 |
|
Загрузить текст рутины в переменную
|
|||
---|---|---|---|
#18+
не совсем понятно, что хочется сделать С программами mac, int, inc можно оперировать через класс %Library.RoutineMgr открыть, читать как стрим, писать как в стрим ... |
|||
:
Нравится:
Не нравится:
|
|||
06.03.2020, 12:26 |
|
Загрузить текст рутины в переменную
|
|||
---|---|---|---|
#18+
DAiMor, Забыл сказать, что классами я не пользуюсь - чистый М Вроде что-то нашел ZLOAD myroutine ZSAVE myroutine Не знаю как загрузит строки в переменную и отослать клиенту .. (ВЕБ) ... |
|||
:
Нравится:
Не нравится:
|
|||
06.03.2020, 12:44 |
|
Загрузить текст рутины в переменную
|
|||
---|---|---|---|
#18+
Valeriu, ^%R - набор вызовов для работы с рутинами, была и хорошая дока на эту утилиту. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.03.2020, 12:58 |
|
Загрузить текст рутины в переменную
|
|||
---|---|---|---|
#18+
Valeriu, нашел фирменную доку от ИС - куда отправить, если нужно? ... |
|||
:
Нравится:
Не нравится:
|
|||
06.03.2020, 13:01 |
|
Загрузить текст рутины в переменную
|
|||
---|---|---|---|
#18+
AlexKB, gontiaval@gmail.com ... |
|||
:
Нравится:
Не нравится:
|
|||
06.03.2020, 13:16 |
|
Загрузить текст рутины в переменную
|
|||
---|---|---|---|
#18+
Valeriu Забыл сказать, что классами я не пользуюсь - чистый М Есть функция $text()... С ее помощью можно читать строки программы. ;) ... |
|||
:
Нравится:
Не нравится:
|
|||
06.03.2020, 13:23 |
|
Загрузить текст рутины в переменную
|
|||
---|---|---|---|
#18+
Valeriu, Отправил. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.03.2020, 13:25 |
|
Загрузить текст рутины в переменную
|
|||
---|---|---|---|
#18+
AlexKB, Спасибо, хорошая штука. Не знал про такой. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.03.2020, 13:30 |
|
Загрузить текст рутины в переменную
|
|||
---|---|---|---|
#18+
Ну, прям машина времени ;) Капсулу с заветами будущим м-мистам откопали? ... |
|||
:
Нравится:
Не нравится:
|
|||
06.03.2020, 13:37 |
|
Загрузить текст рутины в переменную
|
|||
---|---|---|---|
#18+
kolesov, Лучшее - враг хорошего! Если бы ИС так все документировали... ... |
|||
:
Нравится:
Не нравится:
|
|||
06.03.2020, 13:46 |
|
Загрузить текст рутины в переменную
|
|||
---|---|---|---|
#18+
AlexKB, Alex, спасибо. Вроде то что нужно Код: vbnet 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15.
... |
|||
:
Нравится:
Не нравится:
|
|||
06.03.2020, 16:16 |
|
Загрузить текст рутины в переменную
|
|||
---|---|---|---|
#18+
kolesovНу, прям машина времени ;) Капсулу с заветами будущим м-мистам откопали? Вы правы. Нужно это было для старой версии Каше 5.0... На новых систем Била, никакой удачи не видать . клиентское "Студио" не пашет кроме как XP. Хотел посмотреть как моя задумка для GT.M будет работать в браузере Мозила, но уже для Каше. Вроде пашет. Немного поправлять приходится код. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.03.2020, 17:29 |
|
Загрузить текст рутины в переменную
|
|||
---|---|---|---|
#18+
AlexKB, А случайно для ГЛОБАЛОВ на подобие ничего нету ? Было бы здорово ... ... |
|||
:
Нравится:
Не нравится:
|
|||
07.03.2020, 05:32 |
|
Загрузить текст рутины в переменную
|
|||
---|---|---|---|
#18+
Кто может сказать в версии 5,0 вот этот класс ##class(%ResultSet).%New("%Global:Get") есть аналог ??? ... |
|||
:
Нравится:
Не нравится:
|
|||
09.03.2020, 15:58 |
|
Загрузить текст рутины в переменную
|
|||
---|---|---|---|
#18+
Valeriu А случайно для ГЛОБАЛОВ на подобие ничего нету ? Было бы здорово ... Не проверял, но вполне возможно, что в вашей версии это работает. Обратите внимание, что это так называемый блочный, а на самом деле, двоичный формат сохранения глобалов, самый быстрый и компактный, но... двоичный. Если нужен текстовый, то в старых версиях можно попробовать копать в сторону %GO/%GI. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.03.2020, 17:17 |
|
Загрузить текст рутины в переменную
|
|||
---|---|---|---|
#18+
Alexey Maslov, Спасибо, понятно. Мне больше интересовало как в Каше вызывают глобалы по маске. Я раньше поднял эту тему. Пользуюсь посторонним кодом, работает, но немножко тормозит если глобал большой. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.03.2020, 15:54 |
|
Загрузить текст рутины в переменную
|
|||
---|---|---|---|
#18+
Еще есть один нюанс. При переходе в системную область (%SYS ) очень много в списке лишних рутин ... Наверное все что там есть. Так же и в обычных областях много лишнего. Это не наблюдается при вызове обычной утилиты %RD... Как это можно обойти ? Вот мой код Код: vbnet 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11.
Спасибо. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.03.2020, 08:46 |
|
Загрузить текст рутины в переменную
|
|||
---|---|---|---|
#18+
Valeriu Это не наблюдается при вызове обычной утилиты %RD... Возможно, вам будет проще сделать флажок ~ "Показывать системные программы", и если он = 0, отбрасывать программы с именами, начинающимися с "%". ... |
|||
:
Нравится:
Не нравится:
|
|||
12.03.2020, 12:29 |
|
Загрузить текст рутины в переменную
|
|||
---|---|---|---|
#18+
Alexey Maslov, Примерно я так и делаю. Можно ограничиваться маской, и для системных(по пальцам которых я использую) примерно также . Код: vbnet 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18.
... |
|||
:
Нравится:
Не нравится:
|
|||
12.03.2020, 12:53 |
|
Загрузить текст рутины в переменную
|
|||
---|---|---|---|
#18+
Valeriu, Вроде как ZNSPACE zn в область %CACHELIB не переключал, помнится... ... |
|||
:
Нравится:
Не нравится:
|
|||
12.03.2020, 13:54 |
|
Загрузить текст рутины в переменную
|
|||
---|---|---|---|
#18+
ну я, В %SYS переключается, в %CACHELIB пока нету надобности. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.03.2020, 14:32 |
|
Загрузить текст рутины в переменную
|
|||
---|---|---|---|
#18+
DAiMor, DAiMorС программами mac, int, inc можно оперировать через класс %Library.RoutineMgr А можно где-то посмотреть примеры для работы с классами для 5.0 ? Вроде смотрю они есть для этой версии ... %Library.RoutineMgr %Library.ResultSet ... |
|||
:
Нравится:
Не нравится:
|
|||
12.03.2020, 17:12 |
|
Загрузить текст рутины в переменную
|
|||
---|---|---|---|
#18+
Valeriu, А какие примеры по работе с классами нужны? Получить текст класса как в студии? Не было такого способа, вплоть до того как появился Atelier в 2016.2 Может и было что-то но уж точно не в 5.0 Текст класса, генерируется на основе объектов описанных в классах пакета %Dictionary Был ли такой пакет в 5.0 я уже не скажу, я ее уже много лет не видел. А в документации не смог найти Но думаю точно был класс %Library.ClassDefinition, который тоже можно было использовать для этого. Для того чтобы изменить код класса, нужно будет в обратную сторону распарсивать код класса и сохранять по нужным местам. Можно посмотреть у меня в исходниках на Java как я собирал текст класса. И код для сохранения класса. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.03.2020, 20:28 |
|
Загрузить текст рутины в переменную
|
|||
---|---|---|---|
#18+
DAiMor, Я бы с удовольствием попробовать пока это: (Смотрю в %CACHELIB %Library.ResultSet есть) Код: vbnet 1. 2. 3. 4. 5. 6. 7. 8.
... |
|||
:
Нравится:
Не нравится:
|
|||
13.03.2020, 08:48 |
|
Загрузить текст рутины в переменную
|
|||
---|---|---|---|
#18+
Не подскажите как увеличивать буфер сохраняемой программы ? Такое впечатление, что оно меньше 32 кб. Код: vbnet 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20.
В самом Каше, (студио) сохраняет без проблем При помощи в кодом описанном выше не хочет. создается впечатление что по дефолту гдето 8-16 кб ... |
|||
:
Нравится:
Не нравится:
|
|||
20.03.2020, 09:07 |
|
Загрузить текст рутины в переменную
|
|||
---|---|---|---|
#18+
Возвращаюсь к этой теме. Я использую для передачи серверу текст рутины методом PUT (Ajax) Может быть у Ajax для передачи ограничение на длину строки ? Как это преодолеть ? Спасибо. ... |
|||
:
Нравится:
Не нравится:
|
|||
16.07.2020, 08:24 |
|
Загрузить текст рутины в переменную
|
|||
---|---|---|---|
#18+
Valeriu Возвращаюсь к этой теме. Я использую для передачи серверу текст рутины методом PUT (Ajax) Может быть у Ajax для передачи ограничение на длину строки ? Как это преодолеть ? Спасибо. у AJAX нет ограничения, но оно может быть на стороне сервера, или просто из-за таймаутов, но тогда оно должно быть сильно большим. ... |
|||
:
Нравится:
Не нравится:
|
|||
16.07.2020, 09:19 |
|
Загрузить текст рутины в переменную
|
|||
---|---|---|---|
#18+
Valeriu, Вообще я думаю, если бы вы реализовали Atelier API который мог бы повторить хотя бы основной функционал, то получилось бы гораздо больше пользы от этого, вместо изобретения велосипеда. Тогда вы бы смогли подключиться из VSCode к вашему серверу будь это GT.M, Yotta или IRIS Есть и аналоги VSCode которые могут работать в браузере и сам VSCode в браузере, но при этом уже сейчас в VSCode уже есть гораздо больше возможностей чем вы сможете добавить, и так как сейчас InterSystems способствует его развитию и продолжит развиваться. ... |
|||
:
Нравится:
Не нравится:
|
|||
16.07.2020, 09:25 |
|
Загрузить текст рутины в переменную
|
|||
---|---|---|---|
#18+
DAiMor, Есть одна задумка попробовать использовать вот это, но только для Каше: https://github.com/jewuma/mumps-debug ... |
|||
:
Нравится:
Не нравится:
|
|||
16.07.2020, 09:55 |
|
Загрузить текст рутины в переменную
|
|||
---|---|---|---|
#18+
DAiMorу AJAX нет ограничения Да. Это связано с Каше 5. Я пробовал на Каше2015 это не происходит. Я косил почему то больше на ^%R - работы с рутинами Видимо где-то какие-то настройки ... Потому что со своей родной студии 5.0 этого нет - сохраняет 32кб Конечно старая версия это тоже факт. ... |
|||
:
Нравится:
Не нравится:
|
|||
16.07.2020, 16:22 |
|
Загрузить текст рутины в переменную
|
|||
---|---|---|---|
#18+
Valeriu Может быть у Ajax для передачи ограничение на длину строки ? Ограничения есть только на запросы типа GET... На POST ограничений нет Valeriu Как это преодолеть ? Залезать в настройки ИИСа и увеличивать цифру... ... |
|||
:
Нравится:
Не нравится:
|
|||
17.07.2020, 14:08 |
|
|
start [/forum/topic.php?all=1&fid=39&tid=1556126]: |
0ms |
get settings: |
3ms |
get forum list: |
5ms |
check forum access: |
1ms |
check topic access: |
1ms |
track hit: |
29ms |
get topic data: |
2ms |
get forum data: |
1ms |
get page messages: |
526ms |
get tp. blocked users: |
0ms |
others: | 7ms |
total: | 575ms |
0 / 0 |