|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
Bogdanov AndreyТо есть процедурами вы все-таки пользуетесь? А то заливали тут про SQL. Андрей, ХП еще в стандарте SQL-92 описаны. ... |
|||
:
Нравится:
Не нравится:
|
|||
13.02.2007, 15:17 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
pkarklin Nonsens pkarklin NonsensДелал как внутрикорпоративные, так и коммерческие коробочные продукты в трехзвенке. Ничего такого, чем тут пугают, замечено не было. М.б. огласите некоторые из "коробочных"?! Удостоверяющий центр Этот? http://www.infotecs.ru/Soft/uc.htm#2 Нет ... |
|||
:
Нравится:
Не нравится:
|
|||
13.02.2007, 15:44 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
Nonsens Нет Я понимаю, что краткость - сестра таланта. Но чтобы оценить сложность продукта, неплохо бы иметь о нем хоть какое-нибудь представление. ... |
|||
:
Нравится:
Не нравится:
|
|||
13.02.2007, 16:25 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
Bogdanov AndreyТо есть процедурами вы все-таки пользуетесь? А то заливали тут про SQL. А что для Вас тогда процедура в MS SQL Server?! Bogdanov AndreyНу а при моем подходе достаточно одной процедуры на сервере (если мы OWS используем, то это будет ХП, если Java-сервлет, то класс на Java). Стоп, стоп, стоп. Как говориться, давайте определимся, кто на чем стоял. Решь шла о 3х звенке? Так? Распишите, пожалуйста, что быдет у Вас на: 1. Сервере СУБД 2. Апп. Сервере 3. Клиенте. Bogdanov AndreyВ моем предложении вместо SQL должно быть ООП. Меня терзают сомнения. О каком сервере Вы говорите - о сервере СУБД или об апп. сервере? О скольки звенной архитектуре Вы вообще говорите? ... |
|||
:
Нравится:
Не нравится:
|
|||
13.02.2007, 16:30 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
pkarklin Bogdanov AndreyТо есть процедурами вы все-таки пользуетесь? А то заливали тут про SQL. А что для Вас тогда процедура в MS SQL Server?! Это процедура написанная на языке T-SQL. Это не язык SQL. Просто в ответ на мое замечание о том, что "Бизнес-логика не реализуется средствами SQL - необходимо использовать процедурные языки." вы проявили скепсис сделав вид, что процедурными языками не пользуетесь. Ну так вот T-SQL и есть тот самый процедурный язык. SQL таковым не является. Bogdanov AndreyНу а при моем подходе достаточно одной процедуры на сервере (если мы OWS используем, то это будет ХП, если Java-сервлет, то класс на Java). Стоп, стоп, стоп. Как говориться, давайте определимся, кто на чем стоял. Решь шла о 3х звенке? Так? Распишите, пожалуйста, что быдет у Вас на: 1. Сервере СУБД 2. Апп. Сервере 3. Клиенте. [/quot] 1. На сервере СУБД у меня будет таблица (точно такая же как и ваша). 2. На Апп. Сервере будет процедура, которая обрататывает http-запрос с клиента и выполняет соответствующий DML. 3. На Клиенте будет любой Web-браузер, который посылает http запросы. ... |
|||
:
Нравится:
Не нравится:
|
|||
13.02.2007, 16:42 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
Bogdanov AndreyЭто процедура написанная на языке T-SQL. Это не язык SQL. ... Ну так вот T-SQL и есть тот самый процедурный язык. SQL таковым не является. Как, мне кажеться, про стандарт Вам уже намекнули. А T-SQL или что-то другое - это всего на всего реализация SQL с определенным уровнем удовлетворения требований стандарта. Сравним: Bogdanov Andrey1. На сервере СУБД у меня будет таблица (точно такая же как и ваша). 2. На Апп. Сервере будет процедура, которая обрататывает http-запрос с клиента и выполняет соответствующий DML. 3. На Клиенте будет любой Web-браузер, который посылает http запросы. и pkarklin1. Одна хп на сервере, которая принимая в качестве параметров id позиции штатного расписания и процент изменения выполняла бы один элементарный UPDATE. 2. Один компонет на клиенте, который бы в нужный момент подставлял параметры и "дергал" бы эту процедуру. Вы считаете что первое со вторым одинаково по сложности?! ... |
|||
:
Нравится:
Не нравится:
|
|||
13.02.2007, 16:58 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
pkarklin Как, мне кажеться, про стандарт Вам уже намекнули. А T-SQL или что-то другое - это всего на всего реализация SQL с определенным уровнем удовлетворения требований стандарта. Буду рад ссылочке на стандарт с указанием места где описано процедурное расширение. У меня под рукой есть только список зарезервированных слов из SQL-92. так вот таких слов, как if, loop, begin, end и т.п. там нет. pkarklin Bogdanov Andrey1. На сервере СУБД у меня будет таблица (точно такая же как и ваша). 2. На Апп. Сервере будет процедура, которая обрататывает http-запрос с клиента и выполняет соответствующий DML. 3. На Клиенте будет любой Web-браузер, который посылает http запросы. и pkarklin1. Одна хп на сервере, которая принимая в качестве параметров id позиции штатного расписания и процент изменения выполняла бы один элементарный UPDATE. 2. Один компонет на клиенте, который бы в нужный момент подставлял параметры и "дергал" бы эту процедуру. Вы считаете что первое со вторым одинаково по сложности?! Нет. На мой взгляд первое проще. Там требуется разработка только одного объекта, а в вашем случае - двух. :) ... |
|||
:
Нравится:
Не нравится:
|
|||
13.02.2007, 17:15 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
Bogdanov AndreyБуду рад ссылочке на стандарт с указанием места где описано процедурное расширение. У меня под рукой есть только список зарезервированных слов из SQL-92. так вот таких слов, как if, loop, begin, end и т.п. там нет. http://www.contrib.andrew.cmu.edu/~shadow/sql/sql1992.txt пп. 4.17 Procedures ... |
|||
:
Нравится:
Не нравится:
|
|||
13.02.2007, 17:36 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
Alexey Kudinov http://www.contrib.andrew.cmu.edu/~shadow/sql/sql1992.txt пп. 4.17 Procedures За ссылку большое спасибо. Но вы зря сделали стойку на слово "procedure". То что описано в этом стандарте не содержит команд управления ходом выполнения и не является процедурным языком. К T-SQL или к PL/SQL это не имеет ни какого отношения. ... |
|||
:
Нравится:
Не нравится:
|
|||
13.02.2007, 18:04 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
Bogdanov AndreyТо что описано в этом стандарте не содержит команд управления ходом выполнения и не является процедурным языком. К T-SQL или к PL/SQL это не имеет ни какого отношения. ну что же, вам конечно виднее чем составителям стандарта, что является процедурой, а что нет. ... |
|||
:
Нравится:
Не нравится:
|
|||
13.02.2007, 18:19 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
Alexey Kudinovну что же, вам конечно виднее чем составителям стандарта, что является процедурой, а что нет. Очень не хочется грубить вам, но вы бы все таки читали то что вам пишут. Я не писал, что приведенное в стандарте определение не является определением процедуры. Стандарт не содержит (по крайней мере я их там не заметил - буду рад если вы мне покажете) конструкций для организации ветвления и циклов, которые являются необходимым условием для стуктурного программирования. Я уверен, что уважаемый pkarklin в свих ХП очень активно использует эти конструкции. И именно это я утверждал, когда писал, что бизнес-логика на SQL не реализуется. Но мне кажется, что мы отвлеклись от темы. Обсуждалась сравнительная сложность реализации двухзвенки и трехзвенки. Если есть желание пообсуждать стандарты SQL - открывайте топик. ... |
|||
:
Нравится:
Не нравится:
|
|||
13.02.2007, 21:12 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
2автор поставьте 1С ... |
|||
:
Нравится:
Не нравится:
|
|||
13.02.2007, 21:32 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
Bogdanov AndreyСтандарт не содержит (по крайней мере я их там не заметил - буду рад если вы мне покажете) конструкций для организации ветвления и циклов, которые являются необходимым условием для стуктурного программирования. Я уверен, что уважаемый pkarklin в свих ХП очень активно использует эти конструкции. И именно это я утверждал, когда писал, что бизнес-логика на SQL не реализуется. Да Вы педант, однако. Естестенно, что без применения, например, control-of-flow language тяжело реализовывать бизнес-логику на стороне сервера. Но я настолько свыкся с мыслью о ее пристутствии в T-SQL, что мне, честно говоря, и в голову не пришло, что Вы говоря о "SQL" не имели в виду ту или иную его реализацию в конкретной СУБД. IMHO, писать на "голом SQL" при строгом соблюдении стандарта, т.е. не используя специфику конкретных его реализаций (читай процедурных расширений), можно (а лучше не надо) только в случаи, когда требуется поддержка более чем одной СУБД. Но в этом случаи мы теряем главное - мощь специфичности реализации SQL в конкретной СУБД. Bogdanov AndreyОбсуждалась сравнительная сложность реализации двухзвенки и трехзвенки. Продолжим... Bogdanov AndreyНа мой взгляд первое проще. Там требуется разработка только одного объекта, а в вашем случае - двух. :) Что считать объектами. Давайте, тогда посмотрим на объем кода, который потребуется написать. В случаи с двухзвенкой: На сервере: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9.
На клиенте (Учитывая, что компонент, например, ADOStoredProc мы положили на форму (модуль данных) и у него настроено свойство ProcedureName): Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12.
Теперь, что будет у Вас? ... |
|||
:
Нравится:
Не нравится:
|
|||
14.02.2007, 08:55 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
pkarklin except on E: Exception do ShowMessage(E.Message) end; :(( ... |
|||
:
Нравится:
Не нравится:
|
|||
14.02.2007, 09:07 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
softwarer pkarklin except on E: Exception do ShowMessage(E.Message) end; :(( Ну, я же пример привел... ... |
|||
:
Нравится:
Не нравится:
|
|||
14.02.2007, 09:31 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
pkarklin Что считать объектами. Давайте, тогда посмотрим на объем кода, который потребуется написать. В случаи с двухзвенкой: /.. skipped ../ Теперь, что будет у Вас? Именно в такой постановке вопроса (вы не привели кода, который формирует саму форму) у меня будет ровно такая же процедура на сервере, как и у вас. Ну а если нарисовать действительно "работающий" пример, то у меня минуты за 3 получилось так: Код: 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.
Прогнав это на сервере (и больше не делая ничего) я увидел у себя на клиенте элементарнейшую формочку, позволяющую изменять оклады. Заметьте, что последняя процедура ничем не отличается от вашей. Вы можете построить настолько же короткий пример работающего ПО в клиент-серверной архитектуре? ... |
|||
:
Нравится:
Не нравится:
|
|||
14.02.2007, 10:15 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
Перед копированием в буфер забыл переключиться на русскую раскладку, поэтому вместо русских буковок - крякозябры. Надеюсь это не помешает пониманию. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.02.2007, 10:18 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
Alexey KudinovВы можете построить настолько же короткий пример работающего ПО в клиент-серверной архитектуре? Безусловно. Alexey Kudinovвы не привели кода, который формирует саму форму Вы знаете, и кода никакого не будет. Простейщий проект клиентского приложения на Delphi вообще не будет содержать ни одной строчки кода. Все будет сделано с помощью "мышенчных" усилий. Я серьезно. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.02.2007, 10:22 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
Bogdanov Andrey Прогнав это на сервере (и больше не делая ничего) я увидел у себя на клиенте элементарнейшую формочку, позволяющую изменять оклады. надо заметить, что для более-менее серьёзных форм, реализующих сложный событийный функционал (и время отклика) именно Ваша технология будет проигрывать. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.02.2007, 10:27 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
Petro123 надо заметить, что для более-менее серьёзных форм, реализующих сложный событийный функционал (и время отклика) именно Ваша технология будет проигрывать. 2 Bogdanov Andrey Кстати, да. Как при используемом Вами подходе реализуется "сложный событийный функционал"? ... |
|||
:
Нравится:
Не нравится:
|
|||
14.02.2007, 10:39 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
pkarklinВы знаете, и кода никакого не будет. Простейщий проект клиентского приложения на Delphi вообще не будет содержать ни одной строчки кода. Все будет сделано с помощью "мышенчных" усилий. Я серьезно. Код будет. То что он у вас формируется путем тыканья мышкой не так важно. Честно скажу, что я как раз ненавижу средс тва программирования в которых кто-то пытается спрятать от меня программный код. На мой взгляд такие средства существенно замедляют процесс разработки для опытных программистов, хотя несомненно удобны для начинающих (правда обилие таких средств привело к тому, что вокруг я вижу кучу людей, называбщих себя программистами, но при этом не знающих что такое цикл - но это отдельная тема). Заметьте, что в итоге вам еще нужно будет собрать exe-файл. Перенести его на клиентскую машину (а к нему скорее всего и набор библиотек - или какой-то installer запускать) и т.п. pkarklinКстати, да. Как при используемом Вами подходе реализуется "сложный событийный функционал"? Не знаю, что вы называете "сложным событийным функционалом". Но с целью повышения эргономики интерфейса естественно могут потребоваться клиентские обработчики. Они легко реализуется, например, на Java-script. Для любителей визуальных изысков можно использовать уже упоминавшиеся апплеты, флэш и т.п (честно скажу, мне это пока ни разу не требовалось), а для особых любителей написать специализированный клиентский модуль (кстати, при желании на том же Delphi). В любом случае сложность разработки не превышает сложность разработки клиент-серверных приложений (я кстати сам 8 лет работал в клиент-серверной архитектуре и тоже "боялся" сложностей трехзвенки). Сложность можно увидеть в необходимости администрирования двух серверов (хотя физически они могут находиьтся и на одной машине). Может быть. Мне администраторы не жаловались, а сам я все-таки занимался разработкой и в администрирование не влезал. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.02.2007, 11:01 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
ЛарионовНаша организация заказывает программное обеспечение (учетная система). Движение грузов, заявки, накладные, счета, оплаты и т.д. Каков порядок количества наименований и количества документов(за месяц например) Если наименований больше 1000 я бы не стал использовать ИЕ ЛарионовРазработчик предложил следующую модель. База данных и обработчик находятся на сервере, а пользователи получают доступ к ресурсам БД через IE. Т.е. никакого другого программного обеспечения на компах пользователей не будет, все будет подготавливаться на сервере, а мы будем просматривать, вводить и редактировать данные через Internet Explorer. ЛарионовБаза данных MS SQL 2005, обработчик собираются писать на "Визуал Студия", если это имеет значение. А где будет находиться сервер? у вас на фирме или его предложили ил на площадки у хостера? ЛарионовПодскажите пожалуйста: 1. преимущества и недостатки такого подхода. Недостатки: 1. При большом объеме данных сильная зависимость от ширины канала, т.к. по этому каналу будет бегать не только полезная информация но и весь "интерфейс" (надеюсь исполнитель будет использовать https и как следствие кеша не будет), кроме того необходимо понять, что если сервер будет стоять у вас в фирме то там должен быть хороший канал, так что бы мог держат всех ваших клиентов сразу, пусть исполнитель оценит нужную вам ширину канала, а также ширину канала для ваших пользователей. Маленький пример: номенклатура товаров 1500 наименований средняя длинна 80 символов ~ 120 КБ только размер этого списка который будет грузиться КАЖЫЙ раз когда вы открываете страницу с таким списком. 2. Завязка на IE. Если вы готовы слушать ответ "Это сделать не возможно" то это точно ваш путь. Далеко не все можно сделать в Веб среде что можно сделать в собственном клиенте. Кроме в дальнейшем для сопровождения такой системы вам понадобиться человек с знанием верстки HTML видимо со знанием ASP, это точно не уменьшит затраты. На рисование веб страниц уходит больше времени чем на рисование форм в той же дельфе. В принципе реализовать можно все но все это вы будите оплачивать из своего кармана. По поводу ActiveX, flash и т.д. это уже фактически написание клиента. Кроме того завязка на IE должна предусмотреть диапазон версий в который данная система будет работать и кто будет решать проблемы с последующими версия IE которые выйдут в будущем, это надо прописать в контракте. 3. Не очень понятен смысл такого выбора, или это была раньше веб студия, или таким образом хотят обойти лицензионные ограничения на количество MS SQL 2005. Попросите обоснование такого выбора, было бы интересно узнать чем это мотивируется. И еще пара советов 1. Пусть исполнитель использует или стандартные компоненты или бесплатные компонеты с исходным кодом, пропишите это в контракт 2. Пусть по окончании проекта предоставит все исходные коды и самого проекта и компонент в нем используемых(в том числе и графических элементов) В при невыполнении этого модификация сторонними фирмами данной системы будет не возможно и вам придеться писать систему заново, это на тот случай если исполнитель откажется чтоли делать или запросит много денег ... |
|||
:
Нравится:
Не нравится:
|
|||
14.02.2007, 11:20 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
Bogdanov AndreyКод будет. То что он у вас формируется путем тыканья мышкой не так важно. В случаи серьезного клиентского приложения на Delphi код безусловно, тоже будет. Bogdanov AndreyЧестно скажу, что я как раз ненавижу средс тва программирования в которых кто-то пытается спрятать от меня программный код. На мой взгляд такие средства существенно замедляют процесс разработки для опытных программистов, хотя несомненно удобны для начинающих (правда обилие таких средств привело к тому, что вокруг я вижу кучу людей, называбщих себя программистами, но при этом не знающих что такое цикл - но это отдельная тема). Хм... Видимо у нас разные взгляды на RAD средства, их использование и как они влияют на "процесс разработки". Bogdanov AndreyЗаметьте, что в итоге вам еще нужно будет собрать exe-файл. Перенести его на клиентскую машину (а к нему скорее всего и набор библиотек - или какой-то installer запускать) и т.п. Заметьте, что этот процесс автоматизирован! С дискеткой к клиенту, будь он хоть за три девять земель никто не бегает\по почте не посылает. Bogdanov AndreyНе знаю, что вы называете "сложным событийным функционалом". Надеюсь то же самое, что и все остальные: Event-driven programming is a computer programming paradigm in which the flow of the program is determined by user actions (mouse clicks, key presses) or messages from other programs. In contrast, in batch programming the flow is determined by the programmer. Batch programming is the style taught in beginning programming classes while event driven programming is what is needed in any interactive program. Т.е. когда из одного грида одной формы перетащили запись на поле ввода другой формы и "что-то произошло". Bogdanov AndreyОни легко реализуется, например, на Java-script. Для любителей визуальных изысков можно использовать уже упоминавшиеся апплеты, флэш и т.п (честно скажу, мне это пока ни разу не требовалось), а для особых любителей написать специализированный клиентский модуль (кстати, при желании на том же Delphi). Как-то все, что Вы перечислили, в моем сознании мало коррелируется с: Bogdanov AndreyВ любом случае сложность разработки не превышает сложность разработки клиент-серверных приложений Bogdanov AndreyСложность можно увидеть в необходимости администрирования двух серверов Заметьте, не я об этом упомянул. ;) И это "отдельная песня". ... |
|||
:
Нравится:
Не нравится:
|
|||
14.02.2007, 11:28 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
2 Bogdanov Andrey Не просвятите, во что выльется при используемом Вами подходе реализация классического MDI интерфейса? ... |
|||
:
Нравится:
Не нравится:
|
|||
14.02.2007, 11:39 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
pkarklin Bogdanov AndreyНе знаю, что вы называете "сложным событийным функционалом". Надеюсь то же самое, что и все остальные: Event-driven programming is a computer programming paradigm in which the flow of the program is determined by user actions (mouse clicks, key presses) or messages from other programs. In contrast, in batch programming the flow is determined by the programmer. Batch programming is the style taught in beginning programming classes while event driven programming is what is needed in any interactive program. Про "событийный" - понятно. Но вот слово "сложный" меня смутило. pkarklin Bogdanov AndreyОни легко реализуется, например, на Java-script. Для любителей визуальных изысков можно использовать уже упоминавшиеся апплеты, флэш и т.п (честно скажу, мне это пока ни разу не требовалось), а для особых любителей написать специализированный клиентский модуль (кстати, при желании на том же Delphi). Как-то все, что Вы перечислили, в моем сознании мало коррелируется с: Bogdanov AndreyВ любом случае сложность разработки не превышает сложность разработки клиент-серверных приложений Код собственно обработчика событий на Java-script по сложности аналогичен тому, что вы напишете на Delphi. Механизм "привязки" обработчика к событию тоже никаких сложностей не вызывает (OnClick="MakeClickProcessing()"). Может быть список событий, формируемых Web-браузером узок? Не знаю, мне пока хватало. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.02.2007, 11:40 |
|
|
start [/forum/topic.php?fid=33&msg=34327903&tid=1549145]: |
0ms |
get settings: |
9ms |
get forum list: |
12ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
122ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
59ms |
get tp. blocked users: |
1ms |
others: | 14ms |
total: | 234ms |
0 / 0 |