![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Клиент - Сервер [D7, XP]
ForX © (2006-02-18 22:42:00)Сделал прогу учета (БД Access), хотелось бы, что бы она работала в локалке. Реально ли сделать это приложение Клиент-Серверным, если я вообще не знаком с SQL-запросами.
Ega23 (2006-02-20 15:53:00) [1]
> Тогда подскажите где почитать общие сведения по этой МСДЕ
> и можно закрывать тему
MSDE - это урезанная бесплатная версия MS SQL Server. Доступна для скачивания с microsoft.com
Почитать - любая толстая книжка по MS SQL, дальше - Books OnLine - самый замечательный хелп, на мой взгляд.
ForX (2006-02-20 15:45:00) [2]
> Советую MSDE - очень хорошая штука. Ещё и бесплатная.
Тогда подскажите где почитать общие сведения по этой МСДЕ и можно закрывать тему
......................
Ega23 (2006-02-20 15:40:00) [3]О, Серёга уже "посватал"... :о)
Ega23 (2006-02-20 15:39:00) [4]
> А может тогда просто отказаться от Акцесса, и перейти на
> нечто более совершенное?
>
Золотые слова!
Советую MSDE - очень хорошая штука. Ещё и бесплатная.
Sergey13 (2006-02-20 15:38:00) [5]2 [42] ForX (20.02.06 15:35)
>А может тогда просто отказаться от Акцесса, и перейти на нечто более совершенное?
Наконец то! 8-)
Тебе наверное больше всего подойдет MSDE.
ForX (2006-02-20 15:35:00) [6]А может тогда просто отказаться от Акцесса, и перейти на нечто более совершенное?
Ega23 (2006-02-20 15:27:00) [7]
> А ты и не почувствуешь обновления грида (если с помощью
> TTable.Refresh).
> Обновленные данные только изменятся и все. Я как-то давно
> так делал на таблицу из 30000 записей и ничего, нормально.
>
> Но все это верно если изменений не слишком много и таймер
> на очень маленький интервал не ставить (у меня тогда бал
> 5 сек. если не ошибаюсь).
> Хотя, согласен, что в принципе решение, мягко говоря, далеко
> от идеала.
Это очень мягко говоря. Бедный сервер - лопатить каждые 5 секунд для каждого клиента 30000 записей. Просто так. Чтобы не расслаблялся...
Asail (2006-02-20 15:25:00) [8]
> Вот я сижу за компом. Смотрю на грид. И вдруг начинается
> переоткрытие запроса
А ты и не почувствуешь обновления грида (если с помощью TTable.Refresh).
Обновленные данные только изменятся и все. Я как-то давно так делал на таблицу из 30000 записей и ничего, нормально.
Но все это верно если изменений не слишком много и таймер на очень маленький интервал не ставить (у меня тогда бал 5 сек. если не ошибаюсь).
Хотя, согласен, что в принципе решение, мягко говоря, далеко от идеала.
Ega23 (2006-02-20 15:23:00) [9]
> Допустим диспетчер принял заказ. Через минуту человек перезванивает,
> и говорит, что хочет отменить заказ. А на звонок ответил
> другой диспетчер (телефон многоканальный).
Вот путь другой диспетчер нажмёт кнопочку "обновить", увидит новый заказ и снимет его.
ForX (2006-02-20 15:18:00) [10]
> Sergey13 © (20.02.06 15:16) [37]
>
> 2[35] ForX (20.02.06 15:11)
> >О недооформленном и не надо. Надо что бы оформленный заказ
> появлялся сразу у всех клиентов
> А зачем он им?
Допустим диспетчер принял заказ. Через минуту человек перезванивает, и говорит, что хочет отменить заказ. А на звонок ответил другой диспетчер (телефон многоканальный).
Ega23 (2006-02-20 15:16:00) [11]
> Ну зачем-же так сразу.
> Ну, предположим, пользователь хочет видеть В ВИДЕ ТАБЛИЦЫ
> РЕАЛЬНЫЕ данные, которые могут быть внесены другими пользователями.
> ИМХО, можно и на таймер. Только тогда лучше через TTable
> и не Table.Open, a Table.Refresh.
Вот я сижу за компом. Смотрю на грид. И вдруг начинается переоткрытие запроса. Я его об этом не просил.
А представь ситуацию, что в наборе данных 100000 записей.
З.Ы. Если уж такое и делать, то делать надо по уму. А именно: не TTable, а TQuery. И не на таймер, а в отдельный поток.
Sergey13 (2006-02-20 15:16:00) [12]2[35] ForX (20.02.06 15:11)
>О недооформленном и не надо. Надо что бы оформленный заказ появлялся сразу у всех клиентов
А зачем он им?
ForX (2006-02-20 15:11:00) [13]
> Sergey13 © (20.02.06 14:57) [33]
> И зачем тогда диспетчеру информировать коллег о недооформленном >заказе?
О недооформленном и не надо. Надо что бы оформленный заказ появлялся сразу у всех клиентов
> пользователь хочет видеть В ВИДЕ ТАБЛИЦЫ РЕАЛЬНЫЕ данные,
> которые могут быть внесены другими пользователями
Чтобы после добавления, любой клиент, например, мог его завершить
Asail (2006-02-20 14:58:00) [14]
> Я бы за такое просто убил...
Ну зачем-же так сразу.
Ну, предположим, пользователь хочет видеть В ВИДЕ ТАБЛИЦЫ РЕАЛЬНЫЕ данные, которые могут быть внесены другими пользователями. ИМХО, можно и на таймер. Только тогда лучше через TTable и не Table.Open, a Table.Refresh.
Sergey13 (2006-02-20 14:57:00) [15]2[31] ForX (20.02.06 14:49)
А принимает заказ и назначает по нему водителя один человек или разные? Я так подозреваю, что один. Иначе нужна еще идентификация по диспетчерам, что бы на один заказ водил разных не искали. И зачем тогда диспетчеру информировать коллег о недооформленном заказе?
Ega23 (2006-02-20 14:50:00) [16]
> А если данные добавляются достаточно часто, мне что, Query.
> close -
> Query.open в таймер помещать что ли?
А ты уверен, что пользователю нужно вот это обновление?
Я бы за такое просто убил...
ForX (2006-02-20 14:49:00) [17]Прога приема заказов такси (аналог Такси диспетчер). Несколько диспетчеров (клиентов) принимают поступающие заказы. Назначают водителей из др. НД. Заказ может быть или предварительным и текущим. предварительный содержит дату > NOW, когда Дата = Now, он становиться текущим.
Sergey13 (2006-02-20 14:40:00) [18]2[29] ForX (20.02.06 14:36)
Ты задачу то опиши уже. Что за данные, какие требования?
ForX (2006-02-20 14:36:00) [19]А если данные добавляются достаточно часто, мне что, Query.close -
Query.open в таймер помещать что ли?
Asail (2006-02-20 14:34:00) [20]
> у клиента_2 надо переоткрывать TQuery
надо