|
Динамическое добавление функционала в программу.
|
|||
---|---|---|---|
#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 |
|
|
start [/forum/topic.php?fid=33&msg=34729952&tid=1549019]: |
0ms |
get settings: |
9ms |
get forum list: |
12ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
135ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
53ms |
get tp. blocked users: |
1ms |
others: | 12ms |
total: | 242ms |
0 / 0 |