| 
| 
 | Вопрос # 351/ вопрос открыт / | 
 |  Здравствуйте уважаемые эксперты.Ответьте на такие вопросы:
 1)Как реализовать многопользовательское приложение? Если есть возможность, дайте пример или  ссылку в Интернете на литературу.
 2) Для пояснения: когда открываешь несколько документов Word-а они появляются на панели задач. Как сделать так, чтобы в MDI приложении как в MYIE ссылки на окна были не на панели задач а, например, на панели MainForm? Надеюсь вы поняли вопрос!!
 3)Имеются 2 таблицы в MSAccess. Они связанны внешним ключом через целочисленное поле (таблица1(id(int), name_id(string)), таблица2(id(int), type(string)), связь(по id(int)))  Каким образом забить данные в колонку(id(int)) DBGrid(связанна с таблица2) так чтобы в списке были данные из таблица1 поля name_id(string)) и при выборе в списке значения(name_id(string)) в БД вводились не string-овые значения, а целочисленные. P.S. Такая возможность есть в таблицах MSAccess.
 
|  |   Вопрос задал: Ram (статус: Посетитель)Вопрос отправлен: 25 февраля 2007, 17:26
 Состояние вопроса: открыт, ответов: 1.
 |  Ответ #1. Отвечает эксперт: Вадим К Ну сколько просить - не пишите кучу вопросов в одном вопросе. Причём далёких друг от друга.1) Главная проблема в таких задачах - разграничение доступа и настройки для каждого пользователя.
 Настройки под каждого пользователя делаются просто. Перед стартом приложения вам необходимо идентифицировать пользователя - например вывести окошко с запросом имени/пароля. или узнать другим способом (к примеру пользователь обязан вставить флешку, на которой всё записано. Плюс получаем "перемещаемый профиль"). А дальше, зная имя, мы можем определить конфиг файл, с которого нужно подгрузить настройки. Для разграничения прав просто перед входом в основные процедуры проверяем имя и разрешения. Можно даже скрывать элементы интерфейса. Надеюсь обяснил:)
 2)
 >>Для пояснения: когда открываешь несколько документов Word-а они появляются на панели задач. >>Как сделать так, чтобы в MDI приложении как в MYIE ссылки на окна были не на панели задач а, например, на панели MainForm? Надеюсь вы поняли вопрос!!
 Подождите, первое предложение относиться к предыдущему вопросу? Тогда это меняет суть вопроса. Чтобы дополнительные окна отображались на панели задач нужно перекрыть конструктор параметров
 procedure TForm2.CreateParams(var Params: TCreateParams);
 begin
 inherited CreateParams(Params);
 Params.ExStyle   := Params.ExStyle or WS_EX_APPWINDOW;
 Params.WndParent := GetDesktopWindow;
 end;
 Что бы сделать как в MyIE нужно при создании форм делать запись в себя в массиве и о добавлять кнопку или вкладу. При закрытии - удалять
 3)По поводу третего - собиритесь с мыслями и почитайте о базах данных. Я очень смутно представляю, что вы хотели узнать. Телепаты к сожалению на Канарах:)
 
|  | Ответ отправил: Вадим К (статус: Академик)Время отправки: 25 февраля 2007, 19:26
 Оценка за ответ: 5
 Комментарий к оценке: Спасибо за ответ!!  |  
 Мини-форум вопросаВсего сообщений: 2; последнее сообщение — 25 февраля 2007, 20:32; участников в обсуждении: 2. 
|   | Ram (статус: Посетитель), 25 февраля 2007, 20:23 [#1]:Насчет первого вопроса: что вы написали я в общих чертах знаю, но мне бы пример желательно. Насчет третьего вопроса: прочитал я приличное количество книг по БД, но подобного не видел. |  
|   | Вадим К (статус: Академик), 25 февраля 2007, 20:32 [#2]:по поводу третего вопроса - существует такое понятие, как ссылочная целосность. Это раз. Насколько я понял, вы хотите вписывать значения ключа самостоятельно. Так кто вам мешает? Просто берите и обращайтесь к нужному полю по имени и добавляйте. Можно с помощью SQL запроса добавить. Но вам может помешать настройки базы данных, которые не дадут так просто сменить ключевое поле в связи с ссылочной целосностью Галочка "подтверждения прочтения" - вселенское зло. |  Чтобы оставлять сообщения в мини-форумах, Вы должны авторизироваться на сайте. |