|
Формы и контролы в учетной системе
|
|||
---|---|---|---|
#18+
Здравствуйте. При разработке большинства ИС встает задача разграничения прав доступа для двух (минимум) групп - Пользователь и Администратор. Администратора отличает от Пользователя следующее: - дополнительные кнопки/поля ввода в формах добавления/редактирования - дополнительные колонки в таблицах при просмотре данных - и т.д. Как принято решать данную задачу, может быть есть решение какое-нибудь на эту тему? Не городить же для каждой группы свою тучу форм и контролов. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.10.2009, 11:44 |
|
Формы и контролы в учетной системе
|
|||
---|---|---|---|
#18+
griZZZlyЗдравствуйте. При разработке большинства ИС встает задача разграничения прав доступа для двух (минимум) групп - Пользователь и Администратор. Администратора отличает от Пользователя следующее: - дополнительные кнопки/поля ввода в формах добавления/редактирования - дополнительные колонки в таблицах при просмотре данных - и т.д. Как принято решать данную задачу, может быть есть решение какое-нибудь на эту тему? Не городить же для каждой группы свою тучу форм и контролов. Код: plaintext 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. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66.
... |
|||
:
Нравится:
Не нравится:
|
|||
19.10.2009, 12:14 |
|
Формы и контролы в учетной системе
|
|||
---|---|---|---|
#18+
trdm, ну это понятно. В общем случае у пользователя по сравнению с администратором будет куча задисабленных контролов, что не есть хорошо. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.10.2009, 12:33 |
|
Формы и контролы в учетной системе
|
|||
---|---|---|---|
#18+
griZZZly wrote: > Как принято решать данную задачу, может быть есть решение какое-нибудь > на эту тему? Не городить же для каждой группы свою тучу форм и контролов. Разработкой своей подсистемы безопасности, естественно. Posted via ActualForum NNTP Server 1.4 ... |
|||
:
Нравится:
Не нравится:
|
|||
19.10.2009, 12:42 |
|
Формы и контролы в учетной системе
|
|||
---|---|---|---|
#18+
MasterZiv Разработкой своей подсистемы безопасности, естественно. Не очень понятно, что вы имели в виду. Интересует реализация именно в контексте UI. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.10.2009, 13:10 |
|
Формы и контролы в учетной системе
|
|||
---|---|---|---|
#18+
Перед открытием формы проверять права и контролы на которые они отсутствуют банально скрывать, вообще не понятно в чем вопрос!?! ... |
|||
:
Нравится:
Не нравится:
|
|||
19.10.2009, 14:22 |
|
Формы и контролы в учетной системе
|
|||
---|---|---|---|
#18+
В подобных задачах удобней отказаться от групп и ролей(обычно их много) и оперировать с правилами а'la "Создать Счет","Редактировать Счет","Подписать Счет".Я с этим боролся следующим способом: - Для разграничения прав доступа идеально подошел NetSqlAzMan.В нем каждому правилу можно разрешить/запретить доступ ролям и(или) пользователям.Группы определяются запросами из AD или внешней БД(отдел или должность из справочников).Каждый пользователь должен иметь уникальный ID,которым может быть учетка операционки или ID из справочника сотрудников. -После регистрации пользователя в системе динамически загружаются только те модули,которые ему разрешены.При инициализации модуля делается привязка команд к элементам управления(кнопка,пункт меню и тд).В зависимости от атрибутов комманд(PermissionName;Hide или Disable) элементы управления активируются/деактивируются/не показываются - В каждом бизнес-классе указываются права на выполнение SCRUD(CanEditObject,CanCreateObject,CanDeleteObject, etc) и на чтение/редактирование полей.При выполнении SCRUD осуществляется проверки на допустимость,если нет прав,то выводится сообщение - "У Вас нет доступа на выполнение операции "Такой-то"". - Для построения гридов отдельная фабрика - GridBuilder,которая создает только доступные пользователю поля - Для форм спецконтрол,который в зависимости от прав на чтение/редактирования поля бизнес-класса показывает/не показывает значение,разрешает/запрещает редактирование. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.10.2009, 14:27 |
|
Формы и контролы в учетной системе
|
|||
---|---|---|---|
#18+
Некоторые системы формируют контролы с "действиями" (или список действий как в Windows Explorer) динамически под соответствующий набор прав, разрешающих те или иные действия. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.10.2009, 14:32 |
|
Формы и контролы в учетной системе
|
|||
---|---|---|---|
#18+
OZKAПеред открытием формы проверять права и контролы на которые они отсутствуют банально скрывать, вообще не понятно в чем вопрос!?! А теперь представьте себе форму, в которой 5 из 10 текстбоксов скрыты. По-моему получится не очень красиво. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.10.2009, 14:40 |
|
Формы и контролы в учетной системе
|
|||
---|---|---|---|
#18+
авторА теперь представьте себе форму, в которой 5 из 10 текстбоксов скрыты. По-моему получится не очень красиво. Их можно также банально показывать в неактивном состоянии ... |
|||
:
Нравится:
Не нравится:
|
|||
19.10.2009, 14:48 |
|
Формы и контролы в учетной системе
|
|||
---|---|---|---|
#18+
SeVaавторА теперь представьте себе форму, в которой 5 из 10 текстбоксов скрыты. По-моему получится не очень красиво. Их можно также банально показывать в неактивном состоянии Тоже сомнительный вариант. Видимо Вам никогда не приходилось выслушивать фразы типа "А почему я вот в это окошечко не могу ничего написать?". Если уж Вы настаиваете на данном варианте, спрошу вот что. Есть ли какая-нибудь IDE, которая позволяет автоматом, скажем, делать форму чуть менье, если один из контролов невидим. Можно конечно велосипед написать, но как-то не очень хочется. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.10.2009, 14:54 |
|
Формы и контролы в учетной системе
|
|||
---|---|---|---|
#18+
griZZZlyТоже сомнительный вариант. Видимо Вам никогда не приходилось выслушивать фразы типа "А почему я вот в это окошечко не могу ничего написать?". 100% ... |
|||
:
Нравится:
Не нравится:
|
|||
19.10.2009, 15:03 |
|
Формы и контролы в учетной системе
|
|||
---|---|---|---|
#18+
как я делаю: у меня все кнопки, имена менюшек в своем стандарте... например: менюшке: M_PAYMENTS_ACTIVE M_..... cmp_PAYMENTS_ACTIVE_BUTTON_DELETE cmp_PAYMENTS_ACTIVE_BUTTON_INSERT .... и т.д. создаю таблицу соответствие роли и имена компонентов к тем нету доступа а далще в коде: при входе делается селект все записи где груп_ид=груп_ид пользователя, далще уже имя формы, findscomponent as klass komponenta visible = false ... |
|||
:
Нравится:
Не нравится:
|
|||
19.10.2009, 16:00 |
|
Формы и контролы в учетной системе
|
|||
---|---|---|---|
#18+
авторТоже сомнительный вариант. Видимо Вам никогда не приходилось выслушивать фразы типа "А почему я вот в это окошечко не могу ничего написать?". Если уж Вы настаиваете на данном варианте, спрошу вот что. Есть ли какая-нибудь IDE, которая позволяет автоматом, скажем, делать форму чуть менье, если один из контролов невидим. Можно конечно велосипед написать, но как-то не очень хочется. Велосипед готов.Перед изменением свойства бизнес-объекта делается валидация,если нет прав,свойство становится невалидным,в поле редактирования появляется tooltip c нужным пояснением. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.10.2009, 16:37 |
|
Формы и контролы в учетной системе
|
|||
---|---|---|---|
#18+
griZZZly пишет: > Не очень понятно, что вы имели в виду. Интересует реализация именно в > контексте UI. Ну так а UI и не меняется. Меняются только права пользователя. Можно конечно по правам вычислять, может ли конкретный пользователь открывать конкретную форму, но мы например такой ерундой не занимаемся. Ну, откроет форму, нажмёт "сохранить" -- ему скажут: "Извини, брат, нельзя тебе". Posted via ActualForum NNTP Server 1.4 ... |
|||
:
Нравится:
Не нравится:
|
|||
19.10.2009, 16:38 |
|
Формы и контролы в учетной системе
|
|||
---|---|---|---|
#18+
griZZZlyOZKAПеред открытием формы проверять права и контролы на которые они отсутствуют банально скрывать, вообще не понятно в чем вопрос!?! А теперь представьте себе форму, в которой 5 из 10 текстбоксов скрыты. По-моему получится не очень красиво. Это не проблема на самом деле. Грамотный проектировщик интерфейса не допустит такого. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.10.2009, 16:51 |
|
Формы и контролы в учетной системе
|
|||
---|---|---|---|
#18+
griZZZlytrdm, ну это понятно. В общем случае у пользователя по сравнению с администратором будет куча задисабленных контролов, что не есть хорошо. Это нормально. Некоторые флаги например недоступны пользователю, но влияют на его работу и он должен знать где их искать и где смотреть, что-бы не задавать лишних вопросов. ПС. А я тебе и не предлагаю эту схему, как единственно возможную. Лучше когда ты будешь иметь представление о нескольких схемах, что-бы выбрать наиболее подходящую, так что не води носом и завязывай с критикой. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.10.2009, 18:04 |
|
Формы и контролы в учетной системе
|
|||
---|---|---|---|
#18+
SeVaВ подобных задачах удобней отказаться от групп и ролей(обычно их много) и оперировать с правилами а'la "Создать Счет","Редактировать Счет","Подписать Счет".Я с этим боролся следующим способом: - Для разграничения прав доступа идеально подошел NetSqlAzMan.В нем каждому правилу можно разрешить/запретить доступ ролям и(или) пользователям.Группы определяются запросами из AD или внешней БД(отдел или должность из справочников).Каждый пользователь должен иметь уникальный ID,которым может быть учетка операционки или ID из справочника сотрудников. это сойдет для немногопользовательской проги, статичного не обновляемого софта или ларька, но при разрастании системы настроек и увеличении пользователей твой админ будет клять тебя матом из-за пустой траты времени на расстановку галок. Система же ролей и профилей избавит тебя от такого головняка. Проверено на практике. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.10.2009, 18:08 |
|
Формы и контролы в учетной системе
|
|||
---|---|---|---|
#18+
авторэто сойдет для немногопользовательской проги, статичного не обновляемого софта или ларька, но при разрастании системы настроек и увеличении пользователей твой админ будет клять тебя матом из-за пустой траты времени на расстановку галок. Система же ролей и профилей избавит тебя от такого головняка. Проверено на практике C точностью до наоборот.В последнем проекте вместо получасового маразма,как в предущей системе,достаточно добавить пользователя в справочник сотрудников и все.При необходимости можно сделать тонкие настройки.С ролями я плавал и есть с чем сравнивать. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.10.2009, 18:17 |
|
Формы и контролы в учетной системе
|
|||
---|---|---|---|
#18+
И кроме того,правила весьма ладно стыкуются со всеми остальными слоями ... |
|||
:
Нравится:
Не нравится:
|
|||
19.10.2009, 18:18 |
|
Формы и контролы в учетной системе
|
|||
---|---|---|---|
#18+
SeVaавторэто сойдет для немногопользовательской проги, статичного не обновляемого софта или ларька, но при разрастании системы настроек и увеличении пользователей твой админ будет клять тебя матом из-за пустой траты времени на расстановку галок. Система же ролей и профилей избавит тебя от такого головняка. Проверено на практике C точностью до наоборот.В последнем проекте вместо получасового маразма,как в предущей системе,достаточно добавить пользователя в справочник сотрудников и все.При необходимости можно сделать тонкие настройки.С ролями я плавал и есть с чем сравнивать. Сколько у тебя юзверей и какая текучка? ... |
|||
:
Нравится:
Не нравится:
|
|||
19.10.2009, 18:22 |
|
Формы и контролы в учетной системе
|
|||
---|---|---|---|
#18+
SeVaавторэто сойдет для немногопользовательской проги, статичного не обновляемого софта или ларька, но при разрастании системы настроек и увеличении пользователей твой админ будет клять тебя матом из-за пустой траты времени на расстановку галок. Система же ролей и профилей избавит тебя от такого головняка. Проверено на практике C точностью до наоборот.В последнем проекте вместо получасового маразма,как в предущей системе,достаточно добавить пользователя в справочник сотрудников и все.При необходимости можно сделать тонкие настройки.С ролями я плавал и есть с чем сравнивать. А ты понимаешь, что с добавлением объекта или пользователя у тебя матрица комбинаций растет? Допустим, что у тебя порядка 50 пользователей и около 120 регулируемых объектов у каждого из которых 5 условных разрешений. Матрица одного пользователя по разрешениям: 120 * 5 = 600 "галок" при добавлении 3 без системы роле пользователей тебе прийдется проставить 600 * 3 = 1800 галок. Классно? А если к этому добавить индивидуальные профили на каждого? :) ... |
|||
:
Нравится:
Не нравится:
|
|||
19.10.2009, 18:30 |
|
Формы и контролы в учетной системе
|
|||
---|---|---|---|
#18+
авторА ты понимаешь, что с добавлением объекта или пользователя у тебя матрица комбинаций растет? Допустим, что у тебя порядка 50 пользователей и около 120 регулируемых объектов у каждого из которых 5 условных разрешений. Матрица одного пользователя по разрешениям: 120 * 5 = 600 "галок" при добавлении 3 без системы роле пользователей тебе прийдется проставить 600 * 3 = 1800 галок. Классно? А если к этому добавить индивидуальные профили на каждого? :) В последнем проекте практически на каждое разрешение нужно было бы создавать свой профиль. Посему профили по-сути и есть разрешение(правило).Называть правило профилем - нелогично и путанно.Правилу можно задать разрешения на роли и(или) пользователю.Пользователь может входить в несколько групп. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.10.2009, 20:01 |
|
Формы и контролы в учетной системе
|
|||
---|---|---|---|
#18+
У нас в банальном казалось бы справочнике продукции вообще права на правку полей раздаются чуть ли не поштучно. Полей много. Все видят все поля, но править могут только то, что положено. Например отдел поставок правит только информацию, касающуюся поставок этого товара: поставщиковское название, кодировку и т.п. Конструкторской-технологический отдел отвечает за вес, размеры и прочие подобные характеристики и т.д. Шли к этому долгим путем по граблям. Причем эта схема сделана не только для продукции, а вообще для всех справочников. В базовой форме, от которой наследуются прочие формы справочников, присто при открытии делается банальная проверка наличия прав на UPDATE полей в соответствующих таблицах. Если прав нет, то компонентам выставляется r/o и меняется цвет фона, там где это применимо. Если же логика требует именно скрывать с формы поля, и это вызывает какие-то затруднения почему-то, то стоит пересмотреть проектирование UI. Логически перегруппировать поля, разнести по закладкам или вообще структурно переделать. А касательно исходного вопроса - лично мне непонятно, зачем администраторам лезть в обычные пользовательские формы? Что администратор забыл, к примеру, в форме счета? griZZZly, приведите какой-нибудь пример поконкретнее, чтоб было понятно, в чем именно проблема. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.10.2009, 21:19 |
|
Формы и контролы в учетной системе
|
|||
---|---|---|---|
#18+
SeVaавторА ты понимаешь, что с добавлением объекта или пользователя у тебя матрица комбинаций растет? Допустим, что у тебя порядка 50 пользователей и около 120 регулируемых объектов у каждого из которых 5 условных разрешений. Матрица одного пользователя по разрешениям: 120 * 5 = 600 "галок" при добавлении 3 без системы роле пользователей тебе прийдется проставить 600 * 3 = 1800 галок. Классно? А если к этому добавить индивидуальные профили на каждого? :) В последнем проекте практически на каждое разрешение нужно было бы создавать свой профиль. Посему профили по-сути и есть разрешение(правило).Называть правило профилем - нелогично и путанно.Правилу можно задать разрешения на роли и(или) пользователю.Пользователь может входить в несколько групп. Чета ты набаламутил, фиг разберешь. У себе в системе называю профилем набор правил. Профиль можно присвоить любому пользователю динамически во время работы системы. Заготовленные профили спасают от кучи оптичиваний. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.10.2009, 00:31 |
|
Формы и контролы в учетной системе
|
|||
---|---|---|---|
#18+
авторЧета ты набаламутил, фиг разберешь. У себе в системе называю профилем набор правил. Профиль можно присвоить любому пользователю динамически во время работы системы. Заготовленные профили спасают от кучи оптичиваний Это не я набаламутил,а такие требования в ларьке.Открываем ТЗ,смотрим таблицу раграничений прав доступа: Документ ТипТакойТо - Просматривать весь список имеют право (далее идет длинный список отделов,должностей,конкретных лиц),список своих подчиненных такие-то,остальные только созданные ими - Создавать имеют право(далее другой длинный список) - Согласовывают с возможностью редактирования полей таких-то (третий список) - Подписывают с возможностью редактирования других полей (четвертый список) - Вывод на печать(пятый) - Возврат на правку(шестой) - Возрат на правку после проведения проводок(седьмой) - Экспорт(восьмой) - В архив(девятый) и тд для каждого документа(они могут иметь до 8 статусов),справочника,отчета,на каждый чих и телодвижение.В итоге под триста правил. И как в этом случае могут помочь профили и роли,если списки практически совершенно не пересекаются?Насколько удобно будет пользователю прыгать из профиля в профиль,если некоторым сотрудникам нужен доступ ко всему с разным функционалом? ... |
|||
:
Нравится:
Не нравится:
|
|||
20.10.2009, 01:45 |
|
Формы и контролы в учетной системе
|
|||
---|---|---|---|
#18+
SeVa......... и тд для каждого документа(они могут иметь до 8 статусов),справочника,отчета,на каждый чих и телодвижение.В итоге под триста правил. 300 правил это результат выражения "объекты"*"правила объектов"? Что за предметная область? ... |
|||
:
Нравится:
Не нравится:
|
|||
20.10.2009, 02:52 |
|
Формы и контролы в учетной системе
|
|||
---|---|---|---|
#18+
Александр Гoлдун Если же логика требует именно скрывать с формы поля, и это вызывает какие-то затруднения почему-то, то стоит пересмотреть проектирование UI. Логически перегруппировать поля, разнести по закладкам или вообще структурно переделать. Хм, про закладки как-то не сообразил, спасибо. Проблема в том, что с UI раньше сильно не заморачивался, вот и приходится сейчас на грабли наступать. Хотя все-таки решил сделать так: Каждый элемент ввода должен иметь аналог Visible/Enabled. При загрузке формы каждому проставляется это свойство в соответствии с групповой политикой. Затем форма сжимается на необходимую высоту. Как-то так. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.10.2009, 07:50 |
|
Формы и контролы в учетной системе
|
|||
---|---|---|---|
#18+
SeVaтребования в ларьке. Открываем ТЗ,смотрим таблицу раграничений прав доступа: Документ ТипТакойТо... обычный workflow описываете, представленный правда косноязычно (товаровед ларька наверное писал, не знавший такого слова). Разграничение прав доступа - это несколько другое. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.10.2009, 10:15 |
|
Формы и контролы в учетной системе
|
|||
---|---|---|---|
#18+
1. видел систему, у который был свой движок по отрисовке пользовательских форм, вид формы хранился в XML. 2. Если смущает большое количество неактивных контролов на форме, есть несколько вариантов - сделать форму "раздвигающейся" по какой нить кнопке "Больше...", "Дополнительно..." и т.д., которая будет доступна только админу (аналог расширенного поиска в том же MS Office) - если большинство админских контролов - кнопки, то переместить их в контекстное меню формы (тут можно их дизаблить без ущерба формы, или даже вообще не отрисовывыть) - если действия админа можно довольно таки четко отделить от действий пользователя, можно вынести формы админа в отдельный модуль и вызывать из общего меню приложения, скажем "Tools..." или "Plugins..." 3. в некоторых случаях делают два приложения - для простых смертных (ессно с различными "узкими" ролями и правами) - для админа со всей полнотой функций ... |
|||
:
Нравится:
Не нравится:
|
|||
20.10.2009, 11:44 |
|
Формы и контролы в учетной системе
|
|||
---|---|---|---|
#18+
автор300 правил это результат выражения "объекты"*"правила объектов"? Да,правильно. авторЧто за предметная область? Обычный наш не совсем прозрачный бизнес,где не каждый может подписывать себе заявки на получение денег из кассы,видеть закладку Административные расходы(откат) и анализировать финансовые результаты. авторобычный workflow описываете, представленный правда косноязычно (товаровед ларька наверное писал, не знавший такого слова). Разграничение прав доступа - это несколько другое. Да,документооборот здесь присутствует,но в большей части - разграничение прав доступа.Разрешать,то или иное действие - это в чистом виде авторизация,которую можно описать и реализовать с помощью workflow,что изначально было сделано,но потом был найден более простой вариант ... |
|||
:
Нравится:
Не нравится:
|
|||
20.10.2009, 11:50 |
|
Формы и контролы в учетной системе
|
|||
---|---|---|---|
#18+
автор3. в некоторых случаях делают два приложения - для простых смертных (ессно с различными "узкими" ролями и правами) - для админа со всей полнотой функций Именно по такому варианту и была предыдущая система.Куча программ в четырех вариантах и под каждого нужен был свой набор.Администратор только тем и был занят,что устанавливал ПО тасовал ярлыки на рабочем столе. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.10.2009, 11:56 |
|
Формы и контролы в учетной системе
|
|||
---|---|---|---|
#18+
griZZZlyOZKA... банально скрывать... А теперь представьте себе форму, в которой 5 из 10 текстбоксов скрыты. По-моему получится не очень красиво. Отвечу ссылкой , по моему все вполне красиво, если грамотно подойти к вопросу ;) ... |
|||
:
Нравится:
Не нравится:
|
|||
20.10.2009, 12:33 |
|
Формы и контролы в учетной системе
|
|||
---|---|---|---|
#18+
OZKA, и что красивого? Это попытка приделать веб-интерфейс под "все случаи жизни". Нельзя генерировать Рабочие места (по советски - АРМ) в динамике. У дворника и главбуха - разные функциональные окна. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.10.2009, 12:53 |
|
Формы и контролы в учетной системе
|
|||
---|---|---|---|
#18+
Petro123Это попытка приделать веб-интерфейс под "все случаи жизни". На скриншотах win gui интерфейс, это не веб. Petro123У дворника и главбуха - разные функциональные окна. А если у главбуха и рядового буха разница в интерфейсе в паре кнопочек и паре полей? В общем спорить не буду, но в указанной на скриншотах программе все решено элегантно, если бы я разрабатывал что либо, то я бы так же постарался пойти таким путем. Это ИМХО, спорить смысла не вижу. Если кому интересно на каждый чих рисовать новую форму, то это его личное дело ;) ... |
|||
:
Нравится:
Не нравится:
|
|||
20.10.2009, 13:41 |
|
Формы и контролы в учетной системе
|
|||
---|---|---|---|
#18+
g> Автор: griZZZly g> Есть ли какая-нибудь IDE, которая позволяет автоматом, скажем, g> делать форму чуть менье, если один из контролов невидим. Можно g> конечно велосипед написать, но как-то не очень хочется. IDE есть, но вопрос в том, насколько она близка народным массам. CAPI - библиотека, входяющая в LispWorks. Все интерфейсы проектируются не исходя из точных размеров и координат полей, а исходя из раскладов (layouts), в которые группируются поля и прочие расклады. В момент создания формы список полей вычисляется и подставляется динамически, легко, как и всё динамическое в языке Лисп. Posted via ActualForum NNTP Server 1.4 ... |
|||
:
Нравится:
Не нравится:
|
|||
20.10.2009, 15:26 |
|
Формы и контролы в учетной системе
|
|||
---|---|---|---|
#18+
Dmitriy Ivanov g> Автор: griZZZly g> Есть ли какая-нибудь IDE, которая позволяет автоматом, скажем, g> делать форму чуть менье, если один из контролов невидим. Можно g> конечно велосипед написать, но как-то не очень хочется. IDE есть, но вопрос в том, насколько она близка народным массам. ===== вот-вот. Именно поэтому в веб есть ОТДЕЛЬНАЯ профессия - Версальщик :) CAPI - библиотека, входяющая в LispWorks. Все интерфейсы проектируются не исходя из точных размеров и координат полей, а исходя из раскладов (layouts), в которые группируются поля и прочие расклады. ==== а эти "расклады" опять же делает "специально обученный человек" :) PS. Брюки превращаются... превращаются брюки... в элегантные шорты ... |
|||
:
Нравится:
Не нравится:
|
|||
20.10.2009, 15:56 |
|
Формы и контролы в учетной системе
|
|||
---|---|---|---|
#18+
Dmitriy Ivanov g> Автор: griZZZly g> Есть ли какая-нибудь IDE, которая позволяет автоматом, скажем, g> делать форму чуть менье, если один из контролов невидим. Можно g> конечно велосипед написать, но как-то не очень хочется. IDE есть, но вопрос в том, насколько она близка народным массам. CAPI - библиотека, входяющая в LispWorks. Все интерфейсы проектируются не исходя из точных размеров и координат полей, а исходя из раскладов (layouts), в которые группируются поля и прочие расклады. В момент создания формы список полей вычисляется и подставляется динамически, легко, как и всё динамическое в языке Лисп. В других IDE это называется LayoutControl ... |
|||
:
Нравится:
Не нравится:
|
|||
20.10.2009, 16:29 |
|
Формы и контролы в учетной системе
|
|||
---|---|---|---|
#18+
P> Автор: Petro123 P> ===== вот-вот. Именно поэтому в веб есть ОТДЕЛЬНАЯ профессия - P> Версальщик :) Речь не о вебе, а о кроссплатформенной библиотеке для обычных GUI-приложений. P> ==== а эти "расклады" опять же делает "специально обученный человек" P> :) Зачем обученный? GUI может испечь любая домохозяйка :-) Posted via ActualForum NNTP Server 1.4 ... |
|||
:
Нравится:
Не нравится:
|
|||
20.10.2009, 17:52 |
|
Формы и контролы в учетной системе
|
|||
---|---|---|---|
#18+
Dmitriy Ivanov, тогда вам полшага до Универсальной ИС и кучи денег. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.10.2009, 18:41 |
|
Формы и контролы в учетной системе
|
|||
---|---|---|---|
#18+
Dmitriy Ivanov, тогда вам полшага до Универсальной ИС и кучи денег. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.10.2009, 18:46 |
|
Формы и контролы в учетной системе
|
|||
---|---|---|---|
#18+
Petro123Нельзя генерировать Рабочие места (по советски - АРМ) в динамике. что же плохого в динамике? griZZZly, IDE - не решит проблему но: нормальная гуи-библиотека (типа QT) сама заполнит пустые места, растянув и подтянув соседние элементы работает где угодно, и с разными языками - на выбор собираем форму "в динамике", ссылки на поля - в список, перед показом обрабатываем список своим менеджером безопасности - скрываем или дизаблим поля - и все ... |
|||
:
Нравится:
Не нравится:
|
|||
21.10.2009, 00:18 |
|
Формы и контролы в учетной системе
|
|||
---|---|---|---|
#18+
vill_agerPetro123Нельзя генерировать Рабочие места (по советски - АРМ) в динамике. что же плохого в динамике? griZZZly, IDE - не решит проблему но: нормальная гуи-библиотека (типа QT) сама заполнит пустые места, растянув и подтянув соседние элементы работает где угодно, и с разными языками - на выбор собираем форму "в динамике", ссылки на поля - в список, перед показом обрабатываем список своим менеджером безопасности - скрываем или дизаблим поля - и все Не заполнит сама QT библиотека ничего.Примитивный экран из Аксапты - исключение из правил.Вместо нормального языка,будете программировать на птичьем с метаописанием. ... |
|||
:
Нравится:
Не нравится:
|
|||
21.10.2009, 09:41 |
|
Формы и контролы в учетной системе
|
|||
---|---|---|---|
#18+
SeVa, +1 QT более продвинуто умеет выравнивать контролы в завиимости от РАЗРЕШЕНИЯ экрана (там нет привязки к абсолютным координатам в пикселях). И ничего более. ---- Ну допустим, имеем ТЗ от аналитика по разработке функционального рабочего места ФРМ A, B, C. - аналитик с дизайнером разрисовал в акварели 3 окна на 3 пункта меню 3 рабочих места. - архитектор глянул на задачу из: - контролы_А - контролы_А_события - контролы_А_данныеБД - контролы_B - контролы_B_события - контролы_B_данныеБД - контролы_C - контролы_C_события - контролы_C_данныеБД и решил вместо 3-х человек-прогеров с задачей на 1 день сделать чудо-юдо форму в динамике для прогера с более высокой квалификацией? ЗЫ. Фреймворки - отдельная история за рамками вопроса. ... |
|||
:
Нравится:
Не нравится:
|
|||
21.10.2009, 10:02 |
|
Формы и контролы в учетной системе
|
|||
---|---|---|---|
#18+
Petro123 QT более продвинуто умеет выравнивать контролы в завиимости от РАЗРЕШЕНИЯ экрана (там нет привязки к абсолютным координатам в пикселях). И ничего более. как раз этого QT и не умеет (а может я еще не докопался :) до этого) layout manager размещает элементы внутри окна - это да. то есть выравнивание в зависимости от размеров окна от РАЗРЕШЕНИЯ - это скорее про WEB интерфейс можно сказать... а про чудо-юдо форму - вот одна форма в разных вариантах - собранная в "динамике" и изменяемая в данном тестовом случае кликаньем по радиокнопкам: ... |
|||
:
Нравится:
Не нравится:
|
|||
21.10.2009, 12:37 |
|
Формы и контролы в учетной системе
|
|||
---|---|---|---|
#18+
черт, не ту картинку вставил :) редактировать здесь нельзя? что написано ... то не вырубить... :) на предидущей как раз процесс управления экраном а сами экраны вот ... |
|||
:
Нравится:
Не нравится:
|
|||
21.10.2009, 12:43 |
|
Формы и контролы в учетной системе
|
|||
---|---|---|---|
#18+
vill_ager, как можно полагаться на инструмент, который сам настолько ужасно выполнен в плане интерфейса, что даже комментировать не возникает желания. ... |
|||
:
Нравится:
Не нравится:
|
|||
21.10.2009, 13:07 |
|
Формы и контролы в учетной системе
|
|||
---|---|---|---|
#18+
iscrafmvill_ager, как можно полагаться на инструмент, который сам настолько ужасно выполнен в плане интерфейса, что даже комментировать не возникает желания. согласен! но это еще не инструмент, а рабочая заготовка... да и вылезла сюда случайно :) пока не сделал отдельное окно редактора скриптов, все остальное в этом окне максимально уплотнил а тут разговор про griZZZlyНе городить же для каждой группы свою тучу форм и контролов. и второй скриншот просто показывает, как QT экран рисует а первый - недоразумение, чуть подправлю - так получше будет (тоже как пример использования QT)? : ... |
|||
:
Нравится:
Не нравится:
|
|||
21.10.2009, 13:41 |
|
Формы и контролы в учетной системе
|
|||
---|---|---|---|
#18+
vill, экраны все равно создаются в другом месте и с другим метаописанием,но только с ограниченным функционалом и дизайном.Работы не меньше и выигрыша нет никакого ... |
|||
:
Нравится:
Не нравится:
|
|||
21.10.2009, 15:04 |
|
Формы и контролы в учетной системе
|
|||
---|---|---|---|
#18+
Формы - тихий ужас. ИМХА. Пади все контролы ездят в динмике в зависимости от "Вариантов"? Кошмар. ..."Хорошо".... Почему нет "Плохо"? ... |
|||
:
Нравится:
Не нравится:
|
|||
21.10.2009, 18:38 |
|
Формы и контролы в учетной системе
|
|||
---|---|---|---|
#18+
astonФормы - тихий ужас. ИМХА. Пади все контролы ездят в динмике в зависимости от "Вариантов"? Кошмар. ..."Хорошо".... Почему нет "Плохо"? таки ездят - это ж тема топика :) - и это один из вариантов реализации "Хорошо" - ОК Сброс - не догма... экраны все равно создаются в другом месте и с другим метаописанием,но только с ограниченным функционалом и дизайном.Работы не меньше и выигрыша нет никакого про другое место не понял экран собираю я, описание мое (и те 4 варианта экрана-только тестовая болванка для отладки) функционал чем ограничен? дизайн... ? а как надо? я же за этим сюда и прихожу, чтобы поучиться... выигрыша нет никакого выигрыш есть - вместо нескольких форм для разных ролей, есть одна. При изменениях в БД правим только одну форму, при изменениях в ролях - форму не правим вообще - только описание прав ... |
|||
:
Нравится:
Не нравится:
|
|||
21.10.2009, 19:54 |
|
Формы и контролы в учетной системе
|
|||
---|---|---|---|
#18+
vill_ager выигрыша нет никакого выигрыш есть - вместо нескольких форм для разных ролей, есть одна. При изменениях в БД правим только одну форму, при изменениях в ролях - форму не правим вообще - только описание прав В правильном направлении движетесь. Рисование форм уже стало моветоном. Все соревнуются в автопостроении на основании декларативного описания. Даже в 1С, наконец, созрели на "управляемое приложение". ... |
|||
:
Нравится:
Не нравится:
|
|||
21.10.2009, 20:04 |
|
Формы и контролы в учетной системе
|
|||
---|---|---|---|
#18+
авторвыигрыш есть - вместо нескольких форм для разных ролей, есть одна. При изменениях в БД правим только одну форму, при изменениях в ролях - форму не правим вообще - только описание прав Предположим,что грид с данными из таблицы Адреса присутствует в десяти формах.В один прекрасный момент необходимо добавить/удалить из него поле.Править нужно будет в одном месте или в десяти? Или в десяти формах решили поменять местами(изменить их названия и тд) закладки Адреса и Контакты. ... |
|||
:
Нравится:
Не нравится:
|
|||
21.10.2009, 21:44 |
|
Формы и контролы в учетной системе
|
|||
---|---|---|---|
#18+
SeVa Предположим,что грид с данными из таблицы Адреса присутствует в десяти формах.В один прекрасный момент необходимо добавить/удалить из него поле.Править нужно будет в одном месте или в десяти? логично - в одном. Но логика у всех разная. ... |
|||
:
Нравится:
Не нравится:
|
|||
21.10.2009, 22:02 |
|
Формы и контролы в учетной системе
|
|||
---|---|---|---|
#18+
Пользватель вправе менять любой интерфейсный элемент, на эквивалентный, перестроить лайоут, скыть элемент "навсегда" задва дефлоьт значения и т.д. врамках контекста бизнес объекта(макротипа) и прогу при этом переделывать не надо бы ни в одном месте ... |
|||
:
Нравится:
Не нравится:
|
|||
21.10.2009, 22:12 |
|
Формы и контролы в учетной системе
|
|||
---|---|---|---|
#18+
SeVa Предположим,что грид с данными из таблицы Адреса присутствует в десяти формах.В один прекрасный момент необходимо добавить/удалить из него поле.Править нужно будет в одном месте или в десяти? править в одном месте SeVa Или в десяти формах решили поменять местами(изменить их названия и тд) закладки Адреса и Контакты. вот если решили поменять в 5 местах из десяти: тут надо повозиться я вызываю перед выводом собранной формы скрипт, из которого имею полный доступ к форме для изменения содержания - можно дошлифовать детали, в т.ч. по ролям и т.п. Если система стоит у заказчика - это скрипт неизменен. Но у заказчика я держу еще один скрипт, который могу на мести изменить, добавить в форму поля, заменить надписи, и т.д. только не могу понять, как грид Адреса может в 10 разных формах присутствовать...? ... |
|||
:
Нравится:
Не нравится:
|
|||
21.10.2009, 22:50 |
|
Формы и контролы в учетной системе
|
|||
---|---|---|---|
#18+
Сахават,то, что у тебя пользователи могут все мы знаем.Тебе вопрос.Сколько времени займет замена компонентов DevExpress на Infragistics?Что нужно для этого, переписать все полностью или есть адаптеры?Только не говори,что тебе это не нужно,просто дай оценку по времени. ... |
|||
:
Нравится:
Не нравится:
|
|||
21.10.2009, 22:53 |
|
Формы и контролы в учетной системе
|
|||
---|---|---|---|
#18+
vill_agerSeVa Предположим,что грид с данными из таблицы Адреса присутствует в десяти формах.В один прекрасный момент необходимо добавить/удалить из него поле.Править нужно будет в одном месте или в десяти? править в одном месте SeVa Или в десяти формах решили поменять местами(изменить их названия и тд) закладки Адреса и Контакты. вот если решили поменять в 5 местах из десяти: тут надо повозиться я вызываю перед выводом собранной формы скрипт, из которого имею полный доступ к форме для изменения содержания - можно дошлифовать детали, в т.ч. по ролям и т.п. Если система стоит у заказчика - это скрипт неизменен. Но у заказчика я держу еще один скрипт, который могу на мести изменить, добавить в форму поля, заменить надписи, и т.д. только не могу понять, как грид Адреса может в 10 разных формах присутствовать...? Если в одном, то вопрос снимается.Я не против подобных подходов,но слишком непропорциональны,на мой взгляд, на них затраты. ... |
|||
:
Нравится:
Не нравится:
|
|||
21.10.2009, 23:12 |
|
|
start [/forum/topic.php?all=1&fid=33&tid=1548449]: |
0ms |
get settings: |
8ms |
get forum list: |
12ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
181ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
96ms |
get tp. blocked users: |
1ms |
others: | 348ms |
total: | 665ms |
0 / 0 |