|
Улучшения, новые фичи в технологиях InterSystems
|
|||
---|---|---|---|
#18+
Шваров ЕвгенийКоллеги, на самом деле смысл этой темы, чтобы ваши запросы превращались в WRC задачи, т.е. были решены и входили в продукт. По части уже здесь предложенного либо есть либо будет создан продлог (задание на разработку). Вопрос: как лучше всего по вашему мнению доносить эту информацию до вас? гуглотаблица? Специальный сайт? задания в редмайне? Ваши предложения?Самое простое, это наверно гуглотаблица. redmine наверно будет перебор, с учетом что наверно нужен анонимный доступ ... |
|||
:
Нравится:
Не нравится:
|
|||
06.11.2015, 16:32 |
|
Улучшения, новые фичи в технологиях InterSystems
|
|||
---|---|---|---|
#18+
Шваров Евгений, Есть предложение расширить возможности оператора include. Чтобы в код программы вставлялись не только inc-файлы, но и int и даже mac-файлы. Подставлять содержимое int и mac файлов в код программы вместо оператора include. Оператор include чтобы можно было писать в любом месте программы. П.С.Был такой оператор в языке PL/1. Доказал свою пользу. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.01.2016, 12:36 |
|
Улучшения, новые фичи в технологиях InterSystems
|
|||
---|---|---|---|
#18+
DirksDRШваров Евгений, Есть предложение расширить возможности оператора include. Чтобы в код программы вставлялись не только inc-файлы, но и int и даже mac-файлы. Подставлять содержимое int и mac файлов в код программы вместо оператора include. Оператор include чтобы можно было писать в любом месте программы. П.С.Был такой оператор в языке PL/1. Доказал свою пользу. а зачем это нужно, вставлять одни рутины в другие ? если вы хотите чтобы у вас какие то функции всегда включались во всех программах, эти функции и пишите в INC файл, и тогда будет такой же результат. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.01.2016, 12:54 |
|
Улучшения, новые фичи в технологиях InterSystems
|
|||
---|---|---|---|
#18+
DirksDRОператор include чтобы можно было писать в любом месте программы.А в чем сейчас проблема с этим, сейчас можно и так вставить в любом месте главное, чтобы перед использованием макроса если вы конечно не про классы говорите, но там то другая тема, и не понятно зачем это может быть нужно. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.01.2016, 12:57 |
|
Улучшения, новые фичи в технологиях InterSystems
|
|||
---|---|---|---|
#18+
DAiMor, Простите, ребята! Я думал, что нельзя, раз AlexKB многострочными макросами заморачивается:) А проверить поленился...Файл testinc.mac Код: plaintext 1. 2. 3. 4. 5.
Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16.
... |
|||
:
Нравится:
Не нравится:
|
|||
14.01.2016, 16:18 |
|
Улучшения, новые фичи в технологиях InterSystems
|
|||
---|---|---|---|
#18+
В Портале управления нигде не отображается состояние самого Менеджера задач (по крайней мере, в версиях <= 2015.1). Он может быть [при]остановлен, но догадаться об этом бывает нелегко даже достаточно опытному админу, тем более что о существовании утилиты ^TASKMGR знают не все. Предложение: отображать состояние Менеджера задач в Портале, разумно было бы и в Планировщике задач , и в Системных показателях . ... |
|||
:
Нравится:
Не нравится:
|
|||
20.01.2016, 17:53 |
|
Улучшения, новые фичи в технологиях InterSystems
|
|||
---|---|---|---|
#18+
Alexey MaslovПредложение: отображать состояние Менеджера задач в Портале, разумно было бы и в Планировщике задач , и в Системных показателях .Обещали в одной из будущих версий сделать. Ориентировочно в 2017.3. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.10.2016, 07:56 |
|
Улучшения, новые фичи в технологиях InterSystems
|
|||
---|---|---|---|
#18+
Пожалуйста, пожалуйста, пожалуйста! Сделайте что-нибудь с пунктом [печать] в контекстном меню по классу из Студии - Уберите вообще, есть Ctrl-P и меню Файл - Уберите хотя бы подальше от пункта [Экспорт] - По выбору хотя бы выдайте диалог, отправить на принтер или нет? Например тот же что и выходит по Ctrl-P Ну адский ад же .... промахиваешься и все без вопросов улетает в тар-тарары ЗЫ: Извините был напуган ... |
|||
:
Нравится:
Не нравится:
|
|||
17.11.2016, 13:45 |
|
Улучшения, новые фичи в технологиях InterSystems
|
|||
---|---|---|---|
#18+
хочу новые ключи к компилятору COS чтобы хотя бы в явных случаях выдавал ошибки такой переменной/метода/свойства нет ... |
|||
:
Нравится:
Не нравится:
|
|||
14.01.2017, 13:47 |
|
Улучшения, новые фичи в технологиях InterSystems
|
|||
---|---|---|---|
#18+
alataloхочу новые ключи к компилятору COS чтобы хотя бы в явных случаях выдавал ошибки такой переменной/метода/свойства нетВряд ли это сделают, так как это не является ошибкой компиляции , поскольку необязательно приведёт к ошибке времени исполнения, ведь существует механизм динамической диспетчеризации методов и свойств ( статья на хабре). Скорее это должно быть предупреждением статического анализа, чтобы обратить внимание разработчика на потенциально возможную проблему. Но опять же, учитывая природу скриптового языка COS (методы-генераторы и т.д.) ... ... |
|||
:
Нравится:
Не нравится:
|
|||
16.01.2017, 11:26 |
|
Улучшения, новые фичи в технологиях InterSystems
|
|||
---|---|---|---|
#18+
servit, я понимаю. Поэтому заказываю только опциональный настроки, которые можно для конкретного проекта сделать. ... |
|||
:
Нравится:
Не нравится:
|
|||
16.01.2017, 11:38 |
|
Улучшения, новые фичи в технологиях InterSystems
|
|||
---|---|---|---|
#18+
Добавьте пожалуйста атрибут spellcheck = false в <textarea> в SQL портале, чтобы FireFox красным цветом sql не подчеркивал. Ну и сделать подсветку sql синтаксиса заодно) ... |
|||
:
Нравится:
Не нравится:
|
|||
20.02.2017, 22:28 |
|
Улучшения, новые фичи в технологиях InterSystems
|
|||
---|---|---|---|
#18+
И ещё... в окне портала (Редактировать роль) "Предоставить права доступа к таблице для MyRole" отображаются все схемы, даже схемы с классами, которые уже были добавлены для назначения привилегий. Неудобно, смотришь на несколько десятков схем и не видишь, в каких есть классы/таблицы, которые ты ещё не обработал. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.02.2017, 01:51 |
|
Улучшения, новые фичи в технологиях InterSystems
|
|||
---|---|---|---|
#18+
Есть старенькая проблема, о которой я говорил в wrc еще 2012 году, ее номер 774493. Это потенциальная уязвимость, которая чревата нарушением структуры данных на прикладном уровне, связанная с изменением структуры данных класса (добавлением новых полей) и неперекомпиляции программ с запросами на обновление данных. В то время мы сошлись на том, что исправлять ее слишком сложно, это затронет много чего, и решать это правильно на организационном уровне, а на на уровне СУБД. Тем не менее, о проблеме я не забыл, и до сих пор мне кажется, что иметь такую поганенькую проблему для такой прекрасной СУБД нехорошо, поэтому попробую предложить ее решить через форум. Тем более, я почему-то уверен, что сложность ее решения преувеличена, а опасность все-таки довольно высокая. Суть проблемы попробую изобразить на примере. Создадим простенький класс из двух полей: Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29.
И две одинаковые программы test.mac и test2.mac с кодом из одной строчки Код: sql 1.
Скомпилируем эти программы и посмотрим их исходный код, он довольно прост: Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13.
Добавим в наш класс одно поле A2 (имя важно!), класс после этого будет выглядеть так: Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34.
И перекомпилируем только одну из них, ее int-код изменится: Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13.
Что же изменилось у нас в int-программах? В аргументах для программы ##class(Test.A).%SQLInsert() Раньше они собирались в переменную так: Код: sql 1.
А после добавления так: Код: sql 1.
Т.е. после добавления поля изменился порядок принимаемых данных в %SQLInsert, и неперекомпилированная программа вставит данные не в то поле. Более точно - аргументы сортируются по их имени (почему и было важно было название добавляемого свойства). Поэтому, поле A2 заняло место поля B1, а B1 сместилось дальше. Подобная же штука происходит и при компиляции запросов на одновление. Т.е. если вы на своей базе добавили незначительное, как вам кажется, поле и не перекомпилировали все классы и программы, которые изменяют строки таблицы, порожденной модифицированным классом , вы рискуете получить повреждение данных. Причем это не явная модификация структуры хранения (при этом разработчик должен отдавать себе отчет), а автоматическая. Да, неправильно запросы на обновление делать где-то кроме основного класса, да, существует система связанной перекомпиляции, но тем не менее, ошибки возможны, так как не при любом изменении класса хочется перекомпилировать весь продуктовый сервер, а зависимости перекомпиляции не учитывают, например, те же программы. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.03.2017, 09:54 |
|
Улучшения, новые фичи в технологиях InterSystems
|
|||
---|---|---|---|
#18+
Блок А.Н., мне кажется, добавление переменных по их имени решило бы проблему. например, так: Код: sql 1.
... |
|||
:
Нравится:
Не нравится:
|
|||
02.03.2017, 09:58 |
|
Улучшения, новые фичи в технологиях InterSystems
|
|||
---|---|---|---|
#18+
Блок А.Н., Еще одна причина отказаться от embedded sql ... |
|||
:
Нравится:
Не нравится:
|
|||
02.03.2017, 10:59 |
|
Улучшения, новые фичи в технологиях InterSystems
|
|||
---|---|---|---|
#18+
для COS что-нибудь похожее на defer из Go было бы удобно при работе с файлами, запросами, устройствами ... |
|||
:
Нравится:
Не нравится:
|
|||
01.09.2017, 11:02 |
|
Улучшения, новые фичи в технологиях InterSystems
|
|||
---|---|---|---|
#18+
doublefintдля COS что-нибудь похожее на defer из Go было бы удобно при работе с файлами, запросами, устройствамиИнтересная идея, я вижу вызов точно таким же как команду DO. т.е. нужно например иметь метод для закрытия открытых обектов по выходу из методов. Примерно, как у нас есть возможность вернуться в рабочую область при выходе из метода, в котором перешли в другую область ... |
|||
:
Нравится:
Не нравится:
|
|||
01.09.2017, 11:20 |
|
Улучшения, новые фичи в технологиях InterSystems
|
|||
---|---|---|---|
#18+
хотя может быть было бы полезнее например так Код: sql 1. 2.
Так, это будет что-то типа анонимных функций, думаю что так будет полезнее, проблема Код: sql 1. 2. 3. 4. 5. 6. 7.
... |
|||
:
Нравится:
Не нравится:
|
|||
01.09.2017, 11:33 |
|
Улучшения, новые фичи в технологиях InterSystems
|
|||
---|---|---|---|
#18+
DAiMor, Мм, $ET? ... |
|||
:
Нравится:
Не нравится:
|
|||
01.09.2017, 18:21 |
|
Улучшения, новые фичи в технологиях InterSystems
|
|||
---|---|---|---|
#18+
DAiMor, Ну ладно, $ET это не совсем то, но смысл такой же. Мне кажется, в Каше многим не хватает возможности передачи кода как аргумента, сохранения кода в переменную и так далее. При том, что есть возможность передачи кода как строки. Но, видимо, это не очень удобно. Например, потому, что синтаксис кода в строке не подсвечивается, очень неудобно делать многострочный код. Может быть, сделать команду превращения кода в строку, а еще лучше - в специльную структуру, которую потом можно выполнить или передать как аргумент. Блин, кажется, я анонимные функции изобрел :-) А почему нет? Ведь для этого почти все есть. Тот же $XECUTE работает можно сказать, как исполнитель анонимных функций. Даже под это специальный формат строки есть. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.09.2017, 18:52 |
|
Улучшения, новые фичи в технологиях InterSystems
|
|||
---|---|---|---|
#18+
Блок А.Н.DAiMor, Мм, $ET?а каким боком оно вообще тут, $et, занимается отловом ошибок, и вообще это переменная ... |
|||
:
Нравится:
Не нравится:
|
|||
01.09.2017, 20:40 |
|
Улучшения, новые фичи в технологиях InterSystems
|
|||
---|---|---|---|
#18+
DAiMor, $ET - это переменная, которая содержит код, который выполняется при определенных условиях. Разве не этого же по сути вы хотите от DEFER? ... |
|||
:
Нравится:
Не нравится:
|
|||
02.09.2017, 10:53 |
|
Улучшения, новые фичи в технологиях InterSystems
|
|||
---|---|---|---|
#18+
Как ты и сам заметил $ET и $X принимают лишь текст, и читать такой код не просто, и ошибки во время неизбежны. Что-то типа анонимных функций, как в моем примере, или какой нибудь вариант но с возможностью передать аргументы, было намного лучше. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.09.2017, 15:14 |
|
|
start [/forum/topic.php?fid=39&msg=39514274&tid=1556241]: |
0ms |
get settings: |
10ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
42ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
59ms |
get tp. blocked users: |
1ms |
others: | 289ms |
total: | 438ms |
0 / 0 |