|
Динамическое добавление функционала в программу.
|
|||
---|---|---|---|
#18+
Привет. Наша компания уже несколько лет разрабатывает CRM-систему (C#, .Net 2.0, MS SQL 2000). Заказчик – зарубежная компания, которая потом нашу программу ставит клиентам и саппортит. Т.е. у нас только разработка. Обновление версий программы происходит вручную – т.е. саппорт заказчика обходит клиентов и ставит на каждый комп новую версию + обновляет их БД. У разных клиентов могут стоять разные версии программы. Часто клиенты хотят, чтоб у них формировались какие-то новые репорты. – это наиболее частая причина выхода новой версии. Заказчик хочет иметь возможность динамически добавлять клиентам разработанные репорты без обновления версии программы. Видит он это так: - мы разрабатываем новую форму для репорта. - исходный код заказчик заливает в БД соответствующему клиенту. Т.к. заказчик саппортит их БД, то он может это сделать дистанционно. - наша программа, обнаружив в БД новый репорт, компилирует/загружает/работает с ним. Мне не очень-то нравится такой вариант. Как это реализовать по другому? Возможно кто-то решал подобные задачи. Поделитесь опытом или идеями по этому поводу. Заранее всем большое спасибо. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.08.2007, 14:29 |
|
Динамическое добавление функционала в программу.
|
|||
---|---|---|---|
#18+
Lin7Мне не очень-то нравится такой вариант. Зря. Наиболее нормальный из возможных вариантов. Если убрать мишуру, это фактически следующее: пишется плагин, который загружается и используется вашим приложением. При продуманном интерфейсе - это идеально с точки зрения мощности/трудоемкости/сопровождаемости решения. Учитывая ситуацию, надо будет только аккуратно проработать вопрос версий - чтобы плагин знал, с какими версиями приложения/бд он может работать, а с какими надо ругаться. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.08.2007, 14:55 |
|
Динамическое добавление функционала в программу.
|
|||
---|---|---|---|
#18+
Lin7 Мне не очень-то нравится такой вариант. Как это реализовать по другому? Возможно кто-то решал подобные задачи. Поделитесь опытом или идеями по этому поводу. Заранее всем большое спасибо. А почему при таких инструментах не используете SSRS? ... |
|||
:
Нравится:
Не нравится:
|
|||
15.08.2007, 15:14 |
|
Динамическое добавление функционала в программу.
|
|||
---|---|---|---|
#18+
Для добавления нового репорта выпускается новая версия ???????? УЖОС ! ... |
|||
:
Нравится:
Не нравится:
|
|||
15.08.2007, 15:27 |
|
Динамическое добавление функционала в программу.
|
|||
---|---|---|---|
#18+
softwarer Lin7Мне не очень-то нравится такой вариант. Зря. Наиболее нормальный из возможных вариантов. Если убрать мишуру, это фактически следующее: пишется плагин, который загружается и используется вашим приложением. При продуманном интерфейсе - это идеально с точки зрения мощности/трудоемкости/сопровождаемости решения. Учитывая ситуацию, надо будет только аккуратно проработать вопрос версий - чтобы плагин знал, с какими версиями приложения/бд он может работать, а с какими надо ругаться. Заказчик саппортит только БД у клиентов. Закидывать dll нового плагина в БД? - тоже вариант конечно. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.08.2007, 15:35 |
|
Динамическое добавление функционала в программу.
|
|||
---|---|---|---|
#18+
Lin7Закидывать dll нового плагина в БД? - тоже вариант конечно. И в общем ничего страшного. Тем более что .net позволит закинуть не dll, а исходник, компилируемый по месту. В любом случае, это интегрируется в общую задачу обновления версий на клиенте. Если они саппортят БД - значит, и обновление удобно делать через БД. Всяко удобнее, чем бегать по клиентам. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.08.2007, 15:45 |
|
Динамическое добавление функционала в программу.
|
|||
---|---|---|---|
#18+
Сахават Юсифов Lin7 Мне не очень-то нравится такой вариант. Как это реализовать по другому? Возможно кто-то решал подобные задачи. Поделитесь опытом или идеями по этому поводу. Заранее всем большое спасибо. А почему при таких инструментах не используете SSRS? Просто изначально в проекте для формирования репортов использовалась купленная библиотека компонентов. Переходить на SSRS - это время. У нас часто для формирования отчёта пользователь должен выбрать/ввести некоторые параметры. - диапазон дат, например. В SSRS для 2000 sql сервера это можно реализовать? Я не знаком, к сожалению, с SSRS. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.08.2007, 15:50 |
|
Динамическое добавление функционала в программу.
|
|||
---|---|---|---|
#18+
softwarer Lin7Закидывать dll нового плагина в БД? - тоже вариант конечно. И в общем ничего страшного. Тем более что .net позволит закинуть не dll, а исходник, компилируемый по месту. В любом случае, это интегрируется в общую задачу обновления версий на клиенте. Если они саппортят БД - значит, и обновление удобно делать через БД. Всяко удобнее, чем бегать по клиентам. Вам приходилось компилировать исходники на стороне многих клиентов? Мне ещё пока нет... и я даже не представляю какие бока могут при этом возникнуть (есть опасения), если ёще учесть, что в проекте используется пара библиотек третьих разработчиком (с разными версиями у разных клиентов).... ... |
|||
:
Нравится:
Не нравится:
|
|||
15.08.2007, 15:58 |
|
Динамическое добавление функционала в программу.
|
|||
---|---|---|---|
#18+
Lin7 У нас часто для формирования отчёта пользователь должен выбрать/ввести некоторые параметры. - диапазон дат, например. В SSRS для 2000 sql сервера это можно реализовать? Я не знаком, к сожалению, с SSRS. Да, конечно. Возможны сколь угодно сложные отчеты и при этом ненадо менять ничего в программе + можно дать возможность пользователю корректировать отчет или создать свои отчет на базе модели. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.08.2007, 15:58 |
|
Динамическое добавление функционала в программу.
|
|||
---|---|---|---|
#18+
Сахават Юсифов[quot Lin7] Да, конечно. Возможны сколь угодно сложные отчеты и при этом ненадо менять ничего в программе + можно дать возможность пользователю корректировать отчет или создать свои отчет на базе модели. Очень классно. Но боюсь, что пока такой переход для нас невозможен. - это время... много времени... ... |
|||
:
Нравится:
Не нравится:
|
|||
15.08.2007, 16:05 |
|
Динамическое добавление функционала в программу.
|
|||
---|---|---|---|
#18+
Lin7 Сахават Юсифов[quot Lin7] Да, конечно. Возможны сколь угодно сложные отчеты и при этом ненадо менять ничего в программе + можно дать возможность пользователю корректировать отчет или создать свои отчет на базе модели. Очень классно. Но боюсь, что пока такой переход для нас невозможен. - это время... много времени... Такой отчет делается за 10 минут тем, кто умеет писать SQL запросы. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.08.2007, 16:09 |
|
Динамическое добавление функционала в программу.
|
|||
---|---|---|---|
#18+
Сахават Юсифов[quot Lin7][quot Сахават Юсифов][quot Lin7] Такой отчет делается за 10 минут тем, кто умеет писать SQL запросы. Для общего образования: SSRS позволяет создавать отчёты по определённому шаблону? Т.е, напр., внешний вид товарной накладной д.б. определённого стандартного вида. В SSRS можно задать такой вид? ... |
|||
:
Нравится:
Не нравится:
|
|||
15.08.2007, 16:21 |
|
Динамическое добавление функционала в программу.
|
|||
---|---|---|---|
#18+
Lin7Для общего образования: SSRS позволяет создавать отчёты по определённому шаблону? Т.е, напр., внешний вид товарной накладной д.б. определённого стандартного вида. В SSRS можно задать такой вид? а какой дизайнер отчетов такое может? ... |
|||
:
Нравится:
Не нравится:
|
|||
15.08.2007, 16:35 |
|
Динамическое добавление функционала в программу.
|
|||
---|---|---|---|
#18+
Lin7 Для общего образования: SSRS позволяет создавать отчёты по определённому шаблону? Т.е, напр., внешний вид товарной накладной д.б. определённого стандартного вида. В SSRS можно задать такой вид? Рисуете так же как и в любой другой среде. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.08.2007, 16:36 |
|
Динамическое добавление функционала в программу.
|
|||
---|---|---|---|
#18+
Сахават Юсифов Lin7 Для общего образования: SSRS позволяет создавать отчёты по определённому шаблону? Т.е, напр., внешний вид товарной накладной д.б. определённого стандартного вида. В SSRS можно задать такой вид? Рисуете так же как и в любой другой среде. Ясно. Спасибо. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.08.2007, 16:50 |
|
Динамическое добавление функционала в программу.
|
|||
---|---|---|---|
#18+
Можем помочь если хочеться очень бысто - за деньги конечно!!! Реализация: MSSQL2000 FR2 или FR4 Идея: Все запускаемые модули системы имеют свой код по этим кодом заводится отчет, этот отчет имеет версийность на против какого отчета стоит галочка тот активный(что позволяет быстро вернуться к предыдущей версии и разрабатывать новую версию не трогая старую). В самом модуле через dll вызываем отчет типа openreport код модуля, код отчета (dll сама выбирает необходимый). В Вашем случае заказчику будет необходимо только обновить таблицу НА СЕРВЕРЕ с новым отчетом. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.08.2007, 17:47 |
|
Динамическое добавление функционала в программу.
|
|||
---|---|---|---|
#18+
NikolayKМожем помочь если хочеться очень бысто - за деньги конечно!!! Было бы чем помогать, уж извините. Делается за час. NikolayKFR2 или FR4 И это Вы предлагаете пихать в приложение на .net? FR - это FastReport, или уже появилось что-то другое с той же аббревиатурой? ... |
|||
:
Нравится:
Не нравится:
|
|||
15.08.2007, 17:51 |
|
Динамическое добавление функционала в программу.
|
|||
---|---|---|---|
#18+
Сделайте, заодно поможете Lin7 за час. Fr это FastReport, а пихается это в любое приложение через API. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.08.2007, 18:08 |
|
Динамическое добавление функционала в программу.
|
|||
---|---|---|---|
#18+
NikolayKСделайте, Давно. NikolayKзаодно поможете Lin7 за час. На таких мелких заданиях помогать неэффективно. Уверен, топикстартер сделает чтение-запись блоба куда быстрее, нежели потребуется на согласование между нами в случае "помощи". Ну а велосипедов делать не стоит, для этого есть вменяемые VCS. NikolayKFr это FastReport, а пихается это в любое приложение через API. Угу. С фоновым запуском COM-сервера и прочими прелестями... Вы бы еще DOS-программу предложили линковать. Под .NET есть разработки получше; лично мне понравился StimulReport. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.08.2007, 18:31 |
|
Динамическое добавление функционала в программу.
|
|||
---|---|---|---|
#18+
softwarerДавно. PrintScreen в студию!!! softwarerНу а велосипедов делать не стоит, для этого есть вменяемые VCS. VCS - это C ontrol V ersions S ystem или появилось что-то новенькое. Читайте внимательно топикстартера Lin7Заказчик хочет иметь возможность динамически добавлять клиентам разработанные репорты без обновления версии программы. Или Вы знаете как В CVS обновлять SANDBOX у пользователя??? softwarerУгу. С фоновым запуском COM-сервера и прочими прелестями... Не вижу прочих прелестей, а вот приимущество в удобстве обновлений ВСЕМ пользователям есть. ... |
|||
:
Нравится:
Не нравится:
|
|||
16.08.2007, 10:09 |
|
Динамическое добавление функционала в программу.
|
|||
---|---|---|---|
#18+
NikolayK softwarerДавно. PrintScreen в студию!!! Чего? Запущенного отчета? Или селекта из таблички Com$Reports с блобами? NikolayK softwarerНу а велосипедов делать не стоит, для этого есть вменяемые VCS. VCS - это C ontrol V ersions S ystem VCS - это version control system. Класс программных продуктов, в который входит в том числе и cvs (который расшифровывается несколько иначе, чем это сделали Вы). NikolayKИли Вы знаете как В CVS обновлять SANDBOX у пользователя??? Пользователь тут не при чем. Велосипед - это то, что нарисовано у вас на скриншоте. NikolayKНе вижу прочих прелестей, а вот приимущество в удобстве обновлений ВСЕМ пользователям есть. Будет очень любопытно услышать, какие именно "преимущества в удобстве обновлений всем пользователям" есть у FastReport. Подчеркиваю - именно у FastReport, и такие, каких нет у альтернативных решений. ... |
|||
:
Нравится:
Не нравится:
|
|||
16.08.2007, 12:11 |
|
Динамическое добавление функционала в программу.
|
|||
---|---|---|---|
#18+
softwarerЧего? Запущенного отчета? Или селекта из таблички Com$Reports с блобами? Именно того приложения которым Вы сохраняете в блоб, или Вы предлагаете каждому программисту придымувать велосипед! softwarerПользователь тут не при чем. Велосипед - это то, что нарисовано у вас на скриншоте. Я предлагаю готовое решение для работы группы программистов и для поддержки версий у пользователей. softwarerБудет очень любопытно услышать, какие именно "преимущества в удобстве обновлений всем пользователям" есть у FastReport. Подчеркиваю - именно у FastReport, и такие, каких нет у альтернативных решений. Преимущества не у FR а у приложения, которое может использовать и другой генератор отчетов. ... |
|||
:
Нравится:
Не нравится:
|
|||
16.08.2007, 16:06 |
|
Динамическое добавление функционала в программу.
|
|||
---|---|---|---|
#18+
NikolayKИменно того приложения которым Вы сохраняете в блоб http://allroundautomations.com/plsqldev.html NikolayKили Вы предлагаете каждому программисту придымувать велосипед! Вы неверно используете закон исключенного третьего. Намекаю: кроме "использовать ваш велосипед" и "придумывать свой велосипед" есть и другие варианты, например "использовать стандартные инструменты". NikolayK softwarerПользователь тут не при чем. Велосипед - это то, что нарисовано у вас на скриншоте. Я предлагаю готовое решение для работы группы программистов и для поддержки версий у пользователей. Именно. NikolayK softwarerБудет очень любопытно услышать, какие именно "преимущества в удобстве обновлений всем пользователям" есть у FastReport. Подчеркиваю - именно у FastReport, и такие, каких нет у альтернативных решений. Преимущества не у FR а у приложения, которое может использовать и другой генератор отчетов. Замечательно. Итого, к выбору FR для .NET Ваш аргумент отношения не имеет, а брякнут просто так, чтобы что-то сказать. ... |
|||
:
Нравится:
Не нравится:
|
|||
16.08.2007, 16:56 |
|
Динамическое добавление функционала в программу.
|
|||
---|---|---|---|
#18+
Причем тут PL/SQl к MSSQL. Вы наверное забыли совет который давали Lin7 softwarerЕсли убрать мишуру, это фактически следующее: пишется плагин, который загружается и используется вашим приложением. При продуманном интерфейсе - это идеально с точки зрения мощности/трудоемкости/сопровождаемости решения. Учитывая ситуацию, надо будет только аккуратно проработать вопрос версий - чтобы плагин знал, с какими версиями приложения/бд он может работать, а с какими надо ругаться. Так чем мое предложение отличается от Вашего совета??? Когда я попросил Вас дать PrintScreen то получил softwarerЧего? Запущенного отчета? Или селекта из таблички Com$Reports с блобами? Как увязать Ваши два топика??? softwarerЗамечательно. Итого, к выбору FR для .NET Ваш аргумент отношения не имеет, а брякнут просто так, чтобы что-то сказать. В данный момент приложение для генерации отчетов использует FR, но при необходимости можно переделать и на другой генератор. ... |
|||
:
Нравится:
Не нравится:
|
|||
16.08.2007, 17:27 |
|
Динамическое добавление функционала в программу.
|
|||
---|---|---|---|
#18+
NikolayKМожем помочь если хочеться очень бысто - за деньги конечно!!! Реализация: MSSQL2000 FR2 или FR4 Идея: Все запускаемые модули системы имеют свой код по этим кодом заводится отчет, этот отчет имеет версийность на против какого отчета стоит галочка тот активный(что позволяет быстро вернуться к предыдущей версии и разрабатывать новую версию не трогая старую). В самом модуле через dll вызываем отчет типа openreport код модуля, код отчета (dll сама выбирает необходимый). В Вашем случае заказчику будет необходимо только обновить таблицу НА СЕРВЕРЕ с новым отчетом. Спасибо за предложение. Покупать не будем. Уже спроектировали и уже делаем. Всем спасибо за мнения. Впрочем, если будут ещё идеи - высказывайтесь - если не мне так кому-то это может быть полезно. :) ... |
|||
:
Нравится:
Не нравится:
|
|||
16.08.2007, 17:32 |
|
Динамическое добавление функционала в программу.
|
|||
---|---|---|---|
#18+
NikolayKПричем тут PL/SQl к MSSQL. Вы просили скриншот приложения, которым я вставляю блобы - Вы его получили. Уверен, для MSSQL есть аналогичные. NikolayKТак чем мое предложение отличается от Вашего совета??? Попробуйте прочитать не только то, что Вы выделили, а фразу в целом. Половина выделенного Вами - про продуманный интерфейс - к самопальной версионности отношения не имеет, а относится в взаимодействию плагина с приложением. После другой половины не выделено как раз то, что является ответом на Ваш вопрос. Раз Вы этого не видите, поясняю: при подобной организации работ разумно вставить блокировку, предотвращающую запуск отчета на неподходящей структуре БД. К расписанному Вами "держать собственный список версий, которые программист может модифицировать в то время как" это ровно никак не относится. NikolayKВ данный момент приложение для генерации отчетов использует FR, но при необходимости можно переделать и на другой генератор. Я это понимаю, и ничуть не собираюсь с этим спорить. Я прошу придерживаться темы; в частности, если речь зашла о неудачности FR под .NET, прошу либо рассказывать о достоинствах именно такой связки, или согласиться с этим и начать другую тему - типа "за отдельные деньги мы еще и переделаем на другой генератор отчетов". Ну а в целом... я люблю свои собственные творения и вполне понимаю гордость за них, но сейчас получается так, что Вы предлагаете топикстартеру систему из нескольких компонент, при том что ни одна из них не является лучшей для случая автора. ... |
|||
:
Нравится:
Не нравится:
|
|||
16.08.2007, 17:47 |
|
|
start [/forum/moderation_log.php?user_name=sr_arhimed]: |
0ms |
get settings: |
10ms |
get forum list: |
14ms |
get settings: |
10ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
50ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
58ms |
get tp. blocked users: |
2ms |
others: | 2731ms |
total: | 2905ms |
0 / 0 |